:root{--ink:#111827;--muted:#526071;--line:#d8dee8;--cream:#f5eee5;--red:#9f2636;--blue:#2459a9;--green:#19734a;--amber:#9a5b05}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55}
.score2-hero{max-width:1040px;margin:auto;padding:38px 22px 14px;text-align:center}.score2-hero h1{margin:0 0 10px;color:#0f172a;font-size:clamp(30px,5vw,48px);letter-spacing:-.035em}.lead{max-width:790px;margin:auto;color:var(--muted);font-size:18px}
main{max-width:1040px;margin:20px auto 70px;padding:0 20px}.calculator{padding:28px;border:1px solid rgba(15,23,42,.08);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 18px 46px rgba(15,23,42,.10)}.calculator>h2{margin-top:0}.intro-note{padding:15px 17px;border:1px solid #c9d7eb;border-radius:14px;background:#f3f7fd;color:#263a58}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.field label,.field-label{display:block;margin-bottom:7px;font-weight:760}.field input,.field select{width:100%;min-height:50px;padding:12px 14px;border:1px solid #b9c3d2;border-radius:12px;background:#fff;color:#111827;font:inherit}.field small{display:block;margin-top:5px;color:#657083}.field input:focus,.field select:focus,.eligibility input:focus-visible{outline:3px solid rgba(159,38,54,.15);border-color:var(--red)}
.eligibility{margin:22px 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fafbfc}.eligibility legend{max-width:850px;padding:0 6px;font-weight:760}.radio-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.radio-option{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #c8d0dc;border-radius:999px;background:#fff;cursor:pointer}.radio-option input{width:18px;height:18px;margin:0;accent-color:#172033}
.actions{display:flex;flex-wrap:wrap;gap:10px}.button{padding:12px 19px;border:0;border-radius:12px;background:#111827;color:#fff;font:inherit;font-weight:760;cursor:pointer}.button:hover{background:#263246}.button.secondary{background:#e8edf4;color:#172033}.button.secondary:hover{background:#dce3ec}.button:focus-visible{outline:3px solid rgba(36,89,169,.3);outline-offset:2px}
.error{margin-top:16px;padding:14px 16px;border:1px solid #f1b7bd;border-radius:12px;background:#fff0f0;color:#8b1e1e;font-weight:700}.score2-results{margin-top:26px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#f8fafc;scroll-margin-top:24px}.score2-results h2{margin:0 0 4px}.risk-number{display:block;margin:8px 0 2px;font-size:clamp(46px,9vw,78px);font-weight:850;letter-spacing:-.055em;line-height:1}.risk-label{margin:0;color:var(--muted)}.risk-category{margin:22px 0 0;padding:17px;border-left:5px solid var(--blue);border-radius:10px;background:#edf4ff}.risk-category strong{display:block;font-size:1.18rem}.risk-category span{font-weight:800}.risk-low .risk-number,.risk-low .risk-category span{color:var(--green)}.risk-low .risk-category{border-left-color:var(--green);background:#edf9f2}.risk-high .risk-number,.risk-high .risk-category span{color:var(--amber)}.risk-high .risk-category{border-left-color:#d88a14;background:#fff8e9}.risk-very-high .risk-number,.risk-very-high .risk-category span{color:var(--red)}.risk-very-high .risk-category{border-left-color:var(--red);background:#fff0f0}
.result-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.result-detail{margin:0;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#344155}.result-guidance{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.result-guidance h3{margin:0 0 8px}.result-guidance p{margin:8px 0}.privacy{color:var(--muted);font-size:.92rem}
.method{margin-top:24px;padding:22px;border:1px solid rgba(15,23,42,.08);border-radius:20px;background:rgba(255,255,255,.72)}.method h2{margin-top:0}.method ul{padding-left:21px}.method a,.back a{color:#1d4ed8}.source-list li+li{margin-top:7px}.disclaimer{padding:15px 17px;border-left:4px solid #7d8796;border-radius:8px;background:#f0f2f5;color:#3b4655}.back{margin-top:24px}footer{min-height:30px}
@media(max-width:680px){.score2-hero{padding-top:28px}.calculator{padding:18px}.fields,.result-details{grid-template-columns:1fr}.radio-row{flex-direction:column}.radio-option{border-radius:12px}.method{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
