:root{--bg:#f5f6f2;--surface:#fff;--border:#dde2dc;--text:#2f383c;--text-muted:#6d777b;--text-strong:#172126;--focus:#d95f3d;color:var(--text);background:var(--bg);letter-spacing:0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.4}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{min-width:320px;min-height:100svh;margin:0}button,input{letter-spacing:0}button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{color:#fff;background:#195c63}.appShell{background:linear-gradient(#ffffffe6,#f8faf7f0),#f5f6f2;grid-template-columns:252px minmax(0,1fr);min-height:100svh;display:grid}.authShell{background:linear-gradient(#ffffffe6,#f8faf7f0),#f5f6f2;place-items:center;min-height:100svh;padding:22px;display:grid}.authPanel{border:1px solid var(--border);background:#fff;border-radius:8px;gap:18px;width:min(390px,100%);padding:24px;display:grid;box-shadow:0 18px 38px #1c252a14}.authPanel h1{font-size:28px}.authPanel p{color:var(--text-muted)}.loginForm{gap:12px;display:grid}.loginForm label{gap:6px;display:grid}.loginForm label span{color:var(--text-muted);font-size:12px;font-weight:800}.loginForm input{border:1px solid var(--border);min-height:42px;color:var(--text-strong);background:#fff;border-radius:8px;padding:0 11px}.formError{color:#9c3d30;background:#fae8e5;border-radius:8px;align-items:center;min-height:34px;padding:0 10px;font-size:13px;font-weight:700;display:flex}.sidebar{border-right:1px solid var(--border);background:#fff;flex-direction:column;gap:22px;height:100svh;padding:22px 16px;display:flex;position:sticky;top:0}.brandBlock,.profileHeader,.activityItem,.rosterItem,.reportRow,.integrationRow{align-items:center;gap:12px;display:flex}.brandBlock strong,.brandBlock span,.memberButton strong,.memberButton small,.sessionButton strong,.sessionButton small,.classRow strong,.classRow span,.activityItem strong,.activityItem span,.leadCard strong,.leadCard span,.reportRow strong,.reportRow span{display:block}.brandBlock strong{color:var(--text-strong);line-height:1.1}.brandBlock span{max-width:160px;color:var(--text-muted);margin-top:3px;font-size:12px;line-height:1.25}.brandMark{color:#fff;background:#195c63;border-radius:8px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 10px 20px #195c632e}.navList{gap:6px;display:grid}button,input{font:inherit}button{cursor:pointer}.navButton,.sessionButton,.memberButton,.classRow,.bookButton{width:100%;color:var(--text);text-align:left;background:0 0;border:0}.navButton{border-radius:7px;align-items:center;gap:10px;min-height:42px;padding:0 11px;display:flex}.navButton:hover,.navButton.active{color:var(--text-strong);background:#eef5f3}.navButton.active{box-shadow:inset 3px 0 #d95f3d}.sidebarFooter{border:1px solid var(--border);color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;margin-top:auto;padding:12px;font-size:12px;display:flex}.statusDot{background:#2f9e6d;border-radius:999px;width:8px;height:8px}.statusDot.saving{background:#d99a35}.statusDot.error{background:#d04f3d}.workspace{min-width:0;padding:22px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.eyebrow{color:var(--text-muted);text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:700}h1,h2,h3,p{margin:0}h1{color:var(--text-strong);font-size:30px;line-height:1.1}h2{color:var(--text-strong);font-size:16px;line-height:1.25}h3{color:var(--text-strong);font-size:13px;line-height:1.2}.topbarActions{align-items:center;gap:9px;display:flex}.searchBox{border:1px solid var(--border);width:min(310px,36vw);min-height:42px;color:var(--text-muted);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:flex}.searchBox input,.quickAdd input{width:100%;min-width:0;color:var(--text-strong);background:0 0;border:0;outline:0}.iconButton,.textButton,.primaryButton,.smallButton{border:1px solid var(--border);color:var(--text-strong);background:#fff;border-radius:7px}.iconButton{place-items:center;width:42px;height:42px;display:inline-grid}.iconButton.small{width:31px;height:31px}.textButton,.primaryButton,.smallButton{justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-weight:700;display:inline-flex}.primaryButton{color:#fff;background:#195c63;border-color:#195c63}.smallButton{min-height:32px;padding:0 10px;font-size:12px}.smallButton.success{color:#17633f;background:#edf8f2;border-color:#cfe9dc}.pageGrid,.contentGrid{gap:16px;display:grid}.metricGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.metricCard,.panel{border:1px solid var(--border);background:#fffffff0;border-radius:8px;box-shadow:0 12px 28px #1c252a0d}.metricCard{align-content:space-between;gap:4px;min-height:132px;padding:15px;display:grid}.metricCard span,.metricCard small,.detailItem span,.classRow span,.activityItem span,.rosterItem span,.leadCard span,.leadCard p,.leadActions,.reportRow span,.integrationRow strong,.noticeRow{color:var(--text-muted);font-size:12px}.metricCard strong{color:var(--text-strong);font-size:28px;line-height:1.08}.metricIcon{border-radius:8px;place-items:center;width:35px;height:35px;display:grid}.metricCard.green .metricIcon{color:#17633f;background:#e8f5ee}.metricCard.blue .metricIcon{color:#245e91;background:#e8f1f8}.metricCard.orange .metricIcon{color:#9a4a1f;background:#fff1e4}.metricCard.pink .metricIcon{color:#914569;background:#faeaf1}.twoColumns{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr)}.scheduleLayout{grid-template-columns:minmax(260px,.35fr) minmax(0,.65fr)}.memberLayout{grid-template-columns:minmax(290px,.4fr) minmax(0,.6fr)}.reportsLayout{grid-template-columns:minmax(0,1fr) minmax(340px,.62fr)}.leadBoard{grid-template-columns:repeat(4,minmax(230px,1fr));gap:12px;display:grid}.panel{min-width:0;overflow:hidden}.panelHeader{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:0 15px;display:flex}.classStack,.activityList,.taskList,.sessionList,.memberList,.memberRoster,.bookList,.leadStack,.reportRows,.settingRows,.integrationList{gap:8px;padding:12px;display:grid}.classRow{border:1px solid #0000;border-radius:8px;grid-template-columns:58px minmax(0,1fr) 108px 16px;align-items:center;gap:12px;min-height:60px;padding:9px;display:grid}.classRow:hover,.sessionButton:hover,.sessionButton.active,.memberButton:hover,.memberButton.active,.bookButton:hover{border-color:var(--border);background:#f8faf6}.classTime{color:#195c63;background:#e7f2f0;border-radius:7px;place-items:center;height:38px;font-size:12px;font-weight:800;display:grid}.capacityRail{background:#edf0ea;border-radius:999px;height:7px;overflow:hidden}.capacityRail span{border-radius:inherit;background:#d95f3d;height:100%;display:block}.pill,.statusPill,.tag,.riskBadge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:26px;padding:0 9px;font-size:12px;font-weight:800;display:inline-flex}.pill{color:#3f4d5c;background:#eef1f3}.pill.warn{color:#9a4a1f;background:#fff1e4}.activityItem{background:#fbfcfa;border-radius:8px;min-height:48px;padding:9px}.activityTone{border-radius:999px;width:9px;height:34px}.activityTone.danger{background:#d04f3d}.activityTone.warn{background:#d99a35}.activityTone.info{background:#2c7b8f}.taskItem{background:#fbfcfa;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:42px;padding:8px;display:grid;position:relative}.taskItem input{opacity:0;position:absolute}.fakeCheck{color:#0000;background:#fff;border:1px solid #c8d0c8;border-radius:5px;place-items:center;width:20px;height:20px;display:grid}.taskItem input:checked+.fakeCheck{color:#fff;background:#2f9e6d;border-color:#2f9e6d}.taskItem small{color:var(--text-muted);font-size:12px}.done{color:var(--text-muted);text-decoration:line-through}.quickAdd{gap:12px;padding:12px;display:grid}.quickAdd label{gap:6px;display:grid}.quickAdd label span{color:var(--text-muted);font-size:12px;font-weight:800}.quickAdd input{border:1px solid var(--border);background:#fff;border-radius:8px;min-height:42px;padding:0 11px}.settingRows.compact{padding-top:0}.sessionButton,.memberButton,.bookButton{border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;min-height:55px;padding:9px;display:flex}.sessionButton span,.memberButton span{flex:1;min-width:0}.rosterHeader{grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;display:grid}.rosterHeader div{background:#f8faf6;border-radius:8px;align-content:center;gap:4px;min-height:68px;padding:12px;display:grid}.rosterHeader span{color:var(--text-muted);font-size:12px}.rosterHeader strong{color:var(--text-strong);font-size:24px}.avatar{color:#fff;background:#35505b;border-radius:8px;flex:none;place-items:center;width:36px;height:36px;font-size:12px;font-weight:900;display:grid}.avatar.large{width:58px;height:58px;font-size:17px}.rosterItem{background:#fbfcfa;border-radius:8px;min-height:58px;padding:9px}.rosterItem>div{flex:1;min-width:0}.divider{background:var(--border);height:1px}.bookList h3{padding:3px 0}.bookButton{justify-content:flex-start}.bookButton svg{color:var(--text-muted);margin-left:auto}.statusPill.active{color:#17633f;background:#e8f5ee}.statusPill.trial{color:#245e91;background:#e8f1f8}.statusPill.paused{color:#65552e;background:#f5efd8}.statusPill.past_due{color:#9c3d30;background:#fae8e5}.profileHeader{padding:16px}.profileHeader h2{margin-bottom:4px;font-size:22px}.profileHeader p{color:var(--text-muted);font-size:13px}.detailGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 16px 16px;display:grid}.detailItem{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;gap:7px;min-height:94px;padding:12px;display:grid}.detailItem svg{color:#195c63}.detailItem strong{color:var(--text-strong);font-size:16px}.noticeRow{background:#f8faf6;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 16px 12px;padding:10px;display:flex}.noticeRow svg{color:#195c63}.tagRow{flex-wrap:wrap;gap:7px;padding:0 16px 12px;display:flex}.tag{color:#475057;background:#eef1f3}.noteBox{border:1px solid var(--border);background:#fffdf8;border-radius:8px;margin:0 16px 16px;padding:13px}.noteBox strong{color:var(--text-strong);margin-bottom:7px;display:block}.noteBox p{color:var(--text);line-height:1.5}.leadStack{align-content:start;min-height:410px}.leadCard{border:1px solid var(--border);background:#fbfcfa;border-radius:8px;gap:12px;padding:12px;display:grid}.leadCard p{line-height:1.45}.leadActions{justify-content:space-between;align-items:center;display:flex}.reportRow{background:#fbfcfa;border-radius:8px;min-height:58px;padding:9px}.reportRow div{flex:1;min-width:0}.riskBadge.stable{color:#17633f;background:#e8f5ee}.riskBadge.risk{color:#9a4a1f;background:#fff1e4}.settingToggle{background:#fbfcfa;border-radius:8px;grid-template-columns:minmax(0,1fr) 46px;align-items:center;min-height:44px;padding:7px 9px;display:grid}.settingToggle input{opacity:0;position:absolute}.switch{background:#dce2dc;border-radius:999px;width:42px;height:24px;position:relative}.switch:after{content:"";background:#fff;border-radius:999px;width:18px;height:18px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #1c252a33}.settingToggle input:checked+.switch{background:#195c63}.settingToggle input:checked+.switch:after{transform:translate(18px)}.integrationRow{border:1px solid var(--border);background:#fff;border-radius:8px;min-height:48px;padding:9px}.integrationRow span{flex:1;min-width:0}@media (width<=1100px){.appShell{grid-template-columns:82px minmax(0,1fr)}.brandBlock div:not(.brandMark),.navButton span,.sidebarFooter span{display:none}.brandBlock,.navButton{justify-content:center}.metricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.twoColumns,.reportsLayout,.scheduleLayout,.memberLayout,.leadBoard{grid-template-columns:1fr}.leadStack{min-height:auto}}@media (width<=720px){.appShell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;padding:10px;position:static}.brandBlock div:not(.brandMark),.navButton span{display:block}.navList{grid-template-columns:repeat(5,minmax(62px,1fr));gap:4px;overflow-x:auto}.navButton{justify-content:center;gap:4px;min-height:56px;padding:0 6px;font-size:11px;display:grid}.sidebarFooter{display:none}.workspace{padding:14px}.topbar{flex-direction:column;align-items:stretch}.topbarActions{width:100%}.searchBox{flex:1;width:auto}.metricGrid,.detailGrid,.rosterHeader{grid-template-columns:1fr}.classRow{grid-template-columns:58px minmax(0,1fr) 16px}.capacityRail{display:none}}
