
:root { --bg:#000; --fg:#fff; --red:#C1121F; --muted:#aaa; --card:#0d0d0d; --border:#1a1a1a; }
* { box-sizing: border-box; }
html, body { margin:0; padding:0; background:var(--bg); color:var(--fg); -webkit-text-size-adjust:100%; }
body { font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; line-height:1.55; }
a, a:visited { color: var(--red); text-decoration: none; }
a:hover, a:focus { color: var(--bg); background: var(--red); }
.container { max-width: 1120px; margin: 0 auto; padding: 24px; }
header, footer { background:#000; border-bottom:1px solid var(--border); }
header .container, footer .container { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.brand { font-weight:800; letter-spacing:0.4px; }
nav a { margin-right:16px; }
.hero { padding: 60px 0 24px; border-bottom: 1px solid var(--border); }
.tag { background: var(--red); color: var(--bg); display:inline-block; padding:2px 8px; border-radius:4px; font-weight:700; }
.lead { color: var(--muted); max-width: 70ch; }
.grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:16px; margin-top:24px; }
.card { background: var(--card); border:1px solid var(--border); padding:16px; border-radius:10px; }
.card h3 { margin-top:0; }
.btn { display:inline-block; padding:10px 14px; border:1px solid var(--red); color: var(--red); border-radius:8px; }
.btn:hover { background: var(--red); color: var(--bg); }
table { width:100%; border-collapse: collapse; background: var(--card); }
th, td { border:1px solid var(--border); padding:10px; text-align:left; vertical-align:top; }
thead th { background:#111; color:#fff; }
.kv { display:grid; grid-template-columns: 160px 1fr; gap:8px; margin:16px 0; }
.small { font-size: 14px; color: var(--muted); }
.notice { background:#0a0a0a; border:1px solid var(--border); padding:12px; border-radius:8px; }
.section { margin-top: 32px; }
.footer-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:16px; }
hr { border:none; border-top: 1px solid var(--border); margin: 24px 0; }
@media (max-width: 900px) {
  .grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .kv { grid-template-columns: 1fr; }
}
