.legal-page { max-width: 960px; margin-inline: auto; padding: 64px 24px 88px; }
.legal-page article { padding: 0; background: none; border: 0; }
.legal-page h1 { font-size: 36px; line-height: 1.2; overflow-wrap: anywhere; }
.legal-page h2 { font-size: 22px; margin-top: 32px; }
.legal-page p, .legal-page li, .legal-page dd { color: var(--muted); font-size: 14px; line-height: 1.85; }
.legal-page a { text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-date, .legal-source { font-size: 12px !important; }
.legal-pending { padding: 18px; background: var(--paper); border: 1px solid var(--line); color: var(--muted); font-size: 13px; line-height: 1.7; }
.legal-data { display: grid; grid-template-columns: 220px 1fr; gap: 14px; font-size: 14px; }
.legal-data dt { padding-top: 4px; }
.legal-data dd { margin: 0; }
.legal-table-wrap { overflow: auto; }
.legal-table { width: 100%; border-collapse: collapse; font-size: 12px; line-height: 1.7; }
.legal-table th, .legal-table td { padding: 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.legal-table td { color: var(--muted); }
.legal-table code { overflow-wrap: anywhere; }
.privacy-notice { font-size: 12px; line-height: 1.7; color: var(--muted); }
.privacy-notice a { text-decoration: underline; }
.legal-footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; border-top: 1px solid var(--line); padding: 28px 24px; font-size: 12px; color: var(--muted); }
.legal-footer a:hover { text-decoration: underline; }
@media (max-width: 640px) { .legal-page { padding-top: 40px; } .legal-page h1 { font-size: 28px; } .legal-data { grid-template-columns: 1fr; gap: 6px; } .legal-data dd { margin-bottom: 12px; } }
