/* Shared styles for the plain text pages: privacy, terms, support. Tokens match the guide. */
:root {
  --page: #FFFFFF; --card: #F2EFEA; --ink: #1F1D1B; --ink-2: #6E6861; --ink-3: #8F887F;
  --hairline: #E3DED6; --primary: #1366E0; --primary-text: #0E5AC9;
  --sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  --display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  --mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --page: #0C0B0B; --card: #1A1918; --ink: #F2EFEA; --ink-2: #A8A199; --ink-3: #79736C;
    --hairline: #2A2826; --primary: #4C9BFF; --primary-text: #7DB6FF; color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --page: #0C0B0B; --card: #1A1918; --ink: #F2EFEA; --ink-2: #A8A199; --ink-3: #79736C;
  --hairline: #2A2826; --primary: #4C9BFF; --primary-text: #7DB6FF; color-scheme: dark;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--page); color: var(--ink); font: 16px/1.6 var(--sans); -webkit-font-smoothing: antialiased; }
a { color: var(--primary-text); text-decoration-thickness: 1px; text-underline-offset: 2px; }
a:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; border-radius: 4px; }
main { max-width: 720px; margin: 0 auto; padding: 48px max(24px, env(safe-area-inset-right, 0px)) 96px max(24px, env(safe-area-inset-left, 0px)); }
.brand { display: inline-flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; font-weight: 600; }
.brand img { width: 32px; height: 32px; border-radius: 8px; }
.kicker { font: 500 11px/1.2 var(--mono); letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-3); }
header { display: grid; gap: 16px; padding-bottom: 32px; margin-bottom: 8px; border-bottom: 1px solid var(--hairline); }
h1 { font: 700 40px/1.1 var(--display); letter-spacing: -0.02em; margin: 8px 0 0; text-wrap: balance; }
h2 { font: 700 22px/1.25 var(--display); margin: 40px 0 12px; text-wrap: balance; }
p, ul { margin: 0 0 14px; }
ul { padding-left: 1.25em; }
li { margin-bottom: 6px; }
li::marker { color: var(--ink-3); }
.lede { font-size: 18px; color: var(--ink-2); margin: 0; }
footer { max-width: 720px; margin: 0 auto; padding: 24px 24px max(32px, env(safe-area-inset-bottom)); border-top: 1px solid var(--hairline);
  color: var(--ink-3); font-size: 14px; display: flex; flex-wrap: wrap; gap: 8px 20px; }
footer a { color: var(--ink-2); }
@media (max-width: 600px) {
  main { padding: 28px 16px 72px; }
  footer { padding-left: 16px; padding-right: 16px; }
  h1 { font-size: 32px; }
}
