/* Final readability and interaction layer shared by every authenticated view. */
[hidden]{display:none!important}.app-shell,.login-screen,.modal-backdrop,.account-editor-backdrop{font-size:14px;line-height:1.48}.app-shell button,.app-shell input,.app-shell select,.app-shell textarea,.login-screen button,.login-screen input,.login-screen select{font-family:Manrope,sans-serif}.app-shell button,.login-screen button{min-height:38px}.app-shell button:disabled,.login-screen button:disabled{cursor:not-allowed;opacity:.52;filter:saturate(.55)}.app-shell :is(button,a,input,select,textarea,[tabindex]):focus-visible,.login-screen :is(button,a,input,select,textarea,[tabindex]):focus-visible,.modal-backdrop :is(button,input,select,textarea):focus-visible,.account-editor-backdrop :is(button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 52%,transparent)!important;outline-offset:2px}.app-shell .page{padding-top:34px}.app-shell .page-heading{gap:24px}.app-shell .page-heading h1,.app-shell .simple-page>h1{font-size:clamp(29px,2.5vw,38px);line-height:1.12}.app-shell .subheading{max-width:720px;margin-top:6px;font-size:13px;line-height:1.65}.app-shell .eyebrow{font-size:10px;line-height:1.4;letter-spacing:.14em}.app-shell .panel,.app-shell .service-card,.app-shell .employee-card,.app-shell .automation-card{border-color:color-mix(in srgb,var(--line) 86%,var(--ink));border-radius:15px}.app-shell .panel-title{gap:18px}.app-shell .panel-title h3,.app-shell .panel>h3{font-size:15px;line-height:1.35}.app-shell .panel-title span{font-size:11px;line-height:1.5}.app-shell .nav-link{min-height:42px;font-size:13px;line-height:1.25}.app-shell .nav-label{font-size:10px}.app-shell .sidebar-foot strong{font-size:12px}.app-shell .sidebar-foot small{font-size:10px}.app-shell .topbar{gap:18px}.app-shell .search input{font-size:13px}.app-shell .outline,.app-shell .add-button,.app-shell .text-button,.app-shell .export-row button{font-size:12px!important;line-height:1.25}.app-shell :is(input,select,textarea):not([type="range"]):not([type="checkbox"]):not([type="radio"]):not([type="color"]){min-height:42px;font-size:13px}.app-shell textarea{min-height:96px;resize:vertical}.app-shell label{line-height:1.4}.app-shell label>small{font-size:10px;line-height:1.5}.app-shell .metrics p,.app-shell .occupancy-metrics small,.app-shell .profitability-metrics small{font-size:10px;line-height:1.35}.app-shell .metrics span,.app-shell .occupancy-metrics p,.app-shell .profitability-metrics span{font-size:11px;line-height:1.45}.app-shell .metrics h2{font-size:27px}.app-shell .appointment strong,.app-shell .next-client h3{font-size:12px;line-height:1.4}.app-shell .appointment span,.app-shell .next-client p,.app-shell .next-client span,.app-shell .notice span{font-size:10.5px;line-height:1.5}.app-shell .client-table .thead,.app-shell .profit-table-head{font-size:9px}.app-shell .client-row,.app-shell .developer-table,.app-shell .directory-row{font-size:12px}.app-shell .client-name small,.app-shell .client-row>span,.app-shell .directory-row span{font-size:10.5px;line-height:1.45}.app-shell .empty-inline,.app-shell .no-results{padding:24px;color:var(--muted);font-size:12px;line-height:1.6;text-align:center}.app-shell .toast,.toast{max-width:min(420px,calc(100vw - 32px));font-size:12px;line-height:1.5}.modal{width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto}.modal label{font-size:12px}.modal input,.modal select,.modal textarea{font-size:13px}.notification-menu{font-size:12px}.week-calendar,.calendar-host{scrollbar-gutter:stable}.heatmap-scroll,.client-table,.developer-table,.calendar-zoom-viewport{scrollbar-gutter:stable both-edges}.app-shell [aria-current="page"]{font-weight:800}.quality-network-banner{position:fixed;left:50%;top:12px;z-index:120;transform:translateX(-50%);padding:10px 16px;border:1px solid #b75a62;border-radius:12px;background:#351d22;color:#fff;font-size:12px;box-shadow:0 14px 35px rgba(0,0,0,.24)}
@media(max-width:900px){.app-shell .page{padding:24px 20px 45px}.app-shell .page-heading{align-items:flex-start}.app-shell .topbar{padding-left:18px;padding-right:18px}.app-shell .dashboard-grid,.app-shell .report-grid{gap:14px}.app-shell .client-table{overflow-x:auto}.app-shell .client-table>.thead,.app-shell .client-table>#clientRows{min-width:760px}}
@media(max-width:680px){.app-shell .page{padding:20px 13px 38px}.app-shell .page-heading{display:grid;gap:17px}.app-shell .page-heading h1,.app-shell .simple-page>h1{font-size:28px}.app-shell .subheading{font-size:12px}.app-shell .topbar{height:66px;padding:0 12px;gap:8px}.app-shell .top-actions{gap:7px}.app-shell .add-button{min-height:42px}.app-shell .metrics{gap:9px}.app-shell .metrics article{padding:15px;min-height:132px}.app-shell .panel{padding:16px}.app-shell .panel-title h3,.app-shell .panel>h3{font-size:14px}.app-shell :is(input,select,textarea):not([type="range"]):not([type="checkbox"]):not([type="radio"]):not([type="color"]){font-size:16px}.modal-backdrop{padding:8px}.modal{max-height:calc(100vh - 16px);padding:22px 16px}.toast{left:12px;right:12px;bottom:16px;max-width:none;text-align:center}.quality-network-banner{top:8px;width:calc(100% - 20px);text-align:center}}
@media(prefers-reduced-motion:reduce){.app-shell *,.login-screen *,.modal-backdrop *,.account-editor-backdrop *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Public presentation and account access share the same readability standard. */
.landing{font-size:15px;line-height:1.6}.landing :is(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--landing-accent,#d976a0) 72%,#fff);outline-offset:3px}.landing-nav nav a{font-size:12px;line-height:1.35}.landing :is(.landing-login,.landing-join,.landing-primary,.landing-secondary,.landing-cta button){min-height:46px;font-size:11.5px;line-height:1.2}.landing :is(.landing-kicker,.section-kicker,.feature-index,.landing-eyebrow){font-size:max(10px,.68rem);letter-spacing:.14em}.landing :is(.hero-lead,.landing-intro,.feature-copy p,.feature-card p,.landing-section>p){font-size:clamp(12.5px,.92vw,15px);line-height:1.7}.landing :is(.feature-copy h2,.feature-card h3,.landing-section h2){line-height:1.08;text-wrap:balance}.landing :is(.feature-card,.landing-card,.landing-demo,.compare-stage){border-color:color-mix(in srgb,currentColor 17%,transparent)}.landing .feature-demo :is(b,strong){font-size:max(9px,.58rem)}.landing .feature-demo :is(p,span,em,small){line-height:1.4}.landing .feature-demo p{font-size:max(9.5px,.62rem)}.landing .feature-demo :is(em,small){font-size:max(8.5px,.56rem)}.landing-footer-intro p{font-size:12px;line-height:1.65}.landing-footer-contact :is(p,span){font-size:10.5px;line-height:1.5}.landing-footer-bottom{font-size:10px;line-height:1.5}
.login-screen{line-height:1.55}.login-shell{border-color:rgba(255,255,255,.16)}.login-card>p,.registration-card>p{font-size:13px;line-height:1.55}.login-card label,.registration-card label{font-size:12px;line-height:1.4}.login-card :is(input,select,textarea),.registration-card :is(input,select,textarea){min-height:48px;font-size:14px;line-height:1.35}.login-card textarea,.registration-card textarea{min-height:96px;resize:vertical}.login-card :is(button,.login-btn),.registration-card :is(button,.login-btn){min-height:48px;font-size:13px}.login-register-link{font-size:12px;line-height:1.45}.login-security{font-size:10.5px;line-height:1.5}.salon-choice label{min-height:66px;padding:13px 14px}.salon-choice label strong{font-size:12px;line-height:1.35}.salon-choice label small{font-size:10.5px;line-height:1.45}.login-footer{font-size:10px;line-height:1.55}.login-footer strong{font-size:11px}
@media(max-width:820px){.landing-nav nav a{font-size:11.5px}.landing :is(.landing-login,.landing-join,.landing-primary,.landing-secondary,.landing-cta button){min-height:48px;font-size:11px}.landing :is(.hero-lead,.landing-intro,.feature-copy p,.feature-card p,.landing-section>p){font-size:13px}.login-screen{display:flex;min-height:100dvh;flex-direction:column;align-items:center;justify-content:flex-start;overflow-x:hidden;overflow-y:auto}.login-shell{order:1;flex:0 0 auto}.login-footer{position:static!important;inset:auto!important;order:2;width:100%;margin-top:18px;padding:16px 20px 22px;text-align:center}}
@media(max-width:480px){.login-screen{padding-top:54px!important}.login-shell{width:100%;min-height:auto!important}.login-card,.registration-card{padding-inline:20px}.login-card>p,.registration-card>p{font-size:12.5px}.salon-choice label{min-height:70px}.landing-footer-bottom{font-size:9.5px}}
@media(prefers-reduced-motion:reduce){.landing *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Compact sidebar must remain an icon rail regardless of the active theme. */
.app-shell .sidebar-compact-toggle{width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border-radius:50%;aspect-ratio:1;line-height:1}
@media(min-width:761px){
  body.sidebar-compact .app-shell .sidebar{width:82px;padding-right:12px;padding-left:12px;overflow-x:visible}
  body.sidebar-compact .app-shell main{width:calc(100% - 82px);margin-left:82px}
  body.sidebar-compact .app-shell .brand{justify-content:center}
  body.sidebar-compact .app-shell .brand-wordmark,
  body.sidebar-compact .app-shell .nav-label,
  body.sidebar-compact .app-shell .nav-link>span,
  body.sidebar-compact .app-shell .nav-link>em,
  body.sidebar-compact .app-shell .nav-chevron,
  body.sidebar-compact .app-shell .sidebar-user,
  body.sidebar-compact .app-shell .sidebar-foot .more{display:none!important}
  body.sidebar-compact .app-shell .nav-link,
  body.sidebar-compact .app-shell .nav-link.active,
  body.sidebar-compact .app-shell .nav-link:hover{width:100%;min-height:42px;justify-content:center;gap:0;padding:0;color:transparent!important;font-size:0!important;line-height:0;white-space:nowrap}
  body.sidebar-compact .app-shell .nav-link i{display:block;width:24px;color:var(--muted)!important;font-size:20px!important;line-height:42px;text-align:center}
  body.sidebar-compact .app-shell .nav-link:is(:hover,.active) i{color:var(--accent,var(--pink))!important}
  body.sidebar-compact .app-shell .nav-submenu .nav-link{margin-left:0;width:100%}
  body.sidebar-compact .app-shell .sidebar-foot{justify-content:center;padding-right:0;padding-left:0}
}
