/*
 * Temas del CRM: "crm" (la vista de siempre), "claro" y "oscuro".
 * <html data-theme> lo pinta top.blade.php desde la galleta crm_tema y lo
 * cambia public/js/temas.js. Se carga después de AdminLTE, Bootstrap y los
 * skins; html[data-theme] da la especificidad para ganar a sus reglas, y los
 * !important solo están donde el CRM usa estilos en línea.
 */

/* ------------------------------------------------------------------------
 * 1. Barra superior (los tres modos)
 * --------------------------------------------------------------------- */

/* Color de la empresa: el mismo que su skin de AdminLTE. */
body { --crm-acento: #00a65a; --crm-acento-oscuro: #008d4c; }
body.skin-red { --crm-acento: #dd4b39; --crm-acento-oscuro: #d33724; }
body.skin-yellow { --crm-acento: #f39c12; --crm-acento-oscuro: #db8b0b; }
body.skin-blue { --crm-acento: #3c8dbc; --crm-acento-oscuro: #367fa9; }
body.skin-purple { --crm-acento: #605ca8; --crm-acento-oscuro: #555299; }
body.skin-black { --crm-acento: #5b6b73; --crm-acento-oscuro: #44535a; }

/* Espacio Lector (empresa 2): burdeos propio, con contraste sobre blanco. */
body.skin-espacio-lector { --crm-acento: #8b3a62; --crm-acento-oscuro: #702e4f; }
.skin-espacio-lector .main-header .navbar { background-color: var(--crm-acento); }
.skin-espacio-lector .main-header > .logo {
    background-color: var(--crm-acento-oscuro);
    color: #fff;
    border: 0;
}
.skin-espacio-lector .main-header > .logo:hover { background-color: #602743; }
.skin-espacio-lector .main-header .navbar > .sidebar-toggle,
.skin-espacio-lector .main-header .navbar .nav > li > a { color: #fff; border: 0; }
.skin-espacio-lector .main-header .navbar .sidebar-toggle:hover,
.skin-espacio-lector .main-header .navbar .sidebar-toggle:focus {
    background-color: var(--crm-acento-oscuro);
    color: #fff;
}
.skin-espacio-lector .sidebar-menu > li.active > a { border-left-color: var(--crm-acento); }

.main-header .navbar {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 0 !important;
}
.main-header .navbar .navbar-custom-menu { margin-left: auto; }
.main-header .navbar-custom-menu > .nav {
    display: flex !important;
    flex-direction: row !important;   /* Bootstrap 4 pone .navbar-nav en columna */
    align-items: center;
    gap: 10px;
    height: 50px;
    margin-right: 14px !important;
}
.main-header .navbar-custom-menu > .nav > li {
    float: none !important;
    display: flex !important;
    align-items: center;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

/* Agente y empresa: píldoras con icono y flecha propia en lugar del input. */
.main-header .navbar-custom-menu > .nav > li:has(> #agente),
.main-header .navbar-custom-menu > .nav > li:has(> #empresa) { position: relative; }
.main-header .navbar-custom-menu > .nav > li:has(> #agente)::before,
.main-header .navbar-custom-menu > .nav > li:has(> #empresa)::before {
    position: absolute;
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
    font: normal normal normal 14px/1 FontAwesome;
    color: var(--crm-pill-texto, #fff);
    opacity: .9;
    pointer-events: none;
    z-index: 1;
}
.main-header .navbar-custom-menu > .nav > li:has(> #agente)::before { content: "\f2be"; }
.main-header .navbar-custom-menu > .nav > li:has(> #empresa)::before { content: "\f0f7"; }
.main-header #agente,
.main-header #empresa {
    -webkit-appearance: none;
    appearance: none;
    float: none !important;
    height: 34px !important;
    min-width: 170px;
    max-width: 240px;
    padding: 0 32px 0 34px !important;
    border: 1px solid var(--crm-pill-borde, rgba(255, 255, 255, .38));
    border-radius: 999px !important;
    background-color: var(--crm-pill-fondo, rgba(255, 255, 255, .14));
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 13px center;
    color: var(--crm-pill-texto, #fff);
    font-size: 13px !important;
    font-weight: 600;
    line-height: 32px;
    text-overflow: ellipsis;
    box-shadow: none;
    cursor: pointer;
    transition: background-color .15s, border-color .15s;
}
.main-header #agente:hover,
.main-header #empresa:hover { background-color: var(--crm-pill-fondo-hover, rgba(255, 255, 255, .24)); }
.main-header #agente:focus,
.main-header #empresa:focus { outline: none; box-shadow: 0 0 0 3px var(--crm-pill-foco, rgba(255, 255, 255, .45)); }
.main-header #agente option,
.main-header #empresa option { color: #253b48; background: #fff; font-weight: 400; }

/* Selector de tema: control segmentado. */
.crm-tema {
    display: inline-flex;
    gap: 2px;
    padding: 3px;
    border-radius: 999px;
    background: var(--crm-seg-fondo, rgba(0, 0, 0, .16));
    border: 1px solid var(--crm-seg-borde, rgba(255, 255, 255, .22));
}
.crm-tema button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 26px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--crm-seg-icono, rgba(255, 255, 255, .82));
    font-size: 13px;
    cursor: pointer;
    transition: background-color .15s, color .15s;
}
.crm-tema button:hover { color: var(--crm-seg-icono-hover, #fff); background: rgba(255, 255, 255, .12); }
.crm-tema button[aria-checked="true"] {
    background: var(--crm-seg-activo, #fff);
    color: var(--crm-seg-activo-icono, var(--crm-acento-oscuro));
    box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
}
.crm-tema button:focus-visible { outline: 2px solid var(--crm-pill-foco, rgba(255, 255, 255, .7)); outline-offset: 2px; }

/* Mensajes y salir: botones redondos. */
.main-header .navbar-custom-menu > .nav > li > a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 34px;
    height: 34px;
    padding: 0 !important;
    border-radius: 50%;
    background: var(--crm-icono-fondo, rgba(255, 255, 255, .12)) !important;
    color: var(--crm-pill-texto, #fff) !important;
    font-size: 15px;
    transition: background-color .15s;
}
.main-header .navbar-custom-menu > .nav > li > a:hover,
.main-header .navbar-custom-menu > .nav > li.show > a,
.main-header .navbar-custom-menu > .nav > li.open > a { background: var(--crm-icono-fondo-hover, rgba(255, 255, 255, .26)) !important; }
.main-header .navbar-custom-menu > .nav > li > a > i { margin: 0 !important; }
.main-header .crm-contador {
    position: absolute;
    top: -3px;
    right: -4px;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 9px;
    background: #e5484d;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 17px;
    text-align: center;
    box-shadow: 0 0 0 2px var(--crm-contador-aro, var(--crm-acento));
}

/* Desplegable de mensajes. */
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu {
    left: auto !important;
    right: 0 !important;
    top: 44px !important;
    width: 320px;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--t-borde, #e1e8e9);
    border-radius: 12px;
    background: var(--t-superficie, #fff);
    box-shadow: 0 12px 32px rgba(20, 40, 50, .18);
    transform: none !important;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li.header {
    padding: 12px 16px;
    border-bottom: 1px solid var(--t-borde, #e1e8e9);
    background: var(--t-superficie-2, #f7f9fa);
    color: var(--t-texto, #253b48);
    font-size: 13px;
    font-weight: 600;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a {
    padding: 10px 16px;
    border-bottom: 1px solid var(--t-borde, #edf1f2);
    color: var(--t-texto, #253b48);
    white-space: normal;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a:hover { background: var(--t-hover, #f3f7f6); }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a h4 { color: var(--t-texto, #253b48); font-size: 13px; font-weight: 600; }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a p,
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a small { color: var(--t-apagado, #647680); }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li.footer,
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li.footer > a { border-bottom: 0 !important; }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li.footer > a {
    display: block;
    padding: 11px 16px;
    border-top: 1px solid var(--t-borde, #e1e8e9);
    background: var(--t-superficie, #fff) !important;
    color: var(--crm-enlace-acento, var(--crm-acento-oscuro)) !important;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu .slimScrollDiv { height: auto !important; }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu {
    height: auto !important;
    max-height: 340px;
    overflow-y: auto;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a > div.pull-left {
    float: none !important;
    margin: 0 0 2px;
    color: var(--crm-enlace-acento, var(--crm-acento-oscuro));
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .3px;
    text-transform: uppercase;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a > h4,
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a > p { margin: 0 !important; }
.main-header .navbar-custom-menu .messages-menu > .dropdown-menu > li .menu > li > a > h4 small {
    position: static;
    float: right;
    font-size: 11px;
    font-weight: 400;
}
.main-header .navbar-custom-menu .messages-menu > .dropdown-toggle::after { display: none; }

@media (max-width: 767px) {
    /* Todo en la fila de la barra: píldoras estrechas y selector compacto. */
    .main-header .navbar { flex-wrap: nowrap; }
    .main-header .navbar-custom-menu > .nav { gap: 4px; margin-right: 6px !important; flex-wrap: nowrap; }
    .main-header #agente, .main-header #empresa { min-width: 0; width: 92px; max-width: 92px; padding: 0 22px 0 28px !important; background-position: right 9px center; font-size: 12px !important; }
    .main-header .navbar-custom-menu > .nav > li:has(> select)::before { left: 10px; font-size: 12px; }
    .crm-tema button { width: 24px; }
    .main-header .navbar-custom-menu > .nav > li > a { width: 32px; height: 32px; }
    .main-header .navbar-custom-menu .messages-menu > .dropdown-menu { position: fixed !important; top: 100px !important; right: 8px !important; width: calc(100vw - 16px); }
}

/* ------------------------------------------------------------------------
 * 2. Variables de cada tema
 * --------------------------------------------------------------------- */

html[data-theme="claro"] {
    --t-fondo: #ffffff;
    --t-superficie: #ffffff;
    --t-superficie-2: #f8fafb;
    --t-borde: #e3e9ec;
    --t-texto: #22343e;
    --t-apagado: #667883;
    --t-hover: #f1f5f6;
    --t-input: #ffffff;
    --t-input-borde: #cfd9de;
    --t-lateral: #ffffff;
    --t-lateral-sub: #f7f9fa;
    --t-lateral-texto: #3d4f59;
    --t-lateral-texto-sub: #5d6f79;
}

html[data-theme="oscuro"] {
    color-scheme: dark;
    --t-fondo: #0f1518;
    --t-superficie: #172024;
    --t-superficie-2: #1c262b;
    --t-borde: #2a363c;
    --t-texto: #dbe4e8;
    --t-apagado: #98a9b1;
    --t-hover: #202b31;
    --t-input: #141d21;
    --t-input-borde: #34444b;
    --t-lateral: #0c1114;
    --t-lateral-sub: #11181b;
    --t-lateral-texto: #b4c3ca;
    --t-lateral-texto-sub: #8fa2ab;
    --t-enlace: #72b8ee;
}

/* ------------------------------------------------------------------------
 * 3. Claro y oscuro: fondo del contenido; oscuro también cabecera y menú
 * (en claro la cabecera y el menú se quedan como en el modo CRM)
 * --------------------------------------------------------------------- */

html[data-theme="claro"] body:not(.pagina-login),
html[data-theme="oscuro"] body:not(.pagina-login),
html[data-theme="claro"] .content-wrapper,
html[data-theme="oscuro"] .content-wrapper { background: var(--t-fondo) !important; color: var(--t-texto); }

html[data-theme="oscuro"] .main-header { box-shadow: 0 1px 0 var(--t-borde), 0 2px 10px rgba(15, 30, 40, .05); }
html[data-theme="oscuro"] .main-header::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: var(--crm-acento);
    z-index: 2;
}
html[data-theme="oscuro"] .main-header .navbar { background: var(--t-superficie) !important; }
/* En desarrollo el logo va en naranja (header.blade.php): se respeta. */
html[data-theme="oscuro"] .main-header .logo:not([style*="background"]) { background: var(--t-superficie) !important; color: var(--t-texto) !important; }
html[data-theme="oscuro"] .main-header .logo {
    border-right: 1px solid var(--t-borde);
    font-weight: 700;
    letter-spacing: -.2px;
}
html[data-theme="oscuro"] .main-header .navbar .sidebar-toggle { color: var(--t-apagado) !important; }
html[data-theme="oscuro"] .main-header .navbar .sidebar-toggle:hover { background: var(--t-hover) !important; color: var(--t-texto) !important; }
html[data-theme="oscuro"] body {
    --crm-pill-texto: var(--t-texto);
    --crm-pill-fondo: var(--t-superficie-2);
    --crm-pill-fondo-hover: var(--t-hover);
    --crm-pill-borde: var(--t-input-borde);
    --crm-pill-foco: color-mix(in srgb, var(--crm-acento) 35%, transparent);
    --crm-seg-fondo: var(--t-superficie-2);
    --crm-seg-borde: var(--t-borde);
    --crm-seg-icono: var(--t-apagado);
    --crm-seg-icono-hover: var(--t-texto);
    --crm-seg-activo: var(--crm-acento);
    --crm-seg-activo-icono: #fff;
    --crm-icono-fondo: var(--t-superficie-2);
    --crm-icono-fondo-hover: var(--t-hover);
    --crm-contador-aro: var(--t-superficie);
}
html[data-theme="oscuro"] .main-header #agente,
html[data-theme="oscuro"] .main-header #empresa {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2398a9b1' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
html[data-theme="oscuro"] .main-header .navbar-custom-menu > .nav > li:has(> select)::before { color: var(--crm-acento); opacity: 1; }
html[data-theme="oscuro"] .main-header #agente option,
html[data-theme="oscuro"] .main-header #empresa option { color: var(--t-texto); background: var(--t-superficie); }

/* Menú lateral. */
html[data-theme="oscuro"] .main-sidebar,
html[data-theme="oscuro"] .left-side { background: var(--t-lateral) !important; box-shadow: 1px 0 0 var(--t-borde); }
html[data-theme="oscuro"] .sidebar a { color: var(--t-lateral-texto) !important; }
html[data-theme="oscuro"] .sidebar-menu > li > a:hover,
html[data-theme="oscuro"] .sidebar-menu > li.active > a,
html[data-theme="oscuro"] .sidebar-menu > li.menu-open > a {
    background: var(--t-hover) !important;
    color: var(--t-texto) !important;
    border-left-color: var(--crm-acento) !important;
}
html[data-theme="oscuro"] .sidebar-menu > li > .treeview-menu,
html[data-theme="oscuro"] .sidebar-menu .treeview-menu { background: var(--t-lateral-sub) !important; }
html[data-theme="oscuro"] .treeview-menu > li > a { color: var(--t-lateral-texto-sub) !important; }
html[data-theme="oscuro"] .treeview-menu > li > a:hover,
html[data-theme="oscuro"] .treeview-menu > li.active > a { color: var(--t-texto) !important; background: var(--t-hover); }
html[data-theme="oscuro"] .sidebar-menu > li.header { background: var(--t-lateral) !important; color: var(--t-apagado) !important; }
html[data-theme="oscuro"] .buscador-menu { background: var(--t-lateral) !important; }
html[data-theme="oscuro"] #pista_menu { background: var(--t-lateral-sub) !important; color: var(--t-apagado) !important; }
html[data-theme="oscuro"] .main-sidebar input,
html[data-theme="oscuro"] .sidebar-form input[type="text"] {
    background: var(--t-input) !important;
    border: 1px solid var(--t-input-borde) !important;
    color: var(--t-texto) !important;
    border-radius: 8px;
}
html[data-theme="oscuro"] .main-sidebar::-webkit-scrollbar-thumb { background: #2f3d44; }
html[data-theme="oscuro"] body:not(.sidebar-collapse) .main-sidebar { scrollbar-color: #2f3d44 transparent; }

/* Contenido: cajas como tarjetas. */
html[data-theme="claro"] .main-footer,
html[data-theme="oscuro"] .main-footer { background: var(--t-superficie); border-top: 1px solid var(--t-borde); color: var(--t-apagado); }
html[data-theme="claro"] .content-header > h1,
html[data-theme="oscuro"] .content-header > h1 { color: var(--t-texto); font-weight: 600; }
html[data-theme="claro"] .box,
html[data-theme="oscuro"] .box,
html[data-theme="claro"] .nav-tabs-custom,
html[data-theme="oscuro"] .nav-tabs-custom,
html[data-theme="claro"] .info-box,
html[data-theme="oscuro"] .info-box {
    background: var(--t-superficie);
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(15, 30, 40, .04), 0 0 0 1px var(--t-borde);
    color: var(--t-texto);
}
html[data-theme="claro"] .box-header.with-border,
html[data-theme="oscuro"] .box-header.with-border,
html[data-theme="claro"] .box-footer,
html[data-theme="oscuro"] .box-footer { border-color: var(--t-borde); background: transparent; }
html[data-theme="claro"] .box-header .box-title,
html[data-theme="oscuro"] .box-header .box-title { color: var(--t-texto); font-weight: 600; }
/* Dashboard, mapa y llamadas traen su propio fondo gris: en claro, blanco. */
html[data-theme="claro"] .dash-page { --dash-bg: #ffffff; }
html[data-theme="claro"] .llamadas-page { background: #ffffff !important; }
html[data-theme="claro"] .dash-page .dash-kpi,
html[data-theme="claro"] .dash-page .dash-panel,
html[data-theme="claro"] .llamadas-page .box,
html[data-theme="claro"] .llamadas-page .card,
html[data-theme="claro"] .llamadas-page #tabs > .ui-tabs-nav { box-shadow: none; }
html[data-theme="claro"] .alert-success { background-color: #eaf6f0 !important; border-color: #c4e6d4 !important; color: #17603f !important; }
html[data-theme="claro"] .alert-info { background-color: #eaf3fa !important; border-color: #c6ddef !important; color: #1d5379 !important; }
html[data-theme="claro"] .alert-warning { background-color: #fdf5e6 !important; border-color: #f1dcb0 !important; color: #7a5410 !important; }
html[data-theme="claro"] .alert-danger { background-color: #fcecec !important; border-color: #f0c8c8 !important; color: #8e2a2a !important; }
html[data-theme="claro"] .alert a { color: inherit; text-decoration: underline; }
html[data-theme="claro"] .table > thead > tr > th,
html[data-theme="claro"] table.dataTable thead th { background-color: var(--t-superficie-2); color: #4d6570; border-bottom: 1px solid var(--t-borde); }

/* ------------------------------------------------------------------------
 * 4. Oscuro: componentes globales
 * --------------------------------------------------------------------- */

html[data-theme="oscuro"] body { color: var(--t-texto); }
html[data-theme="oscuro"] a { color: var(--t-enlace); }
html[data-theme="oscuro"] h1, html[data-theme="oscuro"] h2, html[data-theme="oscuro"] h3,
html[data-theme="oscuro"] h4, html[data-theme="oscuro"] h5, html[data-theme="oscuro"] h6,
html[data-theme="oscuro"] label, html[data-theme="oscuro"] legend { color: var(--t-texto); }
html[data-theme="oscuro"] .text-muted, html[data-theme="oscuro"] small, html[data-theme="oscuro"] .help-block { color: var(--t-apagado) !important; }
html[data-theme="oscuro"] hr { border-color: var(--t-borde); }
html[data-theme="oscuro"] .bg-white, html[data-theme="oscuro"] .bg-light { background-color: var(--t-superficie) !important; }
html[data-theme="oscuro"] .text-dark, html[data-theme="oscuro"] .text-black { color: var(--t-texto) !important; }

/* Tarjetas y paneles (Bootstrap 3 y 4). */
html[data-theme="oscuro"] .card,
html[data-theme="oscuro"] .panel,
html[data-theme="oscuro"] .well,
html[data-theme="oscuro"] .list-group-item,
html[data-theme="oscuro"] .callout,
html[data-theme="oscuro"] .jumbotron { background-color: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .card-header, html[data-theme="oscuro"] .card-footer,
html[data-theme="oscuro"] .panel-heading, html[data-theme="oscuro"] .panel-footer,
html[data-theme="oscuro"] .panel-default > .panel-heading { background-color: var(--t-superficie-2) !important; border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .list-group-item-action:hover { background-color: var(--t-hover); }

/* Formularios. */
html[data-theme="oscuro"] .form-control,
html[data-theme="oscuro"] input[type="text"], html[data-theme="oscuro"] input[type="search"],
html[data-theme="oscuro"] input[type="number"], html[data-theme="oscuro"] input[type="email"],
html[data-theme="oscuro"] input[type="password"], html[data-theme="oscuro"] input[type="date"],
html[data-theme="oscuro"] input[type="tel"], html[data-theme="oscuro"] input[type="url"],
html[data-theme="oscuro"] textarea, html[data-theme="oscuro"] select {
    background-color: var(--t-input);
    border-color: var(--t-input-borde);
    color: var(--t-texto);
}
html[data-theme="oscuro"] .form-control:focus { background-color: var(--t-input); color: var(--t-texto); border-color: #4c8c7a; box-shadow: 0 0 0 3px rgba(76, 140, 122, .25); }
html[data-theme="oscuro"] .form-control:disabled,
html[data-theme="oscuro"] .form-control[readonly] { background-color: var(--t-superficie-2); color: var(--t-apagado); }
html[data-theme="oscuro"] ::placeholder { color: #6f818a !important; }
html[data-theme="oscuro"] .input-group-addon,
html[data-theme="oscuro"] .input-group-text { background-color: var(--t-superficie-2); border-color: var(--t-input-borde); color: var(--t-apagado); }

/* Botones neutros (los de color se quedan como están). */
html[data-theme="oscuro"] .btn-default,
html[data-theme="oscuro"] .btn-light,
html[data-theme="oscuro"] .btn-secondary:not(.active),
html[data-theme="oscuro"] button.dt-button,
html[data-theme="oscuro"] a.dt-button { background: var(--t-superficie-2) !important; border-color: var(--t-input-borde) !important; color: var(--t-texto) !important; }
html[data-theme="oscuro"] .btn-default:hover,
html[data-theme="oscuro"] .btn-light:hover,
html[data-theme="oscuro"] button.dt-button:hover { background: var(--t-hover) !important; }
html[data-theme="oscuro"] .btn-outline-secondary, html[data-theme="oscuro"] .btn-outline-dark { color: var(--t-texto); border-color: var(--t-input-borde); }
html[data-theme="oscuro"] .close { color: var(--t-texto); text-shadow: none; opacity: .7; }

/* Tablas y DataTables. */
html[data-theme="oscuro"] .table,
html[data-theme="oscuro"] table.dataTable { color: var(--t-texto); background-color: transparent; }
html[data-theme="oscuro"] .table th, html[data-theme="oscuro"] .table td,
html[data-theme="oscuro"] .table > thead > tr > th, html[data-theme="oscuro"] .table > tbody > tr > td,
html[data-theme="oscuro"] .table-bordered, html[data-theme="oscuro"] .table-bordered td, html[data-theme="oscuro"] .table-bordered th,
html[data-theme="oscuro"] table.dataTable thead th, html[data-theme="oscuro"] table.dataTable tfoot th,
html[data-theme="oscuro"] table.dataTable tbody td, html[data-theme="oscuro"] table.dataTable.no-footer { border-color: var(--t-borde) !important; }
html[data-theme="oscuro"] .table > thead > tr > th,
html[data-theme="oscuro"] table.dataTable thead th,
html[data-theme="oscuro"] .thead-light th { background-color: var(--t-superficie-2) !important; color: var(--t-apagado) !important; }
html[data-theme="oscuro"] table.dataTable tbody tr,
html[data-theme="oscuro"] .table tbody tr { background-color: var(--t-superficie); }
html[data-theme="oscuro"] .table-striped > tbody > tr:nth-of-type(odd),
html[data-theme="oscuro"] table.dataTable.stripe tbody tr.odd,
html[data-theme="oscuro"] table.dataTable.display tbody tr.odd { background-color: var(--t-superficie-2) !important; }
/* revision-datatables-orden:inicio */
/* Las columnas ordenadas usan el fondo de su fila, también en DataTables antiguos.
   Los estados explícitos de una celda conservan su propio color. */
@media screen {
    html[data-theme="oscuro"] table.dataTable tbody tr > :is(td, th):is(.sorting_1, .sorting_2, .sorting_3):where(:not(.success, .danger, .warning, .info, .active, [class*="bg-"], [style*="background"])) {
        background-color: inherit !important;
    }
}
/* revision-datatables-orden:fin */
html[data-theme="oscuro"] .table-hover > tbody > tr:hover,
html[data-theme="oscuro"] table.dataTable.hover tbody tr:hover,
html[data-theme="oscuro"] table.dataTable.display tbody tr:hover { background-color: var(--t-hover) !important; }
html[data-theme="oscuro"] table.dataTable tbody tr.selected { background-color: #1f4a3f !important; }
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_length,
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_filter,
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_info,
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_processing,
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate { color: var(--t-apagado) !important; }
/* revision-datatables-paginacion:inicio */
/* DataTables nativo y Bootstrap: fondo y texto se definen juntos,
   también en el enlace interior de cada botón de Bootstrap. */
@media screen {
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .paginate_button,
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .pagination > li > a,
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .pagination > li > span {
        background: var(--t-superficie) !important;
        color: var(--t-texto) !important;
        border-color: var(--t-borde) !important;
        border-radius: 6px;
    }
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .paginate_button:is(.current, .active, :hover, :focus-visible),
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .pagination > li:is(.active, :hover) > :is(a, span),
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .pagination > li > a:focus-visible {
        background: var(--t-hover) !important;
        color: var(--t-texto) !important;
        border-color: var(--t-input-borde) !important;
    }
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
    html[data-theme="oscuro"] .dataTables_wrapper .dataTables_paginate .pagination > li.disabled > :is(a, span) {
        background: var(--t-superficie) !important;
        color: var(--t-apagado) !important;
        border-color: var(--t-borde) !important;
        box-shadow: none;
    }
}
/* revision-datatables-paginacion:fin */
html[data-theme="oscuro"] .dataTables_scrollBody, html[data-theme="oscuro"] .DTFC_LeftBodyLiner, html[data-theme="oscuro"] .DTFC_RightBodyLiner { background: var(--t-superficie); }
html[data-theme="oscuro"] div.dt-button-collection { background: var(--t-superficie); border-color: var(--t-borde); }

/* Paginación, pestañas, desplegables, modales. */
html[data-theme="oscuro"] .page-link, html[data-theme="oscuro"] .pagination > li > a,
html[data-theme="oscuro"] .pagination > li > span { background-color: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .page-item.disabled .page-link { background-color: var(--t-superficie-2); color: #5c6c74; }
html[data-theme="oscuro"] .nav-tabs { border-color: var(--t-borde); }
html[data-theme="oscuro"] .nav-tabs .nav-link.active, html[data-theme="oscuro"] .nav-tabs > li.active > a,
html[data-theme="oscuro"] .nav-tabs-custom > .nav-tabs > li.active > a { background-color: var(--t-superficie) !important; border-color: var(--t-borde) var(--t-borde) transparent !important; color: var(--t-texto) !important; }
html[data-theme="oscuro"] .nav-tabs .nav-link:hover, html[data-theme="oscuro"] .nav-tabs > li > a:hover { border-color: var(--t-borde); background: var(--t-hover); }
html[data-theme="oscuro"] .nav-tabs-custom > .nav-tabs { border-color: var(--t-borde); }
html[data-theme="oscuro"] .nav-tabs-custom > .nav-tabs > li > a { color: var(--t-apagado); }
html[data-theme="oscuro"] .nav-tabs-custom > .tab-content { background: var(--t-superficie); }
html[data-theme="oscuro"] .dropdown-menu { background-color: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); box-shadow: 0 12px 32px rgba(0, 0, 0, .45); }
html[data-theme="oscuro"] .dropdown-item, html[data-theme="oscuro"] .dropdown-menu > li > a { color: var(--t-texto); }
html[data-theme="oscuro"] .dropdown-item:hover, html[data-theme="oscuro"] .dropdown-menu > li > a:hover { background-color: var(--t-hover); color: var(--t-texto); }
html[data-theme="oscuro"] .dropdown-divider, html[data-theme="oscuro"] .dropdown-menu .divider { border-color: var(--t-borde); background-color: var(--t-borde); }
html[data-theme="oscuro"] .modal-content { background-color: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .modal-header, html[data-theme="oscuro"] .modal-footer { border-color: var(--t-borde); }
html[data-theme="oscuro"] .modal-backdrop.show, html[data-theme="oscuro"] .modal-backdrop.in { opacity: .7; }
html[data-theme="oscuro"] .popover { background-color: var(--t-superficie-2); border-color: var(--t-borde); }
html[data-theme="oscuro"] .popover-body, html[data-theme="oscuro"] .popover-content { color: var(--t-texto); }
html[data-theme="oscuro"] .progress { background-color: var(--t-superficie-2); }

/* Avisos: fondo tintado en lugar del color sólido de AdminLTE (que usa !important). */
html[data-theme="oscuro"] .alert-success { background-color: #16302a !important; border-color: #23493f !important; color: #a9dcc9 !important; }
html[data-theme="oscuro"] .alert-info { background-color: #152a38 !important; border-color: #214259 !important; color: #a8d0ec !important; }
html[data-theme="oscuro"] .alert-warning { background-color: #33290f !important; border-color: #54431a !important; color: #efd48f !important; }
html[data-theme="oscuro"] .alert-danger { background-color: #36191b !important; border-color: #5a2a2d !important; color: #f2b3b5 !important; }
html[data-theme="oscuro"] .alert a { color: inherit; text-decoration: underline; }
html[data-theme="oscuro"] .alert-secondary, html[data-theme="oscuro"] .alert-light { background-color: var(--t-superficie-2); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] body { --crm-enlace-acento: color-mix(in srgb, var(--crm-acento) 55%, #ffffff); }
/* Los colores sólidos de AdminLTE deslumbran sobre fondo oscuro. */
html[data-theme="oscuro"] .small-box.bg-green, html[data-theme="oscuro"] .info-box-icon.bg-green { background-color: #107a50 !important; }
html[data-theme="oscuro"] .small-box.bg-aqua, html[data-theme="oscuro"] .info-box-icon.bg-aqua { background-color: #0b7891 !important; }
html[data-theme="oscuro"] .small-box.bg-blue, html[data-theme="oscuro"] .small-box.bg-light-blue { background-color: #1f5f96 !important; }
html[data-theme="oscuro"] .small-box.bg-yellow, html[data-theme="oscuro"] .info-box-icon.bg-yellow { background-color: #a0640c !important; }
html[data-theme="oscuro"] .small-box.bg-red, html[data-theme="oscuro"] .info-box-icon.bg-red { background-color: #a13a2d !important; }
html[data-theme="oscuro"] .small-box.bg-purple { background-color: #4f4a9a !important; }
html[data-theme="oscuro"] .small-box.bg-orange { background-color: #ad5a1f !important; }
html[data-theme="oscuro"] .small-box.bg-teal { background-color: #22857a !important; }
html[data-theme="oscuro"] .small-box.bg-maroon { background-color: #8a2450 !important; }
html[data-theme="oscuro"] .small-box h3, html[data-theme="oscuro"] .small-box p, html[data-theme="oscuro"] .small-box > .small-box-footer { color: #ffffff !important; }
html[data-theme="oscuro"] .callout.callout-success, html[data-theme="oscuro"] .callout.callout-info,
html[data-theme="oscuro"] .callout.callout-warning, html[data-theme="oscuro"] .callout.callout-danger { filter: saturate(.75) brightness(.85); }
html[data-theme="oscuro"] .dataTables_wrapper .dataTables_filter input { background-color: var(--t-superficie-2); border: 1px solid var(--t-input-borde); border-radius: 6px; }
html[data-theme="oscuro"] .small-box { box-shadow: none; }
html[data-theme="oscuro"] .box:not(.box-primary):not(.box-info):not(.box-success):not(.box-warning):not(.box-danger) { border-top-color: var(--t-borde); }
html[data-theme="oscuro"] .small-box .icon { color: rgba(0, 0, 0, .25); }

/* select2. */
html[data-theme="oscuro"] .select2-container--default .select2-selection--single,
html[data-theme="oscuro"] .select2-container--default .select2-selection--multiple { background-color: var(--t-input); border-color: var(--t-input-borde); }
html[data-theme="oscuro"] .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--t-texto); }
html[data-theme="oscuro"] .select2-container--default .select2-selection--multiple .select2-selection__choice { background-color: var(--t-superficie-2); border-color: var(--t-input-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .select2-dropdown { background-color: var(--t-superficie); border-color: var(--t-input-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .select2-container--default .select2-search--dropdown .select2-search__field { background: var(--t-input); border-color: var(--t-input-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .select2-container--default .select2-results__option[aria-selected=true] { background-color: var(--t-hover); }
html[data-theme="oscuro"] .select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: #2c6e5c; color: #fff; }

/* jQuery UI (pestañas, calendarios, diálogos, autocompletar). */
html[data-theme="oscuro"] .ui-widget-content { background: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .ui-widget-content a { color: var(--t-enlace); }
html[data-theme="oscuro"] .ui-widget-header { background: var(--t-superficie-2); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .ui-state-default, html[data-theme="oscuro"] .ui-widget-content .ui-state-default,
html[data-theme="oscuro"] .ui-widget-header .ui-state-default { background: var(--t-superficie-2); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .ui-state-default a, html[data-theme="oscuro"] .ui-state-default a:link { color: var(--t-texto); }
html[data-theme="oscuro"] .ui-state-hover, html[data-theme="oscuro"] .ui-state-focus,
html[data-theme="oscuro"] .ui-widget-content .ui-state-hover { background: var(--t-hover); border-color: var(--t-input-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .ui-state-active, html[data-theme="oscuro"] .ui-widget-content .ui-state-active { background: #2c6e5c; border-color: #2c6e5c; color: #fff; }
html[data-theme="oscuro"] .ui-state-highlight { background: #33290f; border-color: #54431a; color: #efd48f; }
html[data-theme="oscuro"] .ui-menu .ui-menu-item-wrapper.ui-state-active { background: #2c6e5c; }

/* Calendario de bootstrap-datepicker y daterangepicker. */
html[data-theme="oscuro"] .datepicker, html[data-theme="oscuro"] .daterangepicker,
html[data-theme="oscuro"] .daterangepicker .calendar-table { background-color: var(--t-superficie); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .datepicker table tr td.day:hover, html[data-theme="oscuro"] .daterangepicker td.available:hover { background: var(--t-hover); }
html[data-theme="oscuro"] .daterangepicker td.off { background-color: transparent; color: #5c6c74; }

/* Fondos blancos escritos en línea en muchas vistas antiguas. */
html[data-theme="oscuro"] .content-wrapper [style*="background-color: white"],
html[data-theme="oscuro"] .content-wrapper [style*="background-color:white"],
html[data-theme="oscuro"] .content-wrapper [style*="background-color: #fff"],
html[data-theme="oscuro"] .content-wrapper [style*="background-color:#fff"],
html[data-theme="oscuro"] .content-wrapper [style*="background: white"],
html[data-theme="oscuro"] .content-wrapper [style*="background:white"],
html[data-theme="oscuro"] .content-wrapper [style*="background: #fff"],
html[data-theme="oscuro"] .content-wrapper [style*="background:#fff"],
html[data-theme="oscuro"] .modal [style*="background-color: white"],
html[data-theme="oscuro"] .modal [style*="background: #fff"] { background-color: var(--t-superficie) !important; }
html[data-theme="oscuro"] .content-wrapper [style*="color: black"],
html[data-theme="oscuro"] .content-wrapper [style*="color:black"],
html[data-theme="oscuro"] .content-wrapper [style*="color: #000"],
html[data-theme="oscuro"] .content-wrapper [style*="color:#000"],
html[data-theme="oscuro"] .content-wrapper [style*="color: #333"],
html[data-theme="oscuro"] .content-wrapper [style*="color:#333"] { color: var(--t-texto) !important; }

/* Mapas (Leaflet): teselas oscurecidas, chinchetas intactas. */
html[data-theme="oscuro"] .leaflet-tile-pane { filter: invert(.92) hue-rotate(180deg) saturate(.35) brightness(.9) contrast(.9) !important; }
html[data-theme="oscuro"] .leaflet-container { background: #10171a; }
html[data-theme="oscuro"] .leaflet-popup-content-wrapper, html[data-theme="oscuro"] .leaflet-popup-tip { background: var(--t-superficie); color: var(--t-texto); }
html[data-theme="oscuro"] .leaflet-bar a { background: var(--t-superficie-2); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] .leaflet-control-attribution { background: rgba(23, 32, 36, .85) !important; color: var(--t-apagado); }

/* ------------------------------------------------------------------------
 * 5. Oscuro: módulos con estilos propios
 * --------------------------------------------------------------------- */

/* Dashboard de inicio y mapa de clientes (dashboard.css). */
html[data-theme="oscuro"] .dash-page {
    --dash-ink: var(--t-texto);
    --dash-muted: var(--t-apagado);
    --dash-line: var(--t-borde);
    --dash-surface: var(--t-superficie);
    --dash-bg: var(--t-fondo);
    --dash-green: #4fb393;
    --dash-green-dark: #6cc6a8;
    --dash-positive: #4fb393;
    --dash-negative: #ef7f79;
}
html[data-theme="oscuro"] .dash-page .dash-table th { background: var(--t-superficie-2); color: var(--t-apagado); border-color: var(--t-borde); }
html[data-theme="oscuro"] .dash-page .dash-table td { border-color: var(--t-borde); }
html[data-theme="oscuro"] .dash-page .dash-table tbody tr:hover td { background: var(--t-hover); }
html[data-theme="oscuro"] .dash-page .dash-table tfoot td { background: var(--t-superficie-2); border-color: var(--t-borde); }
html[data-theme="oscuro"] .dash-page .dash-legend th, html[data-theme="oscuro"] .dash-page .dash-legend tfoot td { background: transparent; }
html[data-theme="oscuro"] .dash-page .dash-badge { background: #1d3a32; color: #8fd6bd; }
html[data-theme="oscuro"] .dash-page .dash-panel-icon,
html[data-theme="oscuro"] .dash-page .dash-tone-teal .dash-kpi-icon { background: #1d3a32; color: #6cc6a8; }
html[data-theme="oscuro"] .dash-page .dash-tone-blue .dash-kpi-icon { background: #1b3048; color: #7fb3ea; }
html[data-theme="oscuro"] .dash-page .dash-tone-indigo .dash-kpi-icon { background: #29264a; color: #aaa2f0; }
html[data-theme="oscuro"] .dash-page .dash-tone-amber .dash-kpi-icon { background: #3a2e12; color: #e7b75a; }
html[data-theme="oscuro"] .dash-page .dash-tone-slate .dash-kpi-icon { background: #243037; color: #a9bac2; }
html[data-theme="oscuro"] .dash-page .dash-skeleton { background: linear-gradient(90deg, #1f2a30 25%, #27343a 50%, #1f2a30 75%); background-size: 200% 100%; }
html[data-theme="oscuro"] .dash-page .dash-compare div { background: var(--t-superficie-2); border-color: var(--t-borde); }
html[data-theme="oscuro"] .dash-page .dash-kpi, html[data-theme="oscuro"] .dash-page .dash-panel { box-shadow: none; }
html[data-theme="oscuro"] .dash-page .select2-container--default .select2-selection--single { border-color: var(--t-input-borde); }
html[data-theme="oscuro"] .dash-page .dash-mapa-lienzo { background: #10171a; }
html[data-theme="oscuro"] .dash-page .dash-mapa-items button { color: var(--t-texto); border-color: var(--t-borde); }
html[data-theme="oscuro"] .dash-page .dash-mapa-items button:hover, html[data-theme="oscuro"] .dash-page .dash-mapa-items button:focus-visible { background: var(--t-hover); }
html[data-theme="oscuro"] .dash-page .dash-mapa-sin summary { color: #e7b75a; }
html[data-theme="oscuro"] .dash-page .dash-pin { border-color: var(--t-superficie); }
html[data-theme="oscuro"] .dash-page .dash-pin.is-aprox { background: var(--t-superficie); border-color: var(--t-superficie); }
html[data-theme="oscuro"] .dash-page .leaflet-popup-content { color: var(--t-texto); }
html[data-theme="oscuro"] .dash-page .dash-popup .dash-aviso { color: #e7b75a; }

/* El fondo de .wrapper asoma bajo el menú lateral: mismo color que el menú. */
html[data-theme="oscuro"] .wrapper { background: var(--t-lateral) !important; }

/* Dashboards de dirección (dashboard-organizativo.css): variaciones legibles. */
html[data-theme="oscuro"] .org-page .org-positive { color: #5fcf9f; }
html[data-theme="oscuro"] .org-page .org-negative { color: #f08a84; }
html[data-theme="oscuro"] .org-page .org-primary,
html[data-theme="oscuro"] .org-page .org-button[aria-pressed=true] { background: #2f7f68; border-color: #2f7f68; color: #fff; }

/* Llamadas (llamadas.css). */
html[data-theme="oscuro"] .llamadas-page {
    --ll-ink: var(--t-texto);
    --ll-muted: var(--t-apagado);
    --ll-line: var(--t-borde);
    --ll-green: #2f7f68;   /* 4,9:1 con texto blanco */
    --ll-green-dark: #6cc6a8;
    background: var(--t-fondo) !important;
    color: var(--t-texto);
}
html[data-theme="oscuro"] .llamadas-page #tabs > .ui-tabs-nav,
html[data-theme="oscuro"] .llamadas-page .box,
html[data-theme="oscuro"] .llamadas-page .card,
html[data-theme="oscuro"] .llamadas-page .llamadas-incident-toggle,
html[data-theme="oscuro"] .llamadas-page .llamadas-documentos,
html[data-theme="oscuro"] .llamadas-page .pedido-catalogo,
html[data-theme="oscuro"] .llamadas-page .pedido-cesta,
html[data-theme="oscuro"] .llamadas-page .pedido-results-toolbar,
html[data-theme="oscuro"] .llamadas-page .pedido-producto,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-tira button,
html[data-theme="oscuro"] .llamadas-page table.dataTable tbody tr,
html[data-theme="oscuro"] .llamadas-page #tablaBolsa .bolsa-gestion { background: var(--t-superficie) !important; border-color: var(--t-borde) !important; color: var(--t-texto); }
html[data-theme="oscuro"] .llamadas-page .box-footer,
html[data-theme="oscuro"] .llamadas-page table.dataTable tbody tr:nth-child(even),
html[data-theme="oscuro"] .llamadas-page #pedido-sugerencias,
html[data-theme="oscuro"] .llamadas-page #pedido-filtros-panel,
html[data-theme="oscuro"] .llamadas-page .llamadas-cart-empty,
html[data-theme="oscuro"] .llamadas-page .documentos-busqueda,
html[data-theme="oscuro"] .llamadas-page .pedido-producto-media,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-portada,
html[data-theme="oscuro"] .llamadas-page .pedido-producto-status,
html[data-theme="oscuro"] .llamadas-page .pedido-stock-dato,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-chip { background: var(--t-superficie-2) !important; border-color: var(--t-borde) !important; color: var(--t-texto); }
html[data-theme="oscuro"] .llamadas-page table thead th,
html[data-theme="oscuro"] .llamadas-page #reprogramadas th,
html[data-theme="oscuro"] .llamadas-page .llamadas-cart-table th,
html[data-theme="oscuro"] .llamadas-page .documentos-table th,
html[data-theme="oscuro"] .llamadas-page #tablaBolsa th:last-child { background: var(--t-superficie-2) !important; color: var(--t-apagado) !important; border-color: var(--t-borde) !important; }
html[data-theme="oscuro"] .llamadas-page table tbody td,
html[data-theme="oscuro"] .llamadas-page #reprogramadas td { border-color: var(--t-borde) !important; }
html[data-theme="oscuro"] .llamadas-page #tabs > .ui-tabs-nav > li:hover,
html[data-theme="oscuro"] .llamadas-page .llamadas-incident-toggle:hover,
html[data-theme="oscuro"] .llamadas-page .documentos-table tbody tr:hover,
html[data-theme="oscuro"] .llamadas-page #incidencias tbody tr:hover td,
html[data-theme="oscuro"] .llamadas-page #reprogramadas tr:hover td { background: var(--t-hover) !important; }
html[data-theme="oscuro"] .llamadas-page #tabs > .ui-tabs-nav > li > a { color: var(--t-apagado); }
html[data-theme="oscuro"] .llamadas-page #tabs > .ui-tabs-nav > li.ui-tabs-active { background: var(--ll-green); }
html[data-theme="oscuro"] .llamadas-page #tabs > .ui-tabs-nav > li.ui-tabs-active > a { color: #fff; }
html[data-theme="oscuro"] .llamadas-page .form-control,
html[data-theme="oscuro"] .llamadas-page .select2-container--default .select2-selection--single,
html[data-theme="oscuro"] .llamadas-page .dataTables_wrapper .dataTables_filter input,
html[data-theme="oscuro"] .llamadas-page .dataTables_wrapper .dataTables_length select { background: var(--t-input) !important; border-color: var(--t-input-borde) !important; color: var(--t-texto) !important; }
html[data-theme="oscuro"] .llamadas-page label { color: var(--t-apagado); }
html[data-theme="oscuro"] .llamadas-page .llamadas-badge,
html[data-theme="oscuro"] .llamadas-page .llamadas-heading-icon,
html[data-theme="oscuro"] .llamadas-page .llamadas-section-icon,
html[data-theme="oscuro"] .llamadas-page .pedido-nuevo .badge,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-encesta,
html[data-theme="oscuro"] .llamadas-page .pedido-stock-cliente,
html[data-theme="oscuro"] .llamadas-page .pedido-stock-dato.es-positivo,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-chip.es-novedad,
html[data-theme="oscuro"] .llamadas-page #pedido-filtros-toggle[aria-expanded=true],
html[data-theme="oscuro"] .llamadas-page .pedido-stock-toggle[aria-expanded=true],
html[data-theme="oscuro"] .llamadas-page .dataTables_wrapper .dataTables_paginate .paginate_button.current { background: #1d3a32 !important; color: #8fd6bd !important; border-color: #2b5247 !important; }
html[data-theme="oscuro"] .llamadas-page .llamadas-load-status { background: #152a38; color: #a8d0ec; }
html[data-theme="oscuro"] .llamadas-page .documentos-error,
html[data-theme="oscuro"] .llamadas-page #pedido-cesta-aviso,
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-chip.es-oferta { background: #33290f !important; color: #efd48f !important; }
html[data-theme="oscuro"] .llamadas-page .pedido-ficha-chip.es-aviso { background: #36191b !important; color: #f2b3b5 !important; }
html[data-theme="oscuro"] .llamadas-page .pedido-portada-ausente { background: linear-gradient(140deg, #1c262b, #22302a); }
html[data-theme="oscuro"] .llamadas-page .llamadas-client-card .list-group-item { border-color: var(--t-borde); color: var(--t-apagado); }
html[data-theme="oscuro"] .llamadas-page .llamadas-client-card strong { color: var(--t-texto); }

/* revision-temas-20260925:inicio */
@media screen {
/* Los enlaces con aspecto de botón conservan contraste sobre su color de acción. */
html[data-theme="oscuro"] a.btn-primary,
html[data-theme="oscuro"] a.btn-primary:hover,
html[data-theme="oscuro"] a.btn-primary:focus,
html[data-theme="oscuro"] a.btn-success,
html[data-theme="oscuro"] a.btn-success:hover,
html[data-theme="oscuro"] a.btn-success:focus,
html[data-theme="oscuro"] a.btn-info,
html[data-theme="oscuro"] a.btn-info:hover,
html[data-theme="oscuro"] a.btn-info:focus,
html[data-theme="oscuro"] a.btn-danger,
html[data-theme="oscuro"] a.btn-danger:hover,
html[data-theme="oscuro"] a.btn-danger:focus { color: #fff; }
html[data-theme="oscuro"] a.btn-warning,
html[data-theme="oscuro"] a.btn-warning:hover,
html[data-theme="oscuro"] a.btn-warning:focus { color: #202a2f; }
html[data-theme="oscuro"] .well,
html[data-theme="oscuro"] pre { background: var(--t-superficie-2); border-color: var(--t-borde); color: var(--t-texto); }
html[data-theme="oscuro"] code { background: #36191b; color: #f2b3b5; }
html[data-theme="oscuro"] pre code { background: transparent; color: inherit; }
html[data-theme="oscuro"] .table > tbody > tr.success > td,
html[data-theme="oscuro"] .table > tbody > tr > td.success { background: #16302a !important; color: #a9dcc9; }
html[data-theme="oscuro"] .table > tbody > tr.danger > td,
html[data-theme="oscuro"] .table > tbody > tr > td.danger { background: #36191b !important; color: #f2b3b5; }
html[data-theme="oscuro"] .table > tbody > tr.warning > td,
html[data-theme="oscuro"] .table > tbody > tr > td.warning { background: #33290f !important; color: #efd48f; }
html[data-theme="oscuro"] .table > tbody > tr.info > td,
html[data-theme="oscuro"] .table > tbody > tr > td.info { background: #152a38 !important; color: #a8d0ec; }
html[data-theme="oscuro"] .table > tbody > tr.active > td,
html[data-theme="oscuro"] .table > tbody > tr > td.active { background: var(--t-hover) !important; color: var(--t-texto); }
html[data-theme="oscuro"] a.btn-warning.form-control { background: #efd48f; color: #33290f; }
}
/* revision-temas-20260925:fin */
