/*
 * Superficies oscuras para los módulos de Indicadores e Inventario.
 * La clase page-route se asigna en vistas/plantilla.php para no afectar
 * formularios, modales ni páginas ajenas a estos reportes.
 */
.dark-style {
  --indicator-surface: #273247;
  --indicator-surface-raised: #303d55;
  --indicator-surface-subtle: #202a3a;
  --indicator-border: #3d4c68;
  --indicator-border-subtle: #34425b;
  --indicator-text: #edf3fc;
  --indicator-muted: #aebcd4;
}

/* Encabezados, filtros, KPI y tablas de Inventario. */
.dark-style .page-route-inventario .inventory-module-header {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .page-route-inventario .inventory-module-header .text-muted,
.dark-style .page-route-inventario .inventory-module-header-icon,
.dark-style .page-route-inventario #tablaIngrediente thead th {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario .inventory-module-header-icon {
  background: var(--indicator-surface-raised);
  border-color: #4a5d7e;
}

.dark-style .page-route-inventario .inventory-filter-panel > .card,
.dark-style .page-route-inventario .inventory-kpi-row .card,
.dark-style .page-route-inventario .inventory-list-card,
.dark-style .page-route-inventario .inventory-list-toolbar {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario .inventory-filter-panel .bootstrap-select > .dropdown-toggle,
.dark-style .page-route-inventario .inventory-filter-panel .form-control,
.dark-style .page-route-inventario .inventory-filter-panel .form-select {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario #tablaIngrediente thead th,
.dark-style .page-route-inventario #tablaIngrediente tr.group td {
  background: #303d55 !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-inventario #tablaIngrediente tbody td {
  border-color: var(--indicator-border-subtle);
}

.dark-style .page-route-inventario #tablaIngrediente tbody tr:hover td {
  background: #303d55 !important;
}

/* Recetas asociadas a un ingrediente en todos los almacenes del local. */
.dark-style .page-route-inventario-recetas .ingredient-recipes-header {
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-icon {
  background: var(--indicator-surface-raised) !important;
  color: #8cb6ff !important;
}

.dark-style .page-route-inventario-recetas #inventoryRecipeIngredientName,
.dark-style .page-route-inventario-recetas .ingredient-recipes-card h5 {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-header .text-muted,
.dark-style .page-route-inventario-recetas .ingredient-recipes-card .text-muted {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-card,
.dark-style .page-route-inventario-recetas .ingredient-recipes-card .table-responsive {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-card .card-header {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-inventario-recetas #inventoryRecipeSearch {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-recetas #inventoryRecipeSearch::placeholder {
  color: var(--indicator-muted) !important;
  opacity: 1;
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-table {
  --bs-table-bg: var(--indicator-surface);
  --bs-table-color: var(--indicator-text);
  --bs-table-border-color: var(--indicator-border);
  --bs-table-hover-bg: var(--indicator-surface-raised);
  --bs-table-hover-color: var(--indicator-text);
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-table thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-table thead .ingredient-recipes-group th {
  background: var(--indicator-surface-subtle) !important;
  color: #b9cff4 !important;
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-table tbody td {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border-subtle) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-recetas .ingredient-recipes-table tbody tr:hover td {
  background: var(--indicator-surface-raised) !important;
}

/* Registro y edición de productos. */
.dark-style .page-route-producto-registro .product-page,
.dark-style .page-route-producto-edicion .product-page {
  --product-border: var(--indicator-border);
  --product-muted: var(--indicator-muted);
  --product-text: var(--indicator-text);
  --product-soft: var(--indicator-surface-subtle);
  color: var(--indicator-text);
}

.dark-style .page-route-producto-registro .product-page .card,
.dark-style .page-route-producto-edicion .product-page .card,
.dark-style .page-route-producto-registro .product-page .virtual-store-panel,
.dark-style .page-route-producto-edicion .product-page .virtual-store-panel,
.dark-style .page-route-producto-registro .product-page .modifier-assignment-card,
.dark-style .page-route-producto-edicion .product-page .modifier-assignment-card,
.dark-style .page-route-producto-registro .product-page .modifier-preview-card,
.dark-style .page-route-producto-edicion .product-page .modifier-preview-card,
.dark-style .page-route-producto-registro .product-page .variant-axis-row,
.dark-style .page-route-producto-edicion .product-page .variant-axis-row,
.dark-style .page-route-producto-registro .product-page .variant-combination-row,
.dark-style .page-route-producto-edicion .product-page .variant-combination-row {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .card-header,
.dark-style .page-route-producto-edicion .product-page .card-header,
.dark-style .page-route-producto-registro .product-page .border-bottom,
.dark-style .page-route-producto-edicion .product-page .border-bottom {
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-producto-registro .product-page h4,
.dark-style .page-route-producto-edicion .product-page h4,
.dark-style .page-route-producto-registro .product-page h5,
.dark-style .page-route-producto-edicion .product-page h5,
.dark-style .page-route-producto-registro .product-page h6,
.dark-style .page-route-producto-edicion .product-page h6,
.dark-style .page-route-producto-registro .product-page .form-label,
.dark-style .page-route-producto-edicion .product-page .form-label,
.dark-style .page-route-producto-registro .product-page .switch-label,
.dark-style .page-route-producto-edicion .product-page .switch-label {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .text-muted,
.dark-style .page-route-producto-edicion .product-page .text-muted,
.dark-style .page-route-producto-registro .product-page .modifier-pill,
.dark-style .page-route-producto-edicion .product-page .modifier-pill,
.dark-style .page-route-producto-registro .product-page .virtual-image-empty,
.dark-style .page-route-producto-edicion .product-page .virtual-image-empty {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-producto-registro .product-page .form-control,
.dark-style .page-route-producto-edicion .product-page .form-control,
.dark-style .page-route-producto-registro .product-page .bootstrap-select > .dropdown-toggle,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select > .dropdown-toggle,
.dark-style .page-route-producto-registro .product-page .input-group-text,
.dark-style .page-route-producto-edicion .product-page .input-group-text {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .form-control::placeholder,
.dark-style .page-route-producto-edicion .product-page .form-control::placeholder,
.dark-style .page-route-producto-registro .product-page .bootstrap-select .filter-option-inner-inner,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select .filter-option-inner-inner {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-producto-registro .product-page .product-preview,
.dark-style .page-route-producto-edicion .product-page .product-preview,
.dark-style .page-route-producto-registro .product-page .virtual-image-item,
.dark-style .page-route-producto-edicion .product-page .virtual-image-item,
.dark-style .page-route-producto-registro .product-page .virtual-image-empty,
.dark-style .page-route-producto-edicion .product-page .virtual-image-empty {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-producto-registro .product-page .modifier-pill,
.dark-style .page-route-producto-edicion .product-page .modifier-pill {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-producto-registro .product-page .variant-combination-head,
.dark-style .page-route-producto-edicion .product-page .variant-combination-head {
  background: #344461 !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .alert-secondary,
.dark-style .page-route-producto-edicion .product-page .alert-secondary {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-producto-registro .product-page .bg-light,
.dark-style .page-route-producto-edicion .product-page .bg-light,
.dark-style .page-route-producto-registro .product-page .bg-white,
.dark-style .page-route-producto-edicion .product-page .bg-white {
  background: var(--indicator-surface-subtle) !important;
}

.dark-style .page-route-producto-registro .product-page .bootstrap-select .dropdown-menu,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select .dropdown-menu {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-producto-registro .product-page .bootstrap-select .dropdown-item,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select .dropdown-item {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .bootstrap-select .dropdown-item:hover,
.dark-style .page-route-producto-registro .product-page .bootstrap-select .dropdown-item:focus,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select .dropdown-item:hover,
.dark-style .page-route-producto-edicion .product-page .bootstrap-select .dropdown-item:focus {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-producto-registro .product-page .tagify,
.dark-style .page-route-producto-edicion .product-page .tagify {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page .tagify__tag > div,
.dark-style .page-route-producto-edicion .product-page .tagify__tag > div {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-producto-registro .product-page input[type="file"]::file-selector-button,
.dark-style .page-route-producto-edicion .product-page input[type="file"]::file-selector-button {
  background: var(--indicator-surface-raised);
  border-color: var(--indicator-border);
  color: var(--indicator-text);
}

/* Estadisticas por ingrediente. */
.dark-style .page-route-inventario-estadisticas .inventory-statistics-shell,
.dark-style .page-route-inventario-estadisticas .inventory-statistics-card,
.dark-style .page-route-inventario-estadisticas .inventory-statistics-chart-card,
.dark-style .page-route-inventario-estadisticas .inventory-statistics-chart {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas .inventory-statistics-body {
  background: var(--indicator-surface-subtle) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas #inventoryStatisticsRecipesTable {
  --bs-table-bg: var(--indicator-surface);
  --bs-table-color: var(--indicator-text);
  --bs-table-border-color: var(--indicator-border-subtle);
  --bs-table-hover-bg: var(--indicator-surface-raised);
  --bs-table-hover-color: var(--indicator-text);
  background: var(--indicator-surface) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas #inventoryStatisticsRecipesTable thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas #inventoryStatisticsRecipesTable tbody td {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border-subtle) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas #inventoryStatisticsRecipesTable tbody tr:hover td {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-inventario-estadisticas #inventoryStatisticsRecipesTable tbody td.text-muted {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-estadisticas .inventory-statistics-chart-header {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-inventario-estadisticas .inventory-statistics-chart-header .card-title,
.dark-style .page-route-inventario-estadisticas #label_item,
.dark-style .page-route-inventario-estadisticas #total_consume,
.dark-style .page-route-inventario-estadisticas #consume_per_day,
.dark-style .page-route-inventario-estadisticas #recipe_asociated {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-estadisticas .inventory-statistics-kpi .card-body > span,
.dark-style .page-route-inventario-estadisticas .apexcharts-legend-text {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-estadisticas .inventory-statistics-card {
  box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.2);
}

.dark-style .page-route-inventario-estadisticas .apexcharts-text,
.dark-style .page-route-inventario-estadisticas .apexcharts-xaxis-label,
.dark-style .page-route-inventario-estadisticas .apexcharts-yaxis-label,
.dark-style .page-route-inventario-estadisticas .apexcharts-title-text {
  fill: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-estadisticas .apexcharts-gridline,
.dark-style .page-route-inventario-estadisticas .apexcharts-xaxis line,
.dark-style .page-route-inventario-estadisticas .apexcharts-yaxis line {
  stroke: var(--indicator-border) !important;
}

.dark-style .page-route-inventario-estadisticas .apexcharts-tooltip,
.dark-style .page-route-inventario-estadisticas .apexcharts-tooltip-title {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

html.dark-style body.page-route-inventario-estadisticas .daterangepicker,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker .calendar-table,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker .ranges,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker .drp-buttons {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

html.dark-style body.page-route-inventario-estadisticas .daterangepicker .ranges li,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker th,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker td,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker select,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker .drp-selected {
  color: var(--indicator-text) !important;
}

html.dark-style body.page-route-inventario-estadisticas .daterangepicker .ranges li:hover,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker .ranges li.active,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker td.available:hover,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker th.available:hover {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-text) !important;
}

html.dark-style body.page-route-inventario-estadisticas .daterangepicker td.off,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker td.disabled,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker option.disabled {
  background: var(--indicator-surface-subtle) !important;
  color: var(--indicator-muted) !important;
}

html.dark-style body.page-route-inventario-estadisticas .daterangepicker::before,
html.dark-style body.page-route-inventario-estadisticas .daterangepicker::after {
  border-bottom-color: var(--indicator-surface) !important;
}

/* Paneles modernos de Resumen financiero y Ventas por área. */
.dark-style .financial-dashboard,
.dark-style .sales-area-dashboard {
  color: var(--indicator-text);
}

.dark-style .financial-hero,
.dark-style .sales-area-hero {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .financial-hero .text-muted,
.dark-style .sales-area-hero .text-muted,
.dark-style .financial-kpi-label,
.dark-style .financial-kpi-note,
.dark-style .sales-area-kpi-label,
.dark-style .sales-area-kpi-note,
.dark-style .financial-group-label,
.dark-style .sales-area-empty {
  color: var(--indicator-muted) !important;
}

.dark-style .financial-hero-icon,
.dark-style .sales-area-hero-icon {
  color: #79dcb2;
  background: #24463e;
  border-color: #3a6a5d;
}

.dark-style .financial-kpi-card,
.dark-style .financial-panel,
.dark-style .sales-area-panel,
.dark-style .sales-area-kpi,
.dark-style .sales-area-filter,
.dark-style .sales-area-table-wrap {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .financial-balance-card {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #303d55 0%, #273247 100%);
}

.dark-style .financial-line-item,
.dark-style .financial-empty {
  background: var(--indicator-surface-subtle);
  border-color: var(--indicator-border);
}

.dark-style .financial-line-name,
.dark-style .financial-line-amount,
.dark-style .financial-section-title h5,
.dark-style .sales-area-kpi-value,
.dark-style .sales-area-panel-title,
.dark-style .sales-area-ranking-name,
.dark-style .sales-area-ranking-value {
  color: var(--indicator-text);
}

.dark-style .financial-composition,
.dark-style .financial-line-track,
.dark-style .sales-area-ranking-track {
  background: #1d2635;
}

.dark-style .sales-area-table thead th {
  background: #303d55;
  color: var(--indicator-muted);
  border-color: var(--indicator-border);
}

/* Comparativa por fechas. */
.dark-style .page-route-reporte-ventas-fechas .date-report-card,
.dark-style .page-route-reporte-ventas-fechas .date-report-section,
.dark-style .page-route-reporte-ventas-fechas .date-filter-panel > .card,
.dark-style .page-route-reporte-ventas-fechas .date-kpi-card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-reporte-ventas-fechas .date-report-hero {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .page-route-reporte-ventas-fechas .date-report-hero .text-muted,
.dark-style .page-route-reporte-ventas-fechas .date-range-eyebrow,
.dark-style .page-route-reporte-ventas-fechas #products_sales .header-row {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-ventas-fechas .date-report-hero .avatar {
  background: #24463e !important;
  border-color: #3a6a5d;
}

.dark-style .page-route-reporte-ventas-fechas .date-report-hero .avatar-initial,
.dark-style .page-route-reporte-ventas-fechas .date-range-value,
.dark-style .page-route-reporte-ventas-fechas .date-section-title,
.dark-style .page-route-reporte-ventas-fechas #products_sales .product-row {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-ventas-fechas .date-mode-switch,
.dark-style .page-route-reporte-ventas-fechas .date-range-picker-btn,
.dark-style .page-route-reporte-ventas-fechas .date-month-input {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-ventas-fechas .preloader {
  background: rgb(39 50 71 / 88%);
}

/* Mi día: este bloque también anula los blancos con !important del CSS histórico. */
.dark-style .page-route-reporte-mi-dia #content-wrapper {
  --rmd-text: var(--indicator-text);
  --rmd-muted: var(--indicator-muted);
  --rmd-border: var(--indicator-border);
  --rmd-surface: var(--indicator-surface);
  --rmd-subtle: var(--indicator-surface-subtle);
  color: var(--indicator-text);
}

.dark-style .page-route-reporte-mi-dia #content-wrapper .card-body-principal,
.dark-style .page-route-reporte-mi-dia #content-wrapper .card:not(.modal-content),
.dark-style .page-route-reporte-mi-dia #content-wrapper .card-header,
.dark-style .page-route-reporte-mi-dia #content-wrapper .card-footer,
.dark-style .page-route-reporte-mi-dia #content-wrapper .report-kpi-card,
.dark-style .page-route-reporte-mi-dia #content-wrapper #otros_ingresos,
.dark-style .page-route-reporte-mi-dia #content-wrapper #otros_egresos,
.dark-style .page-route-reporte-mi-dia #content-wrapper #otros_descuentos,
.dark-style .page-route-reporte-mi-dia #content-wrapper #otros_productos_eliminados,
.dark-style .page-route-reporte-mi-dia #content-wrapper .status-card,
.dark-style .page-route-reporte-mi-dia #content-wrapper .order-status-tab {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-reporte-mi-dia #content-wrapper .status-card.occupied {
  background: #3b2d3b !important;
}

.dark-style .page-route-reporte-mi-dia #content-wrapper .order-status-tab:hover,
.dark-style .page-route-reporte-mi-dia #content-wrapper .order-status-tab.active,
.dark-style .page-route-reporte-mi-dia #content-wrapper .report-icon-button,
.dark-style .page-route-reporte-mi-dia #content-wrapper .tabulator .tabulator-header {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-reporte-mi-dia #content-wrapper #daterange-btn {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-mi-dia #content-wrapper .chart-preloader {
  background: rgb(39 50 71 / 88%) !important;
}

.dark-style .page-route-reporte-mi-dia #content-wrapper .donut-chart::before,
.dark-style .page-route-reporte-mi-dia #content-wrapper .card-gauge {
  background: var(--indicator-surface) !important;
}

/* Indicadores históricos: tiempo, comparativas semanal/mensual y pedidos/caja. */
.dark-style .page-route-reporte-indicadores-tiempo .card-primary > .card-body,
.dark-style .page-route-reporte-ventas-semanales .card-primary > .card-body,
.dark-style .page-route-reporte-ventas-mensual .card-primary > .card-body,
.dark-style .page-route-resumen-sesion-caja .card,
.dark-style .page-route-reporte-pedidos-general .card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-reporte-indicadores-tiempo .card-primary .card,
.dark-style .page-route-reporte-ventas-semanales .card-primary .card,
.dark-style .page-route-reporte-ventas-mensual .card-primary .card,
.dark-style .page-route-reporte-pedidos-general #indicadores-pedidos .card {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-reporte-indicadores-tiempo .table,
.dark-style .page-route-reporte-ventas-semanales .table,
.dark-style .page-route-reporte-ventas-mensual .table,
.dark-style .page-route-resumen-sesion-caja .table,
.dark-style .page-route-reporte-pedidos-general .table {
  --bs-table-bg: var(--indicator-surface);
  --bs-table-color: var(--indicator-text);
  --bs-table-border-color: var(--indicator-border);
  --bs-table-hover-bg: var(--indicator-surface-raised);
  --bs-table-hover-color: var(--indicator-text);
}

.dark-style .page-route-reporte-indicadores-tiempo .dataTables_scrollBody::-webkit-scrollbar-track,
.dark-style .page-route-reporte-ventas-semanales .dataTables_scrollBody::-webkit-scrollbar-track,
.dark-style .page-route-reporte-ventas-mensual .dataTables_scrollBody::-webkit-scrollbar-track,
.dark-style .page-route-reporte-indicadores-tiempo .listado::-webkit-scrollbar-track,
.dark-style .page-route-reporte-ventas-semanales .listado::-webkit-scrollbar-track,
.dark-style .page-route-reporte-ventas-mensual .listado::-webkit-scrollbar-track {
  background: #1d2635;
}

.dark-style .page-route-reporte-indicadores-tiempo .chart-loader,
.dark-style .page-route-reporte-ventas-semanales .chart-loader,
.dark-style .page-route-reporte-ventas-mensual .chart-loader {
  background: rgb(39 50 71 / 86%) !important;
}

/* Controles reutilizados por todos los reportes anteriores. */
.dark-style .page-route-inventario .dropdown-menu,
.dark-style .page-route-reporte-ventas-fechas .dropdown-menu,
.dark-style .page-route-reporte-mi-dia .dropdown-menu,
.dark-style .page-route-reporte-indicadores-tiempo .dropdown-menu,
.dark-style .page-route-reporte-ventas-semanales .dropdown-menu,
.dark-style .page-route-reporte-ventas-mensual .dropdown-menu,
.dark-style .page-route-resumen-financiero .dropdown-menu,
.dark-style .page-route-reporte-ventas-area .dropdown-menu {
  background: var(--indicator-surface);
  border-color: var(--indicator-border);
}

/* Vinculación de inventario y su importación Excel. */
.dark-style .page-route-inventario-vinculacion .inventory-match-panel,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-panel,
.dark-style .page-route-inventario-vinculacion-importacion .card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-vinculacion .inventory-match-panel .form-label,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-panel .form-label,
.dark-style .page-route-inventario-vinculacion .inventory-match-summary .summary-label,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-summary .summary-label {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-vinculacion .inventory-match-summary .summary-box,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-summary .summary-box {
  background: var(--indicator-surface-raised);
  border-color: var(--indicator-border);
}

.dark-style .page-route-inventario-vinculacion .inventory-match-summary .summary-value,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-summary .summary-value {
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-vinculacion .inventory-match-table th,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-table th {
  background: var(--indicator-surface-raised);
  border-color: var(--indicator-border);
  color: var(--indicator-muted);
}

.dark-style .page-route-inventario-vinculacion .inventory-match-table td,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-table td {
  border-color: var(--indicator-border-subtle);
}

.dark-style .page-route-inventario-vinculacion .inventory-match-table tbody tr:hover,
.dark-style .page-route-inventario-vinculacion-importacion .inventory-match-table tbody tr:hover {
  background: var(--indicator-surface-raised);
}

.dark-style .page-route-inventario-vinculacion-importacion #example-table,
.dark-style .page-route-inventario-vinculacion-importacion .table-toolbar,
.dark-style .page-route-inventario-vinculacion-importacion .tabulator,
.dark-style .page-route-inventario-vinculacion-importacion .tabulator-row,
.dark-style .page-route-inventario-vinculacion-importacion .tabulator-row.tabulator-row-even {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-vinculacion-importacion .tabulator .tabulator-header,
.dark-style .page-route-inventario-vinculacion-importacion .tabulator .tabulator-header .tabulator-col {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-vinculacion-importacion .tabulator-cell {
  border-color: var(--indicator-border-subtle) !important;
}

.dark-style .page-route-inventario-vinculacion-importacion .tabulator-row:hover {
  background: #354563 !important;
}

.dark-style .page-route-inventario-vinculacion-importacion .tabulator-validation-fail,
.dark-style .page-route-inventario-vinculacion-importacion .tabulator .tabulator-cell.tabulator-validation-fail {
  background: #4b2834 !important;
  border-color: #b44a67 !important;
  color: #ffd8e2 !important;
}

.dark-style .page-route-inventario-vinculacion-importacion .table-toolbar .status,
.dark-style .page-route-inventario-vinculacion-importacion .table-toolbar .hint {
  color: var(--indicator-muted);
}

/* Recetas de productos y preparación de recetas. */
.dark-style .page-route-receta-productos .recipe-report-header,
.dark-style .page-route-inventario-preparacion-receta .preparation-report-header {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .page-route-receta-productos .recipe-report-header .text-muted,
.dark-style .page-route-inventario-preparacion-receta .preparation-report-header .text-muted,
.dark-style .page-route-receta-productos .recipe-flow-item small,
.dark-style .page-route-inventario-preparacion-receta .preparation-flow-item small,
.dark-style .page-route-inventario-preparacion-receta .preparation-section-title small,
.dark-style .page-route-inventario-preparacion-receta .recipe-mobile-label,
.dark-style .page-route-inventario-preparacion-receta .recipe-cost-line {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-receta-productos .recipe-report-header-icon,
.dark-style .page-route-inventario-preparacion-receta .preparation-report-header-icon {
  color: #8cb6ff;
  background: var(--indicator-surface-raised);
  border-color: #4a5d7e;
}

.dark-style .page-route-receta-productos .recipe-flow-surface,
.dark-style .page-route-receta-productos .recipe-form-card,
.dark-style .page-route-receta-productos .recipe-metric,
.dark-style .page-route-inventario-preparacion-receta .preparation-flow-panel .card,
.dark-style .page-route-inventario-preparacion-receta .preparation-form-card,
.dark-style .page-route-inventario-preparacion-receta .preparation-movement-card,
.dark-style .page-route-inventario-preparacion-receta .recipe-row,
.dark-style .page-route-inventario-preparacion-receta .preparation-cost-preview,
.dark-style .page-route-inventario-preparacion-receta .preparation-modal-footer {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-receta-productos .recipe-form-card .card-header,
.dark-style .page-route-inventario-preparacion-receta .preparation-form-card .card-header,
.dark-style .page-route-inventario-preparacion-receta .preparation-movement-card .card-header {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-receta-productos .recipe-detail-icon,
.dark-style .page-route-inventario-preparacion-receta .preparation-modal-icon {
  background: var(--indicator-surface-raised);
}

.dark-style .page-route-receta-productos .receta-table-container thead th,
.dark-style .page-route-receta-productos .recipe-detail-table thead th,
.dark-style .page-route-receta-productos .table thead th,
.dark-style .page-route-inventario-preparacion-receta #tablaPreparacion thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

/* El modulo define su tfoot y producto con colores claros para el tema normal. */
.dark-style .page-route-receta-productos #tablaReceta tfoot th,
.dark-style .page-route-receta-productos #tablaReceta tfoot td {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  box-shadow: inset 0 1px 0 var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-receta-productos #tablaReceta .recipe-product-cell,
.dark-style .page-route-receta-productos #tablaReceta .recipe-product-cell a {
  color: #c6dcff !important;
  font-weight: 700;
}

.dark-style .page-route-receta-productos-costos .page-recipe-costing .card,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing .card,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing .additional-row {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-receta-productos-costos .page-recipe-costing .card-header,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing .card-header,
.dark-style .page-route-receta-productos-costos .page-recipe-costing thead th,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-receta-productos-costos .page-recipe-costing tbody td,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing tbody td {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border-subtle) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-receta-productos-costos .page-recipe-costing .form-control,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing .form-control,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing .form-select {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-receta-productos-costos .page-recipe-costing h4,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing h4,
.dark-style .page-route-receta-productos-costos-calculadora .page-recipe-costing h5 {
  color: var(--indicator-text);
}

.dark-style .page-route-receta-productos .recipe-items-table tbody tr:hover td,
.dark-style .page-route-receta-productos .recipe-detail-table tbody tr:hover td,
.dark-style .page-route-inventario-preparacion-receta #tablaPreparacion tbody tr:hover td,
.dark-style .page-route-inventario-preparacion-receta .recipe-row:hover {
  background: #354563 !important;
}

.dark-style .page-route-inventario-preparacion-receta #lista_preparacion,
.dark-style .page-route-inventario-preparacion-receta #er_lista_preparacion {
  background: linear-gradient(90deg, rgb(57 218 138 / 12%), var(--indicator-surface) 42%);
}

.dark-style .page-route-inventario-preparacion-receta #lista_ingredientes,
.dark-style .page-route-inventario-preparacion-receta #er_lista_ingredientes {
  background: linear-gradient(90deg, rgb(255 91 92 / 11%), var(--indicator-surface) 42%);
}

.dark-style .page-route-inventario-preparacion-receta .recipe-row .stock:disabled {
  background: var(--indicator-surface-subtle);
  color: var(--indicator-muted);
}

.dark-style .page-route-receta-productos .select2-container--default .select2-selection--multiple,
.dark-style .page-route-inventario-preparacion-receta .select2-container--default .select2-selection--multiple,
.dark-style .page-route-inventario-vinculacion-importacion .select2-container--default .select2-selection--single {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-receta-productos .select2-dropdown,
.dark-style .page-route-inventario-preparacion-receta .select2-dropdown,
.dark-style .page-route-inventario-vinculacion-importacion .select2-dropdown,
.dark-style .page-route-inventario-vinculacion-importacion .alert-light,
.dark-style .page-route-inventario-vinculacion-importacion .text-bg-light {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

/* Conteo real, requerimientos y movimiento manual. */
.dark-style .page-route-inventario-ajuste .inventory-count-header {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .page-route-inventario-ajuste .inventory-count-header .text-muted,
.dark-style .page-route-inventario-ajuste .inventory-count-flow-item small,
.dark-style .page-route-inventario-ajuste .inventory-count-metric small {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-ajuste .inventory-count-header-icon {
  background: var(--indicator-surface-raised);
  border-color: #4a5d7e;
}

.dark-style .page-route-inventario-ajuste .inventory-count-flow-surface,
.dark-style .page-route-inventario-ajuste .inventory-count-metric,
.dark-style .page-route-inventario-ajuste .inventory-count-summary-box,
.dark-style .page-route-inventario-ajuste .inventory-count-summary-table,
.dark-style .page-route-inventario-requerimiento-almacen .card,
.dark-style .page-route-inventario-transaccion-manual-registro .card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-inventario-ajuste .inventory-count-filter-summary {
  background: var(--indicator-surface-raised);
  color: var(--indicator-muted);
}

.dark-style .page-route-inventario-ajuste .inventory-count-metric h4,
.dark-style .page-route-inventario-ajuste .inventory-count-metric h5,
.dark-style .page-route-inventario-ajuste #tablaIngrediente .inventory-ingredient-cell {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-ajuste #tablaIngrediente thead th,
.dark-style .page-route-inventario-ajuste .inventory-count-summary-table thead th,
.dark-style .page-route-inventario-transaccion-manual-registro #tableDecreaseItems thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted);
}

.dark-style .page-route-inventario-ajuste #tablaIngrediente tbody tr:hover td,
.dark-style .page-route-inventario-transaccion-manual-registro #tableDecreaseItems tbody tr:hover {
  background: #354563 !important;
}

/* Bandeja global de requerimientos: tarjetas renderizadas dinámicamente. */
.dark-style .page-route-inventario-requerimiento-almacen .requirement-overview-item,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-list-header,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-row,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-empty,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-card,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-status,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-summary,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-request,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-grid div,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-note,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-empty {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-requerimiento-almacen .requirement-overview-label,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-list-header,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-cell-title,
.dark-style .page-route-inventario-requerimiento-almacen .requirement-code,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-line,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-item,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-sources strong,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-ticket-destination strong {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-requerimiento-almacen .requirement-status-filter {
  background: var(--indicator-surface-raised);
  color: var(--indicator-muted);
}

.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-modal-body,
.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-swal-title {
  background: var(--indicator-surface-subtle) !important;
  color: var(--indicator-text) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-table th {
  background: var(--indicator-surface-raised);
  color: var(--indicator-muted);
}

.dark-style .page-route-inventario-requerimiento-almacen .warehouse-alert-table td {
  border-color: var(--indicator-border-subtle);
  color: var(--indicator-text);
}

/* Registro y edición de compras. */
.dark-style .page-route-compras-registro .card,
.dark-style .page-route-compras-edicion .card,
.dark-style .page-route-compras-registro .comprobante-head,
.dark-style .page-route-compras-edicion .comprobante-head,
.dark-style .page-route-compras-registro .purchase-draft-notice,
.dark-style .page-route-compras-edicion .purchase-draft-notice {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-compras-registro .bg-light,
.dark-style .page-route-compras-edicion .bg-light,
.dark-style .page-route-compras-registro .input-group-text,
.dark-style .page-route-compras-edicion .input-group-text,
.dark-style .page-route-compras-registro .proveedor-anticipos-box,
.dark-style .page-route-compras-edicion .proveedor-anticipos-box,
.dark-style .page-route-compras-registro .mini-anticipo-item,
.dark-style .page-route-compras-edicion .mini-anticipo-item {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-compras-registro .comprobante-head .form-control,
.dark-style .page-route-compras-edicion .comprobante-head .form-control,
.dark-style .page-route-compras-registro .comprobante-head .select2-container--default .select2-selection--single,
.dark-style .page-route-compras-edicion .comprobante-head .select2-container--default .select2-selection--single,
.dark-style .page-route-compras-registro .tablaCompraProductos .select2-container--default .select2-selection--single,
.dark-style .page-route-compras-edicion .tablaCompraProductos .select2-container--default .select2-selection--single,
.dark-style .page-route-compras-registro .purchase-item-detail-field .form-control,
.dark-style .page-route-compras-edicion .purchase-item-detail-field .form-control {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-compras-registro .comprobante-head .form-label,
.dark-style .page-route-compras-edicion .comprobante-head .form-label,
.dark-style .page-route-compras-registro .comprobante-head .select2-container--default .select2-selection--single .select2-selection__rendered,
.dark-style .page-route-compras-edicion .comprobante-head .select2-container--default .select2-selection--single .select2-selection__rendered,
.dark-style .page-route-compras-registro .tablaCompraProductos .select2-container--default .select2-selection--single .select2-selection__rendered,
.dark-style .page-route-compras-edicion .tablaCompraProductos .select2-container--default .select2-selection--single .select2-selection__rendered,
.dark-style .page-route-compras-registro .proveedor-value,
.dark-style .page-route-compras-edicion .proveedor-value,
.dark-style .page-route-compras-registro .anticipo-ref,
.dark-style .page-route-compras-edicion .anticipo-ref {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-compras-registro .proveedor-label,
.dark-style .page-route-compras-edicion .proveedor-label,
.dark-style .page-route-compras-registro .purchase-draft-notice__text,
.dark-style .page-route-compras-edicion .purchase-draft-notice__text,
.dark-style .page-route-compras-registro .purchase-item-detail-field .form-control::placeholder,
.dark-style .page-route-compras-edicion .purchase-item-detail-field .form-control::placeholder {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-compras-registro .preloader,
.dark-style .page-route-compras-edicion .preloader {
  background: rgb(39 50 71 / 86%);
}

.dark-style .page-route-compras-registro .purchase-select2-dropdown,
.dark-style .page-route-compras-edicion .purchase-select2-dropdown,
.dark-style .page-route-compras-registro .purchase-detail-select2-dropdown,
.dark-style .page-route-compras-edicion .purchase-detail-select2-dropdown,
.dark-style .page-route-compras-registro .purchase-detail-select2-dropdown .select2-results__group,
.dark-style .page-route-compras-edicion .purchase-detail-select2-dropdown .select2-results__group {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-compras-registro .table,
.dark-style .page-route-compras-edicion .table,
.dark-style .page-route-inventario-transaccion-manual-registro .table {
  --bs-table-bg: var(--indicator-surface);
  --bs-table-color: var(--indicator-text);
  --bs-table-border-color: var(--indicator-border);
  --bs-table-hover-bg: var(--indicator-surface-raised);
  --bs-table-hover-color: var(--indicator-text);
}

/* Reportes: base compartida para las rutas marcadas con dark-report-scope. */
.dark-style .dark-report-scope {
  color: var(--indicator-text);
}

.dark-style .dark-report-scope .card:not(.modal-content),
.dark-style .dark-report-scope .modern-report-filter-panel > .card,
.dark-style .dark-report-scope .summary-report-item,
.dark-style .dark-report-scope .modern-report-section,
.dark-style .dark-report-scope .report-panel,
.dark-style .dark-report-scope .indicator-card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .dark-report-scope .card-header,
.dark-style .dark-report-scope .card-footer,
.dark-style .dark-report-scope .modern-report-table thead th,
.dark-style .dark-report-scope .table thead th,
.dark-style .dark-report-scope .dataTables_scrollHead table thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .dark-report-scope .modern-report-header,
.dark-style .dark-report-scope .stock-report-header-neutral {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%);
  border-color: var(--indicator-border);
}

.dark-style .dark-report-scope .modern-report-header .text-muted,
.dark-style .dark-report-scope .stock-report-header-neutral .text-muted,
.dark-style .dark-report-scope .text-muted,
.dark-style .dark-report-scope .form-text {
  color: var(--indicator-muted) !important;
}

.dark-style .dark-report-scope .modern-report-header .text-white,
.dark-style .dark-report-scope .stock-report-header-neutral .text-white,
.dark-style .dark-report-scope .orders-report-hero .text-white,
.dark-style .dark-report-scope .products-report-header .text-white,
.dark-style .dark-report-scope .payments-report-hero .text-white,
.dark-style .dark-report-scope .credits-report-hero .text-white {
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .form-control,
.dark-style .dark-report-scope .form-select,
.dark-style .dark-report-scope .input-group-text,
.dark-style .dark-report-scope .bootstrap-select > .dropdown-toggle,
.dark-style .dark-report-scope .select2-container--default .select2-selection--single,
.dark-style .dark-report-scope .select2-container--default .select2-selection--multiple {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .select2-selection__rendered,
.dark-style .dark-report-scope .select2-selection__choice,
.dark-style .dark-report-scope .bootstrap-select .filter-option-inner-inner {
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .dropdown-menu,
.dark-style .dark-report-scope .select2-dropdown,
.dark-style .dark-report-scope .alert-light,
.dark-style .dark-report-scope .bg-light,
.dark-style .dark-report-scope .text-bg-light {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .table,
.dark-style .dark-report-scope .dataTable {
  --bs-table-bg: var(--indicator-surface);
  --bs-table-color: var(--indicator-text);
  --bs-table-border-color: var(--indicator-border);
  --bs-table-hover-bg: #354563;
  --bs-table-hover-color: var(--indicator-text);
  color: var(--indicator-text);
}

.dark-style .dark-report-scope .table tbody td,
.dark-style .dark-report-scope .dataTable tbody td,
.dark-style .dark-report-scope .tabulator .tabulator-cell {
  border-color: var(--indicator-border-subtle) !important;
}

/* reportes-modernos.css define este énfasis con azul oscuro para tema claro. */
.dark-style .dark-report-scope .modern-report-table .report-primary-cell,
.dark-style .dark-report-scope .table .report-primary-cell,
.dark-style .dark-report-scope .dataTable .report-primary-cell {
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .table tbody tr:hover td,
.dark-style .dark-report-scope .dataTable tbody tr:hover td,
.dark-style .dark-report-scope .modern-report-table tbody tr:hover td {
  background: #354563 !important;
}

.dark-style .dark-report-scope .modern-report-group td,
.dark-style .dark-report-scope .order-group-row td,
.dark-style .dark-report-scope .product-date-group td {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .dark-report-scope .modern-report-empty,
.dark-style .dark-report-scope .empty-data,
.dark-style .dark-report-scope .report-empty-state,
.dark-style .dark-report-scope .chart-preloader,
.dark-style .dark-report-scope .preloader,
.dark-style .dark-report-scope .dataTables_processing {
  background-color: rgb(39 50 71 / 90%) !important;
  color: var(--indicator-muted) !important;
}

/* Encabezados y KPI locales de reportes sin hoja moderna compartida. */
.dark-style .dark-report-scope .orders-report-hero,
.dark-style .dark-report-scope .products-report-header,
.dark-style .dark-report-scope .payments-report-hero,
.dark-style .dark-report-scope .credits-report-hero,
.dark-style .dark-report-scope .customer-report-hero,
.dark-style .dark-report-scope .delivery-hero,
.dark-style .dark-report-scope .menu-report-header {
  color: var(--indicator-text);
  background: linear-gradient(135deg, #2d3b53 0%, #253147 100%) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .dark-report-scope .orders-report-hero .text-muted,
.dark-style .dark-report-scope .products-report-header .text-muted,
.dark-style .dark-report-scope .payments-report-hero .text-muted,
.dark-style .dark-report-scope .credits-report-hero .text-muted,
.dark-style .dark-report-scope .customer-report-hero .text-muted {
  color: var(--indicator-muted) !important;
}

.dark-style .dark-report-scope .orders-report-hero .avatar,
.dark-style .dark-report-scope .products-report-header .avatar,
.dark-style .dark-report-scope .payments-report-hero .avatar,
.dark-style .dark-report-scope .credits-report-hero .avatar,
.dark-style .dark-report-scope .customer-report-hero .avatar,
.dark-style .dark-report-scope .delivery-hero-icon,
.dark-style .dark-report-scope .menu-report-icon {
  background: var(--indicator-surface-raised) !important;
  border-color: #4a5d7e !important;
}

.dark-style .dark-report-scope .customer-channel-item,
.dark-style .dark-report-scope .customer-report-table-wrap,
.dark-style .dark-report-scope .customer-top-row,
.dark-style .dark-report-scope .delivery-panel,
.dark-style .dark-report-scope .delivery-filter-panel,
.dark-style .dark-report-scope .delivery-kpi,
.dark-style .dark-report-scope .delivery-table-wrap {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .dark-report-scope .customer-report-table thead th,
.dark-style .dark-report-scope .delivery-table thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .dark-report-scope .customer-top-track,
.dark-style .dark-report-scope .delivery-track {
  background: #1d2635;
}

/* Celdas destacadas que los módulos de reportes colorean para tema claro. */
.dark-style .page-route-reporte-detalle-pedidos #tablaDetallePedidos .product-cell,
.dark-style .page-route-reporte-detalle-pedidos .order-group-number,
.dark-style .page-route-reporte-creditos-restantes #tablaCreditosRestantes .credit-client-cell,
.dark-style .page-route-reporte-productos-vendidos #tablaProductosVendidos .product-name-cell {
  color: var(--indicator-text) !important;
}

/* Delivery: sus estilos propios se cargan después de esta hoja. */
.dark-style .page-route-reporte-delivery .delivery-dashboard,
.dark-style .page-route-reporte-delivery .delivery-title,
.dark-style .page-route-reporte-delivery .delivery-kpi-value,
.dark-style .page-route-reporte-delivery .delivery-panel-title,
.dark-style .page-route-reporte-delivery .delivery-chart-value {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-delivery .delivery-kpi-label,
.dark-style .page-route-reporte-delivery .delivery-kpi-note,
.dark-style .page-route-reporte-delivery .delivery-chart-label,
.dark-style .page-route-reporte-delivery .delivery-empty {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-delivery .delivery-flow-row + .delivery-flow-row,
.dark-style .page-route-reporte-delivery .delivery-chart-row + .delivery-chart-row {
  border-color: var(--indicator-border-subtle) !important;
}

.dark-style .page-route-reporte-delivery .delivery-tabs .nav-link {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-delivery .delivery-tabs .nav-link.active,
.dark-style .page-route-reporte-delivery .delivery-tabs .nav-link:hover,
.dark-style .page-route-reporte-delivery .delivery-tabs .nav-link:focus {
  color: var(--indicator-text) !important;
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) var(--indicator-border) var(--indicator-surface) !important;
}

/* Clientes y consumo: conserva la jerarquía de texto del tema claro. */
.dark-style .page-route-reporte-clientes-consumo .customer-report-title,
.dark-style .page-route-reporte-clientes-consumo .customer-channel-name,
.dark-style .page-route-reporte-clientes-consumo .customer-report-table .customer-name-cell,
.dark-style .page-route-reporte-clientes-consumo .customer-top-name,
.dark-style .page-route-reporte-clientes-consumo .customer-top-amount {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-clientes-consumo .customer-report-empty,
.dark-style .page-route-reporte-clientes-consumo .customer-top-phone {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-clientes-consumo .customer-report-tabs .nav-link {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-clientes-consumo .customer-report-tabs .nav-link.active,
.dark-style .page-route-reporte-clientes-consumo .customer-report-tabs .nav-link:hover,
.dark-style .page-route-reporte-clientes-consumo .customer-report-tabs .nav-link:focus {
  color: var(--indicator-text) !important;
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) var(--indicator-border) var(--indicator-surface) !important;
}

/* Metas: Tabulator, tarjetas e indicadores que el módulo genera por AJAX. */
.dark-style .page-route-metas .card-body[style],
.dark-style .page-route-metas .card-clean,
.dark-style .page-route-metas .goal-kpi-card,
.dark-style .page-route-metas .goal-empty-state,
.dark-style .page-route-metas .ranking-workers-table,
.dark-style .page-route-metas .modal-points-summary {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-metas .tabulator,
.dark-style .page-route-metas .tabulator-row,
.dark-style .page-route-metas .tabulator .tabulator-footer {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

.dark-style .page-route-metas .tabulator .tabulator-header,
.dark-style .page-route-metas .tabulator .tabulator-header .tabulator-col {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-metas .tabulator-row:hover {
  background: #354563 !important;
}

/* Metas: los totales inferiores no aportan contexto en las tablas de detalle
   y, sin registros, Tabulator los mostraba como una banda blanca vacía. */
.dark-style .page-route-metas .tabulator .tabulator-calcs-bottom {
  display: none !important;
}

.dark-style .page-route-metas .goal-kpi-card strong {
  color: #dbe7f8 !important;
}

.dark-style .page-route-metas .goal-kpi-card span,
.dark-style .page-route-metas .goal-kpi-card small {
  color: #9fb1ca !important;
}

.dark-style .page-route-metas .ranking-axis-fixed,
.dark-style .page-route-metas .ranking-bar-stage {
  background:
    linear-gradient(to top, rgb(148 163 184 / 18%) 1px, transparent 1px) 0 0 / 100% 25%,
    var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border);
}

.dark-style .page-route-metas .ranking-axis-label,
.dark-style .page-route-metas .ranking-worker-footer strong,
.dark-style .page-route-metas .ranking-worker-footer span {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-metas .ranking-bar-value {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-metas .ranking-workers-scroll::-webkit-scrollbar-track {
  background: var(--indicator-surface-subtle);
}

.dark-style .page-route-metas .card-overlay-loader {
  background: rgb(39 50 71 / 76%) !important;
}

/* Gestión de gastos y su selector de compras. */
.dark-style .page-route-gestion-gastos .expense-dashboard {
  --expense-border: var(--indicator-border);
  --expense-muted: var(--indicator-muted);
  --expense-text: var(--indicator-text);
  --expense-soft: var(--indicator-surface-subtle);
}

.dark-style .page-route-gestion-gastos .expense-dashboard .card,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-toolbar,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-alert-item,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-empty,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-subcategory-head {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-gestion-gastos .expense-dashboard .expense-filter-grid .form-control,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-filter-grid .form-select,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-filter-grid .input-group-text,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-purchase-select2 + .select2-container .select2-selection--single,
.dark-style .page-route-gestion-gastos .expense-purchase-select2-dropdown,
.dark-style .page-route-gestion-gastos .expense-purchase-select2-dropdown .select2-results__group {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-gestion-gastos .expense-dashboard .expense-sync-pill {
  background: var(--indicator-surface-raised) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-gestion-gastos .expense-dashboard .expense-table th,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-subcategory-head {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-muted) !important;
}

/* Estadísticas de preparaciones: el contenedor y KPI estaban fijados a blanco. */
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .inventory-preparation-report,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .report-filters,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .indicator-card,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .report-panel {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .indicator-card span,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .indicator-card small,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .indicator-card strong,
.dark-style .page-route-reporte-inventario-preparaciones-estadisticas .report-eyebrow {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-inventario-preparaciones-estadisticas #chart_loader {
  background: rgb(39 50 71 / 86%) !important;
}

.dark-style .page-route-gestion-gastos .expense-dashboard .expense-progress,
.dark-style .page-route-gestion-gastos .expense-dashboard .expense-chart-track {
  background: var(--indicator-surface-subtle) !important;
}

/* Configuracion local: tarjetas de encuestas y ajustes de reservas. */
.dark-style .page-route-configuracion-local .day-btn {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-muted) !important;
  border: 1px solid var(--indicator-border) !important;
}

.dark-style .page-route-configuracion-local .day-btn.active {
  background: var(--bs-primary) !important;
  border-color: var(--bs-primary) !important;
  color: #fff !important;
}

.dark-style .page-route-configuracion-local .local-reservation-question-card,
.dark-style .page-route-configuracion-local .survey-builder-card,
.dark-style .page-route-configuracion-local .survey-preview-panel,
.dark-style .page-route-configuracion-local .survey-logo-control,
.dark-style .page-route-configuracion-local .survey-preview-hero,
.dark-style .page-route-configuracion-local .survey-preview-card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-configuracion-local .survey-config-panel {
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-configuracion-local .survey-logo-thumb,
.dark-style .page-route-configuracion-local .survey-preview-logo {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
  color: #8cb6ff !important;
}

.dark-style .page-route-configuracion-local .survey-preview-chip {
  background: var(--indicator-surface-raised);
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text);
}

/* Inventario general: matriz con cabeceras y columnas fijas. */
.dark-style .page-route-inventario-general .inventory-general-card,
.dark-style .page-route-inventario-general .inventory-general-header,
.dark-style .page-route-inventario-general .inventario-wrapper,
.dark-style .page-route-inventario-general .inventario-table {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-general .inventory-general-header {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-inventario-general .inventory-change-bar {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-general .inventory-change-legend {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-general .inventory-change-legend-swatch {
  background: var(--indicator-surface) !important;
}

.dark-style .page-route-inventario-general .inventario-table th,
.dark-style .page-route-inventario-general .inventario-table td {
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-inventario-general .inventario-table tbody td:not(.sticky-ingredient-cell):not(.sticky-ingredient-id-cell),
.dark-style .page-route-inventario-general .sticky-ingredient-cell,
.dark-style .page-route-inventario-general .sticky-ingredient-id-cell {
  background: var(--indicator-surface) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-general .inventario-table tbody tr:hover td:not(.sticky-ingredient-cell):not(.sticky-ingredient-id-cell) {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-inventario-general .inventario-table tbody td.inventory-cell-active {
  background: #24463e !important;
}

.dark-style .page-route-inventario-general .inventario-table tbody td.inventory-cell-cross-local {
  background: #57452a !important;
}

.dark-style .page-route-inventario-general .inventario-table thead tr:first-child th,
.dark-style .page-route-inventario-general .sticky-ingredient,
.dark-style .page-route-inventario-general .sticky-ingredient-id {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-text) !important;
  border-color: #4a5d7e !important;
}

.dark-style .page-route-inventario-general .inventario-table thead tr:nth-child(2) th {
  background: var(--indicator-surface-subtle) !important;
  color: #a9c5ff !important;
}

.dark-style .page-route-inventario-general .sticky-ingredient-cell,
.dark-style .page-route-inventario-general .sticky-ingredient-id-cell {
  box-shadow: 4px 0 8px rgb(0 0 0 / 24%), 8px 0 0 var(--indicator-surface) !important;
}

/* Menú de administración del encabezado. */
.dark-style .header-admin-menu {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  box-shadow: 0 12px 35px rgb(0 0 0 / 30%), 0 2px 8px rgb(0 0 0 / 18%) !important;
  color: var(--indicator-text) !important;
}

.dark-style .header-admin-menu-header,
.dark-style .header-admin-menu-footer {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .header-admin-menu-title,
.dark-style .header-admin-menu-name {
  color: var(--indicator-text) !important;
}

.dark-style .header-admin-menu-subtitle,
.dark-style .header-admin-menu-description,
.dark-style .header-admin-section-title,
.dark-style .header-admin-menu-arrow,
.dark-style .header-admin-menu-footer,
.dark-style .header-admin-empty {
  color: var(--indicator-muted) !important;
}

.dark-style .header-admin-search .form-control {
  background: var(--indicator-surface-subtle) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style .header-admin-search .form-control:focus {
  background: var(--indicator-surface) !important;
}

.dark-style .header-admin-menu-item:hover,
.dark-style .header-admin-menu-item:focus {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .header-admin-menu-icon {
  background: var(--indicator-surface-subtle) !important;
  color: #a9c5ff !important;
}

.dark-style .header-admin-menu-item:hover .header-admin-menu-icon,
.dark-style .header-admin-menu-item:focus .header-admin-menu-icon {
  background: #304d78 !important;
  color: #8cb6ff !important;
}

/* Mantiene unidos los controles compuestos en el tema oscuro. */
.dark-style .input-group {
  position: relative;
  display: flex;
  flex-wrap: nowrap !important;
  align-items: stretch;
  width: 100%;
}

/* Tienda virtual: panel de configuracion y vista previa administrativa. */
.dark-style .page-route-tienda-virtual .store-admin-hero,
.dark-style .page-route-tienda-virtual .store-admin-preview,
.dark-style .page-route-tienda-virtual .store-preview-toolbar,
.dark-style .page-route-tienda-virtual .store-toggle-card,
.dark-style .page-route-tienda-virtual .store-theme-card,
.dark-style .page-route-tienda-virtual .store-payment-card,
.dark-style .page-route-tienda-virtual .store-repeater-item,
.dark-style .page-route-tienda-virtual .store-section-image-preview,
.dark-style .page-route-tienda-virtual .store-banner-preview {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-tienda-virtual .store-preview-toolbar,
.dark-style .page-route-tienda-virtual .store-admin-preview {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-tienda-virtual .store-preview-toolbar strong {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-tienda-virtual .store-preview-toolbar small,
.dark-style .page-route-tienda-virtual .store-preview-placeholder {
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-tienda-virtual .store-preview-frame-shell,
.dark-style .page-route-tienda-virtual .store-preview-placeholder {
  background: var(--indicator-surface-subtle) !important;
}

.dark-style .page-route-tienda-virtual .store-preview-zoom {
  background: #304d78 !important;
  color: #a9c5ff !important;
}

.dark-style .page-route-tienda-virtual .store-theme-card.active {
  border-color: var(--bs-primary) !important;
  box-shadow: 0 0 0 2px rgb(90 141 238 / 28%) !important;
}

.dark-style .page-route-tienda-virtual #virtualStoreSectionsEmpty,
.dark-style .page-route-tienda-virtual .store-repeater-item .border.rounded {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

/* Emisores de comprobantes: listado, formulario modal y switches. */
.dark-style .page-route-emisores-comprobantes .receipt-issuer-page {
  --receipt-border: var(--indicator-border);
  --receipt-muted: var(--indicator-muted);
  --receipt-soft: var(--indicator-surface-subtle);
}

.dark-style .page-route-emisores-comprobantes .receipt-issuer-page .card,
.dark-style .page-route-emisores-comprobantes .receipt-issuer-kpi,
.dark-style .page-route-emisores-comprobantes .receipt-issuer-section,
.dark-style #receiptIssuerModal .modal-content,
.dark-style #receiptIssuerModal .modal-body,
.dark-style #receiptIssuerModal .receipt-issuer-modal-head,
.dark-style #receiptIssuerModal .receipt-issuer-actions {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-emisores-comprobantes .receipt-issuer-page .card-header,
.dark-style #receiptIssuerModal .receipt-issuer-modal-head,
.dark-style #receiptIssuerModal .receipt-issuer-actions {
  background: var(--indicator-surface-raised) !important;
}

.dark-style .page-route-emisores-comprobantes .receipt-issuer-kpi strong,
.dark-style #receiptIssuerModal .receipt-issuer-modal-copy h3,
.dark-style #receiptIssuerModal .receipt-issuer-section h6,
.dark-style #receiptIssuerModal .receipt-issuer-section-head h6,
.dark-style #receiptIssuerModal .receipt-switch-copy strong {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-emisores-comprobantes .receipt-issuer-kpi span,
.dark-style #receiptIssuerModal .receipt-issuer-modal-copy p,
.dark-style #receiptIssuerModal .receipt-issuer-section-head small,
.dark-style #receiptIssuerModal .receipt-switch-copy small,
.dark-style #receiptIssuerModal .receipt-field .form-label {
  color: var(--indicator-muted) !important;
}

.dark-style #receiptIssuerModal .receipt-issuer-section,
.dark-style #receiptIssuerModal .receipt-issuer-switch {
  background: var(--indicator-surface-subtle) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style #receiptIssuerModal .receipt-issuer-switch:has(input:checked) {
  background: #283b5f !important;
  border-color: #4d6fae !important;
  box-shadow: 0 8px 18px rgb(0 0 0 / 18%) !important;
}

.dark-style #receiptIssuerModal .receipt-field .input-group-text,
.dark-style #receiptIssuerModal .receipt-switch-icon,
.dark-style #receiptIssuerModal .receipt-issuer-modal-icon,
.dark-style #receiptIssuerModal .receipt-issuer-section-icon {
  background: var(--indicator-surface-raised) !important;
  border-color: #4a5d7e !important;
  color: #a9c5ff !important;
}

.dark-style #receiptIssuerModal .receipt-field .form-control {
  background: var(--indicator-surface) !important;
  border-color: #4a5d7e !important;
  color: var(--indicator-text) !important;
}

.dark-style #receiptIssuerModal .btn-close {
  filter: invert(1) grayscale(1) brightness(2);
}

.dark-style .page-route-emisores-comprobantes #receiptIssuerTable,
.dark-style .page-route-emisores-comprobantes #receiptIssuerTable th,
.dark-style .page-route-emisores-comprobantes #receiptIssuerTable td {
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-emisores-comprobantes #receiptIssuerTable thead th {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-muted) !important;
}

/* Reporte de carta. */
.dark-style .page-route-reporte-carta .menu-report-card,
.dark-style .page-route-reporte-carta .menu-filter-panel,
.dark-style .page-route-reporte-carta .dataTables_wrapper,
.dark-style .page-route-reporte-carta .dataTables_scroll,
.dark-style .page-route-reporte-carta .dataTables_scrollBody {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-carta .menu-report-card .card-header,
.dark-style .page-route-reporte-carta .menu-filter-panel,
.dark-style .page-route-reporte-carta table.dataTable thead th,
.dark-style .page-route-reporte-carta .dataTables_scrollHead table thead th {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-reporte-carta .menu-report-icon {
  background: #3c2d20 !important;
  color: #ffae67 !important;
}

.dark-style .page-route-reporte-carta table.dataTable tbody td,
.dark-style .page-route-reporte-carta table.dataTable tbody tr {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-reporte-carta table.dataTable tbody tr:hover td {
  background: #354563 !important;
}

/* Registro de cotización: documento legible en pantalla oscura. */
.dark-style .page-route-cotizacion-registro .qm-wrapper {
  --qm-ink: #e6edf8;
  --qm-muted: #9fb1ca;
  --qm-soft: #202d42;
  --qm-soft-2: #273247;
  --qm-line: #465777;
  --qm-line-soft: #354563;
  --qm-paper: var(--indicator-surface);
  --qm-accent: #dbe7f8;
  --qm-accent-soft: #2e3b54;
}

.dark-style .page-route-cotizacion-registro .qm-sheet,
.dark-style .page-route-cotizacion-registro .qm-box,
.dark-style .page-route-cotizacion-registro .qm-totals-box,
.dark-style .page-route-cotizacion-registro .qm-switch-box,
.dark-style .page-route-cotizacion-registro .quotation-logo-preview,
.dark-style .page-route-cotizacion-registro .card.border,
.dark-style .page-route-cotizacion-registro .card.border .card-body {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-cotizacion-registro .qm-document-header,
.dark-style .page-route-cotizacion-registro .qm-data-row,
.dark-style .page-route-cotizacion-registro .qm-conditions,
.dark-style .page-route-cotizacion-registro .qm-t-label,
.dark-style .page-route-cotizacion-registro .qm-currency,
.dark-style .page-route-cotizacion-registro .qm-amount,
.dark-style .page-route-cotizacion-registro .qm-box-title,
.dark-style .page-route-cotizacion-registro .qm-label,
.dark-style .page-route-cotizacion-registro .qm-title,
.dark-style .page-route-cotizacion-registro .qm-ruc {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-cotizacion-registro .qm-doc-box,
.dark-style .page-route-cotizacion-registro .qm-quote-table th,
.dark-style .page-route-cotizacion-registro .qm-total-row,
.dark-style .page-route-cotizacion-registro .qm-switch-box {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-cotizacion-registro .qm-quote-table td,
.dark-style .page-route-cotizacion-registro .qm-quote-table,
.dark-style .page-route-cotizacion-registro .qm-quote-table tr {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-cotizacion-registro .qm-wrapper input,
.dark-style .page-route-cotizacion-registro .qm-wrapper textarea,
.dark-style .page-route-cotizacion-registro .qm-wrapper select,
.dark-style .page-route-cotizacion-registro .qm-settings-btn,
.dark-style .page-route-cotizacion-registro .qm-btn.secondary,
.dark-style .page-route-cotizacion-registro .qm-btn-icon {
  background: #202d42 !important;
  border-color: #52688e !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-cotizacion-registro .qm-wrapper input::placeholder,
.dark-style .page-route-cotizacion-registro .qm-wrapper textarea::placeholder {
  color: #91a3bf !important;
}

/* Reservas y calendario FullCalendar. */
.dark-style .page-route-mesas-reservas .app-calendar-wrapper,
.dark-style .page-route-mesas-reservas .app-calendar-content > .card,
.dark-style .page-route-mesas-reservas .reservation-config-panel,
.dark-style .page-route-mesas-reservas .local-reservation-question-card,
.dark-style .page-route-mesas-reservas .card-bloqueos-panel {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-mesas-reservas .fc .fc-scrollgrid,
.dark-style .page-route-mesas-reservas .fc-theme-standard td,
.dark-style .page-route-mesas-reservas .fc-theme-standard th,
.dark-style .page-route-mesas-reservas .fc .fc-daygrid-day,
.dark-style .page-route-mesas-reservas .fc .fc-timegrid-slot,
.dark-style .page-route-mesas-reservas .fc .fc-list,
.dark-style .page-route-mesas-reservas .fc .fc-list-day-cushion {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-mesas-reservas .fc .fc-col-header-cell,
.dark-style .page-route-mesas-reservas .fc .fc-toolbar-title,
.dark-style .page-route-mesas-reservas .fc .fc-daygrid-day-number,
.dark-style .page-route-mesas-reservas .fc .fc-timegrid-axis-cushion,
.dark-style .page-route-mesas-reservas .fc .fc-timegrid-slot-label-cushion,
.dark-style .page-route-mesas-reservas .reservation-config-heading h6,
.dark-style .page-route-mesas-reservas .reservation-header,
.dark-style .page-route-mesas-reservas .legend-item {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-mesas-reservas .fc .fc-col-header-cell,
.dark-style .page-route-mesas-reservas .fc .fc-list-day-cushion,
.dark-style .page-route-mesas-reservas .reservation-config-heading,
.dark-style .page-route-mesas-reservas .calendar-legend {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
}

.dark-style .page-route-mesas-reservas .fc .fc-day-today,
.dark-style .page-route-mesas-reservas .fc .fc-daygrid-day.fc-day-today {
  background: #31415d !important;
}

.dark-style .page-route-mesas-reservas .reservation-policies-editor,
.dark-style .page-route-mesas-reservas .ql-toolbar.ql-snow,
.dark-style .page-route-mesas-reservas .ql-container.ql-snow,
.dark-style .page-route-mesas-reservas .flatpickr-calendar {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

/* Solicitud e historial de requerimientos. */
.dark-style .page-route-inventario-requerimiento .requirement-page,
.dark-style .page-route-inventario-requerimiento-lista .requirement-list-card,
.dark-style .page-route-inventario-requerimiento-lista .requirement-overview-item,
.dark-style .page-route-inventario-requerimiento-lista .requirement-row,
.dark-style .page-route-inventario-requerimiento-lista .warehouse-ticket-card,
.dark-style .page-route-inventario-requerimiento .req-filter-card,
.dark-style .page-route-inventario-requerimiento .req-product,
.dark-style .page-route-inventario-requerimiento .req-selected-item,
.dark-style .page-route-inventario-requerimiento .req-state-card {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-requerimiento-lista .requirement-list-header,
.dark-style .page-route-inventario-requerimiento-lista .requirement-overview-label,
.dark-style .page-route-inventario-requerimiento .req-filter-icon,
.dark-style .page-route-inventario-requerimiento .req-selected-local-badge,
.dark-style .page-route-inventario-requerimiento .req-product-stock {
  background: var(--indicator-surface-raised) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-muted) !important;
}

.dark-style .page-route-inventario-requerimiento-lista .requirement-overview-value,
.dark-style .page-route-inventario-requerimiento-lista .requirement-row strong,
.dark-style .page-route-inventario-requerimiento-lista .warehouse-ticket-body strong,
.dark-style .page-route-inventario-requerimiento .req-toolbar h4,
.dark-style .page-route-inventario-requerimiento .req-product-name,
.dark-style .page-route-inventario-requerimiento .req-selected-name {
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-requerimiento-lista .requirement-row:hover,
.dark-style .page-route-inventario-requerimiento .req-product:hover {
  background: #354563 !important;
  border-color: #52688e !important;
}

.dark-style .page-route-inventario-requerimiento-lista .warehouse-alert-table,
.dark-style .page-route-inventario-requerimiento-lista .warehouse-alert-table th,
.dark-style .page-route-inventario-requerimiento-lista .warehouse-alert-table td {
  background: var(--indicator-surface) !important;
  border-color: var(--indicator-border) !important;
  color: var(--indicator-text) !important;
}

.dark-style .page-route-inventario-requerimiento-lista .warehouse-alert-table th {
  background: var(--indicator-surface-raised) !important;
  color: var(--indicator-muted) !important;
}
