/* Legal pages (/terms, /privacy, /acceptable-use) inside the public content card.
   Body copy rhythm (paragraphs, h2, lists) comes from .public-content-page in portal.css. */
.legal-page{width:100%;max-width:720px}
.legal-page-narrow{max-width:640px}
.legal-page h1{font-size:clamp(1.625rem,3vw,2rem);font-weight:650;letter-spacing:-.035em;line-height:1.15}
.legal-page h1+.legal-body{margin-top:24px}
.legal-page .legal-updated{display:inline-flex;margin:12px 0 28px;padding:3px 10px;border-radius:var(--r-pill);background:var(--surface-3);color:var(--muted);font-size:.75rem;font-weight:650;font-variant-numeric:tabular-nums}
.legal-body{color:var(--text-2);font-size:.9375rem}
.legal-body>h2:first-child{margin-top:0}
.legal-body li{margin-bottom:6px}
.legal-body li::marker{color:var(--accent-text)}
.legal-body strong{color:var(--text)}
.legal-page .alert{margin:12px 0 18px}
.legal-table-wrap{margin:12px 0 20px;border:1px solid var(--line);border-radius:var(--r-md)}
.legal-table-wrap .portal-table{min-width:0;margin:0}
.legal-page .portal-table :is(th,td){padding:10px 14px;vertical-align:top;overflow-wrap:anywhere}
.legal-page .portal-table th{background:var(--surface-2)}
.legal-page .portal-table tbody tr:hover{background:transparent}
.legal-signoff{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.8125rem;text-align:center}
@media (max-width:600px){
 .legal-page .legal-updated{margin-bottom:22px}
 .legal-page .portal-table :is(th,td){padding:9px 10px;font-size:.8125rem}
}
