/* Páginas legales (privacidad.html, terminos.html): texto largo y legible,
   con los colores del tema (claro/oscuro) de css/styles.css. */
body.legal {
    background: var(--bg-color);
    color: var(--text-dark);
    font-family: 'Poppins', system-ui, sans-serif;
    margin: 0;
}
.legal-barra {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    max-width: 820px;
    margin: 0 auto;
    padding: 18px 16px;
}
.legal-barra a {
    color: var(--primary);
    font-weight: 600;
    text-decoration: none;
    font-size: 0.95rem;
}
.legal-barra img { height: 34px; width: auto; display: block; }
.legal-doc {
    max-width: 820px;
    margin: 0 auto 48px;
    padding: 32px 28px;
    background: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 18px;
    box-sizing: border-box;
    line-height: 1.7;
    font-size: 0.97rem;
}
.legal-doc h1 { font-size: 1.7rem; margin: 0 0 6px; line-height: 1.3; }
.legal-doc .legal-version { color: var(--text-muted); font-size: 0.88rem; margin: 0 0 24px; }
.legal-doc h2 { font-size: 1.15rem; margin: 30px 0 8px; color: var(--text-dark); }
.legal-doc p, .legal-doc li { color: var(--text-dark); }
.legal-doc ul { padding-left: 1.3rem; margin: 8px 0; }
.legal-doc li { margin: 4px 0; }
.legal-doc a { color: var(--primary); }
.legal-doc .legal-resumen {
    background: var(--primary-soft);
    border-radius: 12px;
    padding: 14px 18px;
    margin: 0 0 8px;
}
.legal-doc table { width: 100%; border-collapse: collapse; margin: 10px 0; font-size: 0.9rem; }
.legal-doc th, .legal-doc td { border: 1px solid var(--border-color); padding: 8px 10px; text-align: left; vertical-align: top; }
.legal-doc th { background: var(--primary-soft); }
.legal-tabla { overflow-x: auto; }
.legal-pie { text-align: center; color: var(--text-muted); font-size: 0.85rem; padding: 0 16px 32px; }
.legal-pie a { color: var(--primary); }
@media (max-width: 560px) {
    .legal-doc { padding: 22px 16px; border-radius: 0; border-left: none; border-right: none; }
    .legal-doc h1 { font-size: 1.4rem; }
}

.legal-barra-enlaces { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; color: var(--text-muted); }
.legal-doc .legal-traduccion { color: var(--text-muted); font-size: 0.85rem; font-style: italic; margin: -14px 0 20px; }
