/* ==============================================
   Dark Mode - Dashboard (base.html + Kaiadmin)
   ============================================== */

/* ---------- Hide Custom Template Sidebar ---------- */
.custom-template {
    display: none !important;
}
.custom-template .custom-toggle {
    display: none !important;
}

/* ---------- Dark Mode Toggle Button ---------- */
.dark-mode-toggle {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #e0e0e0;
    background: transparent;
    color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 16px;
    padding: 0;
}

.dark-mode-toggle:hover {
    border-color: #22c55e;
    color: #22c55e;
    transform: scale(1.05);
}

.dark-mode-toggle:active {
    transform: scale(0.95);
}

[data-theme="dark"] .dark-mode-toggle {
    border-color: #475569;
    color: #fbbf24;
}

[data-theme="dark"] .dark-mode-toggle:hover {
    border-color: #fbbf24;
}

/* ==============================================
   Dark Theme Overrides - Kaiadmin Dashboard
   ============================================== */

/* ---------- Body & Wrapper ---------- */
[data-theme="dark"] body {
    background-color: #0f172a !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .wrapper {
    background-color: #0f172a !important;
}

/* ---------- Main Panel ---------- */
[data-theme="dark"] .main-panel {
    background-color: #0f172a !important;
}

[data-theme="dark"] .main-panel .container {
    background-color: transparent !important;
}

[data-theme="dark"] .page-inner {
    background-color: #0f172a !important;
}

/* ---------- Main Header ---------- */
[data-theme="dark"] .main-header {
    background: #1e293b !important;
}

[data-theme="dark"] .main-header .navbar {
    background: #1e293b !important;
}

[data-theme="dark"] .main-header .navbar-header {
    background: #1e293b !important;
}

[data-theme="dark"] .nav-top {
    background: #1e293b !important;
}

[data-theme="dark"] .nav-bottom {
    background: #1e293b !important;
}

[data-theme="dark"] .navbar-light .navbar-nav .nav-link {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .border-bottom {
    border-bottom-color: #334155 !important;
}

/* ---------- Profile & Username in Navbar ---------- */
[data-theme="dark"] .profile-username span {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .profile-username .op-7 {
    color: #94a3b8 !important;
}

/* ---------- Portfolio Select ---------- */
[data-theme="dark"] .portfolio-select {
    border-color: #475569 !important;
    color: #818cf8 !important;
    background-color: #334155 !important;
}

/* ---------- Sidebar ---------- */
[data-theme="dark"] .sidebar {
    background: #1e293b !important;
}

[data-theme="dark"] .sidebar .nav > .nav-item a {
    color: #94a3b8 !important;
}

[data-theme="dark"] .sidebar .nav > .nav-item a:hover,
[data-theme="dark"] .sidebar .nav > .nav-item a:focus {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .sidebar .nav > .nav-item.active > a {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .sidebar .nav > .nav-item .nav-collapse li a {
    color: #94a3b8 !important;
}

[data-theme="dark"] .sidebar .nav > .nav-item .nav-collapse li a:hover {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .sidebar .sidebar-background {
    background: #1e293b !important;
}

[data-theme="dark"] .sidebar .scroll-element .scroll-bar {
    background: #475569 !important;
}

/* ---------- Cards ---------- */
[data-theme="dark"] .card {
    background: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .card .card-header {
    background: #1e293b !important;
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .card .card-header .card-title {
    color: #f1f5f9 !important;
}

[data-theme="dark"] .card .card-body {
    background: #1e293b !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .card .card-footer {
    background: #1e293b !important;
    border-top-color: #334155 !important;
}

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

/* ==============================================
   Bootstrap 5 Table Fix (Issue #3)
   Override --bs-table-bg variable + match exact
   selector + kill box-shadow: inset trick
   ============================================== */

[data-theme="dark"] .table {
    --bs-table-bg: transparent !important;
    --bs-table-color: #e2e8f0 !important;
    --bs-table-border-color: #334155 !important;
    --bs-table-hover-bg: #334155 !important;
    --bs-table-striped-bg: rgba(51, 65, 85, 0.3) !important;
    --bs-table-hover-color: #e2e8f0 !important;
    --bs-table-striped-color: #e2e8f0 !important;
    --bs-table-active-bg: #334155 !important;
    --bs-table-active-color: #e2e8f0 !important;
    color: #e2e8f0 !important;
}

/* Match Bootstrap 5's EXACT selector pattern */
[data-theme="dark"] .table > :not(caption) > * > * {
    background-color: transparent !important;
    color: #e2e8f0 !important;
    box-shadow: none !important;
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .table th {
    background: #334155 !important;
    color: #f1f5f9 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .table td {
    border-color: #334155 !important;
    color: #cbd5e1 !important;
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(51, 65, 85, 0.3) !important;
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(51, 65, 85, 0.3) !important;
    color: #e2e8f0 !important;
    box-shadow: none !important;
}

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

[data-theme="dark"] .table-hover > tbody > tr:hover > * {
    background-color: #334155 !important;
    color: #e2e8f0 !important;
    box-shadow: none !important;
}

[data-theme="dark"] .table-bordered {
    border-color: #334155 !important;
}

/* Kaiadmin .thead-light specificity match (Issue #5) */
[data-theme="dark"] .table .thead-light th {
    background-color: #1e293b !important;
    color: #94a3b8 !important;
    border-color: #334155 !important;
}

/* ---------- DataTables ---------- */
[data-theme="dark"] .dataTables_wrapper .dataTables_length,
[data-theme="dark"] .dataTables_wrapper .dataTables_filter,
[data-theme="dark"] .dataTables_wrapper .dataTables_info,
[data-theme="dark"] .dataTables_wrapper .dataTables_paginate {
    color: #94a3b8 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_filter input {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_length select {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
    color: #94a3b8 !important;
    background: #1e293b !important;
    border-color: #334155 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: #334155 !important;
    color: #f1f5f9 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #334155 !important;
    color: #e2e8f0 !important;
    border-color: #475569 !important;
}

/* ---------- Forms ---------- */
[data-theme="dark"] .form-control {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

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

[data-theme="dark"] .form-control:focus {
    border-color: #818cf8 !important;
    box-shadow: 0 0 0 3px rgba(129, 140, 248, 0.15) !important;
}

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

[data-theme="dark"] .form-select {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .input-group-text {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #94a3b8 !important;
}

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

[data-theme="dark"] .form-check-input {
    background-color: #334155 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .form-check-input:checked {
    background-color: #818cf8 !important;
    border-color: #818cf8 !important;
}

[data-theme="dark"] .col-form-label {
    color: #cbd5e1 !important;
}

/* ---------- Dropdown Menus ---------- */
[data-theme="dark"] .dropdown-menu {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}

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

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
}

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

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

/* ---------- Navigation Dropdown (Bottom Nav) ---------- */
[data-theme="dark"] .navbar-dropdown {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

[data-theme="dark"] .navbar-dropdown ul li a {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .navbar-dropdown ul li a:hover {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
}

[data-theme="dark"] .navbar-dropdown ul li hr {
    border-color: #334155 !important;
}

[data-theme="dark"] .page-navigation .nav-item .nav-link {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .page-navigation .nav-item.active .nav-link,
[data-theme="dark"] .page-navigation .nav-item .nav-link:hover {
    color: #818cf8 !important;
}

[data-theme="dark"] .body-overlay {
    background: rgba(0, 0, 0, 0.5) !important;
}

/* ---------- Buttons ---------- */
[data-theme="dark"] .btn-default {
    background: #334155 !important;
    color: #e2e8f0 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .btn-default:hover {
    background: #475569 !important;
}

[data-theme="dark"] .btn-light {
    background: #334155 !important;
    color: #e2e8f0 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .btn-outline-secondary {
    color: #94a3b8 !important;
    border-color: #475569 !important;
}

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

[data-theme="dark"] .btn-close {
    filter: invert(1) !important;
}

/* ---------- Modals ---------- */
[data-theme="dark"] .modal-content {
    background-color: #1e293b !important;
    border-color: #334155 !important;
}

[data-theme="dark"] .modal-header {
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .modal-header .modal-title {
    color: #f1f5f9 !important;
}

[data-theme="dark"] .modal-header .btn-close {
    filter: invert(1) !important;
}

[data-theme="dark"] .modal-body {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .modal-footer {
    border-top-color: #334155 !important;
}

/* ---------- Alerts ---------- */
[data-theme="dark"] .alert-warning {
    background-color: #422006 !important;
    border-color: #854d0e !important;
    color: #fbbf24 !important;
}

[data-theme="dark"] .alert-info {
    background-color: #0c4a6e !important;
    border-color: #0369a1 !important;
    color: #7dd3fc !important;
}

[data-theme="dark"] .alert-success {
    background-color: #052e16 !important;
    border-color: #166534 !important;
    color: #86efac !important;
}

[data-theme="dark"] .alert-danger {
    background-color: #450a0a !important;
    border-color: #991b1b !important;
    color: #fca5a5 !important;
}

/* ---------- Footer ---------- */
[data-theme="dark"] .footer {
    background: #1e293b !important;
    border-top-color: #334155 !important;
}

[data-theme="dark"] .footer .copyright {
    color: #64748b !important;
}

[data-theme="dark"] .footer .nav-link {
    color: #94a3b8 !important;
}

/* ---------- Badges ---------- */
[data-theme="dark"] .badge-default {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

/* ---------- Breadcrumbs ---------- */
[data-theme="dark"] .breadcrumb {
    background: transparent !important;
}

[data-theme="dark"] .breadcrumb-item a {
    color: #94a3b8 !important;
}

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

/* ---------- Text Overrides ---------- */
[data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3,
[data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] h6 {
    color: #f1f5f9 !important;
}

[data-theme="dark"] p {
    color: #cbd5e1;
}

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

[data-theme="dark"] .fw-bold,
[data-theme="dark"] .font-weight-bold {
    color: #e2e8f0;
}

[data-theme="dark"] label {
    color: #cbd5e1 !important;
}

/* ---------- Links ---------- */
[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link):not(.hero-btn):not(.hero-btn-secondary):not(.whatsapp-float) {
    color: #818cf8;
}

[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link):not(.hero-btn):not(.hero-btn-secondary):not(.whatsapp-float):hover {
    color: #a5b4fc;
}

/* ---------- User Dropdown ---------- */
[data-theme="dark"] .user-box {
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .user-box .u-text .text-muted {
    color: #64748b !important;
}

[data-theme="dark"] .user-box .u-text h4 {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .dropdown-user-scroll {
    background-color: #1e293b !important;
}

/* ---------- Nav Tabs ---------- */
[data-theme="dark"] .nav-tabs {
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .nav-tabs .nav-link {
    color: #94a3b8 !important;
}

[data-theme="dark"] .nav-tabs .nav-link.active {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .nav-tabs .nav-link:hover {
    border-color: #475569 !important;
}

/* ---------- List Group ---------- */
[data-theme="dark"] .list-group-item {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

/* ---------- Select2 (Dropdown Plugin) ---------- */
[data-theme="dark"] .select2-container--default .select2-selection--single {
    background-color: #334155 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e2e8f0 !important;
}

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

[data-theme="dark"] .select2-results__option {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .select2-results__option--highlighted,
[data-theme="dark"] .select2-results__option--highlighted[aria-selected] {
    background-color: #334155 !important;
    color: #f1f5f9 !important;
}

[data-theme="dark"] .select2-search__field {
    background-color: #334155 !important;
    color: #e2e8f0 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .select2-container .select2-selection--multiple {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #818cf8 !important;
    color: #fff !important;
    border: none !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #fca5a5 !important;
}

/* ---------- Feedback Form ---------- */
[data-theme="dark"] .feedback-form {
    background-color: #1e293b !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .feedback-form h2 {
    color: #f1f5f9 !important;
}

[data-theme="dark"] .feedback-form textarea {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

/* ---------- Custom Template 2 (Feedback) ---------- */
[data-theme="dark"] .custom-template2 {
    background: #1e293b !important;
}

[data-theme="dark"] .custom-template2 .title2 {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

/* ---------- Toggle Button Overrides (Kaiadmin) ---------- */
[data-theme="dark"] .gg-menu-left,
[data-theme="dark"] .gg-more-vertical-alt {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .topbar-toggler i {
    color: #e2e8f0 !important;
}

/* ---------- Pagination ---------- */
[data-theme="dark"] .page-item .page-link {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #94a3b8 !important;
}

[data-theme="dark"] .page-item.active .page-link {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #f1f5f9 !important;
}

[data-theme="dark"] .page-item .page-link:hover {
    background-color: #334155 !important;
    color: #e2e8f0 !important;
}

/* ---------- Scrollbar (Dark) ---------- */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 8px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
    background: #0f172a;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 4px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #475569;
}

/* ---------- SweetAlert Dark ---------- */
[data-theme="dark"] .swal-modal {
    background-color: #1e293b !important;
}

[data-theme="dark"] .swal-title {
    color: #f1f5f9 !important;
}

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

[data-theme="dark"] .swal-icon--success:after,
[data-theme="dark"] .swal-icon--success:before {
    background: #1e293b !important;
}

[data-theme="dark"] .swal-icon--success__hide-corners {
    background-color: #1e293b !important;
}

/* ---------- Search Form in Header ---------- */
[data-theme="dark"] .nav-search .form-control {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .nav-search .form-select {
    background-color: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

/* ==============================================
   Dashboard Page - Stats Cards & Calendar
   ============================================== */

[data-theme="dark"] .stats-card {
    background: #1e293b !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .stats-card .card-title {
    color: #94a3b8 !important;
}

[data-theme="dark"] .stats-card .stat-number {
    color: #f1f5f9 !important;
}

[data-theme="dark"] .stats-card .btn-action {
    background: #334155 !important;
    color: #cbd5e1 !important;
}

[data-theme="dark"] .calendar-card {
    background: #1e293b !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .calendar-grid {
    background-color: #334155 !important;
}

[data-theme="dark"] .calendar-day {
    background-color: #1e293b !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .calendar-day:hover {
    background: rgba(129, 140, 248, 0.15) !important;
}

[data-theme="dark"] .calendar-day.other-month {
    color: #475569 !important;
    background-color: #0f172a !important;
}

[data-theme="dark"] .calendar-day.selected {
    color: white !important;
}

[data-theme="dark"] .calendar-day.has-deadlines {
    background: linear-gradient(135deg, #422006 0%, #78350f 100%) !important;
    border-color: #d97706 !important;
    color: #fbbf24 !important;
}

[data-theme="dark"] .calendar-day.has-expired-deadlines {
    background: linear-gradient(135deg, #450a0a 0%, #7f1d1d 100%) !important;
    border-color: #dc3545 !important;
    color: #fca5a5 !important;
}

[data-theme="dark"] .deadline-item {
    background: #334155 !important;
    border-color: #475569 !important;
}

[data-theme="dark"] .deadline-item.tla-hearing {
    background: linear-gradient(135deg, #1e293b 0%, #1e3a5f 100%) !important;
    border-left-color: #60a5fa !important;
}

[data-theme="dark"] .deadline-item.opposition-hearing {
    background: linear-gradient(135deg, #1e293b 0%, #3b1c1c 100%) !important;
    border-left-color: #f87171 !important;
}

[data-theme="dark"] .deadline-item.tla-hearing h6 {
    color: #93c5fd !important;
}

[data-theme="dark"] .deadline-item.opposition-hearing h6 {
    color: #fca5a5 !important;
}

/* Dashboard empty state - overrides JS inline styles */
[data-theme="dark"] .fetching-data {
    color: #64748b !important;
}

/* ==============================================
   Trademarks / Search Pages - Shared Components
   ============================================== */

/* Hero Banner - already dark/gradient, just ensure no conflicts */
[data-theme="dark"] .hero-banner {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
}

/* Filters Card */
[data-theme="dark"] .filters-card {
    background: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3) !important;
}

/* Match Type Bar */
[data-theme="dark"] .match-type-bar {
    background: #1e293b !important;
}

[data-theme="dark"] .match-type-label {
    color: #e2e8f0 !important;
}

/* Match Pill (radio/checkbox styled buttons) */
[data-theme="dark"] .match-pill {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .match-pill:hover {
    background: #334155 !important;
}

[data-theme="dark"] .match-pill.active,
[data-theme="dark"] .match-pill:checked {
    background: #818cf8 !important;
    color: #fff !important;
}

/* Filter Pill Buttons */
[data-theme="dark"] .filter-pill-btn {
    background: #334155 !important;
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .filter-pill-btn:hover {
    background: #475569 !important;
    border-color: #64748b !important;
}

/* Filter Popover */
[data-theme="dark"] .filter-popover {
    background: #1e293b !important;
    border-color: #334155 !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.5) !important;
}

[data-theme="dark"] .filter-popover-backdrop {
    background: rgba(0, 0, 0, 0.6) !important;
}

[data-theme="dark"] .filter-popover-header {
    border-bottom-color: #334155 !important;
}

[data-theme="dark"] .filter-popover-title {
    color: #f1f5f9 !important;
}

[data-theme="dark"] .filter-popover-close {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

[data-theme="dark"] .filter-popover-body {
    background: #1e293b !important;
}

[data-theme="dark"] .filter-popover-footer {
    background: #1e293b !important;
    border-top-color: #334155 !important;
}

/* Checkbox Panels */
[data-theme="dark"] .checkbox-panel {
    background: #0f172a !important;
    border-color: #334155 !important;
}

[data-theme="dark"] .checkbox-row {
    color: #cbd5e1 !important;
}

/* Filter Labels */
[data-theme="dark"] .filter-label {
    color: #e2e8f0 !important;
}

[data-theme="dark"] .filter-section label {
    color: #cbd5e1 !important;
}

/* Shimmer Loading */
[data-theme="dark"] .shimmer-box {
    background: #334155 !important;
}

[data-theme="dark"] .shimmer-box::after {
    background: linear-gradient(to right, #334155 0%, #475569 20%, #334155 40%, #334155 100%) !important;
}

/* Progress Bars */
[data-theme="dark"] .progress {
    background-color: #334155 !important;
}

/* Sort Icons & Helpers */
[data-theme="dark"] .sort-icon {
    color: #94a3b8 !important;
}

/* ==============================================
   Deadline Pages - ManageMyDeadlines
   Navigation buttons & status filters
   ============================================== */

/* Override inline black navigation buttons */
[data-theme="dark"] .deadline-nav-btn,
[data-theme="dark"] [style*="border-color: #000000"] {
    border-color: #475569 !important;
    color: #e2e8f0 !important;
}

/* Active state nav buttons (inline bg-color: #000000) */
[data-theme="dark"] [style*="background-color: #000000"] {
    background-color: #818cf8 !important;
    border-color: #818cf8 !important;
    color: #fff !important;
}

/* Links inside deadline nav */
[data-theme="dark"] [style*="color:#000000"],
[data-theme="dark"] [style*="color: #000000"] {
    color: #e2e8f0 !important;
}

/* ==============================================
   Opposition / Rectification Record
   Status cards & document tables
   ============================================== */

/* Override inline background #f8f9fa on status cards */
[data-theme="dark"] [style*="background: #f8f9fa"],
[data-theme="dark"] [style*="background-color: #f8f9fa"] {
    background: #1e293b !important;
}

/* Override inline text colors on records */
[data-theme="dark"] [style*="color: #495057"] {
    color: #cbd5e1 !important;
}

[data-theme="dark"] [style*="color: #6c757d"] {
    color: #94a3b8 !important;
}

[data-theme="dark"] [style*="color: #212529"] {
    color: #e2e8f0 !important;
}

[data-theme="dark"] [style*="color: #adb5bd"] {
    color: #64748b !important;
}

[data-theme="dark"] [style*="color: #1d3557"] {
    color: #e2e8f0 !important;
}

/* Override background on table header rows */
[data-theme="dark"] tr[style*="background: #f8f9fa"] {
    background: #334155 !important;
}

[data-theme="dark"] tr[style*="background: #f8f9fa"] th {
    color: #e2e8f0 !important;
}

/* Override border-bottom with light color */
[data-theme="dark"] [style*="border-bottom: 2px solid #dee2e6"] {
    border-bottom-color: #334155 !important;
}

/* ==============================================
   Admin Settings Page
   ============================================== */

/* Override inline background on portfolio display */
[data-theme="dark"] [style*="background: #f8f9fa"][style*="border-radius: 8px"] {
    background: #334155 !important;
    color: #e2e8f0 !important;
}

/* Status message containers (JS-generated with inline styles) */
[data-theme="dark"] #show_status div[style*="background: #fff3cd"] {
    background: #422006 !important;
    border-left-color: #d97706 !important;
    color: #fbbf24 !important;
}

[data-theme="dark"] #show_status div[style*="background: #d4edda"] {
    background: #052e16 !important;
    border-left-color: #22c55e !important;
    color: #86efac !important;
}

[data-theme="dark"] #show_status div[style*="background: #f8d7da"] {
    background: #450a0a !important;
    border-left-color: #ef4444 !important;
    color: #fca5a5 !important;
}

/* ==============================================
   Record Pages - General, Dates, Document, Status
   ============================================== */

/* Record tabs / navigation */
[data-theme="dark"] .record-nav,
[data-theme="dark"] .record-tabs {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* Comment section */
[data-theme="dark"] .comment-item {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* Generic section backgrounds used in record pages */
[data-theme="dark"] [style*="background: #e7f3ff"] {
    background: #1e3a5f !important;
}

[data-theme="dark"] [style*="background: #fff3cd"] {
    background: #422006 !important;
}

/* ==============================================
   Journal / Agent / Attorney / Proprietor Search
   ============================================== */

/* Search card backgrounds */
[data-theme="dark"] .search-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* Override inline color on journal class field */
[data-theme="dark"] [style*="color: #6b73ff"],
[data-theme="dark"] .journal-class-field {
    color: #818cf8 !important;
}

/* ==============================================
   Watching / Dex-Watch Pages
   ============================================== */

/* Override inline #999 and #666 text */
[data-theme="dark"] [style*="color:#999"],
[data-theme="dark"] [style*="color: #999"] {
    color: #64748b !important;
}

[data-theme="dark"] [style*="color:#666"],
[data-theme="dark"] [style*="color: #666"] {
    color: #94a3b8 !important;
}

/* ==============================================
   Hearings Pages
   ============================================== */

[data-theme="dark"] .hearing-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   PDF Preview / Documents Search
   ============================================== */

[data-theme="dark"] .pdf-container,
[data-theme="dark"] .document-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   Daily/Weekly Watching Enhanced
   ============================================== */

[data-theme="dark"] .watch-card,
[data-theme="dark"] .watch-result-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   Contact Page
   ============================================== */

[data-theme="dark"] .contact-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   Trademark Changes / Updates Page
   ============================================== */

[data-theme="dark"] .change-card,
[data-theme="dark"] .update-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   User Profile Page
   ============================================== */

[data-theme="dark"] .profile-card {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   Import Trademarks Page
   ============================================== */

[data-theme="dark"] .import-section {
    background: #1e293b !important;
    border-color: #334155 !important;
}

/* ==============================================
   Generic Inline Style Overrides
   These use attribute selectors to override common
   inline styles without modifying every template.
   ============================================== */

/* White backgrounds */
[data-theme="dark"] [style*="background-color: #ffffff"],
[data-theme="dark"] [style*="background-color:#ffffff"],
[data-theme="dark"] [style*="background: #ffffff"],
[data-theme="dark"] [style*="background:#ffffff"],
[data-theme="dark"] [style*="background-color: white"],
[data-theme="dark"] [style*="background: white"] {
    background-color: #1e293b !important;
    background: #1e293b !important;
}

/* Light gray backgrounds */
[data-theme="dark"] [style*="background-color: #f4f4f4"],
[data-theme="dark"] [style*="background: #f0f0f0"],
[data-theme="dark"] [style*="background-color: #f3f3f3"],
[data-theme="dark"] [style*="background-color: #fafafa"],
[data-theme="dark"] [style*="background: #f7f7f7"],
[data-theme="dark"] [style*="background-color: #f7f7f7"] {
    background: #0f172a !important;
}

/* Override inline border colors */
[data-theme="dark"] [style*="border-color: #dee2e6"],
[data-theme="dark"] [style*="border: 1px solid #dee2e6"],
[data-theme="dark"] [style*="border-bottom: 1px solid #dee2e6"] {
    border-color: #334155 !important;
}

/* Override #1572e8 inline (brand blue in Kaiadmin) */
[data-theme="dark"] [style*="color: #1572e8"],
[data-theme="dark"] [style*="border-color: #1572e8"] {
    color: #818cf8 !important;
    border-color: #475569 !important;
}

/* ==============================================
   Responsive - Mobile Dark Mode
   ============================================== */

@media (max-width: 768px) {
    [data-theme="dark"] .navbar-collapse {
        background: #1e293b !important;
        border-top: 1px solid #334155;
    }

    [data-theme="dark"] .title-menu {
        background: #818cf8 !important;
    }
}

@media (max-width: 991px) {
    [data-theme="dark"] .page-navigation-secondary {
        background: #1e293b !important;
    }
}
