/* Theme colours are shared by all roles, including the sign-in screen. */
:root{color-scheme:light;--pink:#ad5268;--pink-dark:#8f3c51;--pink-soft:#f7e8ed;--muted:#756c67;--focus:#9a3e54}
:root[data-theme=dark]{color-scheme:dark;--ink:#f4f1ef;--muted:#b5adaa;--line:#303030;--paper:#121212;--canvas:#000000;--pink:#d88c9a;--pink-dark:#f0acba;--pink-soft:#301b23;--green:#a1cdaa;--green-soft:#16271b;--amber:#e4bc88;--amber-soft:#302518;--navy:#d5d8e7;--shadow:0 16px 48px #0008;--focus:#f0acba}
.brand-logos{display:block;width:100%;max-width:230px}.brand-logos .brand-logo{width:100%;max-width:none}.brand-logos .logo-dark{display:none}
.auth-panel .brand-logos{max-width:300px}
:root[data-theme=dark] .brand-logos .logo-light{display:none}
:root[data-theme=dark] .brand-logos .logo-dark{display:block}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:40px}
.theme-toggle .theme-icon{font-size:19px;line-height:1;margin:0}.theme-toggle .theme-label{margin:0}
.auth-theme-switch{position:absolute;right:max(20px,env(safe-area-inset-right));top:max(20px,env(safe-area-inset-top))}
.auth-screen{position:relative;padding-top:80px}.auth-theme-switch .button{min-height:44px}
button:focus-visible,a:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline-color:var(--focus)}
:root[data-theme=dark] body,:root[data-theme=dark] .main-area{background:#000;color:var(--ink)}
:root[data-theme=dark] .sidebar,:root[data-theme=dark] .topbar,:root[data-theme=dark] .auth-panel{background:#000;border-color:var(--line)}
:root[data-theme=dark] :where(.panel,.stat-card,.modal,.quick-card,.searchbox,.select,.button,.field input,.field select,.field textarea){background:var(--paper);color:var(--ink);border-color:var(--line)}
:root[data-theme=dark] .auth-panel{background:#000}
:root[data-theme=dark] .brand{color:var(--ink)}
:root[data-theme=dark] .button-primary{background:var(--pink);border-color:var(--pink);color:#1c0b10}
:root[data-theme=dark] .button-primary:hover{background:#e5a0ad}
:root[data-theme=dark] :is(.button-light:hover,.nav-item:hover){background:#211d1e}
:root[data-theme=dark] .nav-item.active{background:var(--pink-soft);color:var(--pink-dark)}
:root[data-theme=dark] :is(.brand small,.branch-switch small,.nav-label,.nav-item,.user-chip small,.breadcrumb,.top-date,.page-heading p,.stat-top,.stat-foot,.person-sub,.service-name,.panel-subtitle,.table-muted,.data-table th,.field label,.revenue-meta,.customer-hero p,.product-info small,.empty-state,.camera-status,.modal p){color:var(--muted)}
:root[data-theme=dark] :is(.breadcrumb b,.appointment-time,.person-name,.panel-title,.cal-month,.product-info b){color:var(--ink)}
:root[data-theme=dark] .searchbox input{background:transparent;color:var(--ink)}
:root[data-theme=dark] :is(input,textarea)::placeholder{color:#aaa09e;opacity:1}
:root[data-theme=dark] :is(.branch-switch,.user-chip,.capacity,.customer-tabs,.data-table th,.data-table td,.appointment-row,.product-card,.routine-row,.metric-card){border-color:var(--line)}
:root[data-theme=dark] .help-card{background:#121212;border-color:var(--line)}
:root[data-theme=dark] .help-icon{background:#241b1f;color:var(--pink-dark)}
:root[data-theme=dark] .help-card small{color:var(--muted)}
:root[data-theme=dark] :is(.link-button,.text-button){color:var(--pink-dark)}
:root[data-theme=dark] :is(.stat-icon,.avatar-pink){background:var(--pink-soft);color:var(--pink-dark)}
:root[data-theme=dark] :is(.avatar-sm,.pill,.cal-arrow){background:#292425;color:#ddd2d1}
:root[data-theme=dark] .avatar-dark{background:#33262c;color:#f5e4e9}
:root[data-theme=dark] .nav-item .nav-count{background:#4a2634;color:#ffd4df}
:root[data-theme=dark] .dots{color:#d0c7c4}
:root[data-theme=dark] .calendar-days button{color:var(--ink)}
:root[data-theme=dark] .calendar-days button:hover{background:#272224}
:root[data-theme=dark] .calendar-days .selected{background:var(--pink);color:#1c0b10}
:root[data-theme=dark] .calendar-days .muted-day{color:#766c69}
:root[data-theme=dark] .calendar-week span{color:var(--muted)}
:root[data-theme=dark] .status{background:var(--green-soft);color:var(--green)}
:root[data-theme=dark] .status.waiting{background:var(--amber-soft);color:var(--amber)}
:root[data-theme=dark] .status.cancelled{background:#292525;color:#c1b6b2}
:root[data-theme=dark] .stock-low{color:var(--amber)}
:root[data-theme=dark] :is(.stock-ok,.positive,.metric-trend){color:var(--green)}
:root[data-theme=dark] .progress{background:#30272b}
:root[data-theme=dark] .progress span{background:var(--pink)}
:root[data-theme=dark] .bar{background:#5a3742}
:root[data-theme=dark] .bar.current{background:var(--pink)}
:root[data-theme=dark] .bar-label{color:var(--muted)}
:root[data-theme=dark] .quick-icon{background:var(--pink-soft);color:var(--pink-dark)}
:root[data-theme=dark] .customer-hero{background:linear-gradient(105deg,#27161e,#171314)}
:root[data-theme=dark] .avatar-lg{background:#39252e;color:var(--pink-dark)}
:root[data-theme=dark] .customer-tabs button{color:var(--muted)}
:root[data-theme=dark] .customer-tabs button.active{color:var(--pink-dark)}
:root[data-theme=dark] .product-art{background:linear-gradient(135deg,#5c453b,#382923);color:#f7e7df}
:root[data-theme=dark] .check{border-color:#847370}
:root[data-theme=dark] .check.done{background:#526e56}
:root[data-theme=dark] .form-error{color:#ffb0ba!important}
:root[data-theme=dark] .modal-backdrop{background:#000b}
:root[data-theme=dark] .navigation-scrim{background:#000b}
:root[data-theme=dark] .toast{background:#f2e9e7;color:#211b1b}
@media(max-width:760px){
 .brand-logos{max-width:250px}.top-actions .theme-toggle{width:44px;padding:0}.top-actions .theme-label{display:none}
 .theme-toggle{min-height:44px}.auth-theme-switch .theme-label{display:inline}
}
@media(prefers-reduced-motion:no-preference){.theme-toggle{transition:background-color .15s ease}}
/* Keep the logo visible where the old mobile wordmark used to be hidden. */
.auth-panel .brand .brand-logos{display:block}

:root[data-theme=dark] :is(.field input,.field select,.field textarea){border-color:#74666c}
