:root{--ink:#101c38;--paper:#f5f2ea;--mist:#e0e6e4;--warm:#e9e3d6;--line:rgba(16,28,56,.18);--serif:"Instrument Serif",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}.app-announcement{height:33px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);font:9px var(--mono);letter-spacing:.1em}.app-header{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 2.5vw;border-bottom:1px solid var(--line);background:rgba(245,242,234,.95);position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.app-wordmark{font-size:16px;font-weight:600;letter-spacing:.15em}.app-wordmark span{font:8px var(--mono);vertical-align:top}.app-nav{display:flex;gap:20px;font-size:12px}.app-nav a{padding:8px 0;border-bottom:1px solid transparent}.app-nav a.active{border-color:var(--ink)}.app-actions{justify-self:end;display:flex;gap:14px;align-items:center;font:10px var(--mono);letter-spacing:.04em}.app-actions a:last-child{padding:9px 12px;border:1px solid var(--ink);border-radius:99px}.app-main{max-width:1300px;margin:auto;padding:58px 5vw 90px}.eyebrow{margin:0 0 17px;font:10px var(--mono);letter-spacing:.1em}.demo-pill{display:inline-flex;gap:6px;align-items:center;padding:8px 10px;border-radius:99px;background:var(--mist);font:9px var(--mono);letter-spacing:.05em}.demo-pill:before{content:"";width:6px;height:6px;background:#9a5349;border-radius:50%}.app-main h1{margin:0;font-size:clamp(50px,6vw,88px);font-weight:400;line-height:.86;letter-spacing:-.06em}.app-main h1 em,.section-title em{font-family:var(--serif);font-weight:400}.app-subtitle{max-width:490px;margin:26px 0 0;line-height:1.5}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 17px;border:0;border-radius:99px;background:var(--ink);color:var(--paper);font-size:13px;cursor:pointer}.secondary-button{border:1px solid var(--ink);background:transparent;color:var(--ink)}.dashboard-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:56px}.dashboard-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.card{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.score-card{min-height:420px;padding:30px;position:relative;overflow:hidden;background:var(--mist)}.score-orbit{position:absolute;right:-80px;bottom:-105px;width:390px;height:390px;border:1px solid var(--ink);border-radius:50%;box-shadow:0 0 0 58px rgba(16,28,56,.05),0 0 0 116px rgba(16,28,56,.03)}.score-content{position:relative;z-index:1}.score-card h2{margin:0;font-size:17px;font-weight:500}.score-number{margin:68px 0 8px;font-size:clamp(92px,12vw,155px);font-weight:400;line-height:.7;letter-spacing:-.1em}.score-number span{font:16px var(--mono);letter-spacing:0}.score-card p{max-width:290px;line-height:1.45;font-size:13px}.score-footer{position:absolute;z-index:1;right:28px;bottom:25px;text-align:right;font:10px var(--mono);letter-spacing:.04em}.next-card{padding:28px;display:flex;flex-direction:column;min-height:420px}.next-card h2{margin:4px 0 10px;font-size:31px;font-weight:400;letter-spacing:-.04em}.next-card>p{line-height:1.45}.scan-guide{margin:auto 0 26px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.scan-guide p{margin:7px 0;font-size:13px}.scan-guide span{font:10px var(--mono)}.next-card .primary-button{margin-top:auto}.chart-card{padding:27px;grid-column:span 2}.card-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.card-head h2{margin:0;font-size:22px;font-weight:400;letter-spacing:-.035em}.chart{height:200px;display:flex;align-items:end;gap:5%;padding-top:32px;border-bottom:1px solid var(--line);background:linear-gradient(to bottom,transparent 32%,rgba(16,28,56,.09) 33%,transparent 34%,transparent 65%,rgba(16,28,56,.09) 66%,transparent 67%)}.chart-col{height:100%;flex:1;display:flex;align-items:end;justify-content:center;position:relative}.chart-col span{width:55%;border-radius:8px 8px 0 0;background:var(--ink);transition:height .5s}.chart-col small{position:absolute;bottom:-25px;font:9px var(--mono)}.dashboard-lower{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.mini-card{padding:25px}.mini-card h2{margin:0 0 20px;font-size:20px;font-weight:400}.metric-row{display:grid;grid-template-columns:1fr auto;gap:14px;padding:13px 0;border-top:1px solid var(--line);font-size:13px}.metric-row b{font-weight:500}.positive{color:#306355}.warning{color:#925b43}.page-hero{max-width:720px;margin-bottom:50px}.page-hero h1{font-size:clamp(48px,5.5vw,78px)}.notice{padding:15px 17px;border:1px solid var(--line);border-radius:6px;background:var(--mist);font-size:13px;line-height:1.45}.notice strong{font-weight:500}.onboarding{display:grid;grid-template-columns:220px 1fr;gap:7vw}.stepper{border-top:1px solid var(--line)}.stepper div{display:flex;gap:11px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.stepper span{font:10px var(--mono)}.stepper .active{font-weight:500}.flow-card{max-width:690px;padding:35px}.flow-card h2{margin:0 0 16px;font-size:36px;font-weight:400;letter-spacing:-.045em}.flow-card p{line-height:1.5}.choice-grid{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.choice-grid label{padding:10px 13px;border:1px solid var(--line);border-radius:99px;font-size:13px;cursor:pointer}.choice-grid input{position:absolute;opacity:0}.choice-grid label:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--paper)}.flow-actions{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.flow-actions small{font:10px var(--mono)}.scan-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw}.scan-stage{min-height:520px;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:8px;background:linear-gradient(145deg,#c9d0cc,#e6e1d8)}.face-guide{width:240px;height:310px;border:1.5px dashed var(--ink);border-radius:48% 48% 42% 42%/44% 44% 54% 54%;opacity:.75}.face-guide:before,.face-guide:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--ink);top:43%}.face-guide:before{margin-left:72px}.face-guide:after{margin-left:151px}.scan-stage p{position:absolute;bottom:20px;left:22px;margin:0;font:10px var(--mono);letter-spacing:.07em}.scan-form h2{margin:0;font-size:38px;font-weight:400;letter-spacing:-.04em}.scan-checklist{padding:0;list-style:none}.scan-checklist li{padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}.scan-checklist li:before{content:"✓";margin-right:10px}.upload-box{margin:24px 0;padding:24px;border:1px dashed var(--ink);border-radius:6px;text-align:center}.upload-box input{display:none}.upload-box label{display:inline-flex;cursor:pointer}.scan-preview{max-width:100%;max-height:280px;border-radius:6px;display:none;margin:15px auto}.scan-status{font-size:12px;line-height:1.4}.camera-actions{display:flex;gap:10px;flex-wrap:wrap}.reports-list{border-top:1px solid var(--line)}.report-row{display:grid;grid-template-columns:120px 1fr auto;gap:22px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.report-image{height:100px;border-radius:6px;background:linear-gradient(135deg,#c9d0cc,#ebe6dd);position:relative}.report-image:after{content:"";position:absolute;width:46px;height:63px;left:50%;top:50%;border:1px solid var(--ink);border-radius:50% 50% 45% 45%;transform:translate(-50%,-50%)}.report-row h2{margin:0 0 7px;font-size:21px;font-weight:400}.report-row p{margin:0;font-size:12px}.report-score{text-align:right}.report-score b{display:block;font-size:28px;font-weight:400;letter-spacing:-.05em}.report-score small{font:9px var(--mono)}.report-detail{display:grid;grid-template-columns:1fr .8fr;gap:6vw}.report-detail .report-visual{min-height:500px;position:relative;border-radius:8px;background:linear-gradient(145deg,#c9d0cc,#e7e0d8)}.report-visual:after{content:"";position:absolute;width:200px;height:290px;left:50%;top:46%;border:1px solid var(--ink);border-radius:47% 47% 43% 43%;transform:translate(-50%,-50%)}.metric-board{margin-top:30px}.compare-shell{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-panel{min-height:510px;position:relative;overflow:hidden;border-radius:8px;background:linear-gradient(145deg,#c5cecb,#e8e2d9)}.compare-panel:nth-child(2){background:linear-gradient(145deg,#d5c5bc,#eee8df)}.compare-panel:after{content:"";position:absolute;width:180px;height:260px;left:50%;top:47%;border:1px solid var(--ink);border-radius:47% 47% 43% 43%;transform:translate(-50%,-50%)}.compare-panel span{position:absolute;z-index:1;top:18px;left:18px;font:10px var(--mono)}.compare-controls{margin-top:22px;display:flex;align-items:center;gap:15px}.compare-controls input{accent-color:var(--ink);flex:1}.routine-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.routine-item{padding:22px;min-height:240px}.routine-item span{font:10px var(--mono)}.routine-item h2{margin:55px 0 8px;font-size:24px;font-weight:400}.routine-item p{margin:0;font-size:13px}.routine-item button{margin-top:22px;padding:0;border:0;border-bottom:1px solid var(--ink);background:none;color:var(--ink);font-size:12px;cursor:pointer}.profile-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw}.profile-summary{padding:28px}.profile-avatar{display:grid;width:80px;height:80px;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font:28px var(--serif)}.profile-summary h2{margin:20px 0 6px;font-size:28px;font-weight:400}.profile-summary p{line-height:1.45;font-size:13px}.privacy-list{max-width:780px;border-top:1px solid var(--line)}.privacy-list article{padding:20px 0;border-bottom:1px solid var(--line)}.privacy-list h2{margin:0 0 8px;font-size:19px;font-weight:500}.privacy-list p{margin:0;line-height:1.5;font-size:13px}.disclaimer{max-width:780px;margin-top:50px;padding:18px 20px;border-left:3px solid var(--ink);background:var(--mist);font-size:13px;line-height:1.5}.toast{position:fixed;z-index:10;left:50%;bottom:25px;padding:12px 17px;border-radius:99px;background:var(--ink);color:var(--paper);font-size:12px;transform:translate(-50%,150px);transition:transform .3s}.toast.show{transform:translate(-50%,0)}@media(max-width:850px){.app-header{height:63px;display:flex;justify-content:space-between;padding:0 18px}.app-nav{display:none}.app-actions{gap:8px;font-size:9px}.app-actions a:first-child{display:none}.app-main{padding:43px 22px 78px}.dashboard-intro{display:block;margin-bottom:38px}.dashboard-intro .demo-pill{margin-top:23px}.dashboard-grid,.dashboard-lower,.onboarding,.scan-shell,.report-detail,.compare-shell,.profile-grid{grid-template-columns:1fr;display:grid}.score-card,.next-card{min-height:330px}.chart-card{grid-column:auto}.chart{height:160px}.onboarding{gap:35px}.stepper{display:flex;overflow:hidden}.stepper div{min-width:120px}.flow-card{padding:25px}.scan-stage{min-height:380px}.routine-list{grid-template-columns:1fr}.report-row{grid-template-columns:80px 1fr}.report-image{height:72px}.report-score{grid-column:2;text-align:left}.report-detail .report-visual{min-height:360px}.compare-panel{min-height:340px}.profile-grid{gap:20px}.app-announcement{font-size:8px;text-align:center;padding:0 10px}}
