/* Public Terms and Privacy presentation only. Their existing inline stylesheet
   continues to own layout, spacing, type sizes, and responsive navigation. */
body:has(> .legal-shell) {
  --bg: #17212e;
  --panel: #1d2a3a;
  --panel-2: #253448;
  --text: #dce5ed;
  --muted: #bacada;
  --line: rgba(160, 183, 205, .19);
  --accent: #9cc8ee;
  --amber: #d5c08e;
  --danger: #f28b82;
  background: var(--bg);
  color: var(--text);
}

.legal-shell .legal-hero {
  background: var(--panel);
  border-color: var(--line);
  box-shadow: none;
}

.legal-shell .eyebrow,
.legal-shell h2 {
  color: var(--amber);
}

.legal-shell h1,
.legal-shell strong {
  color: var(--text);
}

.legal-shell h3 {
  color: var(--accent);
}

.legal-shell .updated,
.legal-shell .back-link {
  color: #a0b1c2;
}

.legal-shell .legal-nav {
  background: #18283b;
  border-color: var(--line);
}

.legal-shell .legal-nav a:hover,
.legal-shell .back-link:hover {
  color: var(--amber);
}

.legal-shell .legal-card {
  background: #1b2838;
  border-color: var(--line);
}

.legal-shell section {
  border-top-color: var(--line);
}

.legal-shell .notice {
  border-left-color: var(--amber);
  background: rgba(213, 192, 142, .065);
  color: #dfd1ad;
}

.legal-shell .plain-box,
.legal-shell code {
  background: rgba(156, 200, 238, .055);
  border-color: rgba(156, 200, 238, .2);
}

.legal-shell a:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 3px;
}

.legal-shell ::selection {
  background: #3e5065;
  color: #f0e6cc;
}
