:root {
      color-scheme: dark;
      --bg: #050505;
      --panel: #0d0f12;
      --line: rgba(255,255,255,.12);
      --text: #f5f5f5;
      --muted: rgba(245,245,245,.66);
      --green: #32d074;
      --radius: 24px;
      --max: 1180px;
      --font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    }

    html[data-theme="light"] {
      color-scheme: light;
      --bg: #f7f6f2;
      --panel: #ffffff;
      --line: rgba(17,17,17,.12);
      --text: #111111;
      --muted: rgba(17,17,17,.66);
      --green: #319000;
    }
    html[data-theme="light"] body {
      background: radial-gradient(circle at top right, rgba(85,196,17,.08), transparent 34rem), var(--bg);
      color: var(--text);
    }
    html[data-theme="light"] .legalCard {
      border-color: var(--line);
      background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.78));
      box-shadow: 0 26px 90px rgba(22,24,28,.10);
    }
    html[data-theme="light"] .notice {
      border-color: rgba(49,144,0,.22);
      background: rgba(85,196,17,.085);
      color: var(--muted);
    }
    html[data-theme="light"] .legalHero .eyebrow {
      border-color: var(--line);
      color: var(--muted);
      background: rgba(255,255,255,.58);
    }
    * { box-sizing: border-box; }
    html { min-width: 320px; scroll-behavior: smooth; }
    body {
      margin: 0;
      min-width: 320px;
      background: radial-gradient(circle at top right, rgba(50,208,116,.08), transparent 34rem), var(--bg);
      color: var(--text);
      font-family: var(--font);
      line-height: 1.56;
    }
    a { color: inherit; }
    .legalShell {
      width: 100%;
      min-height: 100vh;
      padding-top: 112px;
      display: flex;
      flex-direction: column;
    }
    .legalPage {
      width: min(100% - 32px, 980px);
      margin: 0 auto;
      padding: 34px 0 72px;
      flex: 1 0 auto;
    }
    .legalHero { margin-bottom: 28px; }
    .legalHero .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--muted);
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 8px 12px;
      font-size: 13px;
    }
    .legalHero .eyebrow::before {
      content: "";
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--green);
    }
    h1 {
      font-size: clamp(36px, 6vw, 68px);
      line-height: .98;
      letter-spacing: -.065em;
      margin: 20px 0 14px;
    }
    h2 {
      font-size: 24px;
      line-height: 1.15;
      letter-spacing: -.035em;
      margin: 34px 0 12px;
    }
    p, li { color: var(--muted); }
    .legalCard {
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
      box-shadow: 0 26px 90px rgba(0,0,0,.35);
      padding: clamp(22px, 4vw, 38px);
    }
    .legalCard ul { padding-left: 20px; }
    .legalCard a { color: inherit; font-weight: 700; text-decoration-thickness: .08em; text-underline-offset: .16em; }
    .notice {
      border: 1px solid rgba(50,208,116,.22);
      background: rgba(50,208,116,.075);
      border-radius: 18px;
      padding: 14px 16px;
      color: var(--muted);
    }
    @media (max-width: 760px) {
      .legalShell { padding-top: 94px; }
      .legalPage { padding-top: 24px; }
    }
