:root{--ink:#242735;--muted:#697386;--brand:#902082;--brand-dark:#741669;--line:#e9e3eb;--soft:#faf7fb;--danger:#b42318;--success:#16794b;--shadow:0 18px 48px #4f264b1f}*{box-sizing:border-box}svg{display:block}html,body{min-height:100%;color:var(--ink);letter-spacing:0;background:#fcfbfd;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@supports (-webkit-touch-callout:none){html,body{min-height:-webkit-fill-available}}button,input,select{font:inherit}button{cursor:pointer}a{color:var(--brand);font-weight:750}.app-header{height:78px;padding:8px max(18px, env(safe-area-inset-left));z-index:20;background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.brand-logo{width:132px;height:auto}.icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--brand);background:#fff;border-radius:50%;justify-content:center;justify-self:end;align-items:center;line-height:0;display:flex}.text-icon{border-radius:8px;justify-self:start;align-items:center;gap:6px;width:auto;padding:0 11px;display:flex}.text-icon span{font-size:12px;font-weight:800}.header-spacer{width:42px}.auth-shell{background:radial-gradient(circle at 50% 15%,#fff 0,#fcf6fc 48%,#f3edf7 100%);min-height:100dvh}.auth-panel{border:1px solid var(--line);width:min(100% - 32px,480px);box-shadow:var(--shadow);background:#fff;border-radius:8px;margin:clamp(28px,6vh,70px) auto;padding:28px}.auth-panel.wide{width:min(100% - 32px,700px)}.auth-copy{margin-bottom:24px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--brand);font-size:12px;font-weight:850}.auth-copy h1,.section-heading h1{margin:8px 0 10px;font-size:clamp(28px,4vw,40px);line-height:1.12}.auth-copy p,.section-heading p{color:var(--muted);margin:0;line-height:1.55}.coach-intro{grid-template-columns:64px 1fr;align-items:end;gap:12px;max-width:720px;margin:0 auto 34px;display:grid}.coach-intro.compact{grid-template-columns:52px 1fr;margin-bottom:25px}.coach-intro img{object-fit:contain;width:64px;height:64px}.coach-intro.compact img{width:52px;height:52px}.coach-intro>div{background:#f6e9f7;border-radius:8px;padding:16px 18px;font-size:17px;font-weight:650;line-height:1.45;position:relative}.coach-intro>div:before{content:"";border-top:8px solid #0000;border-bottom:0 solid #0000;border-left:0 solid #0000;border-right:10px solid #f6e9f7;position:absolute;bottom:10px;left:-9px}.coach-intro strong,.coach-intro span{display:block}.coach-intro span{color:#5d5964;margin-top:5px;font-size:14px;font-weight:500}.form-stack{gap:17px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.form-grid .full{grid-column:1/-1}.signup-honeypot{clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}label{gap:7px;font-size:14px;font-weight:700;display:grid}input,select{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #d8d0db;border-radius:7px;outline:none;padding:0 14px}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #9020821f}.input-wrap{position:relative}.input-wrap svg{color:#9b8d9b;width:20px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.input-wrap input{padding-left:46px}.primary-button{background:var(--brand);color:#fff;border:0;border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:0 20px;font-weight:800;text-decoration:none;display:flex;box-shadow:0 8px 18px #90208233}.primary-button:hover{background:var(--brand-dark)}.primary-button:disabled{opacity:.55;cursor:not-allowed}.primary-button svg{width:19px;height:19px}.primary-button.inline{width:auto;display:inline-flex}.auth-link{text-align:center;color:var(--muted);margin:24px 0 0;font-size:14px}.form-error,.form-success{border-radius:7px;padding:12px 14px;font-size:14px}.form-error{color:var(--danger);background:#fff0ee;border:1px solid #ffcbc5}.form-success{color:var(--success);background:#eaf9f0}.verify-panel{text-align:center}.verify-icon{width:48px;height:48px;color:var(--success);margin:0 auto 14px}.code-input{text-align:center;letter-spacing:8px;font-size:26px;font-weight:800}.text-button{color:var(--brand);background:0 0;border:0;margin-top:18px;font-weight:750}.survey-shell{background:#fbfdf9;grid-template-rows:auto 1fr auto;min-height:100dvh;display:grid}.survey-content{padding:clamp(24px, 5vw, 54px) 20px calc(110px + env(safe-area-inset-bottom,0px));overflow:auto}.loading-screen{text-align:center;min-height:100dvh;color:var(--brand);place-content:center;gap:14px;font-weight:750;display:grid}.loading-screen svg{margin-inline:auto}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.intro-view{gap:30px;width:min(980px,100%);margin:auto;display:grid}.intro-copy{text-align:center;max-width:660px;margin:auto}.intro-copy h1{margin:12px 0 18px;font-size:clamp(30px,5vw,52px);line-height:1.1}.intro-values{text-align:left;gap:8px;max-width:610px;margin:0 auto 22px;display:grid}.intro-values p{color:var(--ink);margin:0}.intro-values strong{color:var(--brand)}.intro-copy p{color:var(--muted);max-width:610px;margin:0 auto 28px;font-size:18px;line-height:1.55}.question-view{width:min(720px,100%);margin:auto}.question-progress{color:var(--muted);align-items:center;gap:16px;margin-bottom:16px;font-size:13px;font-weight:750;display:flex}.question-progress>div{background:#ece9ee;border-radius:9px;flex:1;height:7px;overflow:hidden}.question-progress i{background:var(--brand);border-radius:9px;height:100%;transition:width .25s;display:block}.question-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:clamp(22px,5vw,42px)}.area-label{color:var(--brand);font-weight:850}.question-card h1{margin:12px 0 30px;font-size:clamp(26px,5vw,40px);line-height:1.2}.answer-list{gap:10px;display:grid}.answer-list button{text-align:left;min-height:58px;color:var(--ink);background:#fcfafc;border:1px solid #e9e2ea;border-radius:7px;align-items:center;gap:13px;padding:8px 14px;display:flex}.answer-list button:hover,.answer-list button.selected{border-color:var(--brand);background:#fbf1fa}.scale-dot{border:1px solid #0000002e;border-radius:50%;flex:0 0 35px;place-items:center;width:35px;height:35px;font-weight:850;display:grid}.value-1{background:#f27a82}.value-2{background:#ff993f}.value-3{background:#ffd452}.value-4{background:#b8ee5d}.value-5{background:#47dc8b}.question-pager{justify-content:center;gap:8px;margin-top:20px;display:flex}.question-pager button{border:1px solid var(--line);color:#8a8290;background:#fff;border-radius:50%;width:34px;height:34px;font-size:12px;font-weight:800}.question-pager button.active{border:2px solid var(--brand);color:var(--brand)}.question-pager button.answered{color:#3f7f19;background:#eaf8df}.section-heading{text-align:center;max-width:720px;margin:0 auto 30px}.result-view{width:min(1040px,100%);margin:auto}.result-layout{grid-template-columns:minmax(280px,420px) 1fr;align-items:start;gap:36px;display:grid}.result-overview{border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;padding:clamp(24px,5vw,42px);display:flex;box-shadow:0 12px 34px #24273514}.score-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.score-heading>span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:800}.score-heading strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(46px,8vw,72px);line-height:.82}.score-heading small{color:var(--muted);margin-left:4px;font-size:18px;font-weight:750}.score-track{background:#ebecef;border-radius:10px;height:10px;overflow:hidden}.score-track i{border-radius:inherit;background:linear-gradient(90deg,#f27a82 0 20%,#ff993f 20% 40%,#ffd452 40% 60%,#b8ee5d 60% 80%,#47dc8b 80% 100%);height:100%;display:block}.score-scale{justify-content:space-between;margin-top:10px;display:flex}.score-scale span{color:#8b9099;border:1px solid #dfe1e5;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:800;display:grid}.score-scale span.current{outline-offset:2px;color:#242735;outline:3px solid #242735}.result-coach-intro{margin-top:28px;margin-bottom:0}.score-guidance{gap:7px;margin-top:26px;display:grid}.score-guidance p{color:#4c5260;margin:0;font-weight:650;line-height:1.55}.result-list{gap:9px;display:grid}.result-list article{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.result-icon{color:#38404c;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.result-icon.risk{color:#4f151b;background:#f27a82}.result-icon.attention{color:#554000;background:#ffd452}.result-icon.healthy{color:#104c2d;background:#47dc8b}.result-icon svg{width:21px;height:21px}.result-list strong,.result-list small{display:block}.result-list small{color:var(--muted);margin-top:3px}.result-help-action{justify-items:center;width:min(420px,100%);margin:42px auto 0;display:grid;position:relative}.result-help-action>button{background:var(--brand);color:#fff;width:100%;min-height:54px;font:inherit;border:0;border-radius:8px;padding:13px 18px;font-weight:850;box-shadow:0 10px 24px #92278f33}.result-help-action>button:hover{background:#7f227d}.result-help-pointer{color:var(--brand);pointer-events:none;align-items:center;gap:4px;font-size:13px;font-weight:850;animation:1.25s ease-in-out infinite resultHelpPointer;display:flex;position:absolute;bottom:calc(100% + 7px);right:18px}@keyframes resultHelpPointer{0%,to{transform:translateY(-5px)}50%{transform:translateY(2px)}}.result-value{font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.result-value.risk{color:#4f151b;background:#f27a82}.result-value.attention{color:#554000;background:#ffd452}.result-value.healthy{color:#104c2d;background:#47dc8b}.reflection-view{width:min(760px,100%);margin:auto}.reflection-card{text-align:center;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:clamp(26px,6vw,58px)}.reflection-card>svg{width:44px;height:44px;color:var(--brand);margin-inline:auto}.reflection-card h1{font-size:clamp(28px,5vw,44px)}.reflection-card p{color:var(--muted);font-size:18px;line-height:1.65}.finished-view{text-align:center;max-width:700px;margin:auto;padding-top:6vh}.finished-view>img{object-fit:contain;width:84px;height:84px;margin:0 auto 18px}.finished-view h1{font-size:clamp(28px,5vw,44px);line-height:1.18}.finished-view p{color:var(--muted);margin:0 auto 28px;font-size:18px;line-height:1.6}.global-error{width:min(720px,100%);margin:0 auto 18px}.step-footer{z-index:1000;bottom:10px;bottom:max(10px, env(safe-area-inset-bottom,0px));isolation:isolate;background:#fff;border-radius:22px;justify-content:center;align-items:center;gap:12px;width:104px;height:58px;margin-inline:auto;padding:7px 10px;display:flex;position:fixed;left:0;right:0;transform:translateZ(0);box-shadow:0 -2px 20px #00000014,0 4px 15px #0000001a}.step-arrow{width:34px;height:34px;color:var(--brand);background:0 0;border:0;border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.step-arrow:not(:disabled):hover{background:#f6e9f7}.step-arrow:disabled{opacity:.24;cursor:default}.step-dots{align-items:center;gap:4px;display:flex}.step-dots span{color:#9ca3af;background:0 0;border-radius:50%;place-items:center;width:27px;height:27px;font-size:11px;font-weight:850;display:grid}.step-dots span.active{background:var(--brand);color:#fff;box-shadow:none}.step-dots span.done{color:#5e872e;background:#edf7e5}@media (max-width:720px){.app-header{height:68px}.brand-logo{width:112px}.auth-panel{padding:22px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.survey-content{padding:22px 16px 96px}.coach-intro{grid-template-columns:52px 1fr;align-items:end}.coach-intro img{width:52px;height:52px}.coach-intro>div{font-size:15px}.intro-copy h1{font-size:38px}.question-card{padding:22px 17px}.question-card h1{font-size:28px}.answer-list button{min-height:56px}.answer-list strong{font-size:14px}.result-layout{grid-template-columns:1fr}.result-overview{width:100%;padding:24px}.result-list{margin-top:4px}}@media (max-width:380px){.step-footer{gap:8px;width:98px;padding-inline:7px}.step-dots{gap:2px}.step-dots span{width:25px;height:25px}.step-arrow{flex-basis:31px;width:31px;height:31px}.question-pager{gap:5px}.question-pager button{width:31px;height:31px}}
