:root{font-optical-sizing:auto;color:#1d2725;font-synthesis:none;--ink:#1d2725;--muted:#596761;--accent:#285e50;--line:#e2e7e3;--surface:#fff;background:#f5f5f7;font:100%/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}.network-notice{color:#704511;background:#fff5e6;border:1px solid #d7b482;border-radius:.8rem;padding:1rem}.install-help{color:var(--muted);align-items:flex-start;gap:.8rem;margin-top:1rem;font-size:.85rem;display:flex}.install-help details{max-width:32rem}.install-help summary{cursor:pointer;min-height:44px;padding:.65rem 0}.install-help p{line-height:1.6}body{background:radial-gradient(at 0 0,#eaf1ec 0,#0000 52%),#f5f5f7;min-height:100vh;margin:0}a{color:var(--accent);text-underline-offset:.25em}a:hover{text-decoration-thickness:2px}.shell{width:min(1120px,100%);margin:auto;padding:2rem 2rem 3rem}header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{letter-spacing:-.055em;font-size:1.65rem;font-weight:750}.dot{color:#628677}.badge{color:#40594c;background:#e8efea;border:1px solid #d8e4da;border-radius:2rem;padding:.4rem .8rem;font-size:.75rem;font-weight:600}.intro{padding:3.25rem 0 1.75rem}.eyebrow{letter-spacing:.12em;color:var(--muted);font-size:.7rem;font-weight:700}h1{letter-spacing:-.045em;margin:1rem 0;font-size:clamp(2.5rem,6vw,4.4rem);font-weight:650;line-height:1.04}h2{letter-spacing:-.025em;margin:.5rem 0 1.25rem;font-size:1.5rem;font-weight:650;line-height:1.2}h3{letter-spacing:-.02em;margin:1.5rem 0 1rem;font-size:1.25rem}h4{margin:1.5rem 0 .75rem;font-size:1rem}.lead{max-width:36rem;color:var(--muted);font-size:1.1rem;line-height:1.65}.connection{border:1px solid var(--line);background:var(--surface);border-radius:1.5rem;padding:2rem;box-shadow:0 8px 30px #203e3010,0 1px 3px #203e3006}.access{margin-top:.75rem}.admin-page:not(.is-authenticated) .access{max-width:30rem}.admin-page:not(.is-authenticated) .shell{max-width:960px}.is-authenticated .intro,.is-authenticated #access-title,.is-authenticated .access>.eyebrow,.is-authenticated .login-only{display:none}.is-authenticated .access{margin-top:1.5rem}.is-authenticated #access-status{color:var(--muted);margin-bottom:0;font-size:.8rem}.workspace-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.workspace-top h2{margin:.25rem 0;font-size:2rem}.workspace-top .eyebrow{margin:0}.spa-switcher{max-width:26rem;margin:1.5rem 0 1rem}.workspace-nav{z-index:3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f1f4f1e8;border:1px solid #dbe4df;border-radius:1rem;gap:.3rem;margin-bottom:1.5rem;padding:.3rem;display:flex;position:sticky;top:.5rem;overflow-x:auto}.workspace-nav button{color:var(--muted);white-space:nowrap;background:0 0;border-radius:.7rem;flex:1;padding:.65rem 1rem}.workspace-nav button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px #203e3012}#signed-in:not([data-view=agenda]) #planning,#signed-in:not([data-view=clients]) #customer-history,#signed-in:not([data-view=settings]) #catalog,#signed-in:not([data-view=settings]) #weekly-hours{display:none}#planning>h3,#customer-history>h3{margin-top:0}#planning #reschedule-status:empty,#conflicts-list:empty{display:none}button{background:var(--accent);color:#fff;min-height:2.75rem;font:inherit;cursor:pointer;touch-action:manipulation;border:0;border-radius:.8rem;padding:.7rem 1rem;font-size:.9rem;font-weight:600;transition:background-color .16s,box-shadow .16s,transform .12s}button:hover{background:#204e41}button:active{transform:scale(.975)}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #699e87}button:disabled{opacity:.48;cursor:not-allowed;transform:none}button.secondary,#cancel-service-edit,#cancel-professional-edit,#refresh-hours,#refresh-absences,#refresh-agenda,#refresh-conflicts,#history-previous,#history-next,#refresh-businesses,#cancel-reschedule{color:var(--accent);background:#edf2ef}form{gap:.7rem;display:grid}label{font-size:.85rem;font-weight:550}input,select{background:var(--surface);width:100%;min-width:0;min-height:2.85rem;color:var(--ink);font:inherit;border:1px solid #c9d4cc;border-radius:.75rem;padding:.7rem .85rem;font-size:1rem}input:focus-visible,select:focus-visible{outline-offset:1px;border-color:var(--accent);outline:3px solid #a8c7b7}select{margin:.4rem 0}.hint{color:var(--muted);font-size:.83rem;line-height:1.6}[data-state=success]{color:#25623d}[data-state=error]{color:#a13229}[role=status]{overflow-wrap:anywhere;line-height:1.6}[role=status]:empty{display:none}#planning-status{background:#f0f5f1;border-radius:.8rem;padding:.8rem 1rem;font-size:.85rem}#business-list,.catalog-list{padding:0;list-style:none}#business-form{border:1px solid var(--line);background:#fafbfa;border-radius:1rem;max-width:30rem;margin:1rem 0;padding:1rem}#business-tools{margin:0 0 1rem;padding:.8rem 1rem}#business-tools[open]{background:#fafbfa}#business-tools #workspace-businesses h3{margin-top:.7rem}#business-tools #refresh-businesses{margin-top:.6rem}#business-list li{border:1px solid var(--line);background:#f5f7f5;border-radius:1rem;margin-bottom:.75rem;padding:1.25rem}#business-list span{color:var(--muted);margin:.4rem 0 .65rem;font-size:.8rem;display:block}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.catalog-grid>section,.catalog-grid>details{border:1px solid var(--line);border-radius:1rem;padding:1.25rem}.catalog-card{margin:0}.catalog-card[open]>summary{margin-bottom:1rem}.catalog-grid h4{margin-top:0}.catalog-list li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:1rem 0}.catalog-list button{margin:.3rem .4rem .3rem 0;font-size:.78rem}.catalog-list p{color:var(--muted);margin:.45rem 0;font-size:.85rem}#appointment-list li,#history-list li{border:1px solid var(--line);background:#f7f9f7;border-radius:1rem;margin:.65rem 0;padding:1.1rem}#appointment-list strong,#history-list strong{font-size:1rem}.task-disclosure{border:1px solid var(--line);border-radius:1rem;margin:1rem 0;padding:1rem 1.25rem}.utility-disclosure{color:var(--muted)}.utility-disclosure summary{font-size:.85rem}#catalog,#weekly-hours,#customer-history{padding-top:.25rem}#catalog>h3,#weekly-hours>h3{margin-top:.5rem}#catalog>p.hint,#weekly-hours>p.hint{max-width:48rem}summary{cursor:pointer;min-height:2rem;font-size:.95rem;font-weight:600}.task-disclosure[open]>summary{margin-bottom:1rem}.check-label,.consent-label{align-items:flex-start;gap:.7rem;line-height:1.5;display:flex}.check-label input,.consent-label input{flex-shrink:0;width:1.15rem;min-height:1.15rem;margin-top:.2rem}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.6rem;padding:0;list-style:none;display:grid}.slot-grid li{text-align:center;background:#edf4ef;border-radius:.75rem;padding:.75rem}#public-slots button[aria-pressed=true]{background:#173f32;box-shadow:0 0 0 3px #a8c7b7}.public-shell{max-width:800px}.public-shell .intro{padding-top:2.5rem}.public-shell #public-booking-form,.public-shell #slot-section h2{margin-top:2rem}.flow-step{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 .35rem;font-size:.76rem;font-weight:750;display:flex}.flow-step:first-letter{background:#e8efea;border-radius:50%;place-items:center;width:1.45rem;height:1.45rem;display:grid}.flow-step span{color:var(--muted)}.public-shell .connection h2{margin-top:.3rem}.public-shell #booking-summary{color:var(--muted);background:#f0f5f1;border-radius:.75rem;padding:.8rem 1rem;font-size:.9rem}.technical{box-shadow:none;background:#ffffff80;margin-top:1.5rem;padding:1rem 1.25rem}.technical h2{font-size:1rem}footer{color:var(--muted);padding-top:2rem;font-size:.75rem}@media (width<=640px){.shell{padding:1.25rem 1rem 2rem}.connection{border-radius:1.25rem;padding:1.25rem}.catalog-grid{grid-template-columns:1fr;gap:1rem}.workspace-top{flex-wrap:wrap}.workspace-nav{gap:.1rem}.workspace-nav button{padding:.65rem .7rem;font-size:.8rem}.intro{padding-top:2rem}.badge{font-size:.65rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active{transform:none}}@media (prefers-reduced-transparency:reduce){.workspace-nav,.technical{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast:more){:root{--muted:#303d35;--line:#64756b}.workspace-nav,.technical{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:#64756b}input,select{border-color:#64756b}}
