.legal-page {
  max-width: 800px;
  margin: 0 auto;
  padding: var(--s-4) var(--s-3);
  font-size: 0.95rem;
}
.legal-page h1 {
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  letter-spacing: -0.02em;
  margin: 0 0 var(--s-1);
}
.legal-page h2 {
  margin: var(--s-4) 0 var(--s-1);
  font-size: 1.2rem;
  letter-spacing: -0.01em;
  border-bottom: 1px solid var(--card-border);
  padding-bottom: 0.35rem;
}
.legal-page h3 { margin: var(--s-2) 0 var(--s-1); font-size: 1.05rem; }
.legal-page .meta { color: var(--fg-muted); font-size: 0.85rem; }
.legal-page p, .legal-page li { color: var(--fg); line-height: 1.7; }
.legal-page ul { padding-left: 1.5rem; }
.legal-page li { margin-bottom: 0.4rem; }
.legal-page a { color: var(--accent); }
.legal-page code {
  background: var(--card-bg);
  padding: 0.15rem 0.35rem;
  border-radius: 4px;
  font-size: 0.85em;
}
.short-summary {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  padding: var(--s-2);
  list-style: none;
  padding-left: var(--s-2);
}
.short-summary li::before { content: "→ "; color: var(--accent); font-weight: 700; }
.short-summary li { padding-left: 0; }
.aup-callout {
  background: rgba(255, 200, 80, 0.08);
  border: 1px solid #fa3;
  border-radius: 8px;
  padding: var(--s-3);
  margin: var(--s-3) 0;
}
.aup-callout h3 { margin-top: 0; color: #fc3; }
.aup-callout ul { margin-bottom: var(--s-1); }
