/* Páginas legales públicas (/legal/). CSS mínimo propio: usa las variables del tema existente. */
.legal-encabezado { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 12px 20px; border-bottom: 1px solid var(--borde); }
.legal-nav { display: flex; gap: 16px; flex-wrap: wrap; }
.legal-nav a { color: var(--texto-suave); text-decoration: none; font-weight: 600; }
.legal-nav a:hover { color: var(--acento); }
.legal-pagina { max-width: 760px; margin: 0 auto; padding: 24px 20px 48px; }
.legal-texto h1 { font-family: var(--fuente-titulo); margin: 0 0 8px; }
.legal-texto h2 { margin: 28px 0 8px; font-size: 1.15rem; }
.legal-texto p, .legal-texto li { line-height: 1.6; }
.legal-texto a { color: var(--acento); }
.legal-texto table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: .95rem; }
.legal-texto th, .legal-texto td { text-align: left; vertical-align: top; padding: 8px; border-bottom: 1px solid var(--borde); }
.legal-aparte { background: var(--fondo-elev); border: 1px solid var(--borde); border-radius: var(--radio); padding: 12px 16px; margin: 16px 0; }
.legal-pendiente { background: var(--acento-suave); padding: 0 4px; border-radius: 4px; }
.legal-pie { margin-top: 40px; padding-top: 16px; border-top: 1px solid var(--borde); color: var(--texto-suave); font-size: .9rem; }
.legal-pie p { margin: 4px 0; }
.legal-borrador { font-weight: 600; }
.login-legal { text-align: center; font-size: .85rem; margin: 12px 0 0; }
.login-legal a { color: var(--texto-suave); }
