:root{color:#f7f7f2;font-synthesis:none;text-rendering:optimizelegibility;background:#0b0b0d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#0b0b0d;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}a{color:inherit}.shell{width:min(1100px,100% - 32px);margin:0 auto;padding:42px 0 64px}.shell.narrow{width:min(680px,100% - 32px)}.centered{color:#b8b8bd;place-items:center;min-height:100vh;display:grid}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.topbar .eyebrow{margin:0 0 4px}.hero,.panel{background:#121216;border:1px solid #29292d;border-radius:24px;padding:clamp(28px,5vw,56px)}.eyebrow{color:#ecef00;letter-spacing:.12em;font-size:.78rem;font-weight:800}h1{margin:8px 0 12px;font-size:clamp(2rem,5vw,4rem);line-height:1.02}.hero>p:not(.eyebrow):not(.feedback){color:#b8b8bd;max-width:720px;line-height:1.7}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:20px;display:grid}.card{background:#121216;border:1px solid #29292d;border-radius:18px;min-height:150px;padding:24px}.card h2{margin-top:0;font-size:1.05rem}.card p{color:#8f8f96}.auth-shell{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);min-height:100vh;display:grid}.auth-brand{background:radial-gradient(circle at 20% 20%,#24251a 0,#111114 36%,#0b0b0d 75%);flex-direction:column;justify-content:center;padding:clamp(40px,8vw,120px);display:flex}.auth-brand h1{max-width:720px}.auth-brand>p:not(.eyebrow){color:#b8b8bd;max-width:620px;font-size:1.1rem;line-height:1.7}.auth-brand a{color:#d6d6d8;margin-top:26px;text-decoration:none}.auth-card{background:#121216;border-left:1px solid #29292d;flex-direction:column;justify-content:center;padding:clamp(32px,6vw,80px);display:flex}.auth-card h2{margin:0 0 28px;font-size:2rem}.auth-card form{gap:18px;display:grid}.auth-card label{color:#d5d5d8;gap:8px;font-size:.95rem;display:grid}.auth-card input{color:#fff;background:#0d0d10;border:1px solid #34343a;border-radius:12px;outline:none;width:100%;padding:13px 14px}.auth-card input:focus{border-color:#ecef00;box-shadow:0 0 0 3px #ecef0017}.primary,.secondary,.auth-links button{cursor:pointer;border:0;border-radius:12px}.primary{color:#111;background:#ecef00;margin-top:4px;padding:14px 18px;font-weight:800}.primary:disabled{opacity:.55;cursor:not-allowed}.secondary{color:#fff;background:#1c1c21;border:1px solid #34343a;padding:10px 14px}.secondary.small{padding:7px 10px;font-size:.82rem}.auth-links{flex-wrap:wrap;gap:14px;margin-top:20px;display:flex}.auth-links button{color:#b8b8bd;background:0 0;padding:0;text-decoration:underline}.feedback{border-radius:10px;padding:12px 14px;line-height:1.5}.feedback.error{color:#ffd6d6;background:#341b1f;border:1px solid #653039}.feedback.success{color:#eaffd8;background:#1e301b;border:1px solid #385b32}.status-pill{color:#eaffd8;background:#1e301b;border:1px solid #385b32;border-radius:999px;margin-top:10px;padding:8px 12px;font-size:.9rem;display:inline-flex}.link-button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.onboarding-shell{width:min(980px,100% - 32px)}.onboarding-wrap{gap:20px;display:grid}.onboarding-heading{background:radial-gradient(circle at 85% 10%,#262719 0,#121216 34% 100%);border:1px solid #29292d;border-radius:24px;padding:clamp(28px,5vw,48px)}.onboarding-heading h1{font-size:clamp(2.2rem,5vw,3.7rem)}.onboarding-heading>p:not(.eyebrow){color:#b8b8bd;max-width:720px;margin-bottom:0;line-height:1.7}.onboarding-form{gap:16px;display:grid}.form-section{background:#121216;border:1px solid #29292d;border-radius:20px;padding:clamp(22px,4vw,34px)}.section-title{align-items:flex-start;gap:14px;margin-bottom:24px;display:flex}.section-title>span{color:#111;background:#ecef00;border-radius:999px;flex:none;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.section-title h2{margin:1px 0 4px;font-size:1.2rem}.section-title p{color:#8f8f96;margin:0;line-height:1.5}.form-grid{gap:16px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-form label:not(.check-row){color:#d9d9dc;gap:8px;margin-top:16px;font-size:.94rem;display:grid}.onboarding-form label strong{color:#ecef00}.onboarding-form input:not([type=checkbox]),.onboarding-form select,.onboarding-form textarea{color:#fff;background:#0d0d10;border:1px solid #34343a;border-radius:12px;outline:none;width:100%;padding:13px 14px}.onboarding-form textarea{resize:vertical;min-height:105px;line-height:1.5}.onboarding-form input:focus,.onboarding-form select:focus,.onboarding-form textarea:focus{border-color:#ecef00;box-shadow:0 0 0 3px #ecef0014}.onboarding-form select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.consent-section{display:grid}.check-row{color:#d2d2d6;cursor:pointer;border-top:1px solid #29292d;align-items:flex-start;gap:12px;padding:13px 0;line-height:1.5;display:flex}.check-row input{accent-color:#ecef00;flex:none;width:18px;height:18px;margin-top:2px}.check-row.optional{color:#a9a9af}.form-actions{justify-content:space-between;align-items:center;gap:18px;padding:20px 2px 0;display:flex}.form-actions p{color:#85858c;margin:0;font-size:.88rem}.form-actions .primary{min-width:240px}.meeting-scheduler,.meeting-confirmed{margin-top:20px}.meeting-scheduler.compact,.meeting-confirmed.compact{border-top:1px solid #29292d;margin-top:26px;padding-top:24px}.meeting-scheduler h2,.meeting-confirmed h2,.staff-schedule h2{margin:6px 0 10px}.meeting-scheduler>p:not(.eyebrow):not(.feedback),.meeting-confirmed>p:not(.eyebrow){color:#b8b8bd;line-height:1.6}.scheduler-date-row{grid-template-columns:minmax(220px,.65fr) minmax(0,1fr);align-items:end;gap:16px;margin:24px 0 18px;display:grid}.scheduler-date-row label,.staff-schedule label,.block-form label{color:#d5d5d8;gap:7px;font-size:.9rem;display:grid}.scheduler-date-row input,.staff-schedule input:not([type=checkbox]),.staff-schedule select{color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d0d10;border:1px solid #34343a;border-radius:12px;outline:none;width:100%;padding:11px 12px}.scheduler-date-row input:focus,.staff-schedule input:focus{border-color:#ecef00;box-shadow:0 0 0 3px #ecef0014}.scheduler-selected-date{color:#ecef00;text-transform:capitalize;align-items:center;min-height:43px;font-weight:800;display:flex}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px;margin:18px 0;display:grid}.slot{color:#fff;cursor:pointer;background:#17171b;border:1px solid #3b3b40;border-radius:12px;padding:12px 10px;font-weight:750}.slot:hover,.slot.active{color:#111;background:#ecef00;border-color:#ecef00}.scheduler-confirm{background:#1b1c12;border:1px solid #414226;border-radius:16px;margin-top:18px;padding:18px}.scheduler-confirm p{margin-top:0}.staff-schedule{gap:20px;display:grid}.schedule-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 16px;display:grid}.availability-week{gap:10px;margin:26px 0 18px;display:grid}.availability-day{background:#0e0e11;border:1px solid #29292d;border-radius:14px;grid-template-columns:minmax(150px,1fr) 130px 24px 130px;align-items:center;gap:10px;padding:12px 14px;display:grid}.day-toggle{grid-template-columns:none;align-items:center;gap:10px!important;display:flex!important}.day-toggle input{accent-color:#ecef00;width:18px;height:18px}.schedule-active{margin:16px 0}.block-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-top:18px;display:grid}.block-list,.appointment-list{gap:10px;margin-top:22px;display:grid}.block-item,.appointment-item{background:#0e0e11;border:1px solid #29292d;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.appointment-item p{margin:5px 0}.appointment-status{justify-items:end;gap:5px;display:grid}@media (width<=820px){.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:38vh;padding:42px 24px}.auth-card{border-top:1px solid #29292d;border-left:0;padding:38px 24px 56px}.topbar{align-items:flex-start}.form-grid.two{grid-template-columns:1fr}.form-actions{flex-direction:column;align-items:stretch}.form-actions .primary{width:100%;min-width:0}.scheduler-date-row,.schedule-settings-grid{grid-template-columns:1fr}.availability-day{grid-template-columns:1fr 1fr}.availability-day .day-toggle{grid-column:1/-1}.availability-day>span{display:none}.block-form{grid-template-columns:1fr}.block-item,.appointment-item{flex-direction:column;align-items:flex-start}.appointment-status{justify-items:start}}.compact-hero{margin-bottom:20px}.compact-hero h1{font-size:clamp(2rem,4vw,3.4rem)}.progress-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0;display:grid}.metric-card{background:#121216;border:1px solid #29292d;border-radius:18px;flex-direction:column;justify-content:space-between;gap:16px;min-height:120px;padding:20px;display:flex}.metric-card span{color:#929299;font-size:.9rem}.metric-card strong{font-size:clamp(1.55rem,3vw,2.35rem)}.metric-card .small-metric{font-size:1.2rem}.progress-panel{margin-top:20px;padding:clamp(22px,4vw,34px)}.progress-panel h2{margin:5px 0 20px;font-size:1.45rem}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.chart-wrap{width:100%;overflow-x:auto}.chart-wrap svg{width:100%;min-width:520px;height:auto;display:block}.chart-axis{stroke:#3b3b42;stroke-width:1px}.chart-line{fill:none;stroke:#ecef00;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:#ecef00;stroke:#111;stroke-width:3px}.chart-label{fill:#f7f7f2;font-size:12px;font-weight:700}.chart-empty{color:#8f8f96;text-align:center;border:1px dashed #34343a;border-radius:14px;place-items:center;min-height:180px;padding:24px;display:grid}.progress-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;display:grid}.measurement-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.measurement-form label{color:#d9d9dc;gap:7px;font-size:.92rem;display:grid}.measurement-form input,.measurement-form textarea{color:#fff;background:#0d0d10;border:1px solid #34343a;border-radius:12px;outline:none;width:100%;padding:12px 13px}.measurement-form input:focus,.measurement-form textarea:focus{border-color:#ecef00;box-shadow:0 0 0 3px #ecef0014}.measurement-form textarea{resize:vertical}.full-field{grid-column:1/-1}.history-panel{min-width:0}.measurement-list{gap:10px;display:grid}.measurement-row{background:#0e0e11;border:1px solid #29292d;border-radius:14px;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:16px;padding:16px;display:grid}.measurement-row>div:first-child{gap:5px;display:grid}.measurement-row>div:first-child span{color:#85858c;font-size:.85rem;line-height:1.4}.measurement-values{flex-wrap:wrap;align-content:flex-start;gap:8px;display:flex}.measurement-values span{color:#cfcfd3;background:#1b1b20;border-radius:999px;padding:6px 9px;font-size:.82rem}.muted{color:#8f8f96}.future-grid{margin-top:20px}@media (width<=900px){.progress-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-layout{grid-template-columns:1fr}}@media (width<=560px){.progress-summary{grid-template-columns:1fr 1fr}.metric-card{min-height:105px;padding:16px}.measurement-form{grid-template-columns:1fr}.full-field{grid-column:auto}.measurement-row{grid-template-columns:1fr}}
