/* Modo oscuro IRASIL: misma paleta (verde + lima) sobre fondo verde muy oscuro.
   Se activa con html[data-tema="oscuro"] (templates/_tema_head.html: automático
   según el dispositivo o elegido desde el menú del usuario). */

html[data-tema="oscuro"] {
  color-scheme: dark;
  --bg: #0b1811;
  --bg-elevated: #14281d;
  --surface: #11231a;
  --surface-solid: #11231a;
  --surface-hover: #1a3427;
  --border: rgba(164, 214, 94, 0.13);
  --border-strong: rgba(164, 214, 94, 0.26);
  --text: #e2ede5;
  --muted: #9bb2a4;
  --accent: #a4d65e;
  --accent-strong: #c3e78f;
  --accent-soft: rgba(164, 214, 94, 0.1);
  --accent-glow: rgba(164, 214, 94, 0.3);
  --brand-sage: #183224;
  --brand-mint: #10221a;
  --success: #4ade80;
  --warning: #fbbf24;
  --danger: #f87171;
  --shadow-sm: 0 8px 24px rgba(0, 0, 0, 0.35);
  --shadow-md: 0 18px 48px rgba(0, 0, 0, 0.45);
}

/* El logo es un PNG con fondo blanco: se muestra en una placa clara. */
html[data-tema="oscuro"] .app-brand-logo {
  border-radius: 10px;
  background: #ffffff;
}

html[data-tema="oscuro"] ::selection {
  background: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] a:hover {
  color: var(--accent-strong);
}

html[data-tema="oscuro"] input::placeholder,
html[data-tema="oscuro"] textarea::placeholder {
  color: rgba(155, 178, 164, 0.7);
}

html[data-tema="oscuro"] .btn-primary {
  border-color: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] .ilus-sombra {
  opacity: 0.35;
}

/* Calendario (flatpickr, CSS de terceros) */
html[data-tema="oscuro"] .flatpickr-calendar {
  background: var(--bg-elevated);
  box-shadow: var(--shadow-md);
}

html[data-tema="oscuro"] .flatpickr-calendar.arrowTop::after {
  border-bottom-color: var(--bg-elevated);
}

html[data-tema="oscuro"] .flatpickr-calendar.arrowBottom::after {
  border-top-color: var(--bg-elevated);
}

html[data-tema="oscuro"] .flatpickr-months .flatpickr-month,
html[data-tema="oscuro"] .flatpickr-current-month .flatpickr-monthDropdown-months,
html[data-tema="oscuro"] .flatpickr-current-month input.cur-year,
html[data-tema="oscuro"] .flatpickr-months .flatpickr-prev-month,
html[data-tema="oscuro"] .flatpickr-months .flatpickr-next-month,
html[data-tema="oscuro"] span.flatpickr-weekday {
  background: transparent;
  color: var(--text);
  fill: var(--text);
}

html[data-tema="oscuro"] .flatpickr-day {
  color: var(--text);
}

html[data-tema="oscuro"] .flatpickr-day:hover,
html[data-tema="oscuro"] .flatpickr-day:focus {
  background: var(--surface-hover);
  border-color: var(--surface-hover);
}

html[data-tema="oscuro"] .flatpickr-day.prevMonthDay,
html[data-tema="oscuro"] .flatpickr-day.nextMonthDay,
html[data-tema="oscuro"] .flatpickr-day.flatpickr-disabled {
  color: rgba(226, 237, 229, 0.3);
}

html[data-tema="oscuro"] .flatpickr-day.selected,
html[data-tema="oscuro"] .flatpickr-day.selected:hover {
  color: #0b1811;
}

/* Botón «Tema» del menú del usuario */
.tema-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  border: 0;
  background: transparent;
  font-family: inherit;
  text-align: left;
  cursor: pointer;
}

.tema-toggle:hover {
  background: var(--surface-hover);
}

.tema-toggle-valor {
  padding: 0.12rem 0.5rem;
  border-radius: 999px;
  background: var(--accent-soft);
  color: var(--accent);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

html[data-tema-cambiando] *,
html[data-tema-cambiando] *::before,
html[data-tema-cambiando] *::after {
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease !important;
}

/* === INICIO GENERADO: no editar a mano (scripts/generar_tema_oscuro.py) === */
html[data-tema="oscuro"] body {
  background: radial-gradient(circle at top left, rgba(141, 198, 63, 0.12), transparent 28%), radial-gradient(circle at top right, rgba(141, 198, 63, 0.08), transparent 24%), linear-gradient(180deg, var(--bg) 0%, var(--surface-hover) 100%);
}

html[data-tema="oscuro"] a:hover {
  color: #b5e07a;
}

html[data-tema="oscuro"] .app-header {
  background: rgba(18, 36, 26, 0.96);
}

html[data-tema="oscuro"] .app-nav-toggle {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .app-brand-mark {
  background: linear-gradient(135deg, rgba(141, 198, 63, 0.95), rgba(141, 198, 63, 0.85));
}

html[data-tema="oscuro"] .app-brand-mark::after {
  border: 2px solid var(--surface-solid);
}

html[data-tema="oscuro"] .app-nav-link:hover {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .app-nav-link.is-active {
  background: rgba(141, 198, 63, 0.08);
}

html[data-tema="oscuro"] .app-nav-user-toggle:hover {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .app-nav-user-toggle[aria-expanded="true"],
html[data-tema="oscuro"] .app-nav-user-toggle.is-active {
  background: rgba(141, 198, 63, 0.08);
}

html[data-tema="oscuro"] .app-nav-dropdown-link:hover {
  background: rgba(141, 198, 63, 0.08);
}

html[data-tema="oscuro"] .app-nav-dropdown-link.is-active {
  background: rgba(141, 198, 63, 0.12);
  color: #b5e07a;
}

html[data-tema="oscuro"] .app-nav-user-dropdown {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .app-nav-user-logout {
  color: #fca5a5;
}

html[data-tema="oscuro"] .app-nav-link-exit:hover {
  color: #fca5a5;
}

html[data-tema="oscuro"] .app-nav-link-exit.is-active {
  color: #fca5a5;
}

html[data-tema="oscuro"] .app-subnav {
  border-top: 1px solid rgba(164, 214, 94, 0.08);
  background: linear-gradient(180deg, rgba(141, 198, 63, 0.06), rgba(255, 255, 255, 0));
}

html[data-tema="oscuro"] .app-subnav-link {
  color: var(--muted);
  border: 1px solid rgba(164, 214, 94, 0.14);
  background: rgba(18, 36, 26, 0.9);
}

html[data-tema="oscuro"] .app-subnav-link:hover {
  color: var(--text);
  border-color: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] .app-subnav-link.is-active {
  color: var(--text);
  background: rgba(141, 198, 63, 0.18);
  border-color: rgba(164, 214, 94, 0.45);
}

html[data-tema="oscuro"] .app-subnav-link.is-pendientes.is-active {
  color: #fcd34d;
}

html[data-tema="oscuro"] .app-subnav-count {
  background: rgba(141, 198, 63, 0.12);
}

html[data-tema="oscuro"] .app-subnav-link.is-active .app-subnav-count {
  background: rgba(141, 198, 63, 0.16);
}

html[data-tema="oscuro"] .login-intro {
  background: linear-gradient(165deg, rgba(141, 198, 63, 0.08), rgba(18, 36, 26, 0.92)), var(--surface);
  border-color: rgba(164, 214, 94, 0.16);
}

html[data-tema="oscuro"] .login-features li {
  background: rgba(18, 36, 26, 0.72);
}

html[data-tema="oscuro"] .login-feature-icon {
  background: rgba(141, 198, 63, 0.1);
  border: 1px solid rgba(164, 214, 94, 0.14);
}

html[data-tema="oscuro"] .login-card {
  border-color: rgba(164, 214, 94, 0.18);
}

html[data-tema="oscuro"] .pwa-install-box {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .login-spinner {
  border: 3px solid rgba(164, 214, 94, 0.14);
}

html[data-tema="oscuro"] .app-nav-user {
  color: var(--muted);
  background: rgba(141, 198, 63, 0.06);
  border: 1px solid rgba(164, 214, 94, 0.14);
}

html[data-tema="oscuro"] .historial-count {
  background: rgba(141, 198, 63, 0.12);
  color: #b5e07a;
}

html[data-tema="oscuro"] .historial-toolbar {
  background: linear-gradient(180deg, rgba(26, 54, 39, 0.35), rgba(255, 255, 255, 0));
}

html[data-tema="oscuro"] .historial-filtro {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .historial-filtro:hover {
  border-color: rgba(164, 214, 94, 0.35);
  color: #b5e07a;
}

html[data-tema="oscuro"] .historial-buscar {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .historial-dot {
  border: 2px solid var(--surface-solid);
}

html[data-tema="oscuro"] .historial-card {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .historial-chip {
  color: var(--muted);
}

html[data-tema="oscuro"] .historial-chip-manual {
  color: #93c5fd;
}

html[data-tema="oscuro"] .historial-chip-automatica {
  color: #fcd34d;
}

html[data-tema="oscuro"] .historial-campo {
  color: var(--text);
}

html[data-tema="oscuro"] .historial-antes {
  color: var(--muted);
}

html[data-tema="oscuro"] .historial-despues {
  color: var(--text);
}

html[data-tema="oscuro"] .historial-modal-card {
  border-color: rgba(164, 214, 94, 0.18);
}

html[data-tema="oscuro"] .filters-buscar-block {
  background: linear-gradient(180deg, rgba(26, 54, 39, 0.55), rgba(255, 255, 255, 0));
}

html[data-tema="oscuro"] .filter-chip {
  border: 1px solid rgba(164, 214, 94, 0.22);
  color: #b5e07a;
}

html[data-tema="oscuro"] .btn-secondary {
  background: rgba(141, 198, 63, 0.04);
}

html[data-tema="oscuro"] .btn-secondary:hover {
  background: rgba(141, 198, 63, 0.1);
}

html[data-tema="oscuro"] .btn-ghost:hover {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .btn-danger {
  color: #fca5a5;
}

html[data-tema="oscuro"] .alert-success {
  color: #b5e07a;
}

html[data-tema="oscuro"] .alert-error {
  color: #fca5a5;
}

html[data-tema="oscuro"] .alert-info {
  background: rgba(141, 198, 63, 0.1);
  border: 1px solid rgba(164, 214, 94, 0.24);
  color: #b5e07a;
}

html[data-tema="oscuro"] .data-table-traslados .cell-id {
  color: #b5e07a;
}

html[data-tema="oscuro"] .data-table-traslados tbody tr:nth-child(even) .td-actions,
html[data-tema="oscuro"] .data-table-eliminados tbody tr:nth-child(even) .td-actions {
  background: rgba(26, 54, 39, 0.45);
}

html[data-tema="oscuro"] .data-table-traslados tbody tr:hover .td-actions,
html[data-tema="oscuro"] .data-table-eliminados tbody tr:hover .td-actions {
  background: rgba(141, 198, 63, 0.04);
}

html[data-tema="oscuro"] .cell-date-manana {
  background: rgba(141, 198, 63, 0.1);
  color: #b5e07a;
}

html[data-tema="oscuro"] .agenda-seccion-hoy .agenda-seccion-head {
  background: linear-gradient(180deg, rgba(26, 54, 39, 0.75), rgba(255, 255, 255, 0));
}

html[data-tema="oscuro"] .agenda-seccion-manana .agenda-seccion-head {
  background: linear-gradient(180deg, rgba(141, 198, 63, 0.08), rgba(255, 255, 255, 0));
}

html[data-tema="oscuro"] .data-table th,
html[data-tema="oscuro"] th {
  color: #b5e07a;
}

html[data-tema="oscuro"] .data-table-traslados tbody tr:nth-child(even),
html[data-tema="oscuro"] .data-table-eliminados tbody tr:nth-child(even) {
  background: rgba(26, 54, 39, 0.45);
}

html[data-tema="oscuro"] .data-table-traslados tbody tr:hover,
html[data-tema="oscuro"] .data-table-eliminados tbody tr:hover {
  background: rgba(141, 198, 63, 0.04);
}

html[data-tema="oscuro"] .data-table-eliminados .cell-id {
  color: #b5e07a;
}

html[data-tema="oscuro"] .cell-time {
  background: rgba(141, 198, 63, 0.08);
  color: var(--muted);
}

html[data-tema="oscuro"] .export-pdf-error {
  color: #fca5a5;
}

html[data-tema="oscuro"] .badge-pendiente {
  color: #fcd34d;
}

html[data-tema="oscuro"] .badge-admitido {
  background: rgba(141, 198, 63, 0.16);
  color: #b5e07a;
}

html[data-tema="oscuro"] .badge-en_curso {
  color: #d8b4fe;
}

html[data-tema="oscuro"] .badge-finalizada {
  color: #b5e07a;
}

html[data-tema="oscuro"] .badge-cancelada {
  color: #fca5a5;
}

html[data-tema="oscuro"] .badge-anulada {
  color: #fdba74;
}

html[data-tema="oscuro"] .badge-pdf {
  color: #fca5a5;
}

html[data-tema="oscuro"] .badge-excel {
  color: #b5e07a;
}

html[data-tema="oscuro"] .badge-imagen {
  color: #d8b4fe;
}

html[data-tema="oscuro"] .badge-otro {
  color: var(--muted);
}

html[data-tema="oscuro"] .empty-icon {
  background: rgba(141, 198, 63, 0.04);
}

html[data-tema="oscuro"] .acompaniante-panel {
  border-left: 3px solid rgba(164, 214, 94, 0.45);
}

html[data-tema="oscuro"] input,
html[data-tema="oscuro"] select,
html[data-tema="oscuro"] textarea {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] input:focus,
html[data-tema="oscuro"] select:focus,
html[data-tema="oscuro"] textarea:focus {
  border-color: rgba(164, 214, 94, 0.55);
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .email-body {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .traslado-card-title {
  background: linear-gradient(135deg, rgba(141, 198, 63, 0.18), rgba(141, 198, 63, 0.08));
}

html[data-tema="oscuro"] .traslado-entry-header {
  background: linear-gradient(135deg, rgba(141, 198, 63, 0.12), rgba(141, 198, 63, 0.05));
}

html[data-tema="oscuro"] .bulk-duplicar {
  background: rgba(18, 36, 26, 0.82);
}

html[data-tema="oscuro"] .bulk-duplicar-option {
  border: 1px solid var(--border-strong, rgba(164, 214, 94, 0.22));
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .section-heading::before {
  border: 1px solid rgba(164, 214, 94, 0.22);
  color: #b5e07a;
}

html[data-tema="oscuro"] .home-card:hover {
  border-color: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] .home-card-icon {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .home-card-accent {
  background: linear-gradient(180deg, rgba(141, 198, 63, 0.08), rgba(255, 255, 255, 0.02));
  border-color: rgba(164, 214, 94, 0.22);
}

html[data-tema="oscuro"] .home-card-accent .home-card-icon {
  background: rgba(141, 198, 63, 0.12);
  border-color: rgba(164, 214, 94, 0.22);
}

html[data-tema="oscuro"] .home-alert-item {
  border-bottom: 1px solid rgba(164, 214, 94, 0.08);
}

html[data-tema="oscuro"] .home-bandejas-hint {
  border-color: rgba(164, 214, 94, 0.22);
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .home-bandejas-hint-text {
  color: var(--muted);
}

html[data-tema="oscuro"] .home-stat-hoy {
  background: linear-gradient(180deg, rgba(56, 132, 255, 0.1), rgba(26, 54, 39, 0.8));
}

html[data-tema="oscuro"] .home-stat-hoy .home-stat-count {
  color: #93c5fd;
}

html[data-tema="oscuro"] .home-stat-agenda-row + .home-stat-agenda-row {
  border-top: 1px solid rgba(164, 214, 94, 0.12);
}

html[data-tema="oscuro"] .home-stat-agenda-row-manana .home-stat-count {
  color: #b5e07a;
}

html[data-tema="oscuro"] .home-stat-card {
  border: 1px solid rgba(164, 214, 94, 0.14);
  background: rgba(26, 54, 39, 0.8);
}

html[data-tema="oscuro"] .home-stat-card:hover {
  border-color: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] .home-stat-pendiente {
  background: linear-gradient(180deg, rgba(250, 204, 21, 0.08), rgba(26, 54, 39, 0.8));
}

html[data-tema="oscuro"] .home-stat-rechazada {
  background: linear-gradient(180deg, rgba(153, 27, 27, 0.08), rgba(26, 54, 39, 0.8));
}

html[data-tema="oscuro"] .home-stat-unit {
  color: #b5e07a;
}

html[data-tema="oscuro"] .estado-cambio-menu {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .estado-cambio-option:hover:not(:disabled),
html[data-tema="oscuro"] .estado-cambio-option:focus-visible:not(:disabled) {
  background: rgba(141, 198, 63, 0.08);
}

html[data-tema="oscuro"] .home-stat-admitido,
html[data-tema="oscuro"] .home-stat-confirmado {
  border-color: rgba(164, 214, 94, 0.35);
  background: linear-gradient(180deg, rgba(141, 198, 63, 0.08), rgba(26, 54, 39, 0.8));
}

html[data-tema="oscuro"] .estado-admitido {
  background: rgba(141, 198, 63, 0.15);
}

html[data-tema="oscuro"] .estado-cancelada {
  color: #fca5a5;
}

html[data-tema="oscuro"] .estado-rechazada {
  color: #fca5a5;
}

html[data-tema="oscuro"] .estado-anulada {
  color: #fdba74;
}

html[data-tema="oscuro"] .estado-anulacion-pendiente {
  color: #fcd34d;
}

html[data-tema="oscuro"] .filter-chip-rechazada {
  color: #fca5a5;
}

html[data-tema="oscuro"] .filter-chip-cancelada {
  color: #fca5a5;
}

html[data-tema="oscuro"] .sync-live {
  color: #b5e07a;
}

@media (max-width: 959px) {
  html[data-tema="oscuro"] .app-nav-right {
    background: rgba(18, 36, 26, 0.98);
  }
}

html[data-tema="oscuro"] .sync-toast {
  border: 1px solid rgba(164, 214, 94, 0.18);
  background: rgba(18, 36, 26, 0.98);
}

html[data-tema="oscuro"] .sync-toast-quiet {
  border-color: rgba(164, 214, 94, 0.12);
}

html[data-tema="oscuro"] .sync-toast-title {
  color: #b5e07a;
}

html[data-tema="oscuro"] .sync-toast-error {
  background: rgba(248, 113, 113, 0.12);
}

html[data-tema="oscuro"] .sync-toast-error .sync-toast-title {
  color: #fca5a5;
}

html[data-tema="oscuro"] .btn-swap-ubicacion {
  color: #b5e07a;
}

html[data-tema="oscuro"] .btn-swap-ubicacion:hover {
  border-color: rgba(164, 214, 94, 0.35);
}

html[data-tema="oscuro"] .admin-summary-chip {
  background: rgba(18, 36, 26, 0.78);
}

html[data-tema="oscuro"] .admin-summary-chip.is-ok .admin-summary-value {
  color: #b5e07a;
}

html[data-tema="oscuro"] .admin-summary-chip.is-warn .admin-summary-value {
  color: #fcd34d;
}

html[data-tema="oscuro"] .config-pulse {
  background: linear-gradient(135deg, rgba(18, 36, 26, 0.92), rgba(26, 54, 39, 0.55));
}

html[data-tema="oscuro"] .config-pulse-item {
  background: rgba(18, 36, 26, 0.55);
}

html[data-tema="oscuro"] .config-pulse-item.is-calm .config-pulse-value {
  color: #b5e07a;
}

html[data-tema="oscuro"] .config-pulse-item.is-attention .config-pulse-value {
  color: #fcd34d;
}

html[data-tema="oscuro"] .config-card {
  background: linear-gradient(180deg, var(--surface-solid) 0%, rgba(17, 36, 26, 0.65) 100%);
}

html[data-tema="oscuro"] a.config-card:hover {
  border-color: rgba(164, 214, 94, 0.32);
}

html[data-tema="oscuro"] .config-card-badge {
  color: var(--muted);
}

html[data-tema="oscuro"] .config-subnav-track {
  background: rgba(18, 36, 26, 0.82);
}

html[data-tema="oscuro"] .config-subnav-link:hover {
  color: #b5e07a;
}

html[data-tema="oscuro"] .configuraciones-page .config-panel.card.panel {
  background: linear-gradient(180deg, rgba(18, 36, 26, 0.98) 0%, rgba(17, 36, 26, 0.55) 100%);
}

html[data-tema="oscuro"] .configuraciones-page .config-panel > .panel-head {
  border-bottom: 1px solid rgba(164, 214, 94, 0.08);
  background: linear-gradient(90deg, rgba(26, 54, 39, 0.55), transparent 70%);
}

html[data-tema="oscuro"] .config-callout {
  border: 1px solid rgba(164, 214, 94, 0.14);
  background: rgba(26, 54, 39, 0.45);
}

html[data-tema="oscuro"] .catalogo-item-base {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .base-map-pin span {
  border: 2px solid var(--surface-solid);
}

html[data-tema="oscuro"] .catalogo-input,
html[data-tema="oscuro"] .catalogo-select {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .permisos-si {
  color: #b5e07a;
}

html[data-tema="oscuro"] .permisos-celda.is-ok {
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .usuarios-alta-grid input,
html[data-tema="oscuro"] .usuarios-alta-grid select {
  background: rgba(18, 36, 26, 0.72);
}

html[data-tema="oscuro"] .usuarios-alta-grid input:focus,
html[data-tema="oscuro"] .usuarios-alta-grid select:focus {
  border-color: rgba(164, 214, 94, 0.45);
}

html[data-tema="oscuro"] .perfil-clave-block {
  border-top: 1px solid rgba(164, 214, 94, 0.12);
}

html[data-tema="oscuro"] .perfil-foto-preview {
  border: 1px solid rgba(164, 214, 94, 0.18);
  background: rgba(141, 198, 63, 0.06);
}

html[data-tema="oscuro"] .usuario-sistema {
  background: rgba(141, 198, 63, 0.1);
}

html[data-tema="oscuro"] .usuario-rol-global {
  background: rgba(141, 198, 63, 0.14);
  color: #b5e07a;
}

html[data-tema="oscuro"] .usuario-rol-administrador {
  color: #93c5fd;
}

html[data-tema="oscuro"] .usuario-rol-usuario {
  color: #fcd34d;
}

html[data-tema="oscuro"] .usuario-rol-observador {
  color: var(--muted);
}

html[data-tema="oscuro"] .usuario-estado-badge.is-activo {
  color: #b5e07a;
}

html[data-tema="oscuro"] .usuario-estado-badge.is-inactivo {
  color: #fca5a5;
}

html[data-tema="oscuro"] .usuario-editar-datos {
  background: rgba(18, 36, 26, 0.55);
}

html[data-tema="oscuro"] .usuario-editar-grid input,
html[data-tema="oscuro"] .usuario-editar-grid select {
  background: rgba(18, 36, 26, 0.9);
}

html[data-tema="oscuro"] .usuario-clave-form input {
  background: rgba(18, 36, 26, 0.8);
}

html[data-tema="oscuro"] .facturacion-tab {
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .facturacion-tab.is-active .facturacion-tab-count {
  background: rgba(18, 36, 26, 0.18);
}

html[data-tema="oscuro"] .facturacion-ficha-msg {
  color: #fcd34d;
}

html[data-tema="oscuro"] .tarifas-ambito-badge {
  color: var(--text);
}

html[data-tema="oscuro"] .tarifas-ambito-urbano {
  color: #b5e07a;
}

html[data-tema="oscuro"] .tarifas-ambito-inter {
  color: #93c5fd;
}

html[data-tema="oscuro"] .home-card-badge,
html[data-tema="oscuro"] .nav-badge-soon {
  color: #fcd34d;
  background: rgba(252, 211, 77, 0.14);
}

html[data-tema="oscuro"] .facturacion-en-construccion-badge {
  color: #fcd34d;
  background: rgba(252, 211, 77, 0.14);
}

html[data-tema="oscuro"] .filters-collapse-badge {
  color: #b5e07a;
  background: rgba(141, 198, 63, 0.12);
}

@media (max-width: 720px) {
  html[data-tema="oscuro"] .traslado-actions,
  html[data-tema="oscuro"] .traslado-actions-form {
    background: linear-gradient(180deg, rgba(17, 36, 26, 0.2), rgba(17, 36, 26, 0.96) 28%);
  }
}

@media (max-width: 720px) {
  html[data-tema="oscuro"] .mobile-bottom-nav {
    background: rgba(18, 36, 26, 0.96);
  }
}

@media (max-width: 720px) {
  html[data-tema="oscuro"] .mobile-bottom-link.is-active {
    color: #b5e07a;
    background: rgba(141, 198, 63, 0.09);
  }
}

@media (min-width: 961px) {
  html[data-tema="oscuro"] .filters-buscar-block {
    background: rgba(26, 54, 39, 0.28);
  }
}

@media (min-width: 961px) {
  html[data-tema="oscuro"] .data-table tbody tr:hover td {
    background: rgba(141, 198, 63, 0.035);
  }
}

html[data-tema="oscuro"] .push-alerts-panel {
  border-color: var(--border-strong);
  background: var(--surface-solid);
}

html[data-tema="oscuro"] .push-alerts-title {
  color: var(--text);
}

html[data-tema="oscuro"] .push-alerts-status {
  color: var(--muted);
}

html[data-tema="oscuro"] .push-alerts-status.is-on {
  color: #b5e07a;
}

html[data-tema="oscuro"] .ilus-cuerpo,
html[data-tema="oscuro"] .ilus-hoja {
  fill: #1d3a2b;
}

html[data-tema="oscuro"] .aviso-flotante {
  border: 1px solid rgba(164, 214, 94, 0.18);
  background: rgba(18, 36, 26, 0.98);
}

html[data-tema="oscuro"] .app-nav-user-toggle.app-nav-user-chip {
  background: rgba(18, 36, 26, 0.7);
}

html[data-tema="oscuro"] .hoy-banner-stat {
  border: 1px solid var(--surface-solid);
}

html[data-tema="oscuro"] .dia-nav {
  border-top: 1px solid var(--surface-solid);
}

html[data-tema="oscuro"] .dia-nav-btn {
  border: 1px solid var(--surface-solid);
}

html[data-tema="oscuro"] .dia-nav-btn:hover {
  background: rgba(18, 36, 26, 0.18);
}

html[data-tema="oscuro"] .dia-nav-actual {
  background: rgba(18, 36, 26, 0.12);
}
/* === FIN GENERADO === */
