/* UKBuddy Experts Marketplace v1.0.0 */
#ukbex-directory,#ukbex-profile,#ukbex-onboard,#ukbex-dashboard{font-family:-apple-system,system-ui,'Plus Jakarta Sans',sans-serif!important;color:#1a1a2e!important;box-sizing:border-box}
#ukbex-directory *,#ukbex-profile *,#ukbex-onboard *,#ukbex-dashboard *{box-sizing:border-box}

/* ── DIRECTORY ── */
.ukbex-dir-header{display:flex!important;flex-direction:column!important;gap:12px!important;margin-bottom:24px!important}
.ukbex-search-bar input{width:100%!important;padding:12px 16px!important;border:1.5px solid #e2e8f0!important;border-radius:10px!important;font-size:15px!important;outline:none!important}
.ukbex-search-bar input:focus{border-color:#4e267c!important}
.ukbex-filters{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.ukbex-filters select{padding:8px 12px!important;border:1.5px solid #e2e8f0!important;border-radius:8px!important;font-size:13px!important;color:#374151!important;background:#fff!important;cursor:pointer!important}
.ukbex-results-bar{font-size:13px!important;color:#64748b!important;margin-bottom:16px!important}
.ukbex-cards-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:20px!important}
.ukbex-card{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:14px!important;padding:20px!important;display:flex!important;flex-direction:column!important;gap:10px!important;transition:border-color .15s,transform .15s!important;position:relative!important}
.ukbex-card:hover{border-color:#4e267c!important;transform:translateY(-2px)!important}
.ukbex-card-featured{position:absolute!important;top:12px!important;right:12px!important;background:#fbbf24!important;color:#1a1a2e!important;font-size:11px!important;font-weight:700!important;padding:2px 8px!important;border-radius:20px!important}
.ukbex-card-top{display:flex!important;align-items:flex-start!important;gap:12px!important}
.ukbex-avatar-wrap{position:relative!important;flex-shrink:0!important}
.ukbex-avatar{width:56px!important;height:56px!important;border-radius:50%!important;object-fit:cover!important;border:2px solid #f0eaff!important}
.ukbex-avail-dot{position:absolute!important;bottom:2px!important;right:2px!important;width:12px!important;height:12px!important;border-radius:50%!important;border:2px solid #fff!important}
.ukbex-avail-dot.available{background:#22c55e!important}
.ukbex-avail-dot.unavailable{background:#94a3b8!important}
.ukbex-card-name{font-size:15px!important;font-weight:700!important;color:#07142E!important}
.ukbex-card-job{font-size:12px!important;color:#64748b!important;margin-top:2px!important}
.ukbex-type-badge{display:inline-block!important;font-size:11px!important;font-weight:600!important;color:#fff!important;padding:3px 10px!important;border-radius:20px!important;margin-top:4px!important}
.ukbex-card-about{font-size:13px!important;color:#475569!important;line-height:1.6!important}
.ukbex-card-rating{display:flex!important;align-items:center!important;gap:6px!important;font-size:13px!important}
.ukbex-stars{color:#fbbf24!important}
.ukbex-star.filled{color:#fbbf24!important}
.ukbex-star{color:#e2e8f0!important}
.ukbex-muted{color:#94a3b8!important;font-size:12px!important}
.ukbex-card-langs{font-size:12px!important;color:#64748b!important}
.ukbex-card-services-preview{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
.ukbex-svc-pill{background:#f5f0fb!important;color:#4e267c!important;font-size:11px!important;padding:3px 9px!important;border-radius:20px!important}
.ukbex-card-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-top:auto!important;padding-top:10px!important;border-top:1px solid #f1f5f9!important}
.ukbex-card-price{font-size:13px!important;font-weight:600!important;color:#4e267c!important}
.ukbex-btn-view{background:#4e267c!important;color:#fff!important;padding:7px 14px!important;border-radius:8px!important;font-size:13px!important;font-weight:600!important;text-decoration:none!important;transition:background .15s!important}
.ukbex-btn-view:hover{background:#3d1d63!important;color:#fff!important}
.ukbex-empty{text-align:center!important;padding:48px!important;color:#64748b!important}

/* ── PROFILE PAGE ── */
.ukbex-profile-wrap{display:grid!important;grid-template-columns:300px 1fr!important;gap:32px!important;max-width:1100px!important;margin:0 auto!important;align-items:start!important}
@media(max-width:768px){.ukbex-profile-wrap{grid-template-columns:1fr!important}}
.ukbex-profile-left{position:sticky!important;top:80px!important}
.ukbex-profile-card{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:16px!important;padding:24px!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:12px!important}
.ukbex-profile-avatar-wrap{position:relative!important;margin-bottom:4px!important}
.ukbex-profile-avatar{width:96px!important;height:96px!important;border-radius:50%!important;object-fit:cover!important;border:3px solid #f0eaff!important}
.ukbex-avail-badge{font-size:12px!important;font-weight:600!important;padding:3px 10px!important;border-radius:20px!important;margin-top:6px!important;display:block!important}
.ukbex-avail-badge.available{background:#dcfce7!important;color:#166534!important}
.ukbex-avail-badge.unavailable{background:#f1f5f9!important;color:#64748b!important}
.ukbex-profile-name{font-size:20px!important;font-weight:700!important;color:#07142E!important;margin:0!important}
.ukbex-profile-job{font-size:14px!important;color:#64748b!important}
.ukbex-type-badge-lg{display:inline-block!important;color:#fff!important;font-size:12px!important;font-weight:600!important;padding:5px 14px!important;border-radius:20px!important}
.ukbex-profile-stats{display:flex!important;gap:16px!important;width:100%!important;justify-content:center!important;padding:12px 0!important;border-top:1px solid #f1f5f9!important;border-bottom:1px solid #f1f5f9!important}
.ukbex-stat{display:flex!important;flex-direction:column!important;align-items:center!important;gap:2px!important}
.ukbex-stat-num{font-size:18px!important;font-weight:700!important;color:#4e267c!important}
.ukbex-stat-lbl{font-size:11px!important;color:#94a3b8!important;text-transform:uppercase!important;letter-spacing:.5px!important}
.ukbex-stars-row{display:flex!important;align-items:center!important;gap:6px!important;font-size:14px!important}
.ukbex-profile-langs{display:flex!important;flex-wrap:wrap!important;gap:5px!important;justify-content:center!important;font-size:12px!important}
.ukbex-lang-tag{background:#f0eaff!important;color:#4e267c!important;padding:2px 8px!important;border-radius:20px!important}
.ukbex-langs-label{color:#64748b!important}
.ukbex-highlight-row{font-size:13px!important;color:#374151!important;width:100%!important;text-align:left!important;padding:6px 10px!important;background:#f8fafc!important;border-radius:7px!important;text-decoration:none!important;display:block!important}
.ukbex-biz-link,.ukbex-ch-link{color:#4e267c!important}
.ukbex-btn-book{display:block!important;width:100%!important;background:#4e267c!important;color:#fff!important;text-align:center!important;padding:13px!important;border-radius:10px!important;font-size:15px!important;font-weight:700!important;text-decoration:none!important;margin-top:8px!important;transition:background .15s!important}
.ukbex-btn-book:hover{background:#3d1d63!important;color:#fff!important}
.ukbex-unavail-msg{background:#f1f5f9!important;color:#64748b!important;text-align:center!important;padding:12px!important;border-radius:8px!important;font-size:13px!important}
.ukbex-disclaimer{font-size:11px!important;color:#94a3b8!important;line-height:1.5!important;padding-top:8px!important;border-top:1px solid #f1f5f9!important}
.ukbex-profile-right{display:flex!important;flex-direction:column!important;gap:0!important}
.ukbex-profile-section{padding:28px 0!important;border-bottom:1px solid #f1f5f9!important}
.ukbex-profile-section:last-child{border-bottom:none!important}
.ukbex-profile-section h2{font-size:18px!important;font-weight:700!important;color:#07142E!important;margin:0 0 16px!important}
.ukbex-about-text{font-size:15px!important;line-height:1.8!important;color:#374151!important}
.ukbex-tags-grid{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.ukbex-help-tag{background:#f0eaff!important;color:#4e267c!important;font-size:13px!important;padding:5px 12px!important;border-radius:20px!important}
.ukbex-svc-group{margin-bottom:20px!important}
.ukbex-svc-group-label{font-size:13px!important;font-weight:600!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.5px!important;margin-bottom:10px!important}
.ukbex-service-card{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:18px!important;margin-bottom:10px!important;transition:border-color .15s!important}
.ukbex-service-card:hover{border-color:#4e267c!important}
.ukbex-svc-top{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important}
.ukbex-svc-title{font-size:15px!important;font-weight:600!important;color:#07142E!important;margin-bottom:4px!important}
.ukbex-svc-desc{font-size:13px!important;color:#64748b!important;line-height:1.6!important;margin-bottom:6px!important}
.ukbex-svc-meta{font-size:12px!important;color:#94a3b8!important}
.ukbex-svc-right{flex-shrink:0!important;text-align:right!important}
.ukbex-svc-price{font-size:20px!important;font-weight:700!important;color:#4e267c!important;margin-bottom:8px!important}
.ukbex-free-badge{background:#dcfce7!important;color:#166534!important;font-size:14px!important;font-weight:600!important;padding:4px 12px!important;border-radius:20px!important}
.ukbex-btn-book-svc{background:#4e267c!important;color:#fff!important;border:none!important;padding:9px 18px!important;border-radius:8px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:background .15s!important}
.ukbex-btn-book-svc:hover{background:#3d1d63!important}
.ukbex-rating-summary{display:flex!important;align-items:center!important;gap:20px!important;margin-bottom:20px!important;padding:16px!important;background:#fafafa!important;border-radius:10px!important}
.ukbex-rating-big{font-size:48px!important;font-weight:700!important;color:#4e267c!important;line-height:1!important}
.ukbex-reviews-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:14px!important}
.ukbex-review-card{background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:16px!important}
.ukbex-review-top{display:flex!important;align-items:flex-start!important;gap:10px!important;margin-bottom:10px!important}
.ukbex-reviewer-avatar{width:36px!important;height:36px!important;border-radius:50%!important;background:#4e267c!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;font-weight:700!important;flex-shrink:0!important}
.ukbex-reviewer-name{font-size:13px!important;font-weight:600!important;color:#07142E!important}
.ukbex-review-date{font-size:11px!important;color:#94a3b8!important}
.ukbex-review-stars{margin-left:auto!important}
.ukbex-review-text{font-size:13px!important;color:#374151!important;line-height:1.6!important;font-style:italic!important}
.ukbex-review-count{font-size:14px!important;font-weight:400!important;color:#94a3b8!important}

/* ── BOOKING MODAL ── */
/* Modal - controlled entirely by JS, no CSS display rules */
#ukbex-booking-modal{
    position:fixed!important;
    top:0!important;left:0!important;right:0!important;bottom:0!important;
    background:rgba(0,0,0,.55)!important;
    z-index:999999!important;
    align-items:center!important;
    justify-content:center!important;
    padding:20px!important;
    font-family:-apple-system,system-ui,sans-serif!important;
}
.ukbex-modal{background:#fff!important;border-radius:16px!important;padding:28px!important;width:100%!important;max-width:480px!important;position:relative!important;max-height:90vh!important;overflow-y:auto!important}
.ukbex-modal-close{position:absolute!important;top:16px!important;right:16px!important;background:none!important;border:none!important;font-size:20px!important;color:#94a3b8!important;cursor:pointer!important}
.ukbex-modal h3{font-size:18px!important;font-weight:700!important;color:#07142E!important;margin:0 0 20px!important}
/* booking steps controlled by JS inline styles only */
.ukbex-modal label{display:block!important;font-size:13px!important;font-weight:500!important;color:#374151!important;margin-bottom:6px!important}
.ukbex-modal input[type=date],.ukbex-modal textarea{width:100%!important;padding:10px 12px!important;border:1.5px solid #e2e8f0!important;border-radius:8px!important;font-size:14px!important;margin-bottom:14px!important}
.ukbex-slots-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important;margin-bottom:16px!important}
.ukbex-slot-btn{padding:8px!important;border:1.5px solid #e2e8f0!important;border-radius:7px!important;background:#fff!important;font-size:13px!important;cursor:pointer!important;transition:all .15s!important}
.ukbex-slot-btn:hover,.ukbex-slot-btn.selected{background:#4e267c!important;color:#fff!important;border-color:#4e267c!important}
.ukbex-error{color:#dc2626!important;font-size:13px!important;margin-top:8px!important}
.ukbex-booking-success{text-align:center!important;padding:20px 0!important}
.ukbex-success-icon{font-size:48px!important;background:#dcfce7!important;color:#166534!important;width:72px!important;height:72px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto 16px!important}

/* ── DASHBOARD ── */
.ukbex-dash-wrap{max-width:1000px!important;margin:0 auto!important}
.ukbex-dash-header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:24px!important;flex-wrap:wrap!important;gap:12px!important}
.ukbex-dash-title{display:flex!important;align-items:center!important;gap:14px!important}
.ukbex-dash-avatar{width:48px!important;height:48px!important;border-radius:50%!important;object-fit:cover!important}
.ukbex-dash-title h2{font-size:20px!important;font-weight:700!important;color:#07142E!important;margin:0!important}
.ukbex-dash-type{font-size:13px!important;color:#64748b!important}
.ukbex-dash-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:12px!important;margin-bottom:20px!important}
@media(max-width:600px){.ukbex-dash-stats{grid-template-columns:repeat(2,1fr)!important}}
.ukbex-dash-stat{background:#f5f0fb!important;border-radius:10px!important;padding:16px!important;text-align:center!important}
.ukbex-dash-stat-num{font-size:22px!important;font-weight:700!important;color:#4e267c!important}
.ukbex-dash-stat-lbl{font-size:12px!important;color:#64748b!important;margin-top:2px!important}
.ukbex-stripe-alert{background:#fff7ed!important;border:1.5px solid #fed7aa!important;border-radius:10px!important;padding:14px 18px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:20px!important;font-size:14px!important}
.ukbex-dash-tabs{display:flex!important;gap:4px!important;border-bottom:1px solid #e2e8f0!important;margin-bottom:20px!important;flex-wrap:wrap!important}
.ukbex-tab{padding:10px 16px!important;font-size:14px!important;font-weight:500!important;color:#64748b!important;text-decoration:none!important;border-bottom:2px solid transparent!important;transition:all .15s!important}
.ukbex-tab.active,.ukbex-tab:hover{color:#4e267c!important;border-bottom-color:#4e267c!important}
.ukbex-dash-panel{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;padding:20px!important}
.ukbex-panel-header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:16px!important}
.ukbex-panel-header h3{margin:0!important;font-size:16px!important;font-weight:600!important;color:#07142E!important}
.ukbex-table{width:100%!important;border-collapse:collapse!important;font-size:13px!important}
.ukbex-table th{background:#f8fafc!important;padding:10px 12px!important;text-align:left!important;font-weight:600!important;color:#374151!important;border-bottom:1px solid #e2e8f0!important}
.ukbex-table td{padding:10px 12px!important;border-bottom:1px solid #f1f5f9!important;color:#374151!important}
.ukbex-status-pill{font-size:11px!important;padding:2px 8px!important;border-radius:20px!important;font-weight:500!important}
.ukbex-status-confirmed{background:#dcfce7!important;color:#166534!important}
.ukbex-status-pending{background:#fff7ed!important;color:#92400e!important}
.ukbex-status-completed{background:#e0e7ff!important;color:#3730a3!important}
.ukbex-status-cancelled{background:#fee2e2!important;color:#991b1b!important}
.ukbex-status-active{background:#dcfce7!important;color:#166534!important}
.ukbex-status-draft{background:#f1f5f9!important;color:#64748b!important}
.ukbex-avail-grid{display:flex!important;flex-direction:column!important;gap:10px!important;margin-bottom:20px!important}
.ukbex-avail-row{display:flex!important;align-items:center!important;gap:16px!important;padding:12px 16px!important;background:#f8fafc!important;border-radius:8px!important}
.ukbex-avail-day{display:flex!important;align-items:center!important;gap:8px!important;width:80px!important;font-size:14px!important;font-weight:500!important;cursor:pointer!important}
.ukbex-avail-times{display:flex!important;align-items:center!important;gap:8px!important;font-size:14px!important}
.ukbex-avail-times.disabled{opacity:.4!important;pointer-events:none!important}
.ukbex-avail-times input[type=time]{padding:6px 8px!important;border:1.5px solid #e2e8f0!important;border-radius:6px!important}
.ukbex-svc-manage-row{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:12px!important;border:1px solid #f1f5f9!important;border-radius:8px!important;margin-bottom:8px!important}
.ukbex-svc-manage-info{display:flex!important;align-items:center!important;gap:10px!important}
.ukbex-svc-type-icon{font-size:20px!important}
.ukbex-svc-manage-title{font-size:14px!important;font-weight:500!important;color:#07142E!important}
.ukbex-svc-manage-meta{font-size:12px!important;color:#64748b!important;margin-top:2px!important}
.ukbex-svc-manage-actions{display:flex!important;gap:6px!important}

/* ── ONBOARDING ── */
.ukbex-onboard-wrap{max-width:700px!important;margin:0 auto!important}
.ukbex-onboard-header{text-align:center!important;margin-bottom:28px!important}
.ukbex-onboard-header h2{font-size:22px!important;font-weight:700!important;color:#07142E!important;margin-bottom:8px!important}
.ukbex-onboard-header p{font-size:15px!important;color:#64748b!important}
.ukbex-onboard-steps{display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:32px!important;gap:0!important}
.ukbex-step{display:flex!important;flex-direction:column!important;align-items:center!important;gap:4px!important}
.ukbex-step-num{width:32px!important;height:32px!important;border-radius:50%!important;background:#e2e8f0!important;color:#94a3b8!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;font-weight:600!important;transition:all .2s!important}
.ukbex-step.active .ukbex-step-num{background:#4e267c!important;color:#fff!important}
.ukbex-step.done .ukbex-step-num{background:#22c55e!important;color:#fff!important}
.ukbex-step-label{font-size:12px!important;color:#94a3b8!important}
.ukbex-step.active .ukbex-step-label{color:#4e267c!important;font-weight:600!important}
.ukbex-step-line{flex:1!important;height:2px!important;background:#e2e8f0!important;max-width:60px!important}
.ukbex-onboard-step{display:none!important}
.ukbex-onboard-step.active{display:block!important}
.ukbex-onboard-step h3{font-size:18px!important;font-weight:600!important;color:#07142E!important;margin-bottom:12px!important}
.ukbex-field-checklist{list-style:none!important;padding:0!important;margin:0 0 20px!important}
.ukbex-field-checklist li{padding:8px 12px!important;border-radius:7px!important;font-size:14px!important;margin-bottom:6px!important;background:#f1f5f9!important;color:#64748b!important}
.ukbex-field-checklist li.done{background:#dcfce7!important;color:#166534!important}
.ukbex-submit-summary{background:#f8fafc!important;border-radius:10px!important;padding:16px!important;margin-bottom:20px!important}
.ukbex-summary-row{display:flex!important;justify-content:space-between!important;padding:8px 0!important;border-bottom:1px solid #e2e8f0!important;font-size:14px!important}
.ukbex-summary-row:last-child{border:none!important}
.ukbex-checkbox-label{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:14px!important;color:#374151!important;margin-bottom:12px!important;cursor:pointer!important}
.ukbex-stripe-box{background:#f5f0fb!important;border-radius:12px!important;padding:20px!important;margin-bottom:20px!important}
.ukbex-stripe-logo{font-size:16px!important;font-weight:700!important;color:#4e267c!important;margin-bottom:12px!important}
.ukbex-stripe-box ul{margin:8px 0 16px 20px!important;color:#374151!important;line-height:2!important;font-size:14px!important}
.ukbex-note{font-size:12px!important;color:#94a3b8!important;margin-top:10px!important}

/* ── BUTTONS ── */
.ukbex-btn-primary{background:#4e267c!important;color:#fff!important;border:none!important;padding:11px 22px!important;border-radius:9px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:background .15s!important;width:100%!important;margin-top:12px!important}
.ukbex-btn-primary:hover{background:#3d1d63!important}
.ukbex-btn-secondary{background:#f0eaff!important;color:#4e267c!important;border:1.5px solid #c4a8e8!important;padding:9px 18px!important;border-radius:9px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;text-decoration:none!important;display:inline-block!important;transition:background .15s!important;margin-top:8px!important}
.ukbex-btn-secondary:hover{background:#e0d4f7!important}
.ukbex-btn-stripe{background:#635bff!important;color:#fff!important;border:none!important;padding:11px 22px!important;border-radius:9px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;transition:background .15s!important}
.ukbex-btn-stripe:hover{background:#4f46e5!important}
.ukbex-btn-edit-svc,.ukbex-btn-delete-svc,.ukbex-btn-complete{font-size:12px!important;padding:4px 10px!important;border-radius:6px!important;cursor:pointer!important;border:1px solid #e2e8f0!important;background:#fff!important}
.ukbex-btn-delete-svc{color:#dc2626!important}

/* ── FORMS ── */
.ukbex-service-form{background:#f8fafc!important;border-radius:10px!important;padding:18px!important;margin-bottom:14px!important}
.ukbex-form-row{margin-bottom:14px!important}
.ukbex-form-row label{display:block!important;font-size:13px!important;font-weight:500!important;color:#374151!important;margin-bottom:5px!important}
.ukbex-form-row input,.ukbex-form-row select,.ukbex-form-row textarea{width:100%!important;padding:9px 12px!important;border:1.5px solid #e2e8f0!important;border-radius:8px!important;font-size:14px!important}
.ukbex-form-row-2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
.req{color:#dc2626!important}
.ukbex-notice{padding:14px 18px!important;border-radius:8px!important;font-size:14px!important;margin:16px 0!important;background:#f1f5f9!important;color:#374151!important}
.ukbex-notice-success{background:#dcfce7!important;color:#166534!important}
.ukbex-notice-warning{background:#fff7ed!important;color:#92400e!important}
.ukbex-notice-error{background:#fee2e2!important;color:#991b1b!important}

/* ── ONBOARDING WIZARD FIX — SocialV override ── */
#ukbex-onboard{background:#f8fafc!important;padding:24px!important;border-radius:16px!important;max-width:720px!important;margin:0 auto!important}
#ukbex-onboard .ukbex-onboard-header{text-align:center!important;margin-bottom:32px!important;padding:28px!important;background:linear-gradient(135deg,#4e267c,#c4006d)!important;border-radius:14px!important}
#ukbex-onboard .ukbex-onboard-header h2{font-size:24px!important;font-weight:700!important;color:#ffffff!important;margin:0 0 8px!important;padding:0!important;border:none!important}
#ukbex-onboard .ukbex-onboard-header p{font-size:14px!important;color:rgba(255,255,255,.85)!important;margin:0!important}

/* Steps progress bar */
#ukbex-onboard .ukbex-onboard-steps{display:flex!important;align-items:center!important;justify-content:center!important;margin-bottom:28px!important;background:#fff!important;padding:16px!important;border-radius:12px!important;border:1px solid #e2e8f0!important;list-style:none!important}
#ukbex-onboard .ukbex-step{display:flex!important;flex-direction:column!important;align-items:center!important;gap:5px!important;list-style:none!important}
#ukbex-onboard .ukbex-step-num{width:36px!important;height:36px!important;border-radius:50%!important;background:#e2e8f0!important;color:#94a3b8!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;font-weight:700!important;border:none!important;margin:0!important;padding:0!important}
#ukbex-onboard .ukbex-step.active .ukbex-step-num{background:#4e267c!important;color:#fff!important}
#ukbex-onboard .ukbex-step.done .ukbex-step-num{background:#22c55e!important;color:#fff!important}
#ukbex-onboard .ukbex-step-label{font-size:11px!important;font-weight:600!important;color:#94a3b8!important;text-transform:uppercase!important;letter-spacing:.5px!important}
#ukbex-onboard .ukbex-step.active .ukbex-step-label{color:#4e267c!important}
#ukbex-onboard .ukbex-step-line{flex:1!important;height:2px!important;background:#e2e8f0!important;max-width:80px!important;min-width:30px!important}

/* Step panels */
#ukbex-onboard .ukbex-onboard-body{background:#fff!important;border-radius:12px!important;border:1px solid #e2e8f0!important;padding:28px!important}
#ukbex-onboard .ukbex-onboard-step{display:none!important}
#ukbex-onboard .ukbex-onboard-step.active{display:block!important}
#ukbex-onboard .ukbex-onboard-step h3{font-size:18px!important;font-weight:700!important;color:#07142E!important;margin:0 0 6px!important;padding:0!important;border:none!important}
#ukbex-onboard .ukbex-onboard-step > p{font-size:14px!important;color:#64748b!important;margin:0 0 20px!important}

/* Field checklist */
#ukbex-onboard .ukbex-field-checklist{list-style:none!important;padding:0!important;margin:0 0 20px!important}
#ukbex-onboard .ukbex-field-checklist li{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 14px!important;border-radius:8px!important;font-size:14px!important;margin-bottom:6px!important;background:#f8fafc!important;color:#64748b!important;border:1px solid #e2e8f0!important}
#ukbex-onboard .ukbex-field-checklist li::before{content:'\2717'!important;color:#cbd5e1!important;font-size:16px!important;font-weight:700!important;flex-shrink:0!important}
#ukbex-onboard .ukbex-field-checklist li.done{background:#f0fdf4!important;color:#166534!important;border-color:#bbf7d0!important}
#ukbex-onboard .ukbex-field-checklist li.done::before{content:'\2713'!important;color:#22c55e!important}

/* Service form */
#ukbex-onboard .ukbex-service-form{background:#f8fafc!important;border-radius:10px!important;padding:20px!important;border:1px solid #e2e8f0!important}
#ukbex-onboard .ukbex-form-row{margin-bottom:16px!important}
#ukbex-onboard .ukbex-form-row label{display:block!important;font-size:13px!important;font-weight:600!important;color:#374151!important;margin-bottom:6px!important}
#ukbex-onboard .ukbex-form-row input,
#ukbex-onboard .ukbex-form-row select,
#ukbex-onboard .ukbex-form-row textarea{width:100%!important;padding:10px 14px!important;border:1.5px solid #e2e8f0!important;border-radius:8px!important;font-size:14px!important;color:#374151!important;background:#fff!important;outline:none!important;transition:border-color .15s!important}
#ukbex-onboard .ukbex-form-row input:focus,
#ukbex-onboard .ukbex-form-row select:focus,
#ukbex-onboard .ukbex-form-row textarea:focus{border-color:#4e267c!important}
#ukbex-onboard .ukbex-form-row-2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important}

/* Stripe box */
#ukbex-onboard .ukbex-stripe-box{background:#f5f0fb!important;border-radius:12px!important;padding:20px!important;border:1.5px solid #c4a8e8!important;margin-bottom:20px!important}
#ukbex-onboard .ukbex-stripe-logo{font-size:16px!important;font-weight:700!important;color:#4e267c!important;margin-bottom:12px!important}
#ukbex-onboard .ukbex-stripe-box ul{margin:8px 0 16px 20px!important;color:#374151!important;line-height:2!important;font-size:14px!important}
#ukbex-onboard .ukbex-stripe-box ul li{list-style:disc!important;padding:0!important;background:none!important;border:none!important;color:#374151!important}
#ukbex-onboard .ukbex-note{font-size:12px!important;color:#94a3b8!important;margin-top:10px!important;display:block!important}

/* Submit summary */
#ukbex-onboard .ukbex-submit-summary{background:#f8fafc!important;border-radius:10px!important;padding:16px!important;margin-bottom:20px!important;border:1px solid #e2e8f0!important}
#ukbex-onboard .ukbex-summary-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:10px 0!important;border-bottom:1px solid #e2e8f0!important;font-size:14px!important;color:#374151!important}
#ukbex-onboard .ukbex-summary-row:last-child{border:none!important}
#ukbex-onboard .ukbex-summary-row span:last-child{font-weight:600!important;color:#4e267c!important}
#ukbex-onboard .ukbex-checkbox-label{display:flex!important;align-items:flex-start!important;gap:10px!important;font-size:14px!important;color:#374151!important;margin-bottom:12px!important;cursor:pointer!important;line-height:1.6!important}
#ukbex-onboard .ukbex-checkbox-label input{margin-top:3px!important;flex-shrink:0!important;accent-color:#4e267c!important}

/* Buttons inside onboarding */
#ukbex-onboard .ukbex-btn-primary{display:block!important;width:100%!important;background:#4e267c!important;color:#fff!important;border:none!important;padding:13px 24px!important;border-radius:10px!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important;margin-top:16px!important;text-align:center!important;transition:background .15s!important}
#ukbex-onboard .ukbex-btn-primary:hover{background:#3d1d63!important}
#ukbex-onboard .ukbex-btn-secondary{display:inline-block!important;background:#f0eaff!important;color:#4e267c!important;border:1.5px solid #c4a8e8!important;padding:10px 20px!important;border-radius:10px!important;font-size:14px!important;font-weight:600!important;cursor:pointer!important;margin-top:10px!important;text-decoration:none!important;transition:background .15s!important}
#ukbex-onboard .ukbex-btn-secondary:hover{background:#e0d4f7!important}
#ukbex-onboard .ukbex-btn-stripe{display:block!important;width:100%!important;background:#635bff!important;color:#fff!important;border:none!important;padding:13px 24px!important;border-radius:10px!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important;transition:background .15s!important}
#ukbex-onboard .ukbex-btn-stripe:hover{background:#4f46e5!important}

/* Edit profile link */
#ukbex-onboard a.ukbex-btn-secondary{margin-bottom:12px!important}

/* Mobile */
@media(max-width:600px){
  #ukbex-onboard{padding:14px!important}
  #ukbex-onboard .ukbex-onboard-body{padding:16px!important}
  #ukbex-onboard .ukbex-form-row-2{grid-template-columns:1fr!important}
  #ukbex-onboard .ukbex-step-line{max-width:30px!important}
  #ukbex-onboard .ukbex-step-label{font-size:9px!important}
}

/* ── BUNDLE ── */
.ukbex-bundle-includes{margin:8px 0!important;padding:10px 12px!important;background:#f5f0fb!important;border-radius:8px!important;border:1px solid #e0d4f7!important}
.ukbex-bundle-label{font-size:12px!important;font-weight:600!important;color:#4e267c!important;margin-bottom:7px!important}
.ukbex-bundle-item{display:inline-block!important;background:#fff!important;border:1px solid #e0d4f7!important;color:#374151!important;font-size:12px!important;padding:3px 10px!important;border-radius:20px!important;margin:2px 3px 2px 0!important}
#ukbex-bundle-picker{margin-top:4px!important}
#ukbex-bundle-services-list label:last-child{border-bottom:none!important}

/* ── BUTTON FOCUS RING — remove native focus rectangle on all plugin buttons ── */
#ukbex-booking-modal button,
#ukbex-dashboard button,
#ukbex-profile button,
.ukbex-search-bar button{
    outline:none!important;
    box-shadow:none!important;
    -webkit-tap-highlight-color:transparent!important;
}
#ukbex-booking-modal button:focus,
#ukbex-booking-modal button:focus-visible{
    outline:none!important;
    box-shadow:none!important;
}

/* ── KILL FOREIGN ::after/::before ON FORM FIELDS INSIDE THE BOOKING MODAL ──
   The active theme (SocialV) injects a decorative ::after on inputs. Because our
   inputs have no explicit `position`, that pseudo-element positions itself
   absolutely against the modal card (the nearest positioned ancestor) and
   stretches to the card's full scrollable height — rendering as a tall thin
   rectangle that visually overlaps the close button near the top of the modal. */
html body #ukbex-booking-modal input::after,
html body #ukbex-booking-modal input::before,
html body #ukbex-booking-modal textarea::after,
html body #ukbex-booking-modal textarea::before,
html body #ukbex-booking-modal select::after,
html body #ukbex-booking-modal select::before{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    position:static!important;
}
/* Give our inputs their own positioning context so any pseudo-element that
   still slips through is scoped to the input itself, not the whole card. */
#ukbex-booking-modal input,
#ukbex-booking-modal textarea,
#ukbex-booking-modal select{
    position:relative!important;
    z-index:1!important;
}

/* ── MODAL HIDDEN STATE — maximum specificity override ── */
html body #ukbex-booking-modal[style*="display:none"],
html body #ukbex-booking-modal[style*="display: none"]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}
