/* SEHAT ONLINE design alignment v1.0.24 — scoped, presentation-only.
   Matches SEHAT theme v1.0.21; does not override workflow or validation. */
.so-bk,.so-pub,.so-shell{
 --so-site-navy:#071f29;--so-site-deep:#0b3039;--so-site-teal:#076d6b;
 --so-site-teal-hover:#0c8680;--so-site-ink:#102e38;
 --so-site-muted:#60747a;--so-site-border:#e0e9e7;--so-site-mint:#e6f3ef;
 color:var(--so-site-ink);font-family:'DM Sans',system-ui,sans-serif;
}
.so-bk{--bk-navy:#102e38;--bk-teal:#076d6b;--bk-line:#e0e9e7;--bk-muted:#60747a;--bk-bg:#f8faf7}
.so-pub{--so-navy:#071f29;--so-ink:#102e38;--so-teal:#076d6b;--so-border:#e0e9e7;--so-soft:#f8faf7;--so-muted:#60747a;
 --so-v2-navy:#071f29;--so-v2-teal:#076d6b;--so-v2-border:#e0e9e7;--so-v2-text:#60747a}
.so-shell{--so-navy:#071f29;--so-deep:#0b3039;--so-teal:#076d6b;--so-green:#076d6b;--so-text:#102e38}
/* Website's condensed display headings; use inherited body font for forms and data. */
.so-bk :is(h1,h2),.so-pub :is(h1,h2),.so-shell :is(h1,h2),
.so-bk .so-bk-picker-intro h1,.so-pub.so-pub-profile-v2 :is(.so-v2-hero h1,.so-v2-panel h2,.so-v2-booking h2){
 font-family:'Big Shoulders Display','Arial Narrow',sans-serif!important;letter-spacing:.005em;line-height:1.13;
}
.so-bk :is(h3,h4),.so-pub :is(h3,h4),.so-shell :is(h3,h4){font-family:'DM Sans',system-ui,sans-serif}
.so-bk :is(.so-bk-panel,.so-bk-aside,.so-bk-picker-card),
.so-pub :is(.so-pub-card,.so-v2-panel,.so-v2-side-panel,.so-v2-booking){border-color:#e0e9e7;box-shadow:0 8px 26px rgba(6,46,49,.06)}
.so-bk :is(input:not([type=checkbox]):not([type=radio]),select,textarea),
.so-pub :is(input,select),.so-shell :is(input,select,textarea){font-family:'DM Sans',system-ui,sans-serif}
.so-bk :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus-visible,
.so-pub :is(input,select):focus-visible,.so-shell :is(input,select,textarea):focus-visible{outline:2px solid #0c8680;outline-offset:2px}
.so-bk input[type=checkbox],.so-bk input[type=radio]{accent-color:#076d6b}
/* Specific components formerly used the old bright-blue/navy palette. */
.so-bk .so-bk-submit,.so-bk .so-bk-next,
.so-bk .so-bk-picker :is(.so-bk-picker-select,.so-bk-picker-next),
.so-pub a.so-pub-primary,.so-pub a.so-v2-book-now,
.so-shell :is(.so-btn-primary,button[type=submit]){
 background:linear-gradient(110deg,#075b5e,#0b827c)!important;border-color:#076d6b!important;color:#fff!important;
}
.so-bk .so-bk-submit:hover,.so-bk .so-bk-next:hover,
.so-pub a.so-pub-primary:hover,.so-pub a.so-v2-book-now:hover,
.so-shell :is(.so-btn-primary,button[type=submit]):hover{
 background:#0b3039!important;border-color:#0b3039!important;color:#fff!important;
}
.so-bk .so-bk-slots button:hover,.so-bk .so-bk-slots button[aria-pressed=true]{background:#076d6b!important;border-color:#076d6b!important;color:#fff!important}
.so-bk .so-bk-mode:has(input:checked),.so-bk .so-bk-pay:has(input:checked){border-color:#076d6b;background:#e6f3ef;box-shadow:0 0 0 2px rgba(7,109,107,.08)}
.so-bk .so-bk-specialist,.so-bk .so-bk-instructions,
.so-pub.so-pub-profile-v2 :is(.so-v2-service-icon,.so-v2-day.is-on){background:#e6f3ef;color:#076d6b}
.so-pub.so-pub-profile-v2 a.so-v2-book-now,
.so-pub.so-pub-profile-v2 a.so-v2-book-now:hover{border-color:#076d6b!important;background:linear-gradient(110deg,#075b5e,#0b827c)!important}
/* Booking selector should not inherit narrow content widths from pages. */
.so-bk,.so-bk.so-bk-picker,.so-pub.so-pub-directory{width:100%;max-width:1440px;min-width:0}
@media(max-width:620px){.so-bk,.so-pub{padding-inline:10px}.so-bk :is(.so-bk-panel,.so-bk-picker-card){max-width:100%}}
/* Admin palette scoped to plugin dashboard so WordPress and other plugins stay untouched. */
.so-dashboard{--sd-navy:#071f29;--sd-blue:#0b3039;--sd-teal:#076d6b;--sd-ink:#102e38;
 --sd-muted:#60747a;--sd-bg:#f0f7f4;--sd-border:#e0e9e7;--sd-hover:#e6f3ef;--sd-soft:#f8faf7;
 --dr-accent:#076d6b;--dr-strong:#0b3039}
.so-dashboard :is(h1,h2){font-family:'Big Shoulders Display','Arial Narrow',sans-serif;letter-spacing:.005em}
.so-dashboard :is(button,input,select,textarea){font-family:'DM Sans',system-ui,sans-serif}
.so-dashboard :is(button,a,input,select,textarea):focus-visible{outline:2px solid #0c8680;outline-offset:2px}
/* Preserve dashboard's existing night mode variables; only update the hue. */
.so-dashboard[data-theme=dark],.so-dashboard.is-dark,.so-dashboard.so-dark{--sd-navy:#071f29;--sd-blue:#0b3039;--sd-teal:#38b5a5;--sd-ink:#e9f1f0;--sd-muted:#b2c7c5;--sd-border:#29464a;--sd-hover:#183e42;--sd-soft:#102d33}

/* v1.0.25: specialist discoverability and faster navigation, scoped to booking picker. */
.so-bk-picker .so-bk-picker-scroll-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 13px;flex-wrap:wrap}
.so-bk-picker .so-bk-picker-scroll-tools button{background:#e6f3ef;border:1px solid #b6d9d3;color:#075b5e;border-radius:9px;padding:8px 13px;font:700 12px 'DM Sans',system-ui,sans-serif;cursor:pointer}
.so-bk-picker .so-bk-picker-scroll-tools button:hover{background:#076d6b;color:white}
.so-bk-picker .so-bk-picker-scroll-tools span{color:#60747a;font-size:12px}
.so-bk-picker .so-bk-picker-status.is-unavailable{color:#8b5f24}
.so-bk-picker .so-bk-picker-card-bottom a.so-bk-picker-view{background:#e6f3ef!important;color:#076d6b!important;border:1px solid #badbd7!important}
.so-bk-picker .so-bk-picker-card-bottom a.so-bk-picker-view:hover{background:#d5e9e4!important}
.so-dashboard :is(.so-d-card,.so-admin-card,.so-d-panel){border-color:#e0e9e7}
@media(max-width:550px){.so-bk-picker .so-bk-picker-scroll-tools span{display:none}}

.so-bk-picker .so-bk-picker-note{font-size:12px;color:#60747a;margin:0 0 12px}

/* v1.0.26 — consolidated layout polish, scoped to SEHAT components only. */
.so-bk-picker .so-bk-picker-intro h1,.so-bk-picker .so-bk-picker-steps .is-current{color:#071f29}
.so-bk-picker .so-bk-picker-intro p{color:#60747a}
.so-bk-picker .so-bk-picker-layout{background:#fff;border-color:#dfe9e5;box-shadow:0 12px 35px rgba(7,31,41,.035)}
.so-bk-picker .so-bk-picker-filters,.so-bk-picker .so-bk-picker-help section{background:#f8faf7;border-color:#e0e9e7}
.so-bk-picker :is(.so-bk-picker-filters h2,.so-bk-picker-bar h2,.so-bk-picker-help h2,.so-bk-picker-card-heading h3){color:#071f29}
.so-bk-picker .so-bk-picker-card{border-color:#e0e9e7;transition:box-shadow .16s ease,transform .16s ease}
@media(hover:hover){.so-bk-picker .so-bk-picker-card:hover{box-shadow:0 12px 29px rgba(7,31,41,.10);transform:translateY(-2px)}}
.so-bk-picker .so-bk-picker-photo{background:#e6f3ef;color:#076d6b}
.so-bk-picker .so-bk-picker-meta span{background:#e6f3ef;color:#075b5e}
.so-bk-picker .so-bk-picker-steps .is-current b{background:#076d6b}
.so-bk-picker .so-bk-picker-steps b{background:#e6f3ef;color:#075b5e}
.so-bk-picker .so-bk-picker-card-bottom a:not(.so-bk-picker-view){background:linear-gradient(115deg,#075b5e,#0b827c)!important;color:#fff!important}
.so-bk-picker .so-bk-picker-card-bottom a:not(.so-bk-picker-view):hover{background:#071f29!important}
.so-bk-picker .so-bk-picker-reset{background:#e6f3ef;color:#075b5e}
.so-bk-picker .so-bk-picker-bar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.so-bk-picker .so-bk-picker-bar-actions label{display:flex;align-items:center;gap:7px;margin:0;font-size:12px;color:#60747a;font-weight:700}
.so-bk-picker .so-bk-picker-bar-actions select{height:37px;min-height:37px;max-width:170px;padding:5px 25px 5px 9px;font:600 12px 'DM Sans',system-ui,sans-serif;border:1px solid #d8e5e1;border-radius:8px;background:#fff;color:#102e38}
.so-bk-picker .so-bk-picker-scroll-tools button{white-space:nowrap}
.so-bk-picker .so-bk-picker-scroll-tools button:disabled{opacity:.5;cursor:not-allowed}
.so-bk-picker :is(.so-bk-picker-scroll-tools button,.so-bk-picker-card-bottom a,.so-bk-picker-reset):focus-visible{outline:3px solid #0c8680;outline-offset:3px}
.so-bk-picker .so-bk-picker-note{background:#f8faf7;padding:9px 12px;border-radius:9px}
.so-dashboard :is(table tbody tr:nth-child(even)){background:rgba(7,109,107,.035)}
.so-dashboard :is(table tbody tr:hover){background:rgba(7,109,107,.075)}
.so-dashboard[data-so-theme="dark"] :is(table tbody tr:nth-child(even)){background:rgba(56,181,165,.065)}
.so-dashboard[data-so-theme="dark"] :is(table tbody tr:hover){background:rgba(56,181,165,.12)}
@media(max-width:800px){.so-bk-picker .so-bk-picker-bar{align-items:flex-start;flex-direction:column}.so-bk-picker .so-bk-picker-bar-actions{justify-content:flex-start}}
@media(max-width:550px){.so-bk-picker .so-bk-picker-scroll-tools{gap:7px}.so-bk-picker .so-bk-picker-scroll-tools button{flex:1}.so-bk-picker .so-bk-picker-bar-actions{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.so-bk-picker .so-bk-picker-card{transition:none}.so-bk-picker .so-bk-picker-card:hover{transform:none}}
