/* Privacy policy and terms: the site's dark palette and type, one readable column.
   No grey text — hierarchy is size and weight; hairlines, no background grids. */
:root {
  --bg: #0f1117;
  --fg: #eceef6;
  --accent: #818cf8;
  --line: rgba(255, 255, 255, 0.09);
  --glass: rgba(26, 29, 43, 0.45);
}
* { box-sizing: border-box; }
html { background: var(--bg); color: var(--fg); }
body {
  margin: 0;
  font: 300 1rem/1.7 'Outfit', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(38rem 28rem at 88% 8%, rgba(99, 102, 241, 0.13), transparent 70%),
    radial-gradient(34rem 26rem at 6% 60%, rgba(236, 72, 153, 0.07), transparent 70%);
}
a { color: var(--accent); text-underline-offset: 3px; }
nav {
  position: sticky; top: 0;
  background: rgba(15, 17, 23, 0.55);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border-bottom: 1px solid var(--line);
}
nav div, main, footer div { max-width: 760px; margin: 0 auto; padding: 0 16px; }
nav div { display: flex; align-items: center; justify-content: space-between; height: 56px; }
.brand {
  font: 600 1.05rem 'Unbounded', 'Outfit', sans-serif;
  color: var(--fg); text-decoration: none; letter-spacing: -0.01em;
}
nav div a:not(.brand) { color: var(--fg); text-decoration: none; font-weight: 400; font-size: 0.92rem; }
main { padding-top: 48px; padding-bottom: 72px; }
h1 { font: 600 clamp(1.8rem, 5vw, 2.4rem)/1.2 'Unbounded', 'Outfit', sans-serif; margin: 0 0 8px; }
.updated { font-weight: 400; font-size: 0.9rem; margin: 0 0 32px; }
h2 { font-weight: 600; font-size: 1.2rem; margin: 40px 0 8px; padding-top: 24px; border-top: 1px solid var(--line); }
h3 { font-weight: 600; font-size: 1rem; margin: 24px 0 4px; }
p, li { max-width: 68ch; }
ul { padding-left: 1.2em; }
li { margin: 4px 0; }
strong { font-weight: 600; }
.card {
  background: var(--glass);
  backdrop-filter: blur(16px) saturate(160%);
  -webkit-backdrop-filter: blur(16px) saturate(160%);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 16px 20px;
  margin: 16px 0;
}
.card p { margin: 2px 0; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 0.95rem; }
th, td { text-align: left; vertical-align: top; padding: 8px 12px 8px 0; border-bottom: 1px solid var(--line); }
th { font-weight: 600; }
footer { border-top: 1px solid var(--line); padding: 24px 0; font-size: 0.85rem; font-weight: 400; }
footer div { display: flex; gap: 16px; flex-wrap: wrap; justify-content: space-between; }
footer a { color: var(--fg); }
@media (max-width: 560px) {
  table, thead, tbody, tr, th, td { display: block; }
  thead { display: none; }
  td { border-bottom: none; padding: 2px 0; }
  tr { border-bottom: 1px solid var(--line); padding: 8px 0; }
}
