/* Shared look for the privacy and terms pages: same tokens as index.html, set for long reading. */
:root {
  --bg: #06100F; --bg2: #0A1716; --surface2: #16292B;
  --line: rgba(140, 210, 200, .13);
  --fg: #EDF5F3; --muted: #93A9A6; --faint: #5F7774;
  --b1: #9AD65E;
  --logo-tile: #FFFFFF; --logo-pad: 3px;
  --font-display: "Bricolage Grotesque", "Avenir Next", system-ui, sans-serif;
  --font-body: "Geist", -apple-system, "Segoe UI", system-ui, sans-serif;
  --font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;
  color-scheme: dark;
}
@media (prefers-color-scheme: light) {
  :root {
    --bg: #F4F8F6; --bg2: #E8F0EC; --surface2: #EAF2EE;
    --line: rgba(20, 70, 60, .12);
    --fg: #0C1D1B; --muted: #4D625F; --faint: #84968F;
    --b1: #2E7D4F;
    --logo-tile: transparent; --logo-pad: 0px;
    color-scheme: light;
  }
}
* { box-sizing: border-box; }
:root { padding-top: env(safe-area-inset-top, 0px); padding-bottom: env(safe-area-inset-bottom, 0px); }
body { margin: 0; background: var(--bg); color: var(--fg); font-family: var(--font-body); font-size: 16.5px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
a { color: var(--b1); }
:focus-visible { outline: 2px solid var(--b1); outline-offset: 3px; border-radius: 6px; }
.wrap { max-width: 760px; margin: 0 auto; padding-left: max(20px, env(safe-area-inset-left, 0px)); padding-right: max(20px, env(safe-area-inset-right, 0px)); }
header { border-bottom: 1px solid var(--line); }
header .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 68px; max-width: 1200px; }
.brand { display: flex; align-items: center; gap: 9px; text-decoration: none; color: var(--fg); font-family: var(--font-display); font-weight: 700; font-size: 21px; letter-spacing: -.035em; }
.logo { display: inline-block; width: 30px; height: 36px; border-radius: 8px; padding: var(--logo-pad); background: var(--logo-tile) url("/logo.png") center / contain no-repeat content-box; }
header nav { display: flex; gap: 18px; font-size: 14.5px; }
header nav a { color: var(--muted); text-decoration: none; }
header nav a:hover, header nav a[aria-current="page"] { color: var(--fg); }
main { padding-block: 56px 80px; }
.eyebrow { font-family: var(--font-mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--b1); }
h1 { font-family: var(--font-display); font-size: clamp(36px, 6vw, 52px); line-height: 1.05; letter-spacing: -.03em; margin: 10px 0 8px; text-wrap: balance; }
.updated { color: var(--faint); font-size: 14px; margin: 0 0 32px; }
.summary { background: var(--surface2); border-radius: 16px; padding: 20px 24px; margin-bottom: 40px; }
.summary h2 { margin-top: 0; font-size: 18px; }
.summary ul { margin: 0; padding-left: 20px; display: grid; gap: 6px; }
h2 { font-family: var(--font-display); font-size: 23px; letter-spacing: -.015em; margin: 40px 0 10px; text-wrap: balance; }
h3 { font-size: 17px; margin: 24px 0 6px; }
p, li { color: var(--muted); }
p { margin: 0 0 14px; }
ul { padding-left: 22px; margin: 0 0 14px; }
li { margin-bottom: 6px; }
strong { color: var(--fg); font-weight: 600; }
.table-scroll { overflow-x: auto; margin: 0 0 16px; }
table { border-collapse: collapse; width: 100%; min-width: 480px; font-size: 15px; }
th, td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
th { font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--faint); font-weight: 500; }
td { color: var(--muted); }
td:first-child { color: var(--fg); white-space: nowrap; }
footer { border-top: 1px solid var(--line); background: var(--bg2); padding-block: 28px; font-size: 14px; color: var(--faint); }
footer .wrap { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; max-width: 1200px; }
footer a { color: var(--muted); text-decoration: none; }
footer a:hover { color: var(--fg); }
