  :root {
    --ink: #12161c;
    --panel: #1a212b;
    --line: #2a3444;
    --text: #e4e8ee;
    --muted: #8b96a5;
    --stamp: #c97a3d;
    --font-display: 'IBM Plex Mono', 'Courier New', monospace;
    --font-body: 'IBM Plex Sans', -apple-system, Segoe UI, Arial, sans-serif;
  }
  * { box-sizing: border-box; }
  body { margin: 0; background: var(--ink); color: var(--text); font-family: var(--font-body); line-height: 1.65; }
  .wrap { max-width: 720px; margin: 0 auto; padding: 0 20px; }
  a { color: var(--stamp); }
  .topbar { border-bottom: 1px solid var(--line); padding-block: 16px; }
  .brand { font-family: var(--font-display); font-weight: 600; font-size: 1.05rem; letter-spacing: 0.02em; color: var(--text); text-decoration: none; }
  .brand span { color: var(--stamp); }
  main { padding-block: 40px 60px; }
  h1 { font-family: var(--font-display); font-size: 1.8rem; font-weight: 600; margin: 0 0 6px; }
  .updated { color: var(--muted); font-size: 0.88rem; margin: 0 0 32px; }
  h2 { font-family: var(--font-display); font-size: 1.1rem; font-weight: 600; margin: 34px 0 10px; }
  p, li { color: var(--text); max-width: 65ch; }
  ul { padding-left: 22px; }
  li { margin-bottom: 6px; }
  .muted { color: var(--muted); }
  .box { border: 1px solid var(--line); background: var(--panel); border-radius: 4px; padding: 16px 20px; }
  .box p { margin: 0; }
  footer { border-top: 1px solid var(--line); padding-block: 22px 40px; color: var(--muted); font-size: 0.82rem; }
  footer a { color: var(--muted); }
