*{box-sizing:border-box}.hidden{display:none!important}body{margin:0;background:var(--bg-soft);color:var(--charcoal)}button,a{font:inherit}.intro-screen,.assessment-screen,.status-screen{min-height:calc(100vh - 72px)}.intro-screen{display:flex;align-items:center;justify-content:center;padding:clamp(54px,8vw,96px) var(--sp-8);background:var(--bg-soft);text-align:center}.intro-inner{width:min(820px,100%)}.intro-eyebrow,.section-label,.report-kicker,.card-kicker,.rhythm-kicker{margin:0;font-size:11px;font-weight:var(--w-black);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-primary)}.assessment-powered{margin:10px 0 var(--sp-5);font-size:13px;color:var(--grey-500)}.assessment-powered strong{color:var(--charcoal)}.intro-title{max-width:780px;margin:0 auto var(--sp-5);font-family:var(--font-display);font-size:clamp(38px,6vw,68px);font-weight:var(--w-black);line-height:.98;letter-spacing:var(--tracking-tight)}.intro-title em{font-style:normal;color:var(--brand-primary)}.intro-sub{max-width:680px;margin:0 auto var(--sp-8);font-size:clamp(17px,2vw,21px);line-height:1.65;color:var(--fg-2)}.intro-meta{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:var(--sp-8)}.intro-pill{padding:8px 15px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--white);font-size:13px;font-weight:var(--w-bold)}.intro-definition{display:flex;flex-direction:column;gap:6px;max-width:680px;margin:0 auto var(--sp-8);padding:18px 22px;border:1px solid var(--border);border-left:4px solid var(--brand-primary);border-radius:var(--radius-lg);background:var(--white);text-align:left;box-shadow:var(--shadow-xs);line-height:1.55}.intro-definition span{color:var(--fg-2);font-size:14px}.intro-actions,.assessment-actions,.report-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:var(--radius-md);font-weight:var(--w-bold);text-decoration:none;cursor:pointer}.btn-primary{border:1px solid var(--brand-primary);background:var(--brand-primary);color:var(--white)}.btn-primary:hover{background:var(--red-700)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{border:1px solid var(--border);background:var(--white);color:var(--charcoal)}.error-message{min-height:21px;margin:14px 0 0;color:var(--brand-primary);font-size:14px;font-weight:var(--w-bold)}.assessment-screen{padding:clamp(30px,6vw,72px) var(--sp-8)}.assessment-shell{width:min(860px,100%);margin:0 auto;padding:clamp(24px,5vw,52px);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--white);box-shadow:var(--shadow-sm)}.assessment-topline{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center}.exit-button{width:44px;height:44px;border:1px solid var(--border);border-radius:50%;background:var(--bg-soft);color:var(--charcoal);cursor:pointer;font-size:21px}.progress-copy{display:flex;justify-content:space-between;gap:14px;font-size:13px;color:var(--grey-500)}.progress-copy strong{color:var(--charcoal)}.save-status{font-size:12px;font-weight:var(--w-bold);color:var(--grey-500)}.progress-track{height:6px;margin:18px 0 42px;border-radius:999px;background:var(--grey-100);overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:var(--brand-primary);transition:width .25s ease}.question-panel h2,.question-panel #questionText{max-width:760px;margin:12px 0 30px;font-family:var(--font-display);font-size:clamp(18px,2.5vw,24px);font-weight:var(--w-black);line-height:1.35;letter-spacing:var(--tracking-snug);color:var(--charcoal)}.options{display:grid;gap:12px}.option-button{display:flex;align-items:flex-start;gap:14px;width:100%;padding:17px 18px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--white);color:var(--charcoal);text-align:left;line-height:1.5;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.option-button:hover{border-color:var(--brand-primary);transform:translateY(-1px)}.option-button.selected{border-color:var(--brand-primary);background:var(--red-50);box-shadow:inset 0 0 0 1px var(--brand-primary)}.option-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--bg-soft);font-weight:var(--w-black)}.option-button.selected .option-number{background:var(--brand-primary);color:var(--white)}.assessment-actions{justify-content:space-between;margin-top:34px}.status-screen{display:flex;align-items:center;justify-content:center;padding:64px var(--sp-8)}.status-card{width:min(680px,100%);padding:clamp(34px,6vw,64px);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--white);text-align:center;box-shadow:var(--shadow-sm)}.status-card h2{font-family:var(--font-display);font-size:clamp(30px,4vw,44px)}.status-card p{color:var(--fg-2);line-height:1.65}.pulse-loader{width:62px;height:62px;margin:0 auto 28px;border:5px solid var(--grey-100);border-top-color:var(--brand-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.report-screen{padding:clamp(44px,7vw,84px) var(--sp-8);background:var(--bg-soft)}.report-shell{width:min(1120px,100%);margin:0 auto;display:grid;gap:24px}.report-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;padding:clamp(34px,6vw,68px);border-radius:var(--radius-xl);background:var(--charcoal);color:var(--white);overflow:hidden;position:relative}.report-hero h1{max-width:760px;margin:12px 0 16px;font-family:var(--font-display);font-size:clamp(38px,5.8vw,66px);font-weight:var(--w-black);line-height:.98}.report-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.76);font-size:17px;line-height:1.65}.report-kicker{color:var(--gold-400)!important}.score-block{position:relative;z-index:1;display:grid;place-content:center;width:150px;height:150px;border:2px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(255,255,255,.06);text-align:center}.score-block strong{font-size:48px;line-height:1;color:var(--white)}.score-block span{margin-top:6px;font-size:11px;color:rgba(255,255,255,.68)}.summary-grid,.pathway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.summary-card,.report-section{padding:clamp(26px,4vw,42px);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--white);box-shadow:var(--shadow-xs)}.summary-card{border-top:5px solid var(--charcoal)}.strength-card{border-top-color:var(--brand-primary)}.exposure-card{border-top-color:var(--gold-600)}.summary-heading,.context-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.summary-card h2,.report-section h2{margin:10px 0 12px;font-family:var(--font-display);font-size:clamp(27px,3.3vw,40px);line-height:1.05}.summary-heading span{flex-shrink:0;padding:7px 10px;border-radius:var(--radius-pill);background:var(--bg-soft);font-size:12px;font-weight:var(--w-black)}.summary-card p,.report-section>p,.rhythm-card p,.pathway-step p,.insight-item p{color:var(--fg-2);line-height:1.65}.section-intro{max-width:780px;margin-bottom:26px}.section-intro p:last-child{color:var(--fg-2);line-height:1.65}.rhythm-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.rhythm-card{padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-soft)}.rhythm-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.rhythm-card h3{margin:7px 0 0;font-family:var(--font-display);font-size:26px}.rhythm-kicker{color:var(--grey-500);font-size:10px}.rhythm-score{font-size:30px;color:var(--brand-primary)}.rhythm-bar{height:8px;margin:17px 0;border-radius:999px;background:var(--grey-100);overflow:hidden}.rhythm-bar span{display:block;height:100%;background:var(--brand-primary)}.layer-scores{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.layer-scores span{padding:9px 7px;border-radius:var(--radius-md);background:var(--white);font-size:10px;color:var(--grey-500);text-align:center}.layer-scores strong{display:block;margin-top:3px;font-size:16px;color:var(--charcoal)}.rhythm-card p{margin:9px 0;font-size:14px}.pathway-focus{background:var(--red-50);border-color:var(--red-100)}.pathway-list{display:grid}.pathway-step{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:16px 0;border-bottom:1px solid var(--border)}.pathway-step:last-child{border-bottom:0}.pathway-step>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--charcoal);color:var(--white);font-size:12px;font-weight:var(--w-black)}.pathway-step strong{font-family:var(--font-display);font-size:20px}.pathway-step p{margin:5px 0 0}.insight-list{display:grid;gap:14px}.insight-item{padding:18px;border-left:4px solid var(--brand-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--bg-soft)}.insight-item p{margin:5px 0 0}.context-heading>strong{font-size:28px;color:var(--brand-primary)}.context-areas{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}.context-row{display:flex;justify-content:space-between;gap:10px;padding:15px;border-radius:var(--radius-md);background:var(--bg-soft);font-size:13px}.report-actions{justify-content:flex-end;margin-top:8px}@media(max-width:860px){.report-hero{grid-template-columns:1fr}.score-block{width:120px;height:120px}.summary-grid,.pathway-grid,.rhythm-results{grid-template-columns:1fr}.context-areas{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.intro-screen,.assessment-screen,.report-screen{padding-left:var(--sp-5);padding-right:var(--sp-5)}.assessment-shell,.summary-card,.report-section{padding:24px}.assessment-topline{grid-template-columns:44px 1fr}.save-status{grid-column:2}.progress-copy{flex-direction:column;gap:3px}.intro-actions,.assessment-actions,.report-actions{flex-direction:column}.intro-actions>*,.assessment-actions>*,.report-actions>*{width:100%}.assessment-actions{flex-direction:column-reverse}.layer-scores{grid-template-columns:repeat(2,1fr)}.context-areas{grid-template-columns:1fr}.report-hero{padding:32px 24px}.summary-heading,.context-heading{flex-direction:column}.score-block strong{font-size:40px}}
