  :root {
    --bg: #FBF7FF;
    --surface: #E7E2EE;
    --brand: #0034D3;
    --text: #0034D3;
    --muted: #9089D2;
    --body: #2B2A3D;
    --rule: #CFC7E1;
  }
  @media (prefers-color-scheme: dark) {
    :root {
      --bg: #0B0A16;
      --surface: #17162B;
      --brand: #8E9BFF;
      --text: #8E9BFF;
      --muted: #7A75D1;
      --body: #DBD8EC;
      --rule: #2A2842;
    }
  }
  * { box-sizing: border-box; }
  body {
    margin: 0;
    padding: 0 20px 80px;
    background: var(--bg);
    color: var(--body);
    font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo",
                 "Pretendard", "Noto Sans KR", system-ui, sans-serif;
    line-height: 1.75;
    -webkit-text-size-adjust: 100%;
  }
  main { max-width: 680px; margin: 0 auto; }
  header { padding: 64px 0 40px; }
  .wordmark {
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.18em;
    color: var(--brand);
    margin: 0 0 20px;
  }
  h1 {
    font-size: clamp(28px, 6vw, 38px);
    line-height: 1.3;
    font-weight: 700;
    color: var(--text);
    margin: 0 0 12px;
    letter-spacing: -0.02em;
  }
  .updated {
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;
    font-size: 13px;
    color: var(--muted);
    margin: 0;
  }
  .lede {
    background: var(--surface);
    border-radius: 16px;
    padding: 24px 26px;
    margin: 0 0 48px;
    font-size: 17px;
    color: var(--body);
  }
  .lede strong { color: var(--text); }
  h2 {
    font-size: 21px;
    font-weight: 700;
    color: var(--text);
    margin: 48px 0 14px;
    padding-top: 28px;
    border-top: 1px solid var(--rule);
    letter-spacing: -0.01em;
  }
  h2:first-of-type { border-top: none; padding-top: 0; }
  h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--body);
    margin: 28px 0 6px;
  }
  p { margin: 0 0 14px; }
  ul { margin: 0 0 14px; padding-left: 20px; }
  li { margin-bottom: 6px; }
  .none {
    font-size: 24px;
    font-weight: 700;
    color: var(--brand);
    margin: 0 0 14px;
  }
  a { color: var(--brand); }
  footer {
    margin-top: 64px;
    padding-top: 28px;
    border-top: 1px solid var(--rule);
    font-size: 14px;
    color: var(--muted);
  }
