:root{--primary:#002a7a;--secondary:#78bf33;--text:#4b5563;--muted:#6b7280;--bg:#ffffff;--border:#e5e7eb;--ring-crit:#ef4444;--ring-vuln:#f59e0b;--ring-mod:#002a7a;--ring-adv:#78bf33}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);font-family:'Rubik',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;color:var(--text)}
.sd-wrap{max-width:980px;margin:32px auto;padding:0 16px}
.hero{padding:24px 20px;border-radius:16px;background:var(--bg);border:1px solid var(--border);box-shadow:0 4px 12px rgba(0,0,0,.05);display:block}
h1{margin:0 0 8px;font-weight:800;letter-spacing:.3px;color:var(--primary)}
.subtitle{color:var(--text);margin:0 0 12px}
.card{background:var(--bg);border:1px solid var(--border);border-radius:14px;padding:18px;box-shadow:0 4px 12px rgba(0,0,0,.04);margin-bottom:16px}
.grid{display:grid;gap:16px}
@media(min-width:900px){.grid-2{grid-template-columns:1fr 1fr}}
label{display:block;font-weight:600;margin-bottom:8px}
.hint{display:inline-block;margin-left:8px;color:var(--muted);font-weight:500;font-size:.9rem}
.radio{display:flex;flex-direction:column;gap:8px}
.radio label{font-weight:500}
.option{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#f9fafb}
.muted{color:var(--muted)}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{appearance:none;border:0;border-radius:12px;padding:12px 18px;font-weight:700;letter-spacing:.3px;cursor:pointer}
.btn-primary{background:var(--primary);color:white;text-decoration:none}
.btn-primary:hover{background:#001c52}
.btn-ghost{background:transparent;border:1px solid #d1d5db;color:var(--primary)}
.btn-ghost:hover{background:#f3f4f6}
.result{display:none}
.score-ring{width:120px;height:120px;border-radius:60px;display:grid;place-items:center;font-weight:800;color:var(--primary);border:6px solid #f3f4f6}
.pill{display:inline-flex;gap:8px;align-items:center;padding:6px 10px;border-radius:999px;font-weight:700;font-size:.9rem}
.pill.crit{background:rgba(239,68,68,.10);color:#b91c1c;border:1px solid rgba(239,68,68,.28)}
.pill.vuln{background:rgba(245,158,11,.10);color:#92400e;border:1px solid rgba(245,158,11,.28)}
.pill.mod{background:rgba(0,42,122,.10);color:#002a7a;border:1px solid rgba(0,42,122,.28)}
.pill.adv{background:rgba(120,191,51,.12);color:#4d7c1a;border:1px solid rgba(120,191,51,.28)}
.cta{border:1px dashed var(--border);padding:14px;border-radius:12px;background:#fafafa}
.small{font-size:.9rem}
.footer{color:var(--muted);font-size:.9rem;margin-top:12px}
.email{width:100%;max-width:420px;padding:10px;border:1px solid #cbd5e1;border-radius:10px}
