:root{
  --bg:#0b1220; --panel:#121a2b; --ink:#f6f7fb; --muted:#a7b2d9;
  --line:#22304f; --soft:#0f1726; --accent:#7aa2ff; --ok:#10b981; --warn:#f59e0b; --no:#ef4444;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif}
.container{max-width:1000px;margin:auto;padding:20px}
.nav{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(11,18,32,.75);backdrop-filter:saturate(1.2) blur(8px);z-index:10}
.nav__inner{display:flex;align-items:center;justify-content:space-between}
.brand{color:var(--ink);text-decoration:none;font-weight:800}
.nav a{color:var(--muted);text-decoration:none;margin-left:16px}
.nav a:hover{color:var(--ink)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;margin:20px 0;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.card--soft{background:var(--soft)}
.hero h1{font-size:clamp(24px,4vw,38px);margin:0 0 6px}
.sub{color:var(--muted);margin:0 0 16px}
.label{display:block;margin:12px 0 6px}
.input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#0f1726;color:var(--ink)}
.result{margin-top:12px;padding:16px;border-radius:12px;background:#0e1a33;border:1px solid var(--line)}
.hidden{display:none}
.result__row{display:flex;align-items:center;gap:10px}
.badge{padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid var(--line);opacity:.9}
.badge.ok{background:#0d2a16;border-color:#1d6b2f}
.badge.warn{background:#2a1b0f;border-color:#6b3b1d}
.badge.no{background:#2a0f12;border-color:#6b1d2b}
.grid-3{display:grid;gap:16px}
@media(min-width:760px){.grid-3{grid-template-columns:repeat(3,1fr)}}
.grid-2{display:grid;gap:12px}
@media(min-width:760px){.grid-2{grid-template-columns:repeat(2,1fr)}}
.btn{display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid var(--line);text-decoration:none;color:var(--ink);background:#14213b;margin-top:8px}
.btn:hover{background:#1b2c4f}
.steps{margin:0;padding-left:20px}
.steps li{margin:6px 0}
.small{font-size:14px;color:var(--muted)}
.mt-8{margin-top:8px}.mt-16{margin-top:16px}
.footer{border-top:1px solid var(--line);margin-top:30px}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.footer a{color:var(--muted);text-decoration:none;margin-left:12px}
.footer a:hover{color:var(--ink)}
.disclaimer{margin-top:16px;color:var(--muted)}
.crumbs{font-size:14px;color:var(--muted);margin:8px 0 16px}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs .sep{opacity:.6;margin:0 6px}
.crumbs .current{color:var(--ink)}
.form{max-width:640px}
.form .row{margin-bottom:12px}
.form label{display:block;margin-bottom:6px}
.form input[type=text], .form input[type=email], .form textarea{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#0f1726;color:var(--ink)}
.form textarea{min-height:140px;resize:vertical}
.note{padding:10px;border-radius:8px;background:#0e1a33;border:1px solid var(--line)}
.success{border-color:#1d6b2f;background:#0d2a16}
.error{border-color:#6b1d2b;background:#2a0f12}
.hp{position:absolute;left:-9999px;height:0;width:0;overflow:hidden}
.card a:not(.btn), .result a:not(.btn){color:#cfe1ff;text-decoration:underline;text-underline-offset:2px}
.card a:not(.btn):visited, .result a:not(.btn):visited{color:#bcd0ff}
.card a:not(.btn):hover, .result a:not(.btn):hover, .card a:not(.btn):focus-visible, .result a:not(.btn):focus-visible{color:#ffffff;outline:2px solid rgba(122,162,255,.45);outline-offset:2px}
#result a#src{color:#cfe1ff !important;text-decoration:underline;text-underline-offset:2px}
#result a#src:hover, #result a#src:focus, #result a#src:focus-visible{color:#ffffff !important;outline:2px solid rgba(122,162,255,.45);outline-offset:2px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border:1px solid var(--line);padding:10px;text-align:left}
.table th{background:#0e1a33}
