:root{--ink:#13262b;--muted:#52676b;--paper:#fbfaf5;--line:#d7dfdb;--accent:#08786c;--accent-dark:#045d54;--warm:#e8a849;--panel:#fff}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.shell{max-width:880px;margin:auto;padding:24px 20px 64px}header{display:flex;justify-content:space-between;align-items:start;gap:16px;padding:4px 0 34px}.brand{color:var(--ink);text-decoration:none;font-size:12px;line-height:1.1;letter-spacing:.11em}.brand b{font-size:15px}.results-link{color:var(--accent-dark);font-weight:700}.hero{border-left:6px solid var(--warm);padding:8px 0 8px 22px;margin-bottom:30px}.hero.compact{margin-bottom:20px}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:800;color:var(--accent-dark);margin:0 0 10px}h1{font-size:clamp(2rem,6vw,3.55rem);letter-spacing:-.04em;line-height:1.06;max-width:780px;margin:0 0 16px}h2{font-size:1.25rem;letter-spacing:-.01em;margin:0 0 8px}.notice,.definitions,.question,.result-card,.end{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;margin:18px 0;box-shadow:0 1px 0 rgba(15,36,38,.03)}.notice{border-left:4px solid var(--accent)}.notice p:last-child,.definitions p:last-child{margin-bottom:0}.definitions ul{padding-left:20px;margin:10px 0 0}.definitions li{margin:8px 0}.progress-head{display:flex;justify-content:space-between;font-size:14px;font-weight:700;margin:26px 0 7px}.progress{height:8px;border-radius:8px;background:#e1e8e4;overflow:hidden}.progress i{height:100%;background:var(--accent);display:block;width:0;transition:width .2s}.section-title{margin:36px 0 8px;color:var(--accent-dark);font-size:13px;letter-spacing:.12em}.question.hidden,.hidden{display:none}.question legend{font-weight:800;font-size:1.05rem;padding:0;margin-bottom:4px}.help{color:var(--muted);font-size:.94rem;margin:0 0 12px}.choice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:8px 0;cursor:pointer}.choice:focus-within{outline:3px solid #9fd8d1;outline-offset:1px}.choice input{margin-top:5px;accent-color:var(--accent);min-width:16px;min-height:16px}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.primary,.secondary,.link-button{appearance:none;border:0;border-radius:8px;padding:12px 18px;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}.primary{background:var(--accent);color:white}.primary:hover{background:var(--accent-dark)}.secondary{background:#e7eeeb;color:var(--ink)}.link-button{display:inline-block}.end{text-align:center;padding:36px}.error{color:#a42424;font-weight:700}.small{font-size:.88rem;color:var(--muted)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}dialog{border:0;border-radius:14px;box-shadow:0 20px 80px rgba(0,0,0,.3);max-width:680px;width:calc(100% - 28px);max-height:calc(100vh - 28px);overflow-y:auto;padding:26px;background:var(--paper)}dialog::backdrop{background:rgba(13,30,30,.55)}.close{float:right;border:0;background:none;font-size:28px;cursor:pointer;color:var(--muted)}#review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.review-row{background:#fff;border:1px solid var(--line);padding:10px;border-radius:8px;font-size:.88rem}.review-row b{display:block;font-size:.72rem;letter-spacing:.04em;color:var(--muted);margin-bottom:3px}.result-table{border-collapse:collapse;width:100%;font-size:.9rem;margin-top:14px}.result-table th,.result-table td{border-bottom:1px solid var(--line);padding:9px;text-align:left;vertical-align:top}.result-table th{font-size:.75rem;letter-spacing:.03em;color:var(--muted)}.result-card h2{margin-top:28px}@media(max-width:600px){.shell{padding:18px 14px 44px}header{padding-bottom:22px}.results-link{font-size:14px}.notice,.definitions,.question,.result-card{padding:16px}.choice{padding:12px}.actions{display:block}.actions button,.link-button{width:100%;margin-top:8px}#review-list{grid-template-columns:1fr}.result-table{font-size:.78rem}.result-table th,.result-table td{padding:7px 4px}}
