/* Shared styling for the published policy documents (privacy, terms, content
   policy, account deletion). Matches the homepage's dark palette and type so
   the legal pages read as part of the same product rather than a bolted-on
   afterthought, but stays deliberately plain: these are documents to be read,
   not marketing surfaces. */

:root {
  --ground: #050911;
  --surface: #0f141d;
  --surface-alt: #161d29;
  --ink: #f6f9fc;
  --ink-mid: #b9c2cf;
  --ink-soft: #969fab;
  --rule: #1f2836;
  --accent: #b883ff;
  --accent-dim: #a981ff;
  --warn: #f94144;
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--ground);
  color: var(--ink-mid);
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  padding-inline: 20px;
  -webkit-font-smoothing: antialiased;
}

.wrap {
  max-width: 760px;
  margin-inline: auto;
  padding-block: 40px 80px;
}

header.doc {
  border-bottom: 1px solid var(--rule);
  padding-bottom: 24px;
  margin-bottom: 36px;
}

.home {
  display: inline-block;
  color: var(--ink-soft);
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 0.04em;
  margin-bottom: 22px;
}
.home:hover { color: var(--accent); }

h1 {
  font-family: "Space Grotesk", "Inter", system-ui, sans-serif;
  color: var(--ink);
  font-size: clamp(1.9rem, 5vw, 2.5rem);
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0 0 10px;
}

.updated {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 12px;
  color: var(--ink-soft);
  margin: 0;
}

.lede {
  color: var(--ink);
  font-size: 1.05rem;
  margin: 18px 0 0;
}

h2 {
  font-family: "Space Grotesk", "Inter", system-ui, sans-serif;
  color: var(--ink);
  font-size: 1.3rem;
  letter-spacing: -0.01em;
  margin: 44px 0 12px;
  scroll-margin-top: 20px;
}

h3 {
  color: var(--ink);
  font-size: 1.02rem;
  margin: 28px 0 8px;
}

p, li { margin: 0 0 14px; }

ul, ol { padding-left: 22px; }

a { color: var(--accent); }
a:hover { color: var(--accent-dim); }

strong { color: var(--ink); font-weight: 600; }

code {
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 0.88em;
  background: var(--surface-alt);
  padding: 2px 5px;
  border-radius: 3px;
  color: var(--ink);
}

.table-scroll { overflow-x: auto; margin: 0 0 20px; }

table {
  border-collapse: collapse;
  width: 100%;
  min-width: 520px;
  font-size: 14.5px;
}

th, td {
  text-align: left;
  vertical-align: top;
  padding: 11px 14px;
  border-bottom: 1px solid var(--rule);
}

th {
  color: var(--ink);
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-bottom-color: var(--ink-soft);
}

.callout {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-left: 3px solid var(--accent);
  padding: 18px 20px;
  margin: 24px 0;
  border-radius: 0 6px 6px 0;
}
.callout.warn { border-left-color: var(--warn); }
.callout p:last-child { margin-bottom: 0; }

.contact {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 8px;
  padding: 20px 22px;
  margin-top: 36px;
}
.contact p:last-child { margin-bottom: 0; }

footer.doc {
  margin-top: 56px;
  padding-top: 22px;
  border-top: 1px solid var(--rule);
  font-size: 13px;
  color: var(--ink-soft);
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
footer.doc a { color: var(--ink-soft); text-decoration: none; }
footer.doc a:hover { color: var(--accent); }

.steps { counter-reset: step; list-style: none; padding-left: 0; }
.steps li {
  counter-increment: step;
  position: relative;
  padding-left: 42px;
  margin-bottom: 18px;
}
.steps li::before {
  content: counter(step);
  position: absolute;
  left: 0;
  top: 1px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--surface-alt);
  color: var(--accent);
  font-family: "JetBrains Mono", ui-monospace, monospace;
  font-size: 13px;
}
