/**
 * Completa el modo oscuro de AdminLTE en paneles, formularios y componentes custom.
 * AdminLTE aplica dark-mode al shell; este archivo cubre el contenido que queda claro.
 */
body.dark-mode {
    --cq-accent: #a78bfa;
    --cq-accent-soft: rgba(167, 139, 250, 0.18);
    --cq-accent-hover: #c4b5fd;
    --cq-ink: #f1f5f9;
    --cq-muted: #94a3b8;
    --cq-line: #334155;
    --cq-surface: #1e293b;
    --cq-canvas: #0f172a;
    --cq-danger: #f87171;
}

body.dark-mode .content-wrapper {
    background-color: #111827 !important;
    color: #e5e7eb;
}

body.dark-mode .content-header h1,
body.dark-mode .content-header .cq-title,
body.dark-mode .content-wrapper h1,
body.dark-mode .content-wrapper h2,
body.dark-mode .content-wrapper h3,
body.dark-mode .content-wrapper h4,
body.dark-mode .content-wrapper h5,
body.dark-mode .content-wrapper .text-dark {
    color: #f8fafc !important;
}

body.dark-mode .content-wrapper .text-muted {
    color: #94a3b8 !important;
}

body.dark-mode .breadcrumb-item,
body.dark-mode .cq-breadcrumb {
    color: #94a3b8;
}

body.dark-mode .card,
body.dark-mode .premium-card,
body.dark-mode .cq-panel,
body.dark-mode .kpi-card {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e5e7eb;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35) !important;
}

body.dark-mode .card-header,
body.dark-mode .cq-panel__head {
    background-color: #1e293b !important;
    border-bottom-color: #334155 !important;
    color: #f8fafc;
}

body.dark-mode .card-title,
body.dark-mode .cq-panel__title {
    color: #f8fafc !important;
}

body.dark-mode .card-body,
body.dark-mode .cq-panel__body {
    background-color: #1e293b !important;
    color: #e5e7eb;
}

body.dark-mode .bg-white,
body.dark-mode .bg-light {
    background-color: #1e293b !important;
    color: #e5e7eb !important;
}

body.dark-mode .border,
body.dark-mode .border-bottom,
body.dark-mode .border-top {
    border-color: #334155 !important;
}

body.dark-mode .form-control,
body.dark-mode .custom-select,
body.dark-mode .input-group-text,
body.dark-mode select.form-control {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

body.dark-mode .form-control:focus,
body.dark-mode .custom-select:focus {
    background-color: #0f172a !important;
    border-color: #a78bfa !important;
    color: #f8fafc !important;
    box-shadow: 0 0 0 3px rgba(167, 139, 250, 0.2);
}

body.dark-mode .form-control::placeholder {
    color: #64748b !important;
}

body.dark-mode .table,
body.dark-mode .cq-table {
    color: #e5e7eb;
}

body.dark-mode .table thead th,
body.dark-mode .cq-table thead th {
    background-color: #0f172a !important;
    color: #94a3b8 !important;
    border-color: #334155 !important;
}

body.dark-mode .table td,
body.dark-mode .table th,
body.dark-mode .cq-table tbody td {
    border-color: #334155 !important;
    background-color: #1e293b !important;
    color: #e5e7eb;
}

body.dark-mode .table-hover tbody tr:hover td,
body.dark-mode .cq-table tbody tr:hover td {
    background-color: #243044 !important;
}

body.dark-mode .cq-empty {
    background: #0f172a !important;
    color: #94a3b8;
}

body.dark-mode .cq-empty h5 {
    color: #f8fafc !important;
}

body.dark-mode .cq-dock {
    background: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

body.dark-mode .cq-btn-ghost {
    background: #0f172a !important;
    color: #e5e7eb !important;
    border-color: #475569 !important;
}

body.dark-mode .cq-btn-soft {
    background: rgba(167, 139, 250, 0.18) !important;
    color: #c4b5fd !important;
}

body.dark-mode .cq-accion {
    color: #94a3b8;
}

body.dark-mode .cq-sku {
    color: #f8fafc;
}

body.dark-mode .modal-content,
body.dark-mode .cq-modal .modal-content {
    background-color: #1e293b !important;
    color: #e5e7eb;
}

body.dark-mode .modal-header,
body.dark-mode .cq-modal .modal-header {
    background-color: #1e293b !important;
    border-bottom-color: #334155 !important;
}

body.dark-mode .modal-title,
body.dark-mode .cq-modal .modal-title {
    color: #f8fafc !important;
}

body.dark-mode .modal-footer {
    border-top-color: #334155 !important;
}

body.dark-mode .list-group-item,
body.dark-mode .cq-product-hit {
    background-color: #1e293b !important;
    color: #e5e7eb !important;
    border-color: #334155 !important;
}

body.dark-mode .list-group-item:hover,
body.dark-mode .cq-product-hit:hover {
    background-color: #243044 !important;
}

body.dark-mode .close {
    color: #e5e7eb;
    text-shadow: none;
    opacity: 0.8;
}

/* Select2 */
body.dark-mode .select2-container--bootstrap4 .select2-selection,
body.dark-mode .select2-container--default .select2-selection--single {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

body.dark-mode .select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered,
body.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #f1f5f9 !important;
}

body.dark-mode .select2-dropdown {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e5e7eb !important;
}

body.dark-mode .select2-container--bootstrap4 .select2-results__option,
body.dark-mode .select2-results__option {
    color: #e5e7eb;
}

body.dark-mode .select2-container--bootstrap4 .select2-results__option--highlighted,
body.dark-mode .select2-results__option--highlighted {
    background-color: #334155 !important;
    color: #fff !important;
}

body.dark-mode .select2-search--dropdown .select2-search__field {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

/* DataTables */
body.dark-mode .dataTables_wrapper,
body.dark-mode .dataTables_info,
body.dark-mode .dataTables_length,
body.dark-mode .dataTables_filter label {
    color: #94a3b8 !important;
}

body.dark-mode .dataTables_wrapper .dataTables_filter input,
body.dark-mode .dataTables_wrapper .dataTables_length select {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

body.dark-mode table.dataTable,
body.dark-mode table.dataTable thead th,
body.dark-mode table.dataTable tbody td {
    border-color: #334155 !important;
    color: #e5e7eb !important;
}

body.dark-mode table.dataTable.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(15, 23, 42, 0.55) !important;
}

body.dark-mode .page-item .page-link {
    background-color: #1e293b;
    border-color: #334155;
    color: #e5e7eb;
}

body.dark-mode .page-item.active .page-link {
    background-color: #6f42c1;
    border-color: #6f42c1;
}

body.dark-mode .page-item.disabled .page-link {
    background-color: #0f172a;
    border-color: #334155;
    color: #64748b;
}

/* Badges / misc */
body.dark-mode .badge-light {
    background-color: #334155 !important;
    color: #e5e7eb !important;
}

body.dark-mode .dropdown-menu {
    background-color: #1e293b;
    border-color: #334155;
}

body.dark-mode .dropdown-item {
    color: #e5e7eb;
}

body.dark-mode .dropdown-item:hover,
body.dark-mode .dropdown-item:focus {
    background-color: #243044;
    color: #fff;
}

body.dark-mode .info-box,
body.dark-mode .small-box {
    background-color: #1e293b !important;
    color: #e5e7eb;
}

body.dark-mode .btn-light {
    background-color: #0f172a !important;
    border-color: #475569 !important;
    color: #e5e7eb !important;
}

body.dark-mode .btn-outline-secondary {
    color: #cbd5e1;
    border-color: #475569;
}

body.dark-mode .main-header.navbar .nav-link .fa-moon,
body.dark-mode .main-header.navbar .nav-link .fa-sun,
.main-header.navbar .nav-link .fa-moon,
.main-header.navbar .nav-link .fa-sun,
body.dark-mode .main-header.navbar .nav-link > i,
body.dark-mode .main-header.navbar .nav-link .fas,
body.dark-mode .main-header.navbar .nav-link .far,
.main-header.navbar .nav-link > i,
.main-header.navbar .nav-link .fas,
.main-header.navbar .nav-link .far {
    color: #1A2224 !important;
}

body.dark-mode .main-header.navbar .nav-link.text-dark,
.main-header.navbar .nav-link.text-dark,
body.dark-mode .main-header.navbar .nav-link .text-success,
.main-header.navbar .nav-link .text-success,
body.dark-mode .main-header.navbar .nav-link .text-dark,
.main-header.navbar .nav-link .text-dark {
    color: #1A2224 !important;
}
