/* REQ-102: Privacy notice and Terms pages. Readable on a phone, light and dark (tokens from app.css). */
.legal-top{max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 4px}
.legal-top a.home{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;color:var(--ink);font:800 20px var(--display)}
.legal-top a.home svg{height:28px;width:auto}
.legal-top a.home .xo-x{fill:var(--mark-x)}
.legal{max-width:720px;margin:0 auto}
.legal h1{font-size:30px;margin:16px 0 4px}
.legal .updated{margin:0 0 16px;color:var(--muted);font-size:14px}
.legal h2{font-size:20px;margin:28px 0 8px}
.legal p,.legal li{font-size:16px;line-height:1.6}
.legal p{margin:8px 0}
.legal li+li{margin-top:6px}
.legal .summary{background:var(--soft-accent);border-radius:14px;padding:14px 16px;margin:12px 0 8px}
.legal .summary ul{margin:6px 0 0}
.legal table{width:100%;border-collapse:collapse;font-size:15px;margin:8px 0}
.legal th,.legal td{text-align:left;vertical-align:top;padding:10px 8px;border-top:1px solid var(--line)}
.legal th{font-weight:700;width:34%}
@media (max-width:560px){.legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block;width:100%}.legal th{border-top:1px solid var(--line);padding-bottom:2px}.legal td{border-top:0;padding-top:2px}}
.legal a{overflow-wrap:anywhere}
.site-foot{max-width:1040px;margin:0 auto;padding:8px 16px 32px;display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--muted);font-size:14px}
.site-foot a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted)}
.site-foot a:hover{color:var(--ink)}
.legal-page .site-foot{max-width:752px}
