.legal-shell { max-width:1040px }
.legal-document { background:var(--panel); border:1px solid var(--line); border-radius:24px; padding:clamp(24px,5vw,60px) }
.legal-document h1 { font-size:clamp(36px,6vw,62px); max-width:none; letter-spacing:-2px }
.legal-document h2 { margin:36px 0 12px; font-size:23px; line-height:1.35; letter-spacing:-.4px }
.legal-document p { line-height:1.85; overflow-wrap:anywhere }
.legal-document section p { color:var(--muted) }
.legal-document a { text-underline-offset:4px }
.legal-document a:hover { color:var(--accent) }
.legal-intro { font-size:18px }
.legal-version,.legal-sources { font-size:12px; color:var(--muted) }
.legal-navigation,.legal-languages { display:flex; flex-wrap:wrap; gap:20px }
.legal-languages { gap:12px; font-size:13px }
.legal-languages [aria-current] { color:var(--accent) }
.legal-contact { border-block:1px solid var(--line); padding-bottom:24px }
.legal-navigation { margin-top:24px }
@media (max-width:600px) { .legal-document h2 { font-size:20px } .legal-shell { padding:24px 16px } }
.reveal-email { border:1px solid var(--accent); border-radius:8px; background:transparent; color:var(--accent); padding:10px 16px; font:inherit }
.reveal-email:hover { background:color-mix(in srgb,var(--accent) 10%,transparent) }
