:root{
  --bg: #0b0e12;
  --bg-soft:#12161b;
  --text:#e7edf3;
  --muted:#a6b2bf;
  --brand:#9bd3ff;
  --accent:#53ffa9;
  --danger:#ff6b6b;
  --card:#11161d;
  --border:#22303c;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  background:var(--bg); color:var(--text); line-height:1.5;
}
a{color:var(--brand); text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:980px; margin:0 auto; padding:0 16px}

.site-header{position:sticky; top:0; backdrop-filter:saturate(180%) blur(8px);
  background:linear-gradient(180deg, rgba(17,22,29,.95), rgba(17,22,29,.7));
  border-bottom:1px solid var(--border); z-index:10}
.header-inner{display:flex; align-items:center; justify-content:space-between; height:64px}
.brand{font-weight:700; font-size:1.05rem}
.nav a{margin-left:16px; color:var(--text)}
.nav a[aria-current="page"]{color:var(--accent); font-weight:600}
tr{text-align: center;}

.flash{padding:12px 16px; border-bottom:1px solid var(--border)}
.flash.success{background:#0f2a1e; color:#adf1cb}

.hero{padding:64px 0 24px}
.hero h1{font-size:clamp(28px, 4vw, 42px); margin:0 0 8px}
.lead{color:var(--muted); font-size:1.075rem; max-width:60ch}
.btn{display:inline-block; border:1px solid var(--border); padding:10px 14px; border-radius:10px; color:var(--text)}
.btn-primary{background:var(--accent); color:#07110b; border-color:transparent; font-weight:600}
.btn:hover{opacity:.95; text-decoration:none}

.features{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin:32px 0}
.feature{background:var(--card); border:1px solid var(--border); padding:16px; border-radius:16px}

.card{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:20px; margin:24px 0}
.form{display:grid; gap:12px; max-width:520px}
.form-row{display:grid; gap:8px}
.form-row.checkbox{align-items:center}
label{font-weight:600}
input[type="text"], input[type="email"]{
  background:var(--bg-soft); color:var(--text); border:1px solid var(--border);
  border-radius:10px; padding:10px 12px;
}
.hint{color:var(--muted)}
.fineprint{color:var(--muted); font-size:.9rem}
.form-actions{display:flex; gap:10px; align-items:center}

.table{width:100%; border-collapse:collapse; margin-top:16px; border:1px solid var(--border); border-radius:12px; overflow:hidden}
.table th,.table td{padding:10px 12px; border-bottom:1px solid var(--border)}
.table thead{background:#0f141a; color:var(--muted)}

.stats-summary{display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin:6px 0 18px}
.stats-summary .big{font-size:1.6rem; font-weight:700}

.chart-wrap{background:var(--bg-soft); border:1px solid var(--border); border-radius:16px; padding:10px}
.site-footer{border-top:1px solid var(--border); margin-top:40px; padding:24px 0; color:var(--muted)}
.footer-inner{display:flex; gap:10px; justify-content:space-between; flex-wrap:wrap}

