/* Privacy and terms pages. Plain reading layout on the shared tokens. */
body { margin: 0; background: var(--surface); color: var(--on-surface); font: 16px/1.65 "Google Sans Flex", system-ui, sans-serif; }
.legal-top { border-bottom: 1px solid var(--outline-variant); background: var(--surface-container-lowest); }
.legal-top .in, .legal { max-width: 760px; margin: 0 auto; padding: 0 24px; }
.legal-top .in { display: flex; align-items: center; justify-content: space-between; height: 64px; }
.legal-top a { color: var(--on-surface); text-decoration: none; display: flex; align-items: center; gap: 10px; font-weight: 600; font-size: 18px; }
.legal-top nav a { font-weight: 500; font-size: 15px; color: var(--primary); }
.legal { padding-top: 48px; padding-bottom: 80px; }
.legal h1 { font-size: 40px; line-height: 1.15; letter-spacing: -.02em; margin: 0 0 8px; }
.legal .updated { color: var(--on-surface-variant); margin: 0 0 32px; }
.legal h2 { font-size: 21px; margin: 36px 0 8px; }
.legal p, .legal li { color: var(--on-surface-variant); max-width: 68ch; }
.legal ul { padding-left: 20px; }
.legal a { color: var(--primary); }
.legal-foot { border-top: 1px solid var(--outline-variant); color: var(--on-surface-variant); font-size: 14px; }
.legal-foot .in { max-width: 760px; margin: 0 auto; padding: 24px; display: flex; gap: 20px; flex-wrap: wrap; }
.legal-foot a { color: inherit; }
@media (max-width: 640px) { .legal h1 { font-size: 32px; } .legal { padding-top: 32px; } }
