#quiz-root *{box-sizing:border-box}
#quiz-root body{margin:0;background:var(--mist);color:var(--ink);font:17px/1.6 'Segoe UI',sans-serif}
#quiz-root button,#quiz-root input{font:inherit}
#quiz-root button,#quiz-root a,#quiz-root input{touch-action:manipulation}
#quiz-root button,#quiz-root a{outline-offset:5px}
#quiz-root button:focus-visible,#quiz-root a:focus-visible,#quiz-root input:focus-visible{outline:3px solid #51750f}
#quiz-root header{max-width:1200px;margin:auto;padding:30px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}
#quiz-root .brand{font-size:18px;font-weight:700;letter-spacing:-.5px}
#quiz-root .prototype{font-size:12px;border:1px solid var(--line);padding:5px 10px;border-radius:20px;color:var(--slate)}
#quiz-root main{max-width:1200px;margin:32px auto 80px;padding:0 40px}
#quiz-root .layout{display:grid;grid-template-columns:260px 1fr;gap:60px}
#quiz-root aside{padding:35px 0}
#quiz-root aside h2{font-size:19px;line-height:1.4;margin:0 0 16px}
#quiz-root aside p{font-size:14px;color:var(--slate);max-width:26ch}
#quiz-root .steps{display:flex;gap:8px;margin:30px 0 12px}
#quiz-root .step{height:5px;flex:1;border-radius:3px;background:var(--line)}
#quiz-root .step.on{background:var(--moss)}
#quiz-root .step-label{font-size:13px;color:var(--slate)}
#quiz-root .panel{background:white;padding:42px 48px;border-radius:12px}
#quiz-root h2[tabindex]{font:normal clamp(32px,4vw,46px)/1.15 Georgia,serif;letter-spacing:-1.2px;max-width:22ch;margin:0 0 20px}
#quiz-root h2[tabindex]:focus{outline:none}
#quiz-root .intro{color:var(--slate);margin:0 0 28px;max-width:62ch}
#quiz-root fieldset{border:0;margin:0;padding:0}
#quiz-root legend,#quiz-root .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#quiz-root .choice{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:7px;padding:17px 20px;margin:12px 0;cursor:pointer;min-height:65px}
#quiz-root .choice:hover{background:#f5f9f6}
#quiz-root .choice:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--mist)}
#quiz-root input[type=radio]{width:20px;height:20px;accent-color:var(--ink);flex-shrink:0}
#quiz-root .actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:30px}
#quiz-root .primary{background:var(--citrus);color:var(--ink);border:0;padding:14px 24px;border-radius:6px;font-weight:650;cursor:pointer;min-height:50px}
#quiz-root .primary:hover{background:#c7e477}
#quiz-root .secondary{border:0;background:transparent;padding:12px 0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;cursor:pointer;min-height:44px}
#quiz-root .error{color:#9b2e22;font-size:14px;margin:12px 0}
#quiz-root .note{font-size:13px;color:var(--slate);max-width:78ch}
#quiz-root .results-header{display:flex;justify-content:space-between;gap:30px;align-items:start}
#quiz-root .summary{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}
#quiz-root .tag{font-size:13px;border:1px solid var(--line);border-radius:20px;padding:5px 12px}
#quiz-root .result{background:#fff;padding:30px 32px;margin:16px 0;border-radius:9px;display:grid;grid-template-columns:1fr 1.5fr;gap:35px}
#quiz-root .result h2{font:normal 27px/1.2 Georgia,serif;margin:0 0 12px}
#quiz-root .result p{margin:0 0 12px}
#quiz-root .formula{font-size:14px;color:var(--moss)}
#quiz-root .detail{font-size:15px}
#quiz-root .result a{display:inline-block;color:var(--ink);font-weight:650;text-underline-offset:5px;margin-top:8px;padding:6px 0}
#quiz-root .tradeoff{color:var(--slate)}
#quiz-root .footnote{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}
#quiz-root .context{max-width:75ch}
#quiz-root{--mist:#edf4f1;--ink:#153e35;--moss:#416859;--citrus:#d7ef8c;--slate:#53625c;--line:#cbdad2;background:var(--mist);padding:32px;border-radius:12px;margin:24px 0}#quiz-root .secondary{background:transparent;border:0;color:var(--ink)}#quiz-root .primary{border:0}#quiz-root .panel h2[tabindex]{font-size:42px}#quiz-root .result a{font-size:15px}@media(max-width:760px){#quiz-root{padding:20px 14px}#quiz-root .layout,#quiz-root .result{display:block}#quiz-root aside{padding:8px 0 22px}#quiz-root .panel{padding:26px 20px}#quiz-root .panel h2[tabindex]{font-size:34px}#quiz-root .result{padding:24px}#quiz-root .results-header{display:block}#quiz-root .actions{flex-wrap:nowrap}#quiz-root .choice{padding:15px 12px}}