#theme-indicator {
  cursor: pointer;
}

.pcoded-header label {
  color: #3f4d67;
}

body.dark {
  background-color: #082032;
  color: white !important;
}

body.dark .pcoded-navbar,
body.dark .navbar-brand {
  background-color: #2C394B;
}

body.dark .icon,
body.dark a,
body.dark span,
body.dark p,
body.dark .feather,
body.dark .pcoded-header .input-group .input-group-text,
body.dark .pcoded-header a,
body.dark .pcoded-header dropdown-toggle {
  color: white;
}

body.dark .pcoded-header .main-search.open .input-group {
  background-color: #2C394B;
  color: white;
}

body.dark .pcoded-header .main-search.open .input-group .form-control {
  color: white;
}

body.dark .pcoded-header .dropdown .dropdown-menu {
  background-color: #2C394B;
}

body.dark .pcoded-header .dropdown.show:before {
  color: #2C394B;
}

body.dark .pcoded-header .dropdown .profile-notification .pro-head {
  background-color: #082032;
}

body.dark .pcoded-header .dropdown.drp-user.show:before {
  color: #082032 !important;
}

body.dark .pcoded-header .dropdown .dropdown-menu li:hover a {
  color: white;
}

body.dark .pcoded-header .dropdown .profile-notification .pro-body li a {
  color: white;
}

body.dark h1,
body.dark h2,
body.dark h3,
body.dark h4,
body.dark h5,
body.dark h6 {
  color: white !important;
}

body.dark .text-muted {
  color: #d0d0d0 !important;
}

body.dark .page-header-title+.breadcrumb>.breadcrumb-item:last-child a {
  color: rgba(255, 255, 255, 0.63) !important;
}

body.dark .breadcrumb {
  background-color: #082032;
  color: white;
}

body.dark .breadcrumb .breadcrumb-item.active {
  color: white;
}

body.dark .page-item .page-link {
  background-color: #082032;
  border-color: #082032;
}

body.dark .page-item .page-link {
  border-color: #334756;
}

body.dark .nav-pills {
  background-color: #2C394B;
  border-color: #082032;
}

body.dark .nav-pills .nav-link.active,
body.dark .nav-pills .nav-pills .show>.nav-link {
  background-color: #082032;
}

body.dark .custom-select,
body.dark .form-control,
body.dark .input-group-prepend,
body.dark .input-group-append {
  background-color: rgba(8, 32, 50, 0.8);
  border-color: #2C394B !important;
  color: white;
}

body.dark .custom-select span,
body.dark .form-control span,
body.dark .input-group-prepend span,
body.dark .input-group-append span {
  border-color: #2C394B !important;
}

body.dark .input-group {
  background-color: transparent;
}

body.dark .form-inline .form-control-plaintext {
  color: #bbbbbb;
}

body.dark .card .card-block,
body.dark .card .card-body,
body.dark .card {
  background-color: #2C394B;
  color: white !important;
}

body.dark .card .card-header {
  background-color: #2C394B;
  border-bottom: 1px solid #334756;
}

body.dark .table thead th {
  border-top: 1px solid #334756;
}

body.dark .table td,
body.dark .table th {
  border-bottom: 1px solid #334756;
}

body.dark .border-bottom {
  border-bottom: 1px solid #334756 !important;
}

body.dark .nav-tabs .nav-item.show .nav-link,
body.dark .nav-tabs .nav-link.active,
body.dark .tab-content {
  background-color: #2C394B;
  color: white !important;
}

body.dark .pcoded-header {
  background-color: #082032;
}

body.dark .pcoded-header>.collapse,
body.dark .pcoded-header>.collapse:not(.show),
body.dark .pcoded-header .navbar-collapse {
  background-color: #082032;
}

body.dark .pcoded-header .main-search.open .input-group .search-close {
  background-color: transparent;
}

/* Cambia el fondo general de la tabla y el color del texto */
body.dark .table {
  background-color: #2C394B;
  /* mismo color de tus cards */
  color: #ffffff !important;
  /* forzar texto claro */
}

/* Si usas .table-hover, define también el hover */
body.dark .table-hover tbody tr:hover {
  background-color: #334756;
  /* un tono intermedio */
}

/* Si usas filas con fondo alternado en la tabla (table-striped), define aquí */
body.dark .table-striped tbody tr:nth-of-type(odd) {
  background-color: #334756;
  /* un color un poco distinto */
}

body.dark .table-striped tbody tr:nth-of-type(even) {
  background-color: #2C394B;
}
body.dark-mode .card,
body.dark-mode .card-body,
body.dark-mode .modal-content,
body.dark-mode .card-header {
    background-color: #1e1e2f !important;
    color: white !important;
    border-color: #333 !important;
}
/* Formularios */
body.dark-mode .form-control {
    background-color: #2c2c3e !important;
    color: #ffffff !important;
    border-color: #444 !important;
}
body.dark-mode .form-control::placeholder {
    color: #bbb !important;
}

/* Tarjetas y modales */
body.dark .card,
body.dark .card-body,
body.dark .modal-content,
body.dark .card-header {
    background-color: #1e1e2f !important;
    color: #ffffff !important;
    border-color: #333 !important;
}

body.dark .form-control {
    background-color: #2c2c3e !important;
    color: #ffffff !important;
    border-color: #444 !important;
}

body.dark .form-control::placeholder {
    color: #bbb !important;
}

body.dark table,
body.dark th,
body.dark td {
    background-color: #2c2c3e !important;
    color: #ffffff !important;
    border-color: #444 !important;
}

body.dark #searchResults .list-group-item {
    background-color: #2c2c3e !important;
    color: white !important;
    border: 1px solid #444 !important;
}

body.dark #searchResults .list-group-item.selected {
    background-color: #007bff !important;
    color: white !important;
    font-weight: bold;
}

body.dark #quotationItems .list-group-item {
    background-color: #2c2c3e !important;
    color: white !important;
    border: 1px solid #444 !important;
}
body.dark .alert {
    background-color: #1e1e2f !important;
    color: #ffffff !important;
    border-color: #444 !important;
}
body.dark #cargaCard,
body.dark #cargaCard .card-body,
body.dark #cargaCard .card-header {
    background-color: #2c2c3e !important;
    color: white !important;
    border-color: #444 !important;
}

body.dark #eventDetails .list-group-item {
    background-color: #2c2c3e !important;
    color: white !important;
    border: 1px solid #444 !important;
}
body.dark #availableStock .list-group-item {
    background-color: #2c2c3e !important;
    color: white !important;
    border: 1px solid #444 !important;
}
body.dark .modal-content {
    background-color: #1e1e2f !important;
    color: white !important;
}
body.dark .modal-content {
    background-color: #1e1e2f !important;
    color: white !important;
    border-color: #333 !important;
}

body.dark .modal-content .form-control,
body.dark .modal-content textarea {
    background-color: #2c2c3e !important;
    color: white !important;
    border-color: #444 !important;
}

body.dark #eventItems .list-group-item {
    background-color: #2c2c3e !important;
    color: white !important;
    border: 1px solid #444 !important;
}


/* Ajustes para SweetAlert2 en dark-mode */
body.dark-mode .swal2-popup {
    background-color: #2c2c3e !important; /* Fondo oscuro */
    color: #ffffff !important;           /* Texto blanco */
}

body.dark-mode .swal2-title,
body.dark-mode .swal2-html-container {
    color: #ffffff !important;
}

body.dark-mode .swal2-styled.swal2-confirm {
    background-color: #007bff !important;
    color: #fff !important;
}

body.dark-mode .swal2-styled.swal2-cancel {
    background-color: #6c757d !important;
    color: #fff !important;
}

/* ===== Forzar modo oscuro con alta especificidad ===== */
html body.dark .card,
html body.dark .modal-content,
html body.dark .pcoded-content,
html body.dark .pcoded-main-container { background:#1e2233 !important; color:#fff !important; }

html body.dark .form-control:is(:disabled,[readonly],[readonly="readonly"]),
html body.dark .form-control-plaintext,
html body.dark .input-group-text {
  background:#2c2f41 !important; color:#e8e8e8 !important; border-color:#3a3e56 !important; opacity:1 !important;
}
html body.dark .form-control::placeholder { color:#aeb3c7 !important; }

/* Totales a la derecha (tu panel Cálculos) */
html body.dark .text-right .form-control,
html body.dark .form-control.text-right { color:#fff !important; background:#2c2f41 !important; }

/* Tabs de sección */
html body.dark .nav-tabs { border-bottom:1px solid #2b3242 !important; }
html body.dark .nav-tabs .nav-link { color:#cfd3da !important; }
html body.dark .nav-tabs .nav-link.active {
  color:#fff !important; background:#243048 !important;
  border-color:#2b3242 #2b3242 transparent #2b3242 !important;
}

/* Divisor entre columnas de Productos (cualquier borde claro) */
html body.dark .card [class*="col-"] { border-color:#2b3242 !important; }
html body.dark .border, 
html body.dark .border-left, 
html body.dark .border-right { border-color:#2b3242 !important; }

/* Select2 (bootstrap4) */
html body.dark .select2-container--bootstrap4 .select2-selection--single,
html body.dark .select2-container--bootstrap4 .select2-selection--multiple {
  background:#2c2f41 !important; border-color:#3a3e56 !important; color:#fff !important;
}
html body.dark .select2-container--bootstrap4 .select2-selection__rendered { color:#fff !important; }
html body.dark .select2-container .select2-selection__arrow b { border-color:#fff transparent transparent transparent !important; }
html body.dark .select2-dropdown { background:#2c2f41 !important; border-color:#3a3e56 !important; color:#fff !important; }
html body.dark .select2-results__option--highlighted { background:#334756 !important; color:#fff !important; }

/* DataTables (paginador, filtros, info) */
html body.dark .dataTables_wrapper .dataTables_paginate .page-link { background:#2c2f41 !important; color:#fff !important; border-color:#3a3e56 !important; }
html body.dark .dataTables_wrapper .dataTables_filter input,
html body.dark .dataTables_wrapper .dataTables_length select { background:#2c2f41 !important; color:#fff !important; border-color:#3a3e56 !important; }
html body.dark .dataTables_wrapper .dataTables_info { color:#d0d0d0 !important; }

/* Utilitarios claros que quedan “blancos” en oscuro */
html body.dark .bg-white, html body.dark .bg-light { background:#1e2233 !important; color:#fff !important; }


/* ===== PARCHE MODO OSCURO PARA trade ===== */
body.dark .select2-container--bootstrap4 .select2-selection--single,
body.dark .select2-container--bootstrap4 .select2-selection--multiple{
  background:#2c2f41 !important; border-color:#3a3e56 !important; color:#fff !important;
}
body.dark .select2-container--bootstrap4 .select2-selection__rendered{ color:#fff !important; }
body.dark .select2-container .select2-selection__arrow b{
  border-color:#fff transparent transparent transparent !important;
}
body.dark .select2-dropdown{
  background:#2c2f41 !important; border-color:#3a3e56 !important; color:#fff !important;
}
body.dark .select2-results__option--highlighted{ background:#334756 !important; color:#fff !important; }

/* Campos calculados (panel derecho) */
body.dark .calculated-field{
  background:#2c2f41 !important; border-color:#3a3e56 !important; color:#fff !important;
}

/* Productos (wrappers y columnas) */
body.dark #productsContainerWrapper{
  border-color:#2b3242 !important; background:#1e2233 !important;
}
body.dark #productsContainer{ background:transparent !important; }
body.dark .product-column{
  background:#1f2436 !important; border-right:2px solid #2b3242 !important;
}
body.dark .product-column .form-group label{ color:#d6d9e1 !important; }

/* Inputs y adornos usados en esa vista */
body.dark .form-control,
body.dark .form-control:read-only,
body.dark .form-control-plaintext{
  background:#2c2f41 !important; color:#e8e8e8 !important; border-color:#3a3e56 !important;
}
body.dark .input-group-text{ background:#2b3044 !important; color:#e4e4e4 !important; border-color:#3a3e56 !important; }

/* Detalles visuales */
body.dark hr{ border-color:#2b3242 !important; }
body.dark h6{ color:#66a6ff !important; }  /* reemplazo del #007bff en oscuro */

/* ===== Labels y texto de formularios (ej. Export/Domestic) ===== */
body.dark label,
body.dark .col-form-label,
body.dark .form-group label {
  color: #e4e6eb !important;
}

body.dark select.form-control option {
  background: #2c2f41 !important;
  color: #fff !important;
}
/* Corregir bordes brillantes/amarillos en las tarjetas del dashboard en modo oscuro */
body.dark .quick-card,
body.dark-mode .quick-card,
body.dark .module-card,
body.dark-mode .module-card {
    border-color: #334756 !important;
    box-shadow: none !important;
}

/* ===================================================================
   ELIMINACIÓN DEFINITIVA DE MANCHAS AMARILLAS / BLANCAS EN MODO OSCURO
   Las manchas vienen de:
   1) Bootstrap .alert-warning (#fff3cd fondo amarillo)
   2) Bootstrap .bg-warning (#ffc107)
   3) .badge-externo (#ffe8b5)
   4) Cualquier fondo blanco (#fff / #ffffff) que no fue overrideado
   5) box-shadow semi-transparente sobre fondo oscuro que genera halos dorados
   =================================================================== */

/* --- 1. ALERT-WARNING bootstrap en dark mode --- */
body.dark .alert-warning,
body.dark-mode .alert-warning {
    background-color: #2a2400 !important;  /* oscuro con tinte cálido sutil */
    background-image: none !important;
    color: #ffd166 !important;
    border-color: #5a4800 !important;
    border-left-color: #f0b429 !important;
}

/* Todas las alertas en dark mode — sobrescribir colores Bootstrap */
body.dark .alert,
body.dark-mode .alert {
    background-image: none !important;
}
body.dark .alert-success,
body.dark-mode .alert-success {
    background-color: #0a2410 !important;
    color: #6fcf97 !important;
    border-color: #1a5c2a !important;
}
body.dark .alert-danger,
body.dark-mode .alert-danger {
    background-color: #2a0a0a !important;
    color: #eb5757 !important;
    border-color: #5c1a1a !important;
}
body.dark .alert-info,
body.dark-mode .alert-info {
    background-color: #0a1e2a !important;
    color: #56ccf2 !important;
    border-color: #1a4a5c !important;
}

/* --- 2. BG-WARNING, BG-LIGHT, BG-WHITE que queden en amarillo/blanco --- */
body.dark .bg-warning,
body.dark-mode .bg-warning {
    background-color: #3d3000 !important;
    color: #ffd166 !important;
}
body.dark .text-warning,
body.dark-mode .text-warning {
    color: #ffd166 !important;
}
body.dark .border-warning,
body.dark-mode .border-warning {
    border-color: #5a4800 !important;
}

/* --- 3. BADGE EXTERNO (amarillo ámbar #ffe8b5) --- */
body.dark .badge-externo,
body.dark-mode .badge-externo {
    background: #334756 !important;
    color: #a0b4c8 !important;
    border: none !important;
}

/* --- 4. BADGES BOOTSTRAP warning --- */
body.dark .badge-warning,
body.dark .badge.bg-warning,
body.dark-mode .badge-warning,
body.dark-mode .badge.bg-warning {
    background-color: #5a4800 !important;
    color: #ffd166 !important;
}

/* --- 5. BOX-SHADOW: eliminar halos dorados de Bootstrap shadow-sm/shadow --- */
body.dark .shadow-sm,
body.dark-mode .shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.4) !important;
}
body.dark .shadow,
body.dark-mode .shadow {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.45) !important;
}
body.dark .shadow-lg,
body.dark-mode .shadow-lg {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.5) !important;
}

/* --- 6. INLINE STYLE background: #fff que queden blancas en dark --- */
/* Esto no se puede hacer desde CSS puro, pero podemos capturar clases Bootstrap comunes */
body.dark .bg-white,
body.dark-mode .bg-white,
body.dark .bg-light,
body.dark-mode .bg-light {
    background-color: #1e2233 !important;
    color: #fff !important;
}

/* --- 7. PROGRESS BAR warning (amarilla) --- */
body.dark .progress-bar-warning,
body.dark .bg-warning.progress-bar,
body.dark-mode .progress-bar-warning,
body.dark-mode .bg-warning.progress-bar {
    background-color: #b8860b !important;
}

/* --- 8. TARJETAS: asegurar fondo oscuro coherente (una sola regla ganadora) --- */
html body.dark .card,
html body.dark .card-body,
html body.dark .card-header,
html body.dark .card-footer,
html body.dark .modal-content {
    background-color: #1e2233 !important;
    background-image: none !important;
    color: #fff !important;
    border-color: #2b3242 !important;
}

html body.dark-mode .card,
html body.dark-mode .card-body,
html body.dark-mode .card-header,
html body.dark-mode .card-footer,
html body.dark-mode .modal-content {
    background-color: #1e2233 !important;
    background-image: none !important;
    color: #fff !important;
    border-color: #2b3242 !important;
}

/* --- 9. QUICK-CARD y MODULE-CARD: fondo coherente con cero box-shadow dorado --- */
html body.dark .quick-card,
html body.dark .module-card,
html body.dark-mode .quick-card,
html body.dark-mode .module-card {
    background-color: #1e2233 !important;
    background-image: none !important;
    border: 1px solid #2b3242 !important;
    box-shadow: none !important;
}

html body.dark .quick-card:hover,
html body.dark .module-card:hover,
html body.dark-mode .quick-card:hover,
html body.dark-mode .module-card:hover {
    background-color: #252a3d !important;
    border-color: #334756 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5) !important;
    transform: translateY(-2px);
}

/* ===================================================================
   MODO OSCURO / NOCHE PARA MÓDULO GRADUADOS (promedios, publico, abm)
   =================================================================== */

body.dark, body.dark-mode, [data-theme="dark"] {
    --faa-brand-solid: #ff8a80 !important;
    --faa-brand-dark: #ff6e40 !important;
    --faa-brand-light: rgba(255, 138, 128, 0.18) !important;
    --faa-border: #2b3242 !important;
    --faa-bg: #1e2233 !important;
    --faa-text: #f1f5f9 !important;
    --faa-muted: #94a3b8 !important;
}

/* Tarjetas de Graduados, Promedios, Público, Carreras y Ciudades */
body.dark .graduado-prom-card,
body.dark-mode .graduado-prom-card,
body.dark .public-graduado-card,
body.dark-mode .public-graduado-card,
body.dark .carrera-card,
body.dark-mode .carrera-card,
body.dark .ciudad-card,
body.dark-mode .ciudad-card {
    background-color: #252a3d !important;
    border: 1px solid #2b3242 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    color: #f1f5f9 !important;
}

body.dark .graduado-prom-card:hover,
body.dark-mode .graduado-prom-card:hover,
body.dark .public-graduado-card:hover,
body.dark-mode .public-graduado-card:hover,
body.dark .carrera-card:hover,
body.dark-mode .carrera-card:hover,
body.dark .ciudad-card:hover,
body.dark-mode .ciudad-card:hover {
    border-color: rgba(255, 138, 128, 0.5) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
}

body.dark .graduado-prom-header,
body.dark-mode .graduado-prom-header,
body.dark .public-graduado-header,
body.dark-mode .public-graduado-header,
body.dark .carrera-card-header,
body.dark-mode .carrera-card-header,
body.dark .ciudad-card-header,
body.dark-mode .ciudad-card-header {
    background-color: #1d2130 !important;
    border-bottom: 1px solid #2b3242 !important;
}

body.dark .graduado-prom-footer,
body.dark-mode .graduado-prom-footer,
body.dark .public-graduado-footer,
body.dark-mode .public-graduado-footer,
body.dark .carrera-card-footer,
body.dark-mode .carrera-card-footer,
body.dark .ciudad-card-footer,
body.dark-mode .ciudad-card-footer {
    background-color: #1d2130 !important;
    border-top: 1px solid #2b3242 !important;
}

body.dark .promedios-box,
body.dark-mode .promedios-box {
    background-color: #181b28 !important;
    border: 1px solid #2b3242 !important;
    color: #f1f5f9 !important;
}

/* Forzar textos claros dentro de tarjetas y cabeceras */
body.dark .graduado-prom-card .text-dark,
body.dark-mode .graduado-prom-card .text-dark,
body.dark .public-graduado-card .text-dark,
body.dark-mode .public-graduado-card .text-dark,
body.dark .carrera-card .text-dark,
body.dark-mode .carrera-card .text-dark,
body.dark .ciudad-card .text-dark,
body.dark-mode .ciudad-card .text-dark,
body.dark .promedios-box .text-dark,
body.dark-mode .promedios-box .text-dark,
body.dark .card-header .text-dark,
body.dark-mode .card-header .text-dark {
    color: #f8fafc !important;
}

/* Colores de marca y estado */
body.dark .badge-brand,
body.dark-mode .badge-brand {
    background-color: rgba(255, 138, 128, 0.18) !important;
    color: #ff8a80 !important;
    border: 1px solid rgba(255, 138, 128, 0.35) !important;
}

body.dark .badge-light,
body.dark-mode .badge-light {
    background-color: #2c3144 !important;
    color: #cbd5e1 !important;
    border: 1px solid #3a3e56 !important;
}

/* Tablas */
body.dark .table thead.thead-light th,
body.dark-mode .table thead.thead-light th {
    background-color: #1d2130 !important;
    color: #f8fafc !important;
    border-color: #2b3242 !important;
}

body.dark .table tbody tr,
body.dark-mode .table tbody tr {
    background-color: #252a3d !important;
    color: #f1f5f9 !important;
}

body.dark .table-hover tbody tr:hover,
body.dark-mode .table-hover tbody tr:hover {
    background-color: #2c3144 !important;
}

body.dark .table td,
body.dark .table th,
body.dark-mode .table td,
body.dark-mode .table th {
    border-color: #2b3242 !important;
}

/* Iconos y appends */
body.dark .input-group-text.bg-white,
body.dark-mode .input-group-text.bg-white {
    background-color: #2c2f41 !important;
    color: #f8fafc !important;
    border-color: #3a3e56 !important;
}

/* Select2 en dark mode */
body.dark .select2-container--default .select2-selection--single .select2-selection__rendered,
body.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #ffffff !important;
}

/* Botones toggle secundarias */
body.dark .btn-outline-secondary,
body.dark-mode .btn-outline-secondary {
    color: #cbd5e1 !important;
    border-color: #3a3e56 !important;
    background-color: transparent !important;
}

body.dark .btn-outline-secondary:hover,
body.dark-mode .btn-outline-secondary:hover {
    background-color: #2c3144 !important;
    color: #ffffff !important;
    border-color: #4b5563 !important;
}

body.dark .btn-outline-secondary.active,
body.dark-mode .btn-outline-secondary.active,
body.dark .btn-group-toggle .btn-outline-secondary.active,
body.dark-mode .btn-group-toggle .btn-outline-secondary.active {
    background-color: #3b82f6 !important;
    border-color: #3b82f6 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 6px rgba(59, 130, 246, 0.4) !important;
}

/*# sourceMappingURL=dark.css.map */