/* Semantic workspace tokens. Public profile design remains independent. */
:root{--workspace-surface:#fff;--workspace-subtle:#f0f3fa;--workspace-ink:#172554;--workspace-muted:#68788e;--workspace-line:#e5eaf2;--workspace-accent:#315bdf;--workspace-accent-text:#315bdf;--workspace-accent-soft:#eff3ff;--workspace-on-accent:#fff;--workspace-success-bg:#e4f8ef;--workspace-success-ink:#207958;--workspace-pending-bg:#fff2d8;--workspace-pending-ink:#876722;--ink:var(--workspace-ink);--muted:var(--workspace-muted);--line:var(--workspace-line);--brand:var(--workspace-accent);color-scheme:light}
:root[data-workspace-theme="dark"]{--workspace-surface:#182337;--workspace-subtle:#202e44;--workspace-ink:#edf2fc;--workspace-muted:#aab8cd;--workspace-line:#324158;--workspace-success-bg:#173f36;--workspace-success-ink:#8ee2bd;--workspace-pending-bg:#493b22;--workspace-pending-ink:#f1cf86;--bg:#101827;color-scheme:dark}
body,.main{color:var(--workspace-ink)}.card,.side,.modal,.top{background:var(--workspace-surface);border-color:var(--workspace-line);color:var(--workspace-ink)}
body[data-header-surface="dashboard"] .main>.top{background-color:var(--workspace-surface)}
:root[data-workspace-theme="dark"] .side{box-shadow:none}
h1,h2,h3,.logo,.sidefoot strong,.week-heading strong{color:var(--workspace-ink)}.logo span{color:var(--workspace-accent-text)!important}.workspace-wordmark{color:var(--workspace-ink)!important}.muted,.top p,.side small,.sidefoot,.nav button,.nav-public,.stat-detail,.appointment-person small,.request-row p,.request-row small,.demo-footnote,.role-hint{color:var(--workspace-muted)}
.btn,.pill,.input,.service{background:var(--workspace-surface);border-color:var(--workspace-line);color:var(--workspace-ink)}.input::placeholder{color:var(--workspace-muted);opacity:.8}.top select,.segmented{background:var(--workspace-subtle);color:var(--workspace-muted)}.btn:hover{background:var(--workspace-subtle)}.btn.primary,.business-hero .btn,.calendar .selected,.segmented button.selected{background:var(--workspace-accent);border-color:var(--workspace-accent);color:var(--workspace-on-accent)}.btn.primary:hover,.business-hero .btn:hover{background:var(--workspace-accent);filter:brightness(.94);color:var(--workspace-on-accent)}
.nav button.active,.nav button:hover,.avatar,.pill.selected,.service.selected{background:var(--workspace-accent-soft);color:var(--workspace-accent-text)}.pill.selected,.service.selected{border-color:var(--workspace-accent)}.nav-public:hover{color:var(--workspace-accent-text)}.text-button,.appointment-end .text-button,.stat-card .text-button,.share-card .text-button,.request-row .text-button,.section-subhead,.share-card>.hm-icon{color:var(--workspace-accent-text)}.business-hero .muted{color:var(--workspace-muted)}
.tag{background:var(--workspace-success-bg);color:var(--workspace-success-ink)}.tag.pending,.pill.pending{background:var(--workspace-pending-bg);color:var(--workspace-pending-ink)}.request-confirmed{background:var(--workspace-success-bg)}.notice,.preview,.share-card{background-color:var(--workspace-accent-soft);color:var(--workspace-ink)}.share-card{background:var(--workspace-accent-soft)}.profile-link{background:var(--workspace-surface);color:var(--workspace-accent-text);border-color:var(--workspace-line)}.divider,.panel-heading,.listitem,.request-row,.appointment-row,.agenda-toolbar,th,td{border-color:var(--workspace-line)}.divider{background:var(--workspace-line)}
.month-day,.month-blank{background:var(--workspace-surface);color:var(--workspace-ink);border-color:var(--workspace-line)}.month-day:hover{background:var(--workspace-subtle)}.month-day span,.week-event{background:var(--workspace-accent-soft);color:var(--workspace-accent-text);border-color:var(--workspace-accent)}.week-event.is-pending{background:var(--workspace-pending-bg);color:var(--workspace-pending-ink);border-color:var(--workspace-pending-ink)}.month-day.demo-today strong,.month-day i{background:var(--workspace-accent);color:var(--workspace-on-accent)}.week-heading,.month-label,.no-events,.empty-state,.segmented button{color:var(--workspace-muted)}.week-heading:hover{background:var(--workspace-subtle);border-radius:10px}.calendar button:not(:disabled):hover{background:var(--workspace-accent-soft);color:var(--workspace-accent-text)}.toast{background:var(--workspace-ink);color:var(--workspace-surface)}
.workspace-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 16px}.workspace-tools>div{display:grid;gap:3px}.workspace-tools span{font-size:13px;font-weight:600}.workspace-tools small{font-size:11px;color:var(--workspace-muted)}.personalize-trigger{width:40px;padding:0;flex:none}.personalize-trigger .hm-icon{width:19px;height:19px}.workspace-tools .btn{font-size:12px}
.dashboard-widget-board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:start}.workspace-widget{grid-column:span 4;min-width:0}.workspace-widget[data-size="wide"]{grid-column:span 8;grid-row:span 2}.workspace-widget[data-expanded="true"]{grid-column:1/-1;grid-row:auto}.workspace-widget[hidden],.workspace-empty[hidden]{display:none}.workspace-empty{padding:44px;text-align:center}.workspace-empty p{margin:12px 0 20px;color:var(--workspace-muted)}.workspace-widget.stat-card{align-self:stretch}.widget-edit-controls{display:none}.is-editing .workspace-widget{outline:1px dashed var(--workspace-accent-text);outline-offset:3px}.is-editing .widget-edit-controls{display:flex;align-items:center;gap:7px;padding:0 0 14px;margin-bottom:12px;border-bottom:1px dashed var(--workspace-line);color:var(--workspace-accent-text)}.widget-edit-name{font-size:11px;font-weight:600;flex:1;min-width:0}.widget-handle{display:flex;cursor:grab}.widget-handle .hm-icon{width:15px;height:15px}.widget-edit-controls .row{gap:3px;flex-wrap:nowrap}.widget-edit-controls .btn{min-height:30px;padding:4px 7px;font-size:10px}.widget-edit-controls .btn:disabled{opacity:.3;cursor:default}.widget-edit-controls .hm-icon{width:13px;height:13px}.widget-edit-controls .icon-only{width:30px}.stat-card .widget-edit-name{display:none}.stat-card .widget-edit-controls{justify-content:space-between}.is-dragging{opacity:.45}.drop-target{outline:3px solid var(--workspace-accent-text)!important}
.workspace-customizer{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(430px,100%);max-width:100%;padding:0;border:0;border-left:1px solid var(--workspace-line);background:var(--workspace-surface);color:var(--workspace-ink);box-shadow:-20px 0 80px #0003;overflow:hidden}.workspace-customizer[open]{display:flex;flex-direction:column}.workspace-customizer::backdrop{background:#10182866}.customizer-head{padding:calc(24px + env(safe-area-inset-top,0px)) 24px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--workspace-line);flex:none}.customizer-head p{font-size:12px;color:var(--workspace-accent-text);margin-bottom:3px}.customizer-head h2{font-size:24px}.icon-only{width:38px;padding:0}.customizer-body{overflow-y:auto;padding:20px 24px;flex:1;min-height:0;overscroll-behavior:contain}.customizer-intro{font-size:13px;color:var(--workspace-muted)}.customizer-body section{padding:24px 0;border-bottom:1px solid var(--workspace-line)}.customizer-body h3{font-size:14px;margin-bottom:12px}.customizer-body section>p{font-size:12px;color:var(--workspace-muted);margin:-4px 0 14px}.customizer-body small{font-size:11px;color:var(--workspace-muted);line-height:1.5;display:block}.appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.appearance-options button{padding:7px;border:1px solid var(--workspace-line);border-radius:10px;background:var(--workspace-surface);color:var(--workspace-muted);font-size:12px;text-align:center}.appearance-options button.selected{border-color:var(--workspace-accent-text);box-shadow:0 0 0 1px var(--workspace-accent-text);color:var(--workspace-accent-text)}.theme-preview{height:58px;display:block;position:relative;border-radius:6px;margin-bottom:8px;border:1px solid #aab8cd33;overflow:hidden}.preview-light{background:#f1f4fa}.preview-dark{background:#101827}.preview-system{background:linear-gradient(90deg,#f1f4fa 50%,#101827 50%)}.theme-preview i{position:absolute;inset:0 auto 0 0;width:23%;background:#ffffffb3;border-right:1px solid #aab8cd33}.preview-dark i{background:#25344a}.theme-preview b{position:absolute;inset:12px 8px 12px 33%;border-radius:3px;background:#ffffff;border-top:5px solid var(--workspace-accent)}.preview-dark b{background:#25344a}.preview-system b{background:linear-gradient(90deg,#ffffff 25%,#25344a 25%)}.accent-options{display:flex;gap:12px;margin:14px 0 18px}.accent-choice{width:34px;height:34px;border-radius:50%;background:var(--swatch);border:3px solid var(--workspace-surface);outline:1px solid var(--workspace-line);position:relative}.accent-choice[aria-pressed=true]{outline:2px solid var(--workspace-accent-text);outline-offset:2px}.accent-choice[aria-pressed=true]:after{content:'';position:absolute;width:6px;height:6px;background:white;border-radius:50%;top:11px;left:11px}.custom-accent{display:flex;align-items:center;justify-content:space-between;padding:12px 0;color:var(--workspace-ink);font-size:12px}.custom-accent input{width:48px;height:34px;padding:2px;border:1px solid var(--workspace-line);border-radius:7px;background:var(--workspace-surface)}.customizer-body .segmented{width:fit-content}.customizer-body .row h3{margin:0}.widget-toggle{display:flex;position:relative;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--workspace-line);font-weight:400}.widget-toggle:last-child{border:0}.widget-toggle>span:first-child{flex:1}.widget-toggle strong{font-size:12px;display:block;margin-bottom:3px}.widget-toggle input{width:38px;height:24px;position:absolute;right:0;opacity:0;cursor:pointer}.switch-track{display:block;flex:none;width:36px;height:22px;background:var(--workspace-line);border-radius:99px;pointer-events:none;position:relative;transition:background .18s}.switch-track:after{content:'';position:absolute;width:16px;height:16px;top:3px;left:3px;background:var(--workspace-surface);border-radius:50%;transition:transform .18s}.widget-toggle input:checked+.switch-track{background:var(--workspace-accent)}.widget-toggle input:checked+.switch-track:after{transform:translateX(14px);background:var(--workspace-on-accent)}.widget-toggle input:focus-visible+.switch-track{outline:3px solid var(--workspace-accent-text);outline-offset:3px}.customizer-reset{border:0!important}.customizer-reset small{margin-top:12px}.customizer-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--workspace-line);background:var(--workspace-surface);flex:none}.customizer-footer span{font-size:11px;color:var(--workspace-muted)}
:root[data-workspace-density="compact"] .workspace-widget{padding:16px}:root[data-workspace-density="compact"] .appointment-row{padding:12px 0}:root[data-workspace-density="compact"] .request-row{padding:12px 0}:root[data-workspace-density="compact"] .dashboard-widget-board{gap:14px}
@media(max-width:1150px){.workspace-widget[data-size="wide"]{grid-column:1/-1;grid-row:auto}.workspace-widget[data-size="medium"]{grid-column:span 6}}
@media(max-width:760px){.top{gap:8px}.top select{max-width:105px!important}.top .row{gap:0}.personalize-trigger{width:34px;min-height:34px}.personalize-trigger .hm-icon{width:17px;height:17px}.workspace-wordmark{font-size:18px!important}.dashboard-widget-board{gap:14px}.workspace-widget[data-size="small"]{grid-column:span 4;padding:14px 10px}.workspace-widget[data-size="medium"],.workspace-widget[data-size="wide"],.workspace-widget[data-expanded="true"]{grid-column:1/-1;grid-row:auto}.workspace-tools{margin:22px 0 16px}.workspace-tools span{font-size:11px}.workspace-tools small{font-size:10px;max-width:165px}.workspace-tools .btn{font-size:11px;padding:8px 12px}.workspace-tools .hm-icon{width:14px;height:14px}.is-editing .workspace-widget[data-size="small"]{grid-column:1/-1}.is-editing .stat-card .widget-edit-name{display:block}.is-editing .stat-card .widget-edit-controls{justify-content:flex-start}.widget-edit-name{font-size:10px}.widget-edit-controls .btn{min-height:34px}.widget-edit-controls .icon-only{width:32px}.widget-handle{display:none}.customizer-head{padding-left:20px;padding-right:20px}.customizer-body{padding:20px}.customizer-footer{padding-left:20px;padding-right:20px}.workspace-empty{padding:30px 20px}.workspace-empty h2{font-size:17px}}
@media(max-width:360px){.top select{max-width:90px!important}.workspace-wordmark{font-size:16px!important}.workspace-tools{align-items:flex-start}.widget-edit-name{max-width:90px}}
@media(prefers-reduced-motion:reduce){.switch-track,.switch-track:after{transition:none}}

.widget-edit-hint{font-size:12px;color:var(--workspace-muted);margin:0 0 18px;max-width:620px}.widget-edit-hint[hidden]{display:none}.preview h2,.preview p,.profilehero>div:not(.avatar){background:var(--workspace-surface);color:var(--workspace-ink)}.widget-toggle input{min-height:30px;min-width:40px}.workspace-widget[data-size="wide"][data-expanded="true"]{grid-column:1/-1;grid-row:auto}
.appointment-row .avatar{background:var(--workspace-accent-soft);color:var(--workspace-accent-text)}

.dashboard-profile-cover{height:160px;background-size:cover;background-position:center;border-radius:12px;margin-bottom:20px}.dashboard-profile-logo{width:64px;height:64px;object-fit:contain;padding:4px;background:var(--workspace-surface);border-radius:12px;margin:12px 0}.dashboard-profile-logo[hidden],.dashboard-profile-cover[hidden],.account-avatar-preview[hidden]{display:none}.account-avatar-preview{width:64px;height:64px;object-fit:cover;border-radius:50%;margin-top:12px}

/* Apply authenticated colors without a flash or a layout transition. */
@media(prefers-reduced-motion:no-preference){
 html[data-workspace-appearance-transition=true] :is(body,.main,.side,.top,.card,.modal,.btn,.input,.pill,.segmented,.segmented button,.nav button,.nav-public,.avatar,.workspace-widget,.ag-detail,.ag-detail-body,.ag-detail footer,.ag-observations,.logo,.workspace-wordmark,h1,h2,h3,.muted,.stat-detail,.sidefoot,.sidefoot strong){transition:background-color 420ms cubic-bezier(.2,0,0,1),color 420ms cubic-bezier(.2,0,0,1),border-color 420ms cubic-bezier(.2,0,0,1)}
 html[data-workspace-appearance-transition=true] :is(.logo,.workspace-wordmark) :is(svg,g,path,rect,text,tspan){transition:fill 420ms cubic-bezier(.2,0,0,1),stroke 420ms cubic-bezier(.2,0,0,1)}
}
