/**
 * LMS Informatika - Dark Mode Styling Sheet
 * Built with Bootstrap 5.3 data-bs-theme="dark" compatibility & High Contrast Readability
 */

[data-bs-theme="dark"] {
    --lms-bg: #090d16;
    --lms-card-bg: #111827;
    --lms-border: #1e293b;
    --lms-sidebar-bg: #0b1120;
    --lms-sidebar-color: #94a3b8;
    --lms-sidebar-active: #ffffff;
    --lms-sidebar-active-bg: #1e293b;
    --bs-body-bg: #090d16;
    --bs-body-color: #f1f5f9;
    --bs-tertiary-bg: #111827;
    --bs-border-color: #1e293b;
}

/* ========================================================================= */
/* 1. BACKGROUNDS & TYPOGRAPHY                                               */
/* ========================================================================= */
[data-bs-theme="dark"] html,
[data-bs-theme="dark"] body,
[data-bs-theme="dark"] #lms-app-layout,
[data-bs-theme="dark"] #page-content-wrapper,
[data-bs-theme="dark"] main,
[data-bs-theme="dark"] main.container-fluid {
    background-color: var(--lms-bg) !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] h1,
[data-bs-theme="dark"] h2,
[data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4,
[data-bs-theme="dark"] h5,
[data-bs-theme="dark"] h6,
[data-bs-theme="dark"] .h1,
[data-bs-theme="dark"] .h2,
[data-bs-theme="dark"] .h3,
[data-bs-theme="dark"] .h4,
[data-bs-theme="dark"] .h5,
[data-bs-theme="dark"] .h6 {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] p,
[data-bs-theme="dark"] span:not(.badge):not(.btn),
[data-bs-theme="dark"] label {
    color: inherit;
}

[data-bs-theme="dark"] .text-dark,
[data-bs-theme="dark"] .text-black,
[data-bs-theme="dark"] .text-body {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .text-muted {
    color: #94a3b8 !important;
}

[data-bs-theme="dark"] .text-secondary {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] strong,
[data-bs-theme="dark"] b {
    color: #f8fafc;
}

[data-bs-theme="dark"] .bg-white,
[data-bs-theme="dark"] .bg-body,
[data-bs-theme="dark"] div.bg-white,
[data-bs-theme="dark"] .p-2.bg-white,
[data-bs-theme="dark"] .p-3.bg-white,
[data-bs-theme="dark"] .p-4.bg-white {
    background-color: #111827 !important;
    color: #f1f5f9 !important;
    border-color: #1e293b !important;
}

[data-bs-theme="dark"] .bg-light,
[data-bs-theme="dark"] .card.bg-light,
[data-bs-theme="dark"] .card-body.bg-light,
[data-bs-theme="dark"] div.bg-light,
[data-bs-theme="dark"] .p-2.bg-light,
[data-bs-theme="dark"] .p-3.bg-light,
[data-bs-theme="dark"] .p-4.bg-light {
    background-color: #151d30 !important;
    color: #f1f5f9 !important;
    border-color: #1e293b !important;
}

[data-bs-theme="dark"] .border,
[data-bs-theme="dark"] .border-bottom,
[data-bs-theme="dark"] .border-top,
[data-bs-theme="dark"] .border-start,
[data-bs-theme="dark"] .border-end {
    border-color: #1e293b !important;
}

/* Dashboard Motivational Quote Banner & Gradients */
.lms-quote-banner {
    background: linear-gradient(135deg, #f8fafc 0%, #eff6ff 100%);
    border-left: 5px solid #3b82f6 !important;
}

[data-bs-theme="dark"] .lms-quote-banner,
[data-bs-theme="dark"] [style*="linear-gradient(135deg, #f8fafc"],
[data-bs-theme="dark"] [style*="linear-gradient(135deg,#f8fafc"] {
    background: linear-gradient(135deg, #0d1322 0%, #172033 100%) !important;
    border-left: 5px solid #3b82f6 !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .lms-quote-banner p,
[data-bs-theme="dark"] .lms-quote-banner blockquote {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .progress,
[data-bs-theme="dark"] .progress.bg-light,
[data-bs-theme="dark"] .progress.bg-white {
    background-color: #1e293b !important;
}

/* Breadcrumbs in dark mode */
[data-bs-theme="dark"] .breadcrumb-item,
[data-bs-theme="dark"] .breadcrumb-item a {
    color: #94a3b8 !important;
}

[data-bs-theme="dark"] .breadcrumb-item.active {
    color: #e2e8f0 !important;
}

/* Rich Content & Editor Pasted Content (Eliminate Invisible Text / Hardcoded Colors) */
[data-bs-theme="dark"] .material-content-body,
[data-bs-theme="dark"] .article-content,
[data-bs-theme="dark"] .cbt-question-content,
[data-bs-theme="dark"] .quiz-content,
[data-bs-theme="dark"] .tugas-description,
[data-bs-theme="dark"] .reflection-content,
[data-bs-theme="dark"] .discussion-content {
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .material-content-body p,
[data-bs-theme="dark"] .material-content-body span:not(.badge):not(.btn),
[data-bs-theme="dark"] .material-content-body li,
[data-bs-theme="dark"] .material-content-body div:not(.alert):not(.card):not(.badge):not(.btn),
[data-bs-theme="dark"] .article-content p,
[data-bs-theme="dark"] .article-content span:not(.badge):not(.btn),
[data-bs-theme="dark"] .article-content li,
[data-bs-theme="dark"] .article-content div:not(.alert):not(.card):not(.badge):not(.btn),
[data-bs-theme="dark"] .cbt-question-content *,
[data-bs-theme="dark"] .tugas-description * {
    color: inherit;
}

[data-bs-theme="dark"] [style*="background-color: rgb(255, 255, 255)"],
[data-bs-theme="dark"] [style*="background-color:#fff"],
[data-bs-theme="dark"] [style*="background-color: #fff"],
[data-bs-theme="dark"] [style*="background-color: white"],
[data-bs-theme="dark"] [style*="background: rgb(255, 255, 255)"],
[data-bs-theme="dark"] [style*="background:#fff"],
[data-bs-theme="dark"] [style*="background: #fff"],
[data-bs-theme="dark"] [style*="background: white"],
[data-bs-theme="dark"] [style*="color: rgb(0, 0, 0)"],
[data-bs-theme="dark"] [style*="color:#000"],
[data-bs-theme="dark"] [style*="color: #000"],
[data-bs-theme="dark"] [style*="color: black"],
[data-bs-theme="dark"] [style*="color: #333"] {
    color: #f1f5f9 !important;
    background-color: transparent !important;
}

/* ========================================================================= */
/* 2. NAVBAR & SIDEBAR                                                       */
/* ========================================================================= */
[data-bs-theme="dark"] .lms-navbar {
    background-color: #0d1322 !important;
    border-bottom: 1px solid #1e293b !important;
}

[data-bs-theme="dark"] .lms-navbar .btn-light {
    background-color: #1a2234 !important;
    color: #f8fafc !important;
    border: 1px solid #1e293b !important;
}

[data-bs-theme="dark"] .lms-navbar .hover-bg:hover {
    background-color: #1a2234 !important;
}

[data-bs-theme="dark"] #sidebar-wrapper {
    background-color: #0b1120 !important;
    border-right: 1px solid #1e293b;
}

[data-bs-theme="dark"] #sidebar-wrapper .sidebar-brand {
    border-bottom: 1px solid #1e293b;
}

[data-bs-theme="dark"] #sidebar-wrapper .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.08);
}

/* ========================================================================= */
/* 3. CARDS & CONTAINERS                                                     */
/* ========================================================================= */
[data-bs-theme="dark"] .card {
    background-color: #111827 !important;
    border-color: #1e293b !important;
    color: #f1f5f9 !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.25), 0 2px 4px -2px rgba(0, 0, 0, 0.25) !important;
}

[data-bs-theme="dark"] .card.card-hover:hover {
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.45) !important;
}

[data-bs-theme="dark"] .card-header,
[data-bs-theme="dark"] .card-footer {
    background-color: rgba(17, 24, 39, 0.95) !important;
    border-color: #1e293b !important;
    color: #f1f5f9 !important;
}

/* ========================================================================= */
/* 4. DROPDOWN MENUS & NOTIFICATIONS                                         */
/* ========================================================================= */
[data-bs-theme="dark"] .dropdown-menu {
    background-color: #111827 !important;
    border-color: #1e293b !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important;
}

[data-bs-theme="dark"] .dropdown-item {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .dropdown-item:hover,
[data-bs-theme="dark"] .dropdown-item:focus {
    background-color: #1e293b !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .dropdown-divider {
    border-color: #1e293b !important;
}

[data-bs-theme="dark"] .notification-item {
    border-color: #1e293b !important;
    background-color: #111827 !important;
}

[data-bs-theme="dark"] .notification-item.unread {
    background-color: #1a2642 !important;
}

[data-bs-theme="dark"] .notification-item:hover {
    background-color: #1e293b !important;
}

/* ========================================================================= */
/* 5. TABLES & DATATABLES                                                    */
/* ========================================================================= */
[data-bs-theme="dark"] .table {
    --bs-table-bg: transparent;
    --bs-table-color: #e2e8f0;
    --bs-table-hover-bg: #1a2234;
    --bs-table-border-color: #1e293b;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .table-light,
[data-bs-theme="dark"] .table thead th,
[data-bs-theme="dark"] .table th {
    background-color: #151d30 !important;
    color: #cbd5e1 !important;
    border-bottom: 2px solid #1e293b !important;
}

[data-bs-theme="dark"] .table td {
    border-color: #1e293b !important;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .table-hover tbody tr:hover {
    background-color: #172033 !important;
}

[data-bs-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(255, 255, 255, 0.02) !important;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .page-link {
    background-color: #111827 !important;
    border-color: #1e293b !important;
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .page-item.active .page-link {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .page-item.disabled .page-link {
    background-color: #0b1120 !important;
    color: #475569 !important;
    border-color: #1e293b !important;
}

[data-bs-theme="dark"] .dataTables_info {
    color: #94a3b8 !important;
}

/* ========================================================================= */
/* 6. FORM CONTROLS & INPUTS                                                 */
/* ========================================================================= */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
    background-color: #0b1120 !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
    background-color: #0b1120 !important;
    border-color: #3b82f6 !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 0.25rem rgba(59, 130, 246, 0.25) !important;
}

[data-bs-theme="dark"] .input-group-text {
    background-color: #1a2234 !important;
    border-color: #334155 !important;
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .form-control::placeholder {
    color: #64748b !important;
}

[data-bs-theme="dark"] select option {
    background-color: #111827 !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .form-check-label {
    color: #e2e8f0 !important;
}

/* ========================================================================= */
/* 7. ALERTS (HIGH CONTRAST & CLEAR READABILITY)                             */
/* ========================================================================= */
[data-bs-theme="dark"] .alert-info {
    background-color: rgba(6, 182, 212, 0.15) !important;
    border: 1px solid rgba(6, 182, 212, 0.35) !important;
    color: #67e8f9 !important;
}
[data-bs-theme="dark"] .alert-info strong,
[data-bs-theme="dark"] .alert-info h5,
[data-bs-theme="dark"] .alert-info h6,
[data-bs-theme="dark"] .alert-info .text-dark {
    color: #a5f3fc !important;
}

[data-bs-theme="dark"] .alert-success {
    background-color: rgba(16, 185, 129, 0.15) !important;
    border: 1px solid rgba(16, 185, 129, 0.35) !important;
    color: #6ee7b7 !important;
}
[data-bs-theme="dark"] .alert-success strong,
[data-bs-theme="dark"] .alert-success h5,
[data-bs-theme="dark"] .alert-success h6,
[data-bs-theme="dark"] .alert-success .text-success-emphasis,
[data-bs-theme="dark"] .alert-success .text-dark {
    color: #a7f3d0 !important;
}

[data-bs-theme="dark"] .alert-warning {
    background-color: rgba(245, 158, 11, 0.15) !important;
    border: 1px solid rgba(245, 158, 11, 0.35) !important;
    color: #fde68a !important;
}
[data-bs-theme="dark"] .alert-warning strong,
[data-bs-theme="dark"] .alert-warning h5,
[data-bs-theme="dark"] .alert-warning h6,
[data-bs-theme="dark"] .alert-warning .text-dark {
    color: #fef08a !important;
}

[data-bs-theme="dark"] .alert-danger {
    background-color: rgba(239, 68, 68, 0.15) !important;
    border: 1px solid rgba(239, 68, 68, 0.35) !important;
    color: #fca5a5 !important;
}
[data-bs-theme="dark"] .alert-danger strong,
[data-bs-theme="dark"] .alert-danger h5,
[data-bs-theme="dark"] .alert-danger h6,
[data-bs-theme="dark"] .alert-danger .text-dark {
    color: #fecaca !important;
}

[data-bs-theme="dark"] .alert-primary {
    background-color: rgba(37, 99, 235, 0.18) !important;
    border: 1px solid rgba(37, 99, 235, 0.35) !important;
    color: #93c5fd !important;
}
[data-bs-theme="dark"] .alert-primary strong,
[data-bs-theme="dark"] .alert-primary h5,
[data-bs-theme="dark"] .alert-primary h6,
[data-bs-theme="dark"] .alert-primary .text-dark {
    color: #bfdbfe !important;
}

[data-bs-theme="dark"] .alert-light {
    background-color: #172033 !important;
    border: 1px solid #1e293b !important;
    color: #e2e8f0 !important;
}
[data-bs-theme="dark"] .alert-light strong,
[data-bs-theme="dark"] .alert-light .text-dark {
    color: #f8fafc !important;
}

/* ========================================================================= */
/* 8. SUBTLE COLOR VARIATIONS                                                */
/* ========================================================================= */
[data-bs-theme="dark"] .bg-primary-subtle {
    background-color: rgba(37, 99, 235, 0.20) !important;
    color: #93c5fd !important;
}

[data-bs-theme="dark"] .bg-success-subtle {
    background-color: rgba(16, 185, 129, 0.20) !important;
    color: #6ee7b7 !important;
}

[data-bs-theme="dark"] .bg-warning-subtle {
    background-color: rgba(245, 158, 11, 0.20) !important;
    color: #fde68a !important;
}

[data-bs-theme="dark"] .bg-danger-subtle {
    background-color: rgba(239, 68, 68, 0.20) !important;
    color: #fca5a5 !important;
}

[data-bs-theme="dark"] .bg-info-subtle {
    background-color: rgba(6, 182, 212, 0.20) !important;
    color: #67e8f9 !important;
}

[data-bs-theme="dark"] .bg-secondary-subtle {
    background-color: #172033 !important;
    color: #cbd5e1 !important;
}

/* ========================================================================= */
/* 9. BADGES                                                                 */
/* ========================================================================= */
[data-bs-theme="dark"] .badge.bg-light {
    background-color: #1e293b !important;
    color: #f1f5f9 !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .badge.bg-white {
    background-color: #1e293b !important;
    color: #f1f5f9 !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .badge.bg-secondary {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
}

/* ========================================================================= */
/* 10. LIST GROUPS                                                           */
/* ========================================================================= */
[data-bs-theme="dark"] .list-group-item {
    background-color: #111827 !important;
    border-color: #1e293b !important;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .list-group-item.bg-white {
    background-color: #111827 !important;
}

[data-bs-theme="dark"] .list-group-item.bg-light {
    background-color: #172033 !important;
}

[data-bs-theme="dark"] .list-group-item-action:hover {
    background-color: #1a2234 !important;
    color: #ffffff !important;
}

/* ========================================================================= */
/* 11. BUTTONS                                                               */
/* ========================================================================= */
[data-bs-theme="dark"] .btn-light {
    background-color: #1a2234 !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .btn-light:hover {
    background-color: #334155 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-white {
    background-color: #1a2234 !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .btn-white:hover {
    background-color: #334155 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-primary {
    color: #60a5fa !important;
    border-color: #3b82f6 !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-primary:hover {
    background-color: #2563eb !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-success {
    color: #4ade80 !important;
    border-color: #22c55e !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-success:hover {
    background-color: #16a34a !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-info {
    color: #38bdf8 !important;
    border-color: #0ea5e9 !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-info:hover {
    background-color: #0284c7 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-warning {
    color: #fde047 !important;
    border-color: #eab308 !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-warning:hover {
    background-color: #ca8a04 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-danger {
    color: #f87171 !important;
    border-color: #ef4444 !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-danger:hover {
    background-color: #dc2626 !important;
    color: #ffffff !important;
}

[data-bs-theme="dark"] .btn-outline-secondary {
    border-color: #475569 !important;
    color: #cbd5e1 !important;
    background-color: transparent !important;
}

[data-bs-theme="dark"] .btn-outline-secondary:hover {
    background-color: #334155 !important;
    color: #ffffff !important;
}

/* ========================================================================= */
/* 12. ARTICLE / RICH TEXT CONTENT (MATERIALS, MODULES, FORUM, CBT)          */
/* ========================================================================= */
[data-bs-theme="dark"] .article-content,
[data-bs-theme="dark"] .material-content-body,
[data-bs-theme="dark"] .discussion-content,
[data-bs-theme="dark"] .ql-editor {
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .article-content h1,
[data-bs-theme="dark"] .article-content h2,
[data-bs-theme="dark"] .article-content h3,
[data-bs-theme="dark"] .article-content h4,
[data-bs-theme="dark"] .article-content h5,
[data-bs-theme="dark"] .article-content h6,
[data-bs-theme="dark"] .material-content-body h1,
[data-bs-theme="dark"] .material-content-body h2,
[data-bs-theme="dark"] .material-content-body h3,
[data-bs-theme="dark"] .material-content-body h4,
[data-bs-theme="dark"] .material-content-body h5,
[data-bs-theme="dark"] .material-content-body h6 {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .article-content blockquote,
[data-bs-theme="dark"] .material-content-body blockquote {
    background-color: #172033 !important;
    border-left: 4px solid #3b82f6 !important;
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .article-content pre,
[data-bs-theme="dark"] .material-content-body pre {
    background-color: #050811 !important;
    color: #f8fafc !important;
    border: 1px solid #1e293b !important;
}

[data-bs-theme="dark"] .article-content code:not(pre code),
[data-bs-theme="dark"] .material-content-body code:not(pre code) {
    background-color: #1e293b !important;
    color: #f472b6 !important;
}

/* ========================================================================= */
/* 13. PDF EMBED & DOCUMENT VIEWER IN DARK MODE                              */
/* ========================================================================= */
.pdf-embed-wrapper {
    background-color: #0b1120 !important;
    border-radius: 0 0 1rem 1rem;
    overflow: hidden;
    position: relative;
    min-height: 480px;
    display: flex;
    flex-direction: column;
}

[data-bs-theme="dark"] .pdf-embed-wrapper {
    background-color: #070a12 !important;
}

.pdf-embed-frame,
object.pdf-embed-frame,
iframe.pdf-embed-frame {
    background-color: #0b1120 !important;
    color-scheme: dark;
    border: 0 !important;
    display: block;
    width: 100%;
}

[data-bs-theme="dark"] .pdf-embed-frame,
[data-bs-theme="dark"] object.pdf-embed-frame,
[data-bs-theme="dark"] iframe.pdf-embed-frame {
    background-color: #070a12 !important;
    color-scheme: dark;
}

[data-bs-theme="dark"] .pdf-viewer-card {
    background-color: #111827 !important;
    border: 1px solid #1e293b !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4) !important;
}

[data-bs-theme="dark"] .pdf-viewer-card .card-header {
    background-color: #0d1322 !important;
    border-bottom: 1px solid #1e293b !important;
    color: #f1f5f9 !important;
}

/* Optional high-contrast inverted reading filter when explicitly triggered by user */
.pdf-embed-frame.pdf-dark-mode {
    filter: invert(0.90) hue-rotate(180deg) contrast(0.95) !important;
}

/* ========================================================================= */
/* 14. CBT EXAM INTERACTIVE OPTIONS (DARK MODE)                              */
/* ========================================================================= */
[data-bs-theme="dark"] .cbt-option-label {
    background-color: #111827 !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

[data-bs-theme="dark"] .cbt-option-label:hover {
    border-color: #3b82f6 !important;
    background-color: #1a2234 !important;
}

[data-bs-theme="dark"] .cbt-option-input:checked + .cbt-option-label {
    border-color: #22c55e !important;
    background-color: #064e3b !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.35) !important;
}

[data-bs-theme="dark"] .cbt-option-input:checked + .cbt-option-label .cbt-badge-letter,
[data-bs-theme="dark"] .cbt-option-input:checked + .cbt-option-label .badge {
    background-color: #22c55e !important;
    color: #ffffff !important;
    border-color: #22c55e !important;
}

[data-bs-theme="dark"] .cbt-option-input:checked + .cbt-option-label .cbt-text-content,
[data-bs-theme="dark"] .cbt-option-input:checked + .cbt-option-label span.fs-6 {
    color: #ecfdf5 !important;
}

[data-bs-theme="dark"] .cbt-number-btn.btn-light {
    background-color: #1a2234 !important;
    border-color: #334155 !important;
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .sticky-action-bar {
    background: rgba(17, 24, 39, 0.95) !important;
    border-color: #1e293b !important;
}

/* ========================================================================= */
/* 15. MODALS & SWEETALERT2                                                  */
/* ========================================================================= */
[data-bs-theme="dark"] .modal-content {
    background-color: #111827 !important;
    border-color: #1e293b !important;
    color: #f1f5f9 !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5) !important;
}

[data-bs-theme="dark"] .modal-header,
[data-bs-theme="dark"] .modal-footer {
    background-color: #0d1322 !important;
    border-color: #1e293b !important;
}

[data-bs-theme="dark"] .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

[data-bs-theme="dark"] .swal2-popup {
    background-color: #111827 !important;
    color: #f1f5f9 !important;
    border: 1px solid #1e293b !important;
}

[data-bs-theme="dark"] .swal2-title {
    color: #f8fafc !important;
}

[data-bs-theme="dark"] .swal2-html-container {
    color: #cbd5e1 !important;
}

/* ========================================================================= */
/* 16. QUILL EDITOR (DARK MODE)                                              */
/* ========================================================================= */
[data-bs-theme="dark"] .ql-toolbar.ql-snow {
    background-color: #151d30 !important;
    border-color: #334155 !important;
}

[data-bs-theme="dark"] .ql-container.ql-snow {
    background-color: #0b1120 !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

[data-bs-theme="dark"] .ql-snow .ql-stroke {
    stroke: #cbd5e1 !important;
}

[data-bs-theme="dark"] .ql-snow .ql-fill {
    fill: #cbd5e1 !important;
}

[data-bs-theme="dark"] .ql-snow .ql-picker {
    color: #cbd5e1 !important;
}

[data-bs-theme="dark"] .ql-snow .ql-picker-options {
    background-color: #111827 !important;
    border-color: #334155 !important;
}

/* ========================================================================= */
/* 17. FOOTER                                                                */
/* ========================================================================= */
[data-bs-theme="dark"] footer {
    background-color: #0d1322 !important;
    border-color: #1e293b !important;
    color: #94a3b8 !important;
}
