
:root {
  color-scheme: dark;
  --bg:#081214; --panel:#0d1b1d; --panel2:#112326;
  --text:#eff8f5; --muted:#9db2af; --border:#243638;
  --lime:#a8ff35; --cyan:#40d9ff;
}
* { box-sizing:border-box; }
body {
  margin:0; color:var(--text); background:var(--bg);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a { color:var(--cyan); }
.legal-header {
  position:sticky; top:0; z-index:10; display:flex; justify-content:space-between;
  gap:18px; align-items:center; padding:15px max(20px,calc((100vw - 980px)/2));
  border-bottom:1px solid var(--border); background:rgba(8,18,20,.95); backdrop-filter:blur(12px);
}
.legal-brand { color:var(--text); text-decoration:none; font-weight:950; }
.legal-nav { display:flex; gap:12px; flex-wrap:wrap; }
.legal-nav a { color:var(--muted); font-size:.77rem; text-decoration:none; }
.legal-nav a:hover { color:var(--lime); }
.legal-main { width:min(980px,calc(100% - 32px)); margin:42px auto 70px; }
.eyebrow { color:var(--lime); font-size:.72rem; font-weight:900; letter-spacing:.12em; }
h1 { margin:8px 0 10px; font-size:clamp(2.2rem,6vw,4.2rem); line-height:1; }
h2 { margin:32px 0 10px; font-size:1.25rem; }
h3 { margin:22px 0 8px; font-size:1rem; }
p,li { color:var(--muted); line-height:1.7; }
.notice {
  margin:22px 0; padding:15px 17px; border:1px solid rgba(64,217,255,.28);
  border-radius:14px; background:rgba(64,217,255,.045);
}
.toc {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px;
  margin:22px 0; padding:18px; border:1px solid var(--border); border-radius:14px; background:var(--panel);
}
.toc a { text-decoration:none; font-size:.82rem; }
.legal-card {
  margin-top:18px; padding:22px; border:1px solid var(--border);
  border-radius:16px; background:var(--panel);
}
.legal-footer {
  padding:24px max(20px,calc((100vw - 980px)/2)); border-top:1px solid var(--border);
  color:var(--muted); font-size:.75rem; background:#071012;
}
code { color:#c7f7ff; }
@media(max-width:700px) {
  .legal-header { align-items:flex-start; flex-direction:column; }
  .toc { grid-template-columns:1fr; }
  .legal-card { padding:17px; }
}
