/* Theme choice keeps appointment colors tied to each professional. */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border:1px solid #695367;border-radius:9px;background:#211923;color:#f9d5df;font-size:13px;white-space:nowrap;flex-shrink:0}
.theme-toggle:focus-visible{outline:3px solid #e7a5ba;outline-offset:3px}
.appointment{border-radius:8px;border-left-width:4px;text-align:left}
.staff-heading{min-height:78px}.calendar-shell{overflow:hidden}
:root[data-theme=light]{color-scheme:light;--ink:#302631;--muted:#716773;--line:#e7dfe5;--accent:#ad3d63;--blue:#a33e66;color:#302631;background:#f7f5f7}
[data-theme=light] body{background:#f7f5f7;color:#302631}
[data-theme=light] :is(h1,h2,h3){color:#302631}
[data-theme=light] p{color:#716773}
[data-theme=light] :is(.topbar,.calendar-toolbar,.section-title,.staff-row,.dialog-head){background:#fff;border-color:#e7dfe5}
[data-theme=light] :is(.surface,.calendar-shell,.staff-card,.stat,.metric-card,.plan-card,.logo-settings,.mx-panel,.mx-stat){background:#fff;border-color:#e7dfe5;box-shadow:0 3px 15px #49304406;color:#302631}
[data-theme=light] :is(.breadcrumb,.breadcrumb strong,.page-heading h1,.stat strong,.metric-card strong,.staff-heading b,.staff-numbers b,.section-title h2,.today-client b,.stock-item b,.finance-summary-row b,.detail-service b,.profile-intro h2,.return-card h3){color:#302631}
[data-theme=light] :is(.page-description,.section-title span,.stat small,.stat span,.metric-label,.metric-card small,.timezone,.staff-heading small,.staff-total,.time-axis span,.calendar-bottom,.agenda-summary,.agenda-summary strong,.filter-right,.today-client small,.finance-summary-row,.stock-item small,.staff-numbers small,footer,footer small){color:#716773}
[data-theme=light] :is(.button,.button.compact,.icon-button,.theme-toggle){background:#fff;border-color:#dfced6;color:#704458}
[data-theme=light] :is(.button:hover,.icon-button:hover,.theme-toggle:hover){background:#faeaf0}
[data-theme=light] :is(.button.primary,.page-heading .button.primary,.cash-banner .primary,.mx-btn.primary){background:#ad3d63;border-color:#ad3d63;color:#fff;box-shadow:0 3px 10px #ad3d631a}
[data-theme=light] .button.primary:hover{background:#913150}
[data-theme=light] :is(.text-button,.eyebrow,.positive){color:#943651}
[data-theme=light] :is(input,select,textarea,form input,form select,form textarea,.search,.directory-search,.calendar-filters select,.revenue-panel select,.mx-filters input,.mx-filters select){background:#fff;border-color:#dcd1da;color:#302631;color-scheme:light}
[data-theme=light] :is(input::placeholder,textarea::placeholder){color:#827783}
[data-theme=light] :is(select option,form select option,.calendar-filters select option){background:#fff;color:#302631}
[data-theme=light] :is(.search input,.date-picker input){color:#302631}
[data-theme=light] :is(.view-tabs,.calendar-bottom,.time-axis){background:#f8f5f8;border-color:#e7dfe5}
[data-theme=light] .tab{color:#716773}
[data-theme=light] .tab.selected{background:#f4cfdb;color:#762d47;box-shadow:none}
[data-theme=light] :is(.calendar-filters,.staff-heading,.professional-column,.staff-total){border-color:#e7dfe5}
[data-theme=light] .time-grid{background:#fff}
[data-theme=light] .time-slot{border-bottom-color:#f0ebf0}
[data-theme=light] .time-slot:nth-child(even){border-bottom-color:#e7dfe5}
[data-theme=light] .time-slot:hover{background:#fceef3}
[data-theme=light] .time-slot span{color:#994766}
[data-theme=light] .avatar{background:color-mix(in srgb,var(--color) 15%,white);color:color-mix(in srgb,var(--color) 65%,#151015)}
[data-theme=light] :is(.appointment,.appointment.scheduled,.appointment.in_service,.week-appointment){background:color-mix(in srgb,var(--color) 19%,white);border-color:color-mix(in srgb,var(--color) 35%,white);border-left-color:var(--color);color:#2f2935;box-shadow:0 2px 5px #40304008}
[data-theme=light] .appointment.in_service{background:color-mix(in srgb,var(--color) 28%,white);outline:1px solid var(--color)}
[data-theme=light] :is(.appointment b,.appointment small,.appointment-time,.appointment-bottom,.week-appointment small){color:#302a36}
[data-theme=light] .appointment.completed{opacity:.8}
[data-theme=light] .appointment:hover{filter:brightness(.98);box-shadow:0 3px 10px #4030401a}
[data-theme=light] :is(.appointment.cancelled,.appointment.no_show){background:#efedef;border-color:#c7bec9;color:#706674}
[data-theme=light] :is(.week-day,.month-day){background:#fff;border-color:#e7dfe5;color:#302631}
[data-theme=light] :is(.week-heading,.week-add,.month-label){color:#716773;border-color:#e7dfe5}
[data-theme=light] .month-day.muted{background:#f5f2f5;color:#9a8e9d}
[data-theme=light] .month-day>span{background:color-mix(in srgb,var(--color) 18%,white);color:#302631}
[data-theme=light] :is(.week-heading.today b,.month-day.today>b,.now-line>span){background:#ad3d63;color:#fff}
[data-theme=light] .now-line{background:#ad3d63}
[data-theme=light] :is(th,.mx-table th){background:#f8f5f8;color:#716773;border-color:#e7dfe5}
[data-theme=light] :is(td,.history-item,.today-row,.stock-item){color:#302631;border-color:#e7dfe5}
[data-theme=light] :is(tbody tr:hover,.history-item:hover,.today-row:hover,.stock-item:hover){background:#fcf3f6}
[data-theme=light] :is(.badge,.demo-label,.local-chip){background:#f4edf3;color:#704458;border-color:#e4d6df}
[data-theme=light] :is(.badge.confirmed,.badge.completed,.payment-status.paid){background:#e2f3e9;color:#286c4e}
[data-theme=light] .badge.scheduled{background:#fff0d8;color:#86591f}
[data-theme=light] .badge.in_service{background:#eee5fb;color:#664092}
[data-theme=light] :is(.badge.cancelled,.badge.no_show){background:#fbe5e9;color:#923b4a}
[data-theme=light] .negative{color:#a33549}
[data-theme=light] :is(.notice,.cash-banner,.welcome-strip,.catalog-preview,.plan-includes,.detail-service,.detail-note,.payment-status,.history-item,.return-card,.luna-answer,.luna-callout,.preview-balance,.segment-card,.switch-item,.mx-start){background:#fcf3f6;border-color:#ead7e0;color:#704458}
[data-theme=light] :is(.welcome-strip h1,.welcome-strip h1 span,.cash-banner h2,.dialog-head h2,.dialog-body b){color:#74364e}
[data-theme=light] :is(.catalog-group b,.plan-includes span,.dialog-body p,.form-help,.dialog-body label,.plan-card p,.detail-note p){color:#716773}
[data-theme=light] :is(.category-tags>span,.empty-icon,.metric-label>span,.insight-list>button>span,.mini-icon,.callout-icon){background:#f9e6ee;color:#944365;border-color:#edd4de}
[data-theme=light] :is(.metric-note,.insight-list>button,.today-row,.finance-summary-row,.stock-item){background:transparent;color:#716773}
[data-theme=light] :is(dialog,dialog.sheet,.luna-float-panel){background:#fff;color:#302631;border-color:#dfcbd6}
[data-theme=light] dialog::backdrop{background:#24192366}
[data-theme=light] :is(.form-error,.logo-error){color:#b02f43!important}
[data-theme=light] .danger-button{background:#ffedf0;color:#a52f44;border-color:#edbfca}
[data-theme=light] .mx-shell{--mx-bg:#f7f5f7;--mx-panel:#fff;--mx-line:#e7dfe5;--mx-muted:#716773;--mx-ink:#302631}
[data-theme=light] .mx-topbar{background:#fff;border-color:#e7dfe5}
[data-theme=light] :is(.mx-heading h1,.mx-stat strong,.mx-panel h2,.mx-plan h3,.mx-plan strong,.mx-summary b){color:#302631}
[data-theme=light] :is(.mx-heading p,.mx-footnote,.mx-stat small,.mx-plan p,.mx-plan li,.mx-table small,.mx-footer){color:#716773}
[data-theme=light] .mx-btn{background:#fff;color:#704458;border-color:#dfced6}
[data-theme=light] .mx-plan.featured{background:#fff6f9;border-color:#d77c9b}
[data-theme=light] .mx-table tr:hover td{background:#fcf3f6}
/* Dark navigation mirrors the reference and grounds both color themes. */
[data-theme=light] :is(.sidebar,.mx-sidebar){background:#201d24;border-color:#38303d}
[data-theme=light] :is(.sidebar .brand,.mx-brand,.mx-sidebar b,.sidebar .workspace b){color:#fff}
[data-theme=light] :is(.nav-item.active,.mx-sidebar nav button.active){background:#f5bfd0;color:#562c3d!important;border-color:#f5bfd0}
[data-theme=light] :is(.sidebar .workspace,.sidebar-quick button){background:#2c2630;color:#f8e9ef;border-color:#51404c}
@media(max-width:700px){.theme-toggle{min-width:64px;padding:7px 8px;font-size:12px}.top-actions{gap:6px}.topbar .top-actions>.demo-label{display:none}.mx-topbar>div{gap:6px}}
