/* Páginas legales y pantalla de acceso: cabecera mínima y pie con enlaces legales */
.l-top { display: flex; justify-content: space-between; align-items: center; padding: 18px var(--pad) 0; font-size: 15px; }
.legal { flex: 1 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); padding: clamp(40px, 10vh, 120px) var(--pad) 80px; align-content: start; }
.legal-r { max-width: 40em; }
.legal-r h2 { font-size: 22px; font-weight: 500; letter-spacing: -.01em; margin: 40px 0 10px; }
.legal-r h2:first-child { margin-top: 0; }
.legal-r p, .legal-r li { font-size: 17px; }
.legal-r a { border-bottom: 1px solid currentColor; }
.legal-r b { font-weight: 600; }
.legal-r .updated { margin-top: 48px; font-size: 13px; color: var(--muted); }
.legal-r .tbl { overflow-x: auto; margin: 14px 0 6px; }
.legal-r table { width: 100%; border-collapse: collapse; font-size: 15px; }
.legal-r th { text-align: left; font-weight: 500; font-size: 12px; color: var(--muted); padding: 8px 10px 8px 0; border-bottom: 1px solid var(--fg); }
.legal-r td { padding: 10px 10px 10px 0; border-bottom: 1px solid var(--soft); vertical-align: top; }
.legal-r td code { font-size: 14px; }
.legal-r .state { margin: 10px 0 16px; color: var(--muted); font-size: 15px; }
.legal-r .btn { display: inline-block; padding: 9px 20px; border-radius: 999px; background: var(--fg); color: var(--bg); font-size: 15px; }
.legal-r .btn:hover { opacity: .8; }
.l-foot { padding: 24px var(--pad); }
.l-foot a[aria-current] { color: var(--muted); }
@media (max-width: 760px) { .legal { grid-template-columns: 1fr; gap: 32px; padding-top: 32px; } }
