:root{
  --bg:#0b0f14;
  --card:#111720;
  --muted:#98a2b3;
  --text:#e6eaf0;
  --accent:#6ee7b7;
  --accent-ink:#0b3326;
  --ring:#1f2937;
  --border:#202838;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:linear-gradient(180deg,#0b0f14 0%,#0e1420 100%);
  color:var(--text);
  line-height:1.6;
}
.container{max-width:980px;margin:auto;padding:16px}
.site-header{
  border-bottom:1px solid var(--border);
  background:radial-gradient(80% 100% at 50% 0%, rgba(110,231,183,.08), transparent 60%);
}
.site-header.compact{padding:8px 0}
.site-header .subtitle{color:var(--muted);margin:8px 0 0}
.site-footer{border-top:1px solid var(--border);color:var(--muted);text-align:center}
h1{font-size:1.8rem;margin:.2rem 0}
h2{font-size:1.3rem;margin:.2rem 0 .8rem}
h3{font-size:1.1rem;margin:1rem 0 .6rem}
p{margin:.5rem 0}
.muted{color:var(--muted)}
.sr-only{position:absolute;left:-9999px}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:18px;
  margin:18px 0;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:separate;border-spacing:0;min-width:640px}
th,td{padding:12px;border-bottom:1px solid var(--border);vertical-align:top}
thead th{position:sticky;top:0;background:#0f1624;font-weight:700;text-align:left}
tbody tr:last-child td{border-bottom:none}
.btn{
  display:inline-block;
  padding:10px 16px;
  border-radius:12px;
  border:1px solid var(--border);
  text-decoration:none; color:var(--text);
  background:#121a27;
  transition:.2s;
}
.btn:hover{transform:translateY(-1px)}
.btn.primary{
  background:linear-gradient(180deg,var(--accent),#34d399);
  color:#082016; border:0; font-weight:700;
  box-shadow:0 6px 20px rgba(110,231,183,.25);
}
.btn.ghost{background:transparent}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.row{display:flex;gap:16px;align-items:center;justify-content:space-between}
form .q{
  margin:14px 0; padding:12px;
  border:1px solid var(--ring); border-radius:12px;
}
.q legend{font-weight:600;margin-bottom:8px}
.options{display:grid;gap:8px}
.option{
  display:flex;gap:10px;align-items:flex-start;
  border:1px dashed var(--border); padding:10px;border-radius:10px;
}
.option input{margin-top:4px}
.result-line{font-size:1.1rem}
.note{margin-top:12px}
