/* Modo oscuro — páginas legales (legal/_layout.php) */
html[data-theme="dark"] body.ep-legal {
    background:
        radial-gradient(ellipse 80% 50% at 10% -10%, rgba(37, 99, 235, .12) 0%, transparent 55%),
        radial-gradient(ellipse 60% 40% at 95% 5%, rgba(13, 148, 136, .08) 0%, transparent 50%),
        #0f172a;
    color: #cbd5e1;
}

html[data-theme="dark"] .ep-legal-nav {
    background: rgba(15, 23, 42, .92);
    border-bottom-color: #334155;
    box-shadow: 0 1px 0 rgba(255, 255, 255, .04);
}

html[data-theme="dark"] .ep-legal-brand {
    color: #f1f5f9;
}

html[data-theme="dark"] .ep-legal-back {
    color: #93c5fd;
    background: rgba(37, 99, 235, .15);
    border-color: rgba(59, 130, 246, .35);
}

html[data-theme="dark"] .ep-legal-back:hover {
    background: rgba(37, 99, 235, .28);
}

html[data-theme="dark"] .ep-legal-dark-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 0.65rem;
    border: 1px solid #475569;
    background: #1e293b;
    color: #f1f5f9;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background .2s, border-color .2s, transform .2s;
}

html[data-theme="dark"] .ep-legal-dark-toggle {
    border-color: #475569;
    background: #1e293b;
}

html[data-theme="light"] .ep-legal-dark-toggle,
:root:not([data-theme="dark"]) .ep-legal-dark-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 0.65rem;
    border: 1px solid #e2e8f0;
    background: #fff;
    color: #1e3a5f;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background .2s, border-color .2s, transform .2s;
}

.ep-legal-dark-toggle:hover {
    transform: translateY(-1px);
    border-color: #2563eb;
}

html[data-theme="dark"] .ep-legal-chip {
    color: #5eead4;
    background: rgba(13, 148, 136, .15);
    border-color: rgba(45, 212, 191, .25);
}

/* Cabecera del documento: misma superficie que el contenido (evita franja #0f172a) */
html[data-theme="dark"] .ep-legal-header {
    background: #1e293b;
    border-bottom: 1px solid #334155;
    max-width: 72rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

html[data-theme="dark"] .ep-legal-header-logo {
    box-shadow: 0 4px 16px rgba(0, 0, 0, .35);
}

html[data-theme="dark"] .ep-legal-header h1 {
    color: #f1f5f9;
}

html[data-theme="dark"] .ep-legal-header h1 i {
    color: #60a5fa;
}

html[data-theme="dark"] .ep-legal-intro {
    color: #94a3b8;
}

html[data-theme="dark"] .ep-legal-updated {
    color: #64748b;
}

html[data-theme="dark"] .ep-legal-main {
    background: #1e293b;
    max-width: 72rem;
    border-left: 1px solid #334155;
    border-right: 1px solid #334155;
    border-bottom: 1px solid #334155;
    border-radius: 0 0 1.25rem 1.25rem;
    padding-bottom: 3.5rem;
}

html[data-theme="dark"] .ep-legal-grid {
    padding-top: 1.25rem;
}

html[data-theme="dark"] .ep-legal-aside,
html[data-theme="dark"] .ep-legal-article {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

html[data-theme="dark"] .ep-legal-aside {
    border-right: 1px solid #334155;
    border-radius: 0;
}

@media (max-width: 1023px) {
    html[data-theme="dark"] .ep-legal-aside {
        border-right: none;
        border-bottom: 1px solid #334155;
        padding-bottom: 1rem;
        margin-bottom: .5rem;
    }
}

html[data-theme="dark"] .ep-legal-aside p {
    color: #64748b;
}

html[data-theme="dark"] .ep-legal-toc a {
    color: #cbd5e1;
}

html[data-theme="dark"] .ep-legal-toc a:hover,
html[data-theme="dark"] .ep-legal-toc a.is-active {
    background: rgba(37, 99, 235, .18);
    color: #93c5fd;
}

html[data-theme="dark"] .ep-legal-toc a i {
    color: #60a5fa;
}

html[data-theme="dark"] .legal-body h2,
html[data-theme="dark"] .legal-body h3 {
    color: #f1f5f9;
    border-bottom-color: rgba(59, 130, 246, .25);
}

html[data-theme="dark"] .legal-body h2 i {
    color: #60a5fa;
}

html[data-theme="dark"] .legal-body p,
html[data-theme="dark"] .legal-body li,
html[data-theme="dark"] .legal-body td {
    color: #cbd5e1;
}

html[data-theme="dark"] .legal-body strong {
    color: #f1f5f9;
}

html[data-theme="dark"] .legal-body a {
    color: #93c5fd;
    text-decoration-color: rgba(147, 197, 253, .4);
}

html[data-theme="dark"] .legal-body a:hover {
    color: #bfdbfe;
}

html[data-theme="dark"] .legal-body th {
    background: rgba(37, 99, 235, .2);
    color: #f1f5f9;
    border-color: #475569;
}

html[data-theme="dark"] .legal-body th,
html[data-theme="dark"] .legal-body td {
    border-color: #475569;
}

html[data-theme="dark"] .callout {
    background: rgba(113, 63, 18, .35);
    border-left-color: #f59e0b;
    color: #fde68a;
}

html[data-theme="dark"] .callout.info {
    background: rgba(30, 58, 95, .55);
    border-left-color: #3b82f6;
    color: #e2e8f0;
}

html[data-theme="dark"] .legal-body pre {
    background: #0f172a;
    border-color: #475569;
    color: #cbd5e1;
}

html[data-theme="dark"] .ep-legal-footer-note {
    border-top-color: #334155;
    color: #64748b;
}

html[data-theme="dark"] .ep-legal-footer-note a {
    color: #93c5fd;
}

html[data-theme="dark"] .ep-legal-odr-btn {
    background: rgba(37, 99, 235, .18);
    border-color: rgba(59, 130, 246, .4);
    color: #93c5fd;
}

html[data-theme="dark"] .ep-legal-odr-btn:hover {
    background: rgba(37, 99, 235, .3);
    color: #bfdbfe;
}

/* Admin: previsualización editable documentos legales */
html[data-theme="dark"] .legal-preview-shell {
    background:
        radial-gradient(ellipse 80% 50% at 10% -10%, rgba(37, 99, 235, .1) 0%, transparent 55%),
        radial-gradient(ellipse 60% 40% at 95% 5%, rgba(13, 148, 136, .08) 0%, transparent 50%),
        #0f172a;
    border-color: #334155;
    color: #cbd5e1;
}

html[data-theme="dark"] .legal-preview-nav {
    background: rgba(15, 23, 42, .95);
    border-bottom-color: #334155;
}

html[data-theme="dark"] .legal-preview-brand {
    color: #f1f5f9;
}

html[data-theme="dark"] .legal-preview-title,
html[data-theme="dark"] .legal-preview-shell .legal-body-content h2,
html[data-theme="dark"] .legal-preview-shell .legal-body h2 {
    color: #f1f5f9;
}

html[data-theme="dark"] .legal-preview-intro,
html[data-theme="dark"] .legal-preview-shell .legal-body-content p,
html[data-theme="dark"] .legal-preview-shell .legal-body p {
    color: #94a3b8;
}

html[data-theme="dark"] .legal-preview-article {
    background: #1e293b;
    border-color: #334155;
}

html[data-theme="dark"] .legal-preview-title:focus,
html[data-theme="dark"] .legal-preview-intro:focus,
html[data-theme="dark"] .legal-body-content:focus {
    box-shadow: 0 0 0 2px rgba(59, 130, 246, .35);
    background: rgba(15, 23, 42, .5);
}

html[data-theme="dark"] .legal-snippet-btn,
html[data-theme="dark"] .legal-ph-btn {
    background: #1e293b !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}
