/*
 * The three legal pages are plain HTML served straight from the CDN: no bundle, no router, no JavaScript, no
 * fonts fetched from anywhere. Google's ad review crawler, a regulator and a person on a slow connection all get
 * the same document. The tokens are copied from src/index.css rather than imported, because these pages must keep
 * working if the app build changes; keep them in step when the palette moves.
 */
:root {
  color-scheme: dark light;
  --background: oklch(0.145 0.008 260);
  --foreground: oklch(0.985 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --border: oklch(1 0 0 / 12%);
  --brand: oklch(0.72 0.17 265);
}

@media (prefers-color-scheme: light) {
  :root {
    --background: oklch(0.99 0.002 260);
    --foreground: oklch(0.145 0.01 260);
    --muted-foreground: oklch(0.556 0.01 260);
    --border: oklch(0.922 0.004 260);
    --brand: oklch(0.55 0.2 265);
  }
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  -webkit-text-size-adjust: 100%;
}

.wrap { max-width: 46rem; margin: 0 auto; padding: 3rem 1.25rem 5rem; }

header { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding-bottom: 1.25rem; border-bottom: 1px solid var(--border); }
header a.brand { font-weight: 600; font-size: 1rem; color: var(--foreground); text-decoration: none; }
header nav { display: flex; gap: 1rem; font-size: .8125rem; }

h1 { font-size: 1.875rem; line-height: 1.15; letter-spacing: -0.02em; margin: 2rem 0 .25rem; }
h2 { font-size: 1.0625rem; letter-spacing: -0.01em; margin: 2.25rem 0 .5rem; }
h3 { font-size: .9375rem; margin: 1.5rem 0 .25rem; }
p, ul, ol, table { margin: .75rem 0; }
ul, ol { padding-left: 1.25rem; }
li { margin: .25rem 0; }

a { color: var(--brand); text-underline-offset: 2px; }
a:hover { text-decoration: underline; }

.lede, .muted { color: var(--muted-foreground); }
.lede { font-size: 1rem; }
.updated { font-size: .8125rem; color: var(--muted-foreground); }

table { width: 100%; border-collapse: collapse; font-size: .875rem; display: block; overflow-x: auto; }
th, td { text-align: left; vertical-align: top; padding: .5rem .75rem .5rem 0; border-bottom: 1px solid var(--border); }
th { font-weight: 600; }

/* Anything that still needs a real value before this page is published. Impossible to miss on the page itself. */
.todo {
  background: oklch(0.72 0.17 60 / 20%);
  border: 1px dashed oklch(0.72 0.17 60);
  border-radius: .25rem;
  padding: 0 .3rem;
  font-weight: 600;
}

footer { margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid var(--border); font-size: .8125rem; color: var(--muted-foreground); display: flex; gap: 1rem; flex-wrap: wrap; }
