/* Shared styling for the licence terms and the privacy policy.
   Plain, readable, and the same in both, because they are one document
   family as far as a reader is concerned. */

  :root {
    --bg: oklch(0.975 0.006 85); --surface: oklch(0.99 0.004 85);
    --fg: oklch(0.24 0.026 250); --muted: oklch(0.47 0.022 250);
    --rule: oklch(0.24 0.026 250 / 0.14); --accent: oklch(0.44 0.155 316);
    --alert: oklch(0.48 0.17 25); --alert-soft: oklch(0.48 0.17 25 / 0.07);
    --serif: Newsreader, Georgia, serif;
    --sans: "Instrument Sans", "Helvetica Neue", Helvetica, system-ui, sans-serif;
    --mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  }
  @media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
      --bg: oklch(0.185 0.022 250); --surface: oklch(0.235 0.026 250);
      --fg: oklch(0.95 0.008 85); --muted: oklch(0.76 0.012 85);
      --rule: oklch(0.95 0.008 85 / 0.17); --accent: oklch(0.81 0.105 316);
      --alert: oklch(0.73 0.14 25); --alert-soft: oklch(0.73 0.14 25 / 0.12);
    }
  }
  :root[data-theme="dark"] {
    --bg: oklch(0.185 0.022 250); --surface: oklch(0.235 0.026 250);
    --fg: oklch(0.95 0.008 85); --muted: oklch(0.76 0.012 85);
    --rule: oklch(0.95 0.008 85 / 0.17); --accent: oklch(0.81 0.105 316);
    --alert: oklch(0.73 0.14 25); --alert-soft: oklch(0.73 0.14 25 / 0.12);
  }
  * { box-sizing: border-box; }
  body { margin: 0; background: var(--bg); color: var(--fg);
         font-family: var(--sans); font-size: 16.5px; line-height: 1.68; }
  a { color: var(--accent); }
  .sheet { max-width: 720px; margin: 0 auto; padding: 40px 24px 90px; }
  .home { font-family: var(--mono); font-size: 11.5px; letter-spacing: 0.1em;
          text-transform: uppercase; text-decoration: none; }
  h1 { font-family: var(--serif); font-weight: 400;
       font-size: clamp(29px, 4.6vw, 40px); line-height: 1.1;
       letter-spacing: -0.015em; margin: 26px 0 12px; }
  .meta { font-family: var(--mono); font-size: 11.5px; letter-spacing: 0.08em;
          text-transform: uppercase; color: var(--muted); margin: 0 0 34px;
          padding-bottom: 22px; border-bottom: 1px solid var(--rule); }
  .intro { font-size: 17.5px; color: var(--muted); margin: 0 0 40px; }
  section { margin-bottom: 34px; }
  h2 { font-family: var(--serif); font-weight: 400; font-size: 21px;
       line-height: 1.25; margin: 0 0 12px; display: grid;
       grid-template-columns: 34px 1fr; gap: 10px; align-items: baseline; }
  h2 .num { font-family: var(--mono); font-size: 12px; color: var(--accent); font-weight: 500; }
  .body { padding-left: 44px; }
  .body p { margin: 0 0 12px; max-width: 62ch; }
  .body p:last-child { margin-bottom: 0; }
  .body ul { margin: 0 0 12px; padding-left: 20px; max-width: 62ch; }
  .body li { margin-bottom: 7px; }
  .alert { border: 1px solid var(--alert); background: var(--alert-soft);
           padding: 22px 24px; margin-bottom: 34px; }
  .alert h2 .num { color: var(--alert); }
  .alert strong { color: var(--alert); }
  @media (max-width: 600px) {
    h2 { grid-template-columns: 28px 1fr; gap: 8px; }
    .body { padding-left: 0; }
  }
