@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#17201d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f4f2ed;font-family:Manrope,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{color:#e8e9df;background:#17221e;flex-direction:column;flex-shrink:0;width:248px;padding:31px 22px;display:flex}.logo-mark{align-items:center;gap:11px;margin:0 10px 73px;display:flex}.logo-mark>span{color:#fff;background:#db6842;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.logo-mark strong{font-family:Georgia,serif;font-size:17px;font-style:italic;font-weight:500;display:block}.logo-mark small,.kicker,.metric-label,.topbar-meta,.doc-count{letter-spacing:.08em;font-family:DM Mono,monospace;font-size:9px}.logo-mark small{color:#87968d;letter-spacing:.15em;font-size:8px}.side-nav{gap:8px;display:grid}.side-nav a{color:#97a49d;border-radius:3px;align-items:center;gap:13px;padding:13px;font-size:13px;font-weight:600;display:flex}.side-nav a span{text-align:center;color:#7f9387;width:14px;font-size:17px}.side-nav a.active,.side-nav a:hover{color:#f7f5ed;background:#25332d}.side-nav a.active span{color:#df704a}.sidebar-bottom{color:#718078;align-items:flex-start;gap:9px;margin-top:auto;font-size:10px;line-height:1.55;display:flex}.privacy-dot{background:#8eb78c;border-radius:50%;width:7px;height:7px;margin-top:5px;box-shadow:0 0 0 4px #2a3b33}.main-content{flex:1;min-width:0}.topbar{border-bottom:1px solid #dfddd5;justify-content:flex-end;align-items:center;gap:22px;height:73px;padding:0 5.5%;display:flex}.topbar-meta{color:#85908b}.topbar-meta strong{color:#34413b;font-size:10px}.topbar-meta i{background:#db6842;border-radius:50%;width:4px;height:4px;margin:0 12px 2px;display:inline-block}.profile-button{color:#fff;background:#db6842;border:0;border-radius:50%;width:34px;height:34px;font-size:10px;font-weight:700}.profile-button span{margin-left:3px;font-size:13px}.mobile-brand{display:none}.content-wrap{max-width:1120px;margin:0 auto;padding:57px 5.5% 70px}.welcome{justify-content:space-between;align-items:flex-end;margin-bottom:42px;display:flex}.kicker{color:#be6041;margin:0 0 12px}.welcome h1{letter-spacing:-1.5px;margin:0 0 9px;font-family:Georgia,serif;font-size:42px;font-weight:400}.intro{color:#718079;margin:0;font-size:14px}.status-chip{text-transform:uppercase;letter-spacing:.08em;color:#65736c;background:#f8f7f2;border:1px solid #d9ddd4;padding:9px 12px;font-family:DM Mono,monospace;font-size:9px}.status-chip span{background:#77a97d;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.metrics{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:28px;display:grid}.metric-card,.panel{background:#fffdf8;border:1px solid #e0ded5}.metric-card{min-height:174px;padding:23px 25px}.metric-card.highlight{background:#e6efe9;border-color:#d2e0d7}.metric-label{color:#829089;justify-content:space-between;margin-bottom:19px;display:flex}.metric-label span{color:#db6842;font-size:16px;line-height:8px}.metric-label .warm{color:#df9763;font-size:10px}.metric-card strong{color:#25352e;font-family:Georgia,serif;font-size:42px;font-weight:400;line-height:1;display:block}.metric-card strong small{color:#829089;margin-left:4px;font:500 14px DM Mono,monospace}.metric-card p{color:#728078;margin:11px 0 18px;font-size:12px}.metric-card a,.text-link{color:#bd6041;font-size:11px;font-weight:700}.metric-trend{color:#6b9475;font-size:11px}.progress{background:#e0e7df;width:100%;height:4px;margin-top:21px}.progress span{background:#6f9d7a;width:78%;height:100%;display:block}.dashboard-grid{grid-template-columns:1.18fr .82fr;gap:15px;margin-bottom:15px;display:grid}.panel{padding:27px 29px}.panel-heading{justify-content:space-between;align-items:flex-start;display:flex}.panel h2,.next-session h2{letter-spacing:-.5px;color:#24332d;margin:0;font-family:Georgia,serif;font-size:24px;font-weight:400}.panel-date{color:#a0a9a1;font:10px DM Mono,monospace}.panel-copy{color:#7c8881;margin:9px 0 35px;font-size:12px}.scale-head{color:#66746c;justify-content:space-between;align-items:center;font-size:12px;display:flex}.scale-head strong{color:#d76a46;font:500 18px DM Mono,monospace}.scale-head small{color:#95a19a;font-size:10px}.pain-scale input{accent-color:#d86c47;width:100%;margin:24px 0 8px}.scale-labels{color:#a4ada7;justify-content:space-between;font:9px DM Mono,monospace;display:flex}.checkin-options{align-items:center;gap:17px;margin-top:28px;display:flex}.checkin-options button{color:#fff;background:#22332c;border:0;border-radius:2px;padding:12px 17px;font-size:11px;font-weight:700}.checkin-options button.selected{background:#709a78}.checkin-options span{color:#a0aaa3;font-size:10px}.round-icon{color:#d56a45;border:1px solid #dedbd2;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.focus-number{color:#283a31;margin-top:22px;font:400 40px Georgia,serif}.focus-number span{color:#9da7a0;font:13px DM Mono,monospace}.focus-title{color:#6b7c72;margin:2px 0 22px;font-size:12px}.plan-list{border-top:1px solid #ebe8df}.plan-list>div{border-bottom:1px solid #ebe8df;align-items:center;gap:12px;padding:11px 0;display:flex}.plan-list>div>span{color:#a1aaa4;border:1px solid #d8dcd5;place-items:center;width:22px;height:22px;font:10px DM Mono,monospace;display:grid}.plan-list>div>span.done{color:#60926d;background:#dfede1;border-color:#c7dec9}.plan-list>div>span.next{color:#d36b48;border-color:#dd805e}.plan-list p{color:#42534a;margin:0;font-size:11px}.plan-list small{color:#9ca7a0;margin-top:3px;font-size:9px;display:block}.text-link{margin-top:22px;display:inline-block}.documents-panel{margin-bottom:15px}.doc-count{color:#919c95}.document-row{border-top:1px solid #ebe8df;border-bottom:1px solid #ebe8df;align-items:center;gap:13px;margin-top:21px;padding:17px 0;display:flex}.document-row strong{color:#45554c;font-size:11px;font-weight:700}.document-row p{color:#9ba59f;margin:4px 0 0;font-size:10px}.file-status{color:#6a9875;margin-left:auto;font:9px DM Mono,monospace}.download{color:#bb6649;background:0 0;border:0;padding:0 5px;font-size:18px}.upload-zone{background:#fafbf7;border:1px dashed #c8d2c9;margin-top:17px;position:relative}.upload-zone input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-zone label{color:#65756c;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:79px;display:flex}.upload-zone label span{color:#d36c48;font-size:21px;font-weight:300;line-height:16px}.upload-zone label strong{font-size:11px}.upload-zone label small{color:#a2aca5;font:9px DM Mono,monospace}.privacy-note{color:#98a39c;margin:15px 0 0;font:9px DM Mono,monospace}.upload-status{color:#bd6041;margin:9px 0 0;font-size:10px}.next-session{color:#f1f0e7;background:#24362e;justify-content:space-between;align-items:center;padding:27px 31px;display:flex}.next-session .kicker{color:#d77954}.next-session h2{color:#f5f1e8;font-size:21px}.next-session p{color:#aebbb1;margin:8px 0 0;font-size:11px}.next-session a{color:#fff;background:#d76945;padding:12px 16px;font-size:11px;font-weight:700}.next-session a span{margin-left:13px}@media (width<=850px){.sidebar{width:195px}.content-wrap{padding-left:4%;padding-right:4%}.topbar{padding-right:4%}.dashboard-grid{grid-template-columns:1fr}.welcome h1{font-size:36px}}@media (width<=620px){.sidebar{display:none}.topbar{justify-content:space-between;height:62px;padding:0 20px}.mobile-brand{color:#d66b47;font:700 14px DM Mono,monospace;display:block}.mobile-brand span{color:#87928b;margin-left:5px;font-size:9px}.topbar-meta{display:none}.content-wrap{padding:34px 18px 45px}.welcome{margin-bottom:30px;display:block}.status-chip{margin-top:20px;display:inline-block}.metrics{grid-template-columns:1fr;gap:10px}.metric-card{min-height:0;padding:20px}.metric-card strong{font-size:36px}.dashboard-grid{gap:10px}.panel{padding:22px 19px}.next-session{padding:23px 20px;display:block}.next-session a{margin-top:20px;display:inline-block}.document-row{gap:9px}.document-row strong{font-size:10px}.file-status{display:none}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}.auth-screen{background:#17221e;place-items:center;min-height:100vh;padding:28px;display:grid}.auth-card{background:#fffdf8;border:1px solid #d9ddd4;width:min(100%,460px);padding:48px;box-shadow:18px 18px #d76945}.auth-brand{align-items:center;gap:11px;margin-bottom:58px;display:flex}.auth-card h1{color:#24332d;letter-spacing:-.8px;margin:0 0 14px;font:400 34px/1.1 Georgia,serif}.auth-copy{color:#718079;margin:0 0 28px;font-size:13px;line-height:1.6}.auth-card form{gap:11px;display:grid}.auth-card input{color:#24332d;background:#fafbf7;border:1px solid #d9ddd4;padding:13px;font:13px Manrope,sans-serif}.auth-card input:focus{outline-offset:1px;outline:2px solid #d76945}.auth-card form button{color:#fff;background:#24362e;border:0;padding:14px;font-size:12px;font-weight:700}.auth-card form button:disabled{opacity:.6}.auth-message{color:#bd6041;margin:14px 0;font-size:11px}.auth-switch,.auth-back{text-align:center;color:#bd6041;background:0 0;border:0;width:100%;margin-top:20px;font-size:11px;font-weight:700;display:block}.auth-back{color:#7d8982;margin-top:30px;font-weight:500}@media (width<=520px){.auth-screen{padding:16px}.auth-card{padding:32px 24px;box-shadow:10px 10px #d76945}.auth-brand{margin-bottom:42px}.auth-card h1{font-size:29px}}.logout-button{color:#6f7d75;text-transform:uppercase;letter-spacing:.08em;background:0 0;border:1px solid #d9ddd4;padding:8px 12px;font-size:10px;font-weight:700}.logout-button:hover{color:#bd6041;border-color:#d76945}.profile-button{place-items:center;display:grid}.admin-screen{color:#24332d;background:#f4f2ed;min-height:100vh;padding:36px 5vw}.admin-header{grid-template-columns:220px 1fr auto;align-items:center;gap:40px;max-width:1120px;margin:0 auto 36px;display:grid}.admin-header h1{margin:0;font:400 38px Georgia,serif}.admin-header button{color:#fff;background:#24362e;border:0;padding:11px 18px;font-size:11px;font-weight:700}.auth-brand{align-items:center;gap:11px;display:flex}.auth-brand>span{color:#fff;background:#db6842;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.auth-brand strong{font:italic 18px Georgia,serif;display:block}.auth-brand small{color:#87968d;letter-spacing:.15em;font:8px DM Mono,monospace;display:block}.admin-summary{background:#e6efe9;border:1px solid #d2e0d7;align-items:baseline;gap:12px;max-width:1120px;margin:0 auto 28px;padding:22px 28px;display:flex}.admin-summary strong{color:#bd6041;margin-left:22px;font:400 31px Georgia,serif}.admin-summary span{color:#6f7e75;font-size:11px}.patient-list{gap:14px;max-width:1120px;margin:0 auto;display:grid}.patient-card{background:#fffdf8;border:1px solid #e0ded5;grid-template-columns:46px 1fr;gap:6px 15px;padding:23px 27px;display:grid}.patient-avatar{color:#fff;background:#24362e;border-radius:50%;grid-row:span 2;place-items:center;width:42px;height:42px;font:11px DM Mono,monospace;display:grid}.patient-info h2{margin:0;font:400 22px Georgia,serif}.patient-info p{color:#9aa49e;margin:5px 0 14px;font:10px DM Mono,monospace}.patient-documents{border-top:1px solid #ebe8df;grid-column:2}.admin-document{border-bottom:1px solid #ebe8df;align-items:center;gap:12px;padding:13px 0;display:flex}.admin-document strong{font-size:11px;display:block}.admin-document small{color:#9aa49e;margin-top:4px;font:9px DM Mono,monospace;display:block}.admin-document button{color:#bd6041;background:0 0;border:0;margin-left:auto;font-size:10px;font-weight:700}.admin-message,.admin-empty{color:#bd6041;max-width:1120px;margin:30px auto;font-size:13px}.admin-empty{color:#75837b}.file-icon{color:#d16848;border:1px solid #e5b19e;padding:7px 5px;font:9px DM Mono,monospace}@media (width<=700px){.admin-header{grid-template-columns:1fr;gap:20px}.admin-header h1{font-size:30px}.admin-summary{flex-wrap:wrap;padding:18px}.admin-summary strong{margin-left:0}.patient-card{grid-template-columns:40px 1fr;padding:18px}.patient-documents{grid-column:1/-1}.admin-document strong{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}}
