/* Legal pages (Terms / Privacy) only: the shared auth card is a 440px centred
   box tuned for a short message; long-form legal prose needs a wider,
   top-aligned column. Kept in this separate stylesheet (not inline <style>,
   which the Content-Security-Policy `style-src 'self'` forbids; not
   styles.css, so the auth pages' shared stylesheet stays untouched). */
body { align-items: flex-start; }
.card.legal { max-width: 760px; padding: 32px 32px 40px; }
.card.legal h1 { margin-top: 8px; }
.card.legal h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px; line-height: 1.25; margin: 28px 0 8px;
}
.card.legal h3 { font-size: 15px; margin: 18px 0 6px; }
.card.legal .doc-sub { color: var(--muted); margin: 0 0 4px; }
.card.legal .doc-meta {
  font-size: 14px; color: var(--muted);
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
  padding: 10px 0; margin: 14px 0 4px;
}
.card.legal .draft {
  font-size: 13px; letter-spacing: 1px; text-transform: uppercase;
  color: var(--error); margin: 16px 0 8px;
}
.card.legal ul, .card.legal ol { padding-left: 22px; margin: 0 0 16px; }
.card.legal li { line-height: 1.5; margin: 0 0 6px; }
.card.legal table { border-collapse: collapse; width: 100%; margin: 0 0 16px; font-size: 14px; }
.card.legal th, .card.legal td {
  border: 1px solid var(--line); padding: 8px 10px; text-align: left; vertical-align: top;
}
.card.legal th { background: rgba(47, 111, 94, 0.08); }
