/* Legal pages: Notion-style, reuses tokens from style.css */
body.legal { overflow: auto; height: auto; display: block; background: var(--paper); color: var(--text); font-family: Inter, system-ui, sans-serif; margin: 0; }
.legal-top { display: flex; align-items: center; gap: 12px; padding: 14px 20px; background: var(--white); border-bottom: 1px solid var(--hair); }
.legal-top a { color: inherit; text-decoration: none; display: flex; align-items: center; gap: 8px; font-weight: 600; }
.legal-top svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.legal-top .back { margin-left: auto; font-weight: 500; color: var(--accent); }
.legal-wrap { max-width: 760px; margin: 28px auto; padding: 0 16px; }
.legal-card { background: var(--white); border: 1px solid var(--hair); border-radius: 12px; padding: 32px 36px; line-height: 1.65; }
.legal-card h1 { font-size: 28px; margin: 0 0 4px; }
.legal-card .updated { color: var(--muted); font-size: 14px; margin: 0 0 24px; }
.legal-card h2 { font-size: 18px; margin: 28px 0 8px; }
.legal-card p, .legal-card li { font-size: 15px; }
.legal-card a { color: var(--accent); }
.legal-foot { text-align: center; color: var(--muted); font-size: 13px; margin: 20px 0 40px; }
.legal-foot a { color: var(--muted); margin: 0 8px; }
@media (max-width: 600px) { .legal-card { padding: 22px 18px; } }
