/* Lavinia Dark-Theme-Overrides – greift nur bei :root[data-theme="dark"].
   Ueberschreibt die hartcodierten Oneo-Farben (weisse Hintergruende, dunkle Texte),
   damit der Light/Dark-Toggle sichtbar wirkt. */

:root[data-theme="dark"] .page,
:root[data-theme="dark"] .content-wrapper,
:root[data-theme="dark"] .tagline + .content-wrapper,
:root[data-theme="dark"] .centered-wrapper {
    background: var(--lavinia-bg, #0b0f14);
}

/* Oneo-Sektionen mit hartcodiertem weissem Inline-Hintergrund (z. B. Oelde-Sektion) */
:root[data-theme="dark"] .ce_rsce_oneo_centered_wrapper_start[style*="#ffffff"],
:root[data-theme="dark"] .ce_rsce_oneo_centered_wrapper_start[style*="#fff"],
:root[data-theme="dark"] .mod_article[style*="#ffffff"],
:root[data-theme="dark"] .mod_article[style*="#fff"] {
    background-color: var(--lavinia-bg, #0b0f14) !important;
}

:root[data-theme="dark"] table {
    background: var(--lavinia-surface, #1a1a2e) !important;
    border-color: var(--lavinia-border, #2a2a3e) !important;
}
:root[data-theme="dark"] table th,
:root[data-theme="dark"] table td {
    border-color: var(--lavinia-border, #2a2a3e) !important;
    color: var(--lavinia-fg, #e5e7eb);
}

:root[data-theme="dark"] .main-content,
:root[data-theme="dark"] .main-content p,
:root[data-theme="dark"] .main-content ul,
:root[data-theme="dark"] .main-content ol,
:root[data-theme="dark"] .rte {
    color: var(--lavinia-fg, #e5e7eb);
}

:root[data-theme="dark"] .main-content h1,
:root[data-theme="dark"] .main-content h2,
:root[data-theme="dark"] .main-content h3,
:root[data-theme="dark"] .main-content h4,
:root[data-theme="dark"] .main-content h5,
:root[data-theme="dark"] .main-content h6 {
    color: var(--lavinia-fg, #e5e7eb);
}

:root[data-theme="dark"] .main-content a,
:root[data-theme="dark"] .rte a {
    color: var(--lavinia-accent, #60a5fa);
}

:root[data-theme="dark"] .page-footer {
    background: #11131a;
    color: #e5e7eb;
}
:root[data-theme="dark"] .page-footer a { color: #e5e7eb; }

:root[data-theme="dark"] .footer-top-link { color: #e5e7eb; }

:root[data-theme="dark"] tr:nth-child(even) {
    background: rgba(255, 255, 255, 0.05) !important;
}

:root[data-theme="dark"] .main-content input,
:root[data-theme="dark"] .main-content textarea,
:root[data-theme="dark"] .main-content select,
:root[data-theme="dark"] .main-content fieldset {
    background: var(--lavinia-surface, #1a1a2e);
    color: var(--lavinia-fg, #e5e7eb);
    border-color: var(--lavinia-border, #2a2a3e);
}

:root[data-theme="dark"] .main-navigation .level_2 {
    background: var(--lavinia-surface, #1a1a2e);
}
:root[data-theme="dark"] .main-navigation .level_2 > li a {
    color: var(--lavinia-fg, #e5e7eb);
}
:root[data-theme="dark"] .main-navigation .level_2 > li a:hover {
    background: var(--lavinia-accent, #60a5fa);
    color: #fff;
}

/* Cookie-Dialog / Custom-Elements dunkler */
:root[data-theme="dark"] cms-cookie-bar,
:root[data-theme="dark"] cms-accept-tags,
:root[data-theme="dark"] cms-container {
    color: #e5e7eb;
}

/* Admin Overrides Dark Mode */
:root[data-theme="dark"] .admin-info-box {
    background: rgba(37, 99, 235, 0.15);
    border-color: rgba(37, 99, 235, 0.4);
    color: #e5e7eb;
}
:root[data-theme="dark"] .admin-cleanup-alert {
    background: rgba(16, 185, 129, 0.15);
    border-color: rgba(16, 185, 129, 0.4);
    color: #6ee7b7;
}
:root[data-theme="dark"] .admin-toolbar {
    background: var(--lavinia-surface, #1a1a2e);
    border-color: var(--lavinia-border, #2a2a3e);
}
:root[data-theme="dark"] .admin-pill-btn {
    background: #1e293b;
    border-color: #334155;
    color: #cbd5e1;
}
:root[data-theme="dark"] .admin-pill-btn:hover {
    background: #334155;
}
:root[data-theme="dark"] .admin-pill-btn.active {
    background: #2563eb;
    border-color: #2563eb;
    color: #ffffff;
}
:root[data-theme="dark"] .admin-btn-icon-action {
    background: #1e293b;
    border-color: #334155;
    color: #e2e8f0;
}
:root[data-theme="dark"] .nl-email-text {
    color: #f1f5f9;
}
:root[data-theme="dark"] .nl-date-text {
    color: #cbd5e1;
}

/* Admin Grid Overrides Dark Mode */
:root[data-theme="dark"] .admin-grid-wrap .e-grid {
    background-color: #0f172a !important;
    border-color: #334155 !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-rowcell,
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-headercell {
    color: #e5e7eb !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-gridheader,
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-gridheader tr th {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-row,
:root[data-theme="dark"] .admin-grid-wrap .e-grid tr .e-rowcell {
    background-color: #0f172a !important;
    border-color: #1e293b !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-row:nth-child(even),
:root[data-theme="dark"] .admin-grid-wrap .e-grid tr:nth-child(even) .e-rowcell {
    background-color: rgba(212, 175, 55, 0.12) !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-pager {
    background-color: #0f172a !important;
    color: #e5e7eb !important;
    border-color: #1e293b !important;
}
:root[data-theme="dark"] .admin-grid-wrap .e-grid .e-pager * {
    color: #cbd5e1 !important;
}