/* ============================================
   ImportPanel v5.0 - Dark Theme
   Minimal Brutalist · Warm dark · Navy + Amber
   v56: Enhanced side panel header & tabs
   ============================================ */

[data-theme="dark"] {
    color-scheme: dark;

    /* Warm dark palette (matching preview) */
    --color-bg: #0f0f1a;
    --color-surface: #1a1a2e;
    --color-surface-alt: #22223a;
    --color-border: #2a2a42;
    --color-border-light: #26263e;
    --color-bg-secondary: #151528;

    /* Text - WCAG AA compliant (4.5:1 contrast ratio minimum) */
    --color-text: #e8eef5;
    --color-text-secondary: #a8b2c4;
    --color-text-muted: #7a8394;
    --color-text-light: #ffffff;

    --color-primary: #4f8ff7;
    --color-primary-hover: #6ba3fa;
    --color-primary-light: rgba(79, 143, 247, 0.1);
    --color-primary-dark: #3b7ae8;

    --color-accent: #f59e0b;
    --color-accent-light: rgba(245, 158, 11, 0.1);
    --color-info: #38bdf8;

    --color-success-hover: #059669;
    --color-success-light: rgba(5, 150, 105, 0.1);
    --color-warning-light: rgba(217, 119, 6, 0.1);
    --color-danger-hover: #ef4444;
    --color-danger-light: rgba(220, 38, 38, 0.1);
    --color-info-light: rgba(56, 189, 248, 0.1);

    /* Sidebar - warm dark */
    --sidebar-bg: #151528;
    --sidebar-text: #7a8294;
    --sidebar-active-bg: rgba(79, 143, 247, 0.1);
    --sidebar-active-text: #4f8ff7;
    --sidebar-border: #252540;

    --topbar-bg: #151528;

    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
    --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.03);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.5);
}

/* Dark theme zebra striping */
[data-theme="dark"] tbody tr:nth-child(even) {
    background-color: rgba(255, 255, 255, 0.02);
}

/* Dark theme table row hover */
[data-theme="dark"] tbody tr:hover {
    background-color: rgba(79, 143, 247, 0.06);
    border-left-color: var(--color-primary);
}

/* Dark theme header-body separator */
[data-theme="dark"] thead th {
    border-bottom-color: var(--color-primary);
}

/* Dark theme table summary footer */
[data-theme="dark"] .table-summary-row {
    background: rgba(255, 255, 255, 0.04);
}

/* Dark theme card - solid warm surface with depth */
[data-theme="dark"] .card {
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
    box-shadow: var(--shadow-card);
}

[data-theme="dark"] .card:hover {
    border-color: #33334d;
    box-shadow: var(--shadow-md);
}

/* Dark theme stat cards - gradient surface with accent borders */
[data-theme="dark"] .stat-card {
    background: linear-gradient(135deg, var(--color-surface) 0%, rgba(255, 255, 255, 0.02) 100%);
    border-left: 4px solid var(--color-primary);
}

[data-theme="dark"] .stat-card:nth-child(1) { border-left-color: #60a5fa; }
[data-theme="dark"] .stat-card:nth-child(2) { border-left-color: #34d399; }
[data-theme="dark"] .stat-card:nth-child(3) { border-left-color: #fbbf24; }
[data-theme="dark"] .stat-card:nth-child(4) { border-left-color: #f87171; }
[data-theme="dark"] .stat-card:nth-child(5) { border-left-color: #a78bfa; }

[data-theme="dark"] .stat-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
    border-color: #33334d;
}

[data-theme="dark"] .stat-card:nth-child(1):hover { border-left-color: #60a5fa; }
[data-theme="dark"] .stat-card:nth-child(2):hover { border-left-color: #34d399; }
[data-theme="dark"] .stat-card:nth-child(3):hover { border-left-color: #fbbf24; }
[data-theme="dark"] .stat-card:nth-child(4):hover { border-left-color: #f87171; }
[data-theme="dark"] .stat-card:nth-child(5):hover { border-left-color: #a78bfa; }

/* Dark theme financial cards - gradient surface with left accent */
[data-theme="dark"] .fin-card {
    background: linear-gradient(135deg, var(--color-surface) 0%, rgba(255, 255, 255, 0.02) 100%);
    border-color: var(--color-border);
}

[data-theme="dark"] .fin-card:hover {
    border-color: #33334d;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* Dark theme empty state */
[data-theme="dark"] .empty-state {
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
}

[data-theme="dark"] .empty-state h3 {
    color: var(--color-text);
}

[data-theme="dark"] .empty-state p {
    color: var(--color-text-muted);
}

[data-theme="dark"] .empty-state-enhanced {
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
}

[data-theme="dark"] .empty-state-enhanced h3 {
    color: var(--color-text);
}

[data-theme="dark"] .empty-state-enhanced .empty-state-icon {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.08), rgba(79, 143, 247, 0.15));
}

[data-theme="dark"] .empty-state-icon-illustrated {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.06), rgba(79, 143, 247, 0.14));
    box-shadow: 0 4px 20px rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .empty-state-icon-illustrated::after {
    border-color: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .empty-state-icon-illustrated svg {
    color: #60a5fa;
}

/* Dark theme tooltip */
[data-theme="dark"] .tooltip-wrapper .tooltip-text {
    background-color: var(--color-surface-alt);
    color: var(--color-text);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .tooltip-wrapper .tooltip-text::after {
    border-color: var(--color-surface-alt) transparent transparent transparent;
}

/* Dark theme scroll-to-top */
[data-theme="dark"] .scroll-to-top,
[data-theme="dark"] .scroll-top-btn {
    background-color: rgba(26, 26, 46, 0.9);
    color: var(--color-text-secondary);
    border-color: var(--color-border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .scroll-to-top:hover,
[data-theme="dark"] .scroll-top-btn:hover {
    background-color: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.6);
}

/* Dark theme column resize indicator */
[data-theme="dark"] thead th:not(:last-child):hover {
    border-right-color: var(--color-border);
}

/* Dark theme sticky header bg */
[data-theme="dark"] thead th {
    background-color: var(--color-surface);
}

/* Dark theme breadcrumb */
[data-theme="dark"] .breadcrumb a {
    color: var(--color-text-muted);
}

[data-theme="dark"] .breadcrumb a:hover {
    color: var(--color-accent);
}

/* Dark theme inputs - subtle borders */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
    background-color: var(--color-bg-secondary);
    border-color: var(--color-border);
}

/* Dark theme checkboxes - less harsh */
[data-theme="dark"] input[type="checkbox"] {
    accent-color: var(--color-primary);
}

/* Dark theme focus states */
[data-theme="dark"] input:focus-visible,
[data-theme="dark"] select:focus-visible,
[data-theme="dark"] textarea:focus-visible {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2);
}

/* Dark theme validation feedback */
[data-theme="dark"] .input-group.field-valid input:focus-visible,
[data-theme="dark"] .input-group.field-valid select:focus-visible,
[data-theme="dark"] .input-group.field-valid textarea:focus-visible {
    box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.2);
}

[data-theme="dark"] .input-group.field-invalid input:focus-visible,
[data-theme="dark"] .input-group.field-invalid select:focus-visible,
[data-theme="dark"] .input-group.field-invalid textarea:focus-visible {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.2);
}

/* Dark theme sidebar - warm */
[data-theme="dark"] #sidebar {
    background-color: var(--sidebar-bg);
    border-right: 1px solid var(--sidebar-border);
}

[data-theme="dark"] .sidebar-nav-item.active {
    box-shadow: inset 3px 0 0 var(--color-primary);
}

/* Dark theme sidebar section labels */
[data-theme="dark"] .sidebar-section-label::after {
    background: var(--sidebar-border);
    opacity: 0.4;
}

/* Dark theme sidebar footer */
[data-theme="dark"] .sidebar-footer-user {
    border-top-color: var(--sidebar-border);
}

[data-theme="dark"] .sidebar-footer {
    border-top-color: var(--sidebar-border);
}

[data-theme="dark"] .sidebar-help-btn:hover {
    color: var(--color-primary) !important;
    background: rgba(79, 143, 247, 0.12) !important;
}

/* Dark theme notification badge dot */
[data-theme="dark"] .sidebar-badge-dot {
    background: #f87171 !important;
}

@keyframes badgePulseDark {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(248, 113, 113, 0.4);
    }
    50% {
        box-shadow: 0 0 0 3px rgba(248, 113, 113, 0);
    }
}

[data-theme="dark"] .sidebar-badge-dot {
    animation: badgePulseDark 2s ease-in-out infinite;
}

/* Dark theme topbar - frosted glass */
[data-theme="dark"] #topbar {
    background-color: rgba(21, 21, 40, 0.85);
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    border-bottom: 1px solid var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.12);
}
[data-theme="dark"] .topbar-breadcrumb-current { color: var(--color-text) !important; }
[data-theme="dark"] .topbar-breadcrumb-sep { color: var(--color-border) !important; }
[data-theme="dark"] .topbar-breadcrumb-link { color: var(--color-text-muted); }
[data-theme="dark"] .topbar-breadcrumb-link:hover { color: var(--color-primary-hover); }
[data-theme="dark"] .topbar-breadcrumb-home:hover { background-color: rgba(255, 255, 255, 0.06); }
[data-theme="dark"] .topbar-breadcrumb-icon { color: var(--color-primary) !important; }
[data-theme="dark"] .global-search-input-wrap { background: var(--color-bg-secondary) !important; border-color: var(--color-border) !important; }
[data-theme="dark"] .global-search-input-wrap:focus-within { background: var(--color-surface) !important; border-color: var(--color-primary) !important; box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15), 0 2px 8px rgba(0, 0, 0, 0.2) !important; }
[data-theme="dark"] .global-search-kbd { background: rgba(255, 255, 255, 0.05) !important; border-color: var(--color-border) !important; color: var(--color-text-muted) !important; }
[data-theme="dark"] .notification-bell:hover,
[data-theme="dark"] .quick-actions-btn:hover,
[data-theme="dark"] #theme-toggle:hover { background-color: rgba(255, 255, 255, 0.08) !important; }
[data-theme="dark"] #user-dropdown-btn:hover > div:first-child { box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2); border-color: var(--color-primary); }
[data-theme="dark"] .topbar-exchange-rate:hover { border-color: rgba(255, 255, 255, 0.1); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2); }
[data-theme="dark"] .rate-dot-fresh { box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.2); }

/* Dark theme financial bar (legacy) */
[data-theme="dark"] .financial-bar {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .financial-bar-item {
    border-right-color: var(--color-border);
}

[data-theme="dark"] .financial-bar-item--highlight {
    background-color: rgba(220, 38, 38, 0.06);
}

/* Dark theme financial cards (legacy override - see main block above .card:hover) */
[data-theme="dark"] .fin-card {
    background: linear-gradient(135deg, var(--color-surface) 0%, rgba(255, 255, 255, 0.02) 100%);
    border-color: var(--color-border);
}

[data-theme="dark"] .fin-card:hover {
    border-color: #33334d;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* Dark theme status pipeline */
[data-theme="dark"] .status-pipeline {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .pipeline-stage {
    background: var(--color-bg-secondary, #1a1a2e);
}

[data-theme="dark"] .pipeline-stage:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .pipeline-stage--active {
    background: color-mix(in srgb, var(--pipeline-color) 12%, var(--color-surface));
    box-shadow: 0 2px 12px color-mix(in srgb, var(--pipeline-color) 15%, transparent);
}

[data-theme="dark"] .pipeline-arrow {
    color: var(--color-text-muted);
    opacity: 0.4;
}

/* Dark theme toolbar */
[data-theme="dark"] .imports-toolbar {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .imports-toolbar .search-input input {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .filter-group select {
    background-color: var(--color-bg-secondary);
}

/* Dark theme table wrapper */
[data-theme="dark"] .table-wrapper {
    border-color: var(--color-border);
    background: var(--color-surface);
}

/* Dark theme action buttons */
[data-theme="dark"] .import-actions button.action-edit:hover {
    background-color: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .import-actions button.action-delete:hover {
    background-color: rgba(220, 38, 38, 0.12);
}

[data-theme="dark"] .import-actions button.action-duplicate:hover {
    background-color: rgba(59, 130, 246, 0.12);
}

[data-theme="dark"] .btn-outline {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .btn-outline:hover {
    border-color: var(--color-text-muted);
    background-color: var(--color-surface-alt);
}

/* Dark theme badges */
[data-theme="dark"] .badge-success {
    background-color: var(--color-success-light);
}
[data-theme="dark"] .badge-warning {
    background-color: var(--color-warning-light);
}
[data-theme="dark"] .badge-danger {
    background-color: var(--color-danger-light);
}
[data-theme="dark"] .badge-info {
    background-color: var(--color-info-light);
}
[data-theme="dark"] .badge-default {
    background-color: var(--color-surface-alt);
}
[data-theme="dark"] .badge-primary {
    background-color: var(--color-primary-light);
}

/* Dark theme popup dropdown */
[data-theme="dark"] .cell-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .cell-dropdown-item:hover,
[data-theme="dark"] .cell-dropdown-item.focused {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .cell-dropdown-open {
    background: rgba(79, 143, 247, 0.08) !important;
}

/* Dark theme column resize handle */
[data-theme="dark"] .col-resize-handle:hover,
[data-theme="dark"] .col-resizing .col-resize-handle {
    background: var(--color-primary);
    opacity: 0.6;
}

/* Dark theme tag editor */
[data-theme="dark"] .tag-editor {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .tag-editor-input {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
}

[data-theme="dark"] .tag-color-btn.active {
    border-color: var(--color-text);
    box-shadow: 0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-text-muted);
}

[data-theme="dark"] .tag-add-btn {
    border-color: var(--color-border);
}

/* Dark theme side panel */
[data-theme="dark"] .side-panel {
    background: var(--color-surface);
    border-left-color: var(--color-border);
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .side-panel-backdrop {
    background: rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] tr.sp-active {
    background: rgba(79, 143, 247, 0.06) !important;
}

/* Dark theme keyboard shortcut keys */
[data-theme="dark"] kbd {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.3);
}

/* Dark theme reset filters button */
[data-theme="dark"] .btn-reset-filters {
    background: rgba(220, 38, 38, 0.12);
}

[data-theme="dark"] .btn-reset-filters:hover {
    background: var(--color-danger);
    color: #fff;
}

/* Dark theme filter chips */
[data-theme="dark"] .filter-chip {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

/* Dark theme row grouping */
[data-theme="dark"] .group-header-cell {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border) !important;
}

[data-theme="dark"] .group-header-row:hover {
    background: rgba(79, 143, 247, 0.05) !important;
}

/* Dark theme calendar tooltip */
[data-theme="dark"] .calendar-tooltip {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .calendar-event:hover {
    filter: brightness(1.15);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* Dark theme bulk action bar */
[data-theme="dark"] .bulk-bar {
    background: rgba(79, 143, 247, 0.08);
    border-color: rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .btn-danger-outline {
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.4) !important;
}

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

/* Dark theme bulk status dropdown */
[data-theme="dark"] .bulk-status-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .bulk-status-dropdown-item:hover {
    background: rgba(79, 143, 247, 0.12);
}

/* Dark theme bulk edit modal */
[data-theme="dark"] .bulk-edit-desc {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .bulk-edit-field {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .bulk-edit-input {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .bulk-edit-input:disabled {
    background: rgba(255, 255, 255, 0.03);
    opacity: 0.35;
}

[data-theme="dark"] .bulk-edit-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .bulk-edit-progress-bar {
    background: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .bulk-edit-progress-fill {
    background: var(--color-primary);
}

[data-theme="dark"] .bulk-edit-progress-text {
    color: var(--color-text-secondary);
}

/* Dark theme upcoming deliveries widget */
[data-theme="dark"] .dash-deliveries-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .dash-deliveries-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-delivery-item {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-delivery-item:hover {
    background-color: rgba(79, 143, 247, 0.04);
}

/* ---- Dark: Import Comparison Modal (Enhanced) ---- */
[data-theme="dark"] .compare-summary-header {
    background: var(--color-bg-secondary, #1a1a2e);
    border-color: var(--color-border);
}

[data-theme="dark"] .compare-summary-import {
    background: var(--color-surface, #252540);
    border-color: var(--color-border);
}

[data-theme="dark"] .compare-summary-left {
    border-left-color: #f87171;
}

[data-theme="dark"] .compare-summary-right {
    border-left-color: #4ade80;
}

[data-theme="dark"] .compare-summary-vs {
    background: var(--color-surface, #252540);
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-stat-diff {
    background: rgba(248, 113, 113, 0.12);
    color: #f87171;
    border-color: rgba(248, 113, 113, 0.25);
}

[data-theme="dark"] .compare-stat-same-pill {
    background: rgba(74, 222, 128, 0.1);
    color: #4ade80;
    border-color: rgba(74, 222, 128, 0.2);
}

[data-theme="dark"] .compare-stat-total {
    background: rgba(129, 140, 248, 0.1);
    color: #818cf8;
    border-color: rgba(129, 140, 248, 0.2);
}

[data-theme="dark"] .compare-category-header {
    background: var(--color-bg-secondary, #1a1a2e);
    border-color: var(--color-border);
    border-bottom-color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .compare-category-icon {
    background: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .compare-category-badge {
    background: rgba(248, 113, 113, 0.15);
    color: #f87171;
    border-color: rgba(248, 113, 113, 0.3);
}

[data-theme="dark"] .import-compare {
    border-color: var(--color-border);
}

[data-theme="dark"] .import-compare th {
    background: var(--color-bg-secondary, #1a1a2e);
    color: var(--color-text-secondary);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .import-compare th.compare-col-left {
    color: #f87171;
}

[data-theme="dark"] .import-compare th.compare-col-right {
    color: #4ade80;
}

[data-theme="dark"] .import-compare td {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .import-compare .field-label {
    background: var(--color-bg-secondary, #1a1a2e);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .import-compare .diff-left {
    background: rgba(248, 113, 113, 0.08);
    border-left-color: rgba(248, 113, 113, 0.5);
}

[data-theme="dark"] .import-compare .diff-right {
    background: rgba(74, 222, 128, 0.08);
    border-left-color: rgba(74, 222, 128, 0.5);
}

[data-theme="dark"] .import-compare .same {
    opacity: 0.45;
}

[data-theme="dark"] .import-compare .same .compare-cell-inner {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-row-same td {
    background: var(--color-bg-secondary, #1a1a2e);
}

[data-theme="dark"] .import-compare tbody tr:hover td {
    background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .import-compare tbody tr:hover td.diff-left {
    background: rgba(248, 113, 113, 0.14);
}

[data-theme="dark"] .import-compare tbody tr:hover td.diff-right {
    background: rgba(74, 222, 128, 0.14);
}

[data-theme="dark"] .import-compare tbody tr:hover td.same {
    opacity: 0.6;
}

[data-theme="dark"] .compare-row-diff td.diff-left::after {
    background: linear-gradient(to bottom, rgba(248, 113, 113, 0.4), rgba(74, 222, 128, 0.4));
}

/* Dark theme kanban cards */
[data-theme="dark"] .kanban-card {
    background-color: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .kanban-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35), 0 4px 8px rgba(0, 0, 0, 0.2);
    border-color: #33334d;
}

[data-theme="dark"] .kanban-card-tag {
    opacity: 0.9;
}

[data-theme="dark"] .kanban-empty-icon {
    opacity: 0.2;
}

/* Dark theme kanban empty state */
[data-theme="dark"] .kanban-empty-illustrated {
    border-color: rgba(255, 255, 255, 0.08);
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.03), rgba(79, 143, 247, 0.06));
}

[data-theme="dark"] .kanban-empty-illustrated::before {
    background: radial-gradient(circle, rgba(79, 143, 247, 0.12), transparent);
}

[data-theme="dark"] .kanban-empty-illustrated .kanban-empty-icon {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.12), rgba(79, 143, 247, 0.2));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    opacity: 1;
}

/* Dark theme quick status dropdown */
[data-theme="dark"] .kanban-card-quick-status-btn {
    background: rgba(255, 255, 255, 0.05);
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-card-quick-status-btn:hover {
    background: var(--color-primary);
    color: white;
}

[data-theme="dark"] .kanban-quick-status-dropdown {
    background: var(--color-surface);
    border-color: rgba(255, 255, 255, 0.08);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .kanban-quick-status-option:hover {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .kanban-quick-status-option-active {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .kanban-quick-status-option-active:hover {
    background: rgba(79, 143, 247, 0.18);
}

/* Dark theme drag ghost and placeholder */
[data-theme="dark"] .kanban-drag-ghost {
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.5), 0 8px 16px rgba(0, 0, 0, 0.3) !important;
    border-color: var(--color-primary) !important;
}

[data-theme="dark"] .kanban-card-placeholder {
    border-color: var(--color-primary);
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.08), rgba(79, 143, 247, 0.03));
}

[data-theme="dark"] .kanban-card-placeholder::before {
    background: linear-gradient(90deg, transparent, rgba(79, 143, 247, 0.2), transparent);
}

/* Dark theme hover preview */
[data-theme="dark"] .kanban-card:hover .kanban-card-hover-preview {
    border-top-color: rgba(255, 255, 255, 0.08);
}

/* Dark theme comments */
[data-theme="dark"] .sp-comment { border-bottom-color: var(--color-border); }
[data-theme="dark"] .sp-comment-input { background: var(--color-bg-secondary, var(--color-surface-alt)); border-color: var(--color-border); color: var(--color-text); }
[data-theme="dark"] .sp-comment-form { border-top-color: var(--color-border); }
[data-theme="dark"] .sp-comment-avatar { background: rgba(79, 143, 247, 0.15); }

/* Dark theme notification bell dropdown */
[data-theme="dark"] .notification-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .notification-item:hover {
    background: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .notification-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .notification-item {
    border-bottom-color: var(--color-border);
}

/* Dark theme new notification dropdown classes */
[data-theme="dark"] .notification-dd-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .notification-dd-item {
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .notification-dd-item:hover {
    background: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .notification-dd-footer {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .notification-dd-mark-all:hover {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .notification-badge {
    border-color: var(--color-surface, #1e293b);
}

/* Dark theme row status indicators */
[data-theme="dark"] .table-wrapper table tbody tr[data-status="planning"]:hover {
    background: rgba(59, 130, 246, 0.08);
}
[data-theme="dark"] .table-wrapper table tbody tr[data-status="transit"]:hover {
    background: rgba(245, 158, 11, 0.08);
}
[data-theme="dark"] .table-wrapper table tbody tr[data-status="customs"]:hover {
    background: rgba(139, 92, 246, 0.08);
}
[data-theme="dark"] .table-wrapper table tbody tr[data-status="delivered"]:hover {
    background: rgba(16, 185, 129, 0.08);
}

/* Dark theme ETA countdown badges */
[data-theme="dark"] .eta-badge-today {
    background: rgba(239, 68, 68, 0.18);
    color: #f87171;
}

[data-theme="dark"] .eta-badge-tomorrow {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

[data-theme="dark"] .eta-badge-soon {
    background: rgba(245, 158, 11, 0.18);
    color: #fbbf24;
}

[data-theme="dark"] .eta-badge-upcoming {
    background: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
}

[data-theme="dark"] .eta-badge-past {
    background: rgba(107, 114, 128, 0.15);
    color: var(--color-text-muted);
}

/* Dark theme bottom navigation */
[data-theme="dark"] .bottom-nav {
    background: var(--sidebar-bg);
    border-top-color: var(--color-border);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.3);
}

/* Dark theme toast progress bar */
[data-theme="dark"] .toast-progress {
    opacity: 0.8;
}

/* Dark theme command palette */
[data-theme="dark"] .cmd-palette-backdrop {
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

[data-theme="dark"] .cmd-palette {
    background: var(--color-surface);
    border-color: rgba(255, 255, 255, 0.08);
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.6),
                0 0 0 1px rgba(255, 255, 255, 0.08),
                0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .cmd-palette-header {
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .cmd-palette-item:hover {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .cmd-palette-item--active {
    background: rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .cmd-palette-item-icon {
    background: rgba(255, 255, 255, 0.06);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .cmd-palette-item--active .cmd-palette-item-icon {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .cmd-palette-item-label mark {
    background: rgba(245, 158, 11, 0.25);
    color: #fbbf24;
}

[data-theme="dark"] .cmd-palette-footer {
    border-top-color: rgba(255, 255, 255, 0.06);
    background: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .cmd-palette-esc,
[data-theme="dark"] .cmd-palette-hint kbd {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .cmd-palette-body::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .cmd-palette-body::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.25);
}

[data-theme="dark"] .cmd-palette-tag--recent-cmd {
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
}

/* ============================================
   Fix #1: Scrollbar visibility
   ============================================ */
[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.25);
}

[data-theme="dark"] * {
    scrollbar-color: rgba(255, 255, 255, 0.15) transparent;
}

/* ============================================
   Fix #2: Pagination styling
   ============================================ */
[data-theme="dark"] .pagination {
    border-color: var(--color-border);
}

[data-theme="dark"] .pagination-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .pagination-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
}

[data-theme="dark"] .pagination-btn.active {
    background: var(--color-primary);
    color: var(--color-text-light);
    border-color: var(--color-primary);
}

[data-theme="dark"] .pagination-btn:disabled {
    opacity: 0.35;
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
}

[data-theme="dark"] .pagination-info,
[data-theme="dark"] .page-info {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .pagination-ellipsis {
    color: var(--color-text-muted);
}

/* ============================================
   Fix #3: Settings page dark styles
   ============================================ */
[data-theme="dark"] .settings-tabs {
    background: var(--color-border, #2a2a42);
}

[data-theme="dark"] .settings-tab {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .settings-tab:hover {
    color: var(--color-text);
    background-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .settings-tab.active {
    color: var(--color-primary);
    background-color: var(--color-surface, #1a1a2e);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .settings-tab.active::after {
    background-color: #6ba3fa;
}

[data-theme="dark"] .settings-section {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .settings-section:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .setting-row {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .setting-control select {
    background-color: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .toggle-slider {
    background-color: var(--color-border);
}

[data-theme="dark"] .toggle-slider::before {
    background-color: #e0e0e0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .toggle-switch input:checked + .toggle-slider {
    background-color: var(--color-primary);
}

[data-theme="dark"] .toggle-switch input:focus + .toggle-slider {
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .settings-save-row {
    border-top-color: var(--color-border);
}

/* ============================================
   Fix #4: Modal dark styles
   ============================================ */
[data-theme="dark"] .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

[data-theme="dark"] .modal {
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .modal-header {
    border-bottom-color: var(--color-border);
    background-color: rgba(255, 255, 255, 0.025);
}

[data-theme="dark"] .modal-header h3 {
    color: var(--color-text);
}

[data-theme="dark"] .modal-body {
    color: var(--color-text);
}

[data-theme="dark"] .modal-footer {
    border-top-color: var(--color-border);
    background-color: var(--color-bg-secondary);
}

[data-theme="dark"] .modal-close {
    color: var(--color-text-muted);
}

[data-theme="dark"] .modal-close:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--color-text);
}

/* ============================================
   Fix #5: Reports actions button dark styles
   ============================================ */
[data-theme="dark"] .reports-actions .btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .reports-actions .btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .reports-actions #btn-export-csv {
    border-color: rgba(5, 150, 105, 0.4);
    color: #34d399;
}

[data-theme="dark"] .reports-actions #btn-export-csv:hover {
    background-color: var(--color-success);
    color: #fff;
}

[data-theme="dark"] .btn-chart-download {
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

[data-theme="dark"] .btn-chart-download:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

/* ============================================
   Fix #6: Supplier star rating dark styles
   ============================================ */
[data-theme="dark"] .star-rating-star {
    color: #4a4a5a;
}

[data-theme="dark"] .star-rating-star.active {
    color: #f59e0b;
}

[data-theme="dark"] .star-rating--form .star-rating-star {
    color: #4a4a5a;
}

[data-theme="dark"] .star-rating--form .star-rating-star.active {
    color: #f59e0b;
}

[data-theme="dark"] .star-rating--form .star-rating-star.hover {
    color: #f59e0b;
}

/* ============================================
   Fix #7: Dashboard activity timeline dark styles
   ============================================ */
[data-theme="dark"] .dash-activity-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .dash-activity-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-activity-timeline {
    background: transparent;
}

[data-theme="dark"] .dash-activity-item {
    color: var(--color-text);
}

[data-theme="dark"] .dash-activity-item:hover {
    background-color: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .dash-activity-line {
    background-color: var(--color-border);
}

[data-theme="dark"] .dash-activity-dot {
    box-shadow: 0 0 0 3px var(--color-surface);
}

[data-theme="dark"] .dash-activity-content {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-activity-old {
    color: var(--color-text-muted);
    text-decoration-color: var(--color-text-muted);
}

[data-theme="dark"] .dash-activity-new {
    color: var(--color-text);
}

[data-theme="dark"] .dash-activity-arrow {
    color: var(--color-text-muted);
}

[data-theme="dark"] .dash-activity-time {
    color: var(--color-text-muted);
}

[data-theme="dark"] .dash-activity-import {
    color: var(--color-text-muted);
}

/* Activity feed dark mode */
[data-theme="dark"] .activity-feed {
    scrollbar-color: var(--color-border, #2a2a42) transparent;
}

[data-theme="dark"] .activity-feed::-webkit-scrollbar-thumb {
    background-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .activity-feed-item {
    border-bottom-color: var(--color-border-light, #1f1f35);
}

[data-theme="dark"] .activity-feed-item:hover {
    background-color: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .activity-feed-icon--status {
    background-color: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
}

[data-theme="dark"] .activity-feed-icon--payment {
    background-color: rgba(34, 197, 94, 0.15);
    color: #4ade80;
}

[data-theme="dark"] .activity-feed-icon--create {
    background-color: rgba(168, 85, 247, 0.15);
    color: #c084fc;
}

[data-theme="dark"] .activity-feed-icon--edit {
    background-color: rgba(245, 158, 11, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .activity-feed-empty {
    color: var(--color-text-muted);
}

[data-theme="dark"] .activity-feed-footer {
    border-top-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .activity-feed-footer-link {
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .activity-feed-footer-link:hover {
    color: var(--color-primary-hover, #6ba3fa);
}

/* ============================================
   Fix #8: Timeline (Gantt) toolbar dark styles
   ============================================ */
[data-theme="dark"] .gantt-toolbar {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: var(--shadow-sm);
}

[data-theme="dark"] .gantt-legend-label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .gantt-zoom-label-text {
    color: var(--color-text-muted);
}

[data-theme="dark"] .gantt-zoom-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .gantt-zoom-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .gantt-zoom-btn:active {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .gantt-zoom-value {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

/* Timeline zoom & preset controls (dark) */
[data-theme="dark"] .timeline-zoom-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .timeline-zoom-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .timeline-zoom-btn.active {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

[data-theme="dark"] .timeline-preset-btn {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .timeline-preset-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .timeline-preset-btn.active {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

[data-theme="dark"] .timeline-today-label {
    background: var(--color-surface);
    border-color: rgba(248, 113, 113, 0.3);
    color: var(--gantt-today-color);
}

[data-theme="dark"] .gantt-wrapper {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .gantt-labels {
    border-right-color: var(--color-border);
}

[data-theme="dark"] .gantt-label-row {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .gantt-label-row:hover {
    background: rgba(79, 143, 247, 0.06);
}

/* ============================================
   Fix #9: Context menu dark styles
   ============================================ */
[data-theme="dark"] .import-context-menu {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .ctx-item:hover {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .ctx-submenu {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .ctx-sub-item:hover {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .ctx-separator {
    border-top-color: var(--color-border);
}

/* ============================================
   Pinned rows dark styles
   ============================================ */
[data-theme="dark"] tr[data-pinned="true"],
[data-theme="dark"] tr.row-pinned {
    background: rgba(79, 143, 247, 0.05) !important;
}

[data-theme="dark"] tr[data-pinned="true"]:hover,
[data-theme="dark"] tr.row-pinned:hover {
    background: rgba(79, 143, 247, 0.09) !important;
}

[data-theme="dark"] tr.row-pinned-last td {
    border-bottom-color: rgba(79, 143, 247, 0.35) !important;
}

[data-theme="dark"] .pin-btn {
    color: var(--color-text-muted);
}

[data-theme="dark"] tr:hover .pin-btn:hover {
    color: var(--color-primary);
}

[data-theme="dark"] .pin-btn-active {
    color: var(--color-primary);
}

/* ============================================
   Fix #10: Calendar day panel dark styles
   ============================================ */
[data-theme="dark"] .calendar-day-panel {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4), 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .cal-panel-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .cal-panel-event:hover {
    background-color: rgba(79, 143, 247, 0.08);
}

/* ============================================
   Fix #11: Kanban card popup dark styles
   ============================================ */
[data-theme="dark"] .kanban-card-popup {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35), 0 2px 8px rgba(0, 0, 0, 0.25);
}

[data-theme="dark"] .kanban-card-popup.kanban-popup-below::after {
    border-bottom-color: var(--color-surface);
}

[data-theme="dark"] .kanban-card-popup.kanban-popup-below::before {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .kanban-card-popup.kanban-popup-above::after {
    border-top-color: var(--color-surface);
}

[data-theme="dark"] .kanban-card-popup.kanban-popup-above::before {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .kanban-popup-supplier {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .kanban-popup-row + .kanban-popup-row {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .kanban-popup-tags {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .kanban-popup-status-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .kanban-popup-status-option:hover {
    background: rgba(79, 143, 247, 0.12);
}

/* ============================================
   COMPREHENSIVE DARK MODE AUDIT - ADDITIONS
   Session 16: Full coverage pass
   ============================================ */

/* ============================================
   1. Form inputs - text color explicit
   ============================================ */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
    color: var(--color-text);
}

/* ============================================
   2. Placeholder text colors
   ============================================ */
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
    color: var(--color-text-muted);
}

[data-theme="dark"] .converter-input::placeholder {
    color: var(--color-text-muted);
}

[data-theme="dark"] .converter-input {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .converter-input:hover {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .converter-input:focus {
    background-color: var(--color-surface);
    border-color: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.25);
}

[data-theme="dark"] .converter-swap-btn {
    background: linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-alt) 100%);
    border-color: var(--color-border);
}

[data-theme="dark"] .converter-swap-btn:hover {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-hover) 100%);
    border-color: var(--color-primary);
    box-shadow: 0 4px 16px rgba(59, 130, 246, 0.4);
}

/* ============================================
   3. Selection / highlight colors
   ============================================ */
[data-theme="dark"] ::selection {
    background-color: var(--color-primary);
    color: #ffffff;
}

/* ============================================
   4. Focus outlines / rings (global)
   ============================================ */
[data-theme="dark"] *:focus-visible {
    outline-color: var(--color-primary);
}

[data-theme="dark"] .modal-close:focus-visible {
    outline-color: var(--color-primary);
}

[data-theme="dark"] .dropdown-item:focus-visible {
    outline-color: var(--color-primary);
    background-color: var(--color-surface-alt);
}

/* ============================================
   5. Dropdown menu (generic)
   ============================================ */
[data-theme="dark"] .dropdown-menu {
    background-color: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .dropdown-item:hover {
    background-color: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .dropdown-divider {
    background-color: var(--color-border);
}

/* ============================================
   6. Toast dark styles
   ============================================ */
[data-theme="dark"] .toast {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .toast-success {
    background-color: rgba(5, 150, 105, 0.08);
}

[data-theme="dark"] .toast-error {
    background-color: rgba(220, 38, 38, 0.08);
}

[data-theme="dark"] .toast-warning {
    background-color: rgba(217, 119, 6, 0.08);
}

[data-theme="dark"] .toast-info {
    background-color: rgba(2, 132, 199, 0.08);
}

[data-theme="dark"] .toast-success .toast-icon {
    background-color: rgba(5, 150, 105, 0.15);
}

[data-theme="dark"] .toast-error .toast-icon {
    background-color: rgba(220, 38, 38, 0.15);
}

[data-theme="dark"] .toast-warning .toast-icon {
    background-color: rgba(217, 119, 6, 0.15);
}

[data-theme="dark"] .toast-info .toast-icon {
    background-color: rgba(2, 132, 199, 0.15);
}

[data-theme="dark"] .toast-close:hover {
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--color-text);
}

/* ============================================
   7. Tabs component (generic)
   ============================================ */
[data-theme="dark"] .tabs {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .tab {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .tab:hover {
    color: var(--color-text);
}

[data-theme="dark"] .tab.active {
    color: var(--color-primary);
    border-bottom-color: var(--color-primary);
}

/* ============================================
   8. Card header border
   ============================================ */
[data-theme="dark"] .card-header {
    border-bottom-color: var(--color-border);
}

/* ============================================
   9. Table scrolled header shadow
   ============================================ */
[data-theme="dark"] .table-wrapper.table-scrolled thead th {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

/* ============================================
   10. Table summary row
   ============================================ */
[data-theme="dark"] .table-summary-row {
    background: var(--color-surface-alt);
    border-top-color: var(--color-border);
}

/* ============================================
   11. View switcher (imports page)
   ============================================ */
[data-theme="dark"] .view-switcher {
    background-color: var(--color-bg-secondary);
}

[data-theme="dark"] .view-switcher .view-tab.active {
    background-color: var(--color-surface);
    color: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* ============================================
   12. Form section (import form)
   ============================================ */
[data-theme="dark"] .form-section {
    border-color: var(--color-border);
}

[data-theme="dark"] .form-section-header {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .form-section-header:hover {
    background-color: var(--color-border);
}

[data-theme="dark"] .form-section-body {
    background-color: var(--color-surface);
}

/* ============================================
   13. Attachment dropzone & items
   ============================================ */
[data-theme="dark"] .attach-dropzone {
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

[data-theme="dark"] .attach-dropzone:hover,
[data-theme="dark"] .attach-dropzone.dragover {
    border-color: var(--color-primary);
    background: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .attach-item {
    border-bottom-color: var(--color-border);
}

/* ============================================
   14. Import form footer
   ============================================ */
[data-theme="dark"] .import-form-footer {
    border-top-color: var(--color-border);
}

/* ============================================
   15. Cell editable hover
   ============================================ */
[data-theme="dark"] .cell-editable:hover {
    background: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .cell-editable:hover::after {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23636b7e' stroke-width='2'%3E%3Cpath d='M11 4H4a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2v-7'/%3E%3Cpath d='M18.5 2.5a2.121 2.121 0 013 3L12 15l-4 1 1-4 9.5-9.5z'/%3E%3C/svg%3E") no-repeat center;
}

[data-theme="dark"] .cell-editable:hover .badge {
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .import-name-link {
    color: var(--color-text-primary);
}
[data-theme="dark"] .import-name-link:hover {
    color: var(--color-primary);
    border-bottom-color: var(--color-primary);
}

[data-theme="dark"] .cell-editing {
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.3);
    background: rgba(79, 143, 247, 0.05) !important;
}

[data-theme="dark"] .cell-editing input:focus,
[data-theme="dark"] .cell-editing select:focus {
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2);
}

/* Dark mode save/cancel flash */
[data-theme="dark"] .cell-saved {
    animation: cellSaveFlashDark 0.6s ease-out;
}

[data-theme="dark"] .cell-cancelled {
    animation: cellCancelFlashDark 0.4s ease-out;
}

@keyframes cellSaveFlashDark {
    0% { background-color: rgba(34, 197, 94, 0.12); }
    100% { background-color: transparent; }
}

@keyframes cellCancelFlashDark {
    0% { background-color: rgba(239, 68, 68, 0.1); }
    100% { background-color: transparent; }
}

/* Dark mode row selection */
[data-theme="dark"] .table-wrapper tbody tr.row-selected {
    background: rgba(79, 143, 247, 0.12) !important;
}

[data-theme="dark"] .table-wrapper tbody tr.row-selected:hover {
    background: rgba(79, 143, 247, 0.18) !important;
}

[data-theme="dark"] .table-wrapper tbody tr.row-selected td:nth-child(1),
[data-theme="dark"] .table-wrapper tbody tr.row-selected td:nth-child(2) {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .table-wrapper tbody tr.row-selected:hover td:nth-child(1),
[data-theme="dark"] .table-wrapper tbody tr.row-selected:hover td:nth-child(2) {
    background: rgba(79, 143, 247, 0.18);
}

/* Dark mode sticky column - subtle border instead of shadow */
[data-theme="dark"] .table-wrapper tbody td:nth-child(2) {
    border-right: 1px solid var(--color-border, #2a2a42);
}

/* Dark mode sort active */
[data-theme="dark"] thead th.sort-active {
    background: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] thead th.sort-active::after {
    background: var(--color-primary);
    opacity: 0.5;
}

/* Dark mode modified dot */
[data-theme="dark"] .cell-modified::before {
    background: #f59e0b;
}

/* ============================================
   16. Column toggle dropdown
   ============================================ */
[data-theme="dark"] .column-toggle-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .column-toggle-search input {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .column-toggle-search input:focus {
    background: var(--color-surface);
}

[data-theme="dark"] .column-toggle-item:hover {
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .column-toggle-item input[type="checkbox"] {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .column-toggle-item input[type="checkbox"]:checked {
    background: var(--color-primary);
    border-color: var(--color-primary);
}

[data-theme="dark"] .column-toggle-footer {
    background: rgba(255, 255, 255, 0.03);
    border-top-color: var(--color-border);
}

[data-theme="dark"] .column-toggle-footer button {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .column-toggle-footer button:hover {
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .column-toggle-count {
    background: var(--color-primary);
}

/* ============================================
   17. Filter presets
   ============================================ */
[data-theme="dark"] .preset-chip {
    background: rgba(79, 143, 247, 0.1);
    border-color: rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .preset-chip:hover {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .preset-save-input {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .preset-save-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .btn-save-filter {
    background: rgba(79, 143, 247, 0.1);
    border-color: rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .btn-save-filter:hover {
    background: var(--color-primary);
    color: #fff;
}

/* ============================================
   18. Imports refresh bar
   ============================================ */
[data-theme="dark"] .imports-refresh-bar {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .imports-refresh-bar .refresh-btn {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .imports-refresh-bar .refresh-btn:hover {
    color: var(--color-primary);
    border-color: var(--color-primary);
    background: rgba(79, 143, 247, 0.1);
}

/* ============================================
   19. Kanban column & toolbar
   ============================================ */
[data-theme="dark"] .kanban-column {
    background-color: var(--color-bg-secondary);
}

[data-theme="dark"] .kanban-column-header {
    border-bottom-color: var(--color-border);
    background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .kanban-toolbar {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-search-input {
    background: var(--color-bg-secondary);
    color: var(--color-text);
}

[data-theme="dark"] .kanban-search-input:focus {
    background: var(--color-surface);
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .kanban-filter-select {
    background: var(--color-bg-secondary);
    color: var(--color-text);
}

[data-theme="dark"] .kanban-filter-select:focus {
    border-color: var(--color-primary);
}

[data-theme="dark"] .kanban-cards.drag-over {
    background-color: rgba(79, 143, 247, 0.08);
    border-color: var(--color-primary);
}

[data-theme="dark"] .kanban-card.kanban-card-active {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.25), 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* ============================================
   20. Calendar page dark styles
   ============================================ */
[data-theme="dark"] .calendar-grid {
    background-color: var(--color-border);
    border-color: var(--color-border);
}

[data-theme="dark"] .calendar-header {
    background-color: var(--color-surface-alt);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .calendar-day {
    background-color: var(--color-surface);
}

[data-theme="dark"] .calendar-day:hover {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .calendar-day.today {
    border-color: var(--color-primary);
}

[data-theme="dark"] .calendar-week-number {
    background-color: var(--color-surface-alt);
}

/* ============================================
   21. Dashboard shipping widget dark styles
   ============================================ */
[data-theme="dark"] .dash-shipping-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .dash-shipping-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-shipping-chart-wrap {
    border-right-color: var(--color-border);
}

[data-theme="dark"] .dash-shipping-avg-row {
    border-bottom-color: var(--color-border);
}

/* ============================================
   22. Reports page dark styles
   ============================================ */
[data-theme="dark"] .report-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .suppliers-table th {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .suppliers-table td {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .suppliers-table tbody tr:nth-child(even) {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .suppliers-table tbody tr:hover {
    background-color: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .rank-badge {
    background-color: var(--color-surface-alt);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .rank-badge.rank-1 {
    background-color: rgba(217, 119, 6, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .rank-badge.rank-2 {
    background-color: rgba(156, 163, 175, 0.15);
    color: #9ca3af;
}

[data-theme="dark"] .rank-badge.rank-3 {
    background-color: rgba(194, 65, 12, 0.15);
    color: #fb923c;
}

/* ---- Supplier View Toggle ---- */
[data-theme="dark"] .supplier-view-toggle {
    background: var(--bg-secondary, #1e1e2e);
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .view-toggle-btn {
    color: var(--text-secondary, #94a3b8);
}

[data-theme="dark"] .view-toggle-btn:hover {
    background: var(--bg-hover, #2a2a3a);
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .view-toggle-btn.active {
    background: var(--bg-primary, #16161e);
    color: var(--color-primary, #60a5fa);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* ---- Supplier Card ---- */
[data-theme="dark"] .supplier-card {
    background: var(--bg-primary, #16161e);
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .supplier-card:hover {
    border-color: var(--color-primary, #60a5fa);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .supplier-status-dot {
    border-color: var(--bg-primary, #16161e);
}

[data-theme="dark"] .supplier-status-dot.status-active {
    background: var(--color-success, #4ade80);
}

[data-theme="dark"] .supplier-status-dot.status-inactive {
    background: var(--color-warning, #fbbf24);
}

[data-theme="dark"] .supplier-status-dot.status-dormant {
    background: var(--color-danger, #f87171);
}

[data-theme="dark"] .supplier-card-name {
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .supplier-card-name mark {
    background: rgba(96, 165, 250, 0.2);
    color: var(--color-primary, #60a5fa);
}

[data-theme="dark"] .supplier-contact-icon {
    background: var(--bg-secondary, #1e1e2e);
    color: var(--text-secondary, #94a3b8);
}

[data-theme="dark"] .supplier-contact-icon:hover {
    background: rgba(96, 165, 250, 0.15);
    color: var(--color-primary, #60a5fa);
}

[data-theme="dark"] .supplier-card-metrics {
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .supplier-metric-value {
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .supplier-gauge-bg {
    stroke: var(--bg-secondary, #1e1e2e);
}

[data-theme="dark"] .supplier-gauge-fill {
    stroke: var(--color-success, #4ade80);
}

[data-theme="dark"] .supplier-gauge-label {
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .mini-chart-bar {
    background: linear-gradient(to top, var(--color-primary, #60a5fa), rgba(96, 165, 250, 0.6));
}

[data-theme="dark"] .supplier-card:hover .mini-chart-bar {
    background: linear-gradient(to top, var(--color-success, #4ade80), rgba(74, 222, 128, 0.6));
}

[data-theme="dark"] .supplier-action-btn {
    background: var(--bg-secondary, #1e1e2e);
    border-color: var(--border-color, #2e2e3e);
    color: var(--text-secondary, #94a3b8);
}

[data-theme="dark"] .supplier-action-btn:hover {
    background: var(--bg-hover, #2a2a3a);
    border-color: var(--color-primary, #60a5fa);
    color: var(--color-primary, #60a5fa);
}

[data-theme="dark"] .supplier-card-skeleton {
    background: var(--bg-primary, #16161e);
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .empty-state-icon {
    background: var(--bg-secondary, #1e1e2e);
    color: var(--text-tertiary, #4a4a5a);
}

[data-theme="dark"] .empty-state h3 {
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .empty-state p {
    color: var(--text-secondary, #94a3b8);
}

/* ============================================
   23. Activity page dark styles
   ============================================ */
[data-theme="dark"] .activity-toolbar .form-input,
[data-theme="dark"] .activity-toolbar .form-select {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .activity-toolbar .form-input:focus,
[data-theme="dark"] .activity-toolbar .form-select:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .activity-export-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .activity-export-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

/* ============================================
   24. Market page dark styles (supplement)
   ============================================ */
[data-theme="dark"] .market-card {
    background: var(--color-surface);
    border-color: #363654;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .market-card:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
    border-color: #434368;
}

[data-theme="dark"] .market-source {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .market-source-label {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .market-source-badge {
    background-color: var(--color-surface-alt);
    color: var(--color-text-muted);
}

[data-theme="dark"] .market-summary-card {
    background: var(--color-surface);
    border-color: #363654;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .market-summary-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .rate-card-big-number {
    background: linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-alt) 100%);
    border-color: #363654;
}

[data-theme="dark"] .rate-card-big-number:hover {
    border-color: var(--color-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .converter-result-display {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.12) 0%, rgba(59, 130, 246, 0.12) 100%);
    border-color: var(--color-success);
}

[data-theme="dark"] .result-amount {
    color: var(--color-success);
}

[data-theme="dark"] .market-alert-btn {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .market-alert-btn:hover {
    border-color: var(--color-primary);
    background: rgba(59, 130, 246, 0.08);
}

[data-theme="dark"] .market-alert-btn.has-alert {
    border-color: var(--color-success);
    background-color: rgba(34, 197, 94, 0.12);
}

[data-theme="dark"] .market-alert-btn.has-alert:hover {
    background-color: rgba(34, 197, 94, 0.2);
}

[data-theme="dark"] .period-buttons {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .period-btn {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .period-btn:hover {
    color: var(--color-text);
    background: var(--color-surface);
}

[data-theme="dark"] .period-btn-active {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .chart-container {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .converter-currency-sign {
    color: var(--color-text-muted);
}

[data-theme="dark"] .converter-card {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .converter-quick-btn {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .converter-quick-btn:hover {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

[data-theme="dark"] .alerts-card {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .alerts-form {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
}

[data-theme="dark"] .alert-history-card {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .comparison-card {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .comparison-period-buttons {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .comparison-chart-container {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .comparison-correlation-badge {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-positive {
    background-color: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.25);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-negative {
    background-color: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.25);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-neutral {
    background-color: rgba(107, 114, 128, 0.1);
    border-color: rgba(107, 114, 128, 0.25);
}

[data-theme="dark"] .comparison-legend {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .rate-change.rate-up {
    background-color: rgba(34, 197, 94, 0.15);
}

[data-theme="dark"] .rate-change.rate-down {
    background-color: rgba(239, 68, 68, 0.15);
}

[data-theme="dark"] .hc-item:hover {
    background-color: var(--color-border);
}

[data-theme="dark"] .converter-history {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .market-alert-history-item {
    border-bottom-color: var(--color-border);
}

/* ============================================
   25. Auth page dark styles (supplement)
   ============================================ */
[data-theme="dark"] .auth-tabs {
    background: var(--color-border, #2a2a42);
}

[data-theme="dark"] .auth-tab {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .auth-tab:hover {
    color: var(--color-text);
    background-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .auth-tab.active {
    color: var(--color-primary);
    background-color: var(--color-surface, #1a1a2e);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .auth-card {
    border-color: var(--color-border, #2a2a42);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .auth-form input {
    background-color: var(--color-bg-secondary, #151528);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text);
}

[data-theme="dark"] .auth-form input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .auth-form .btn-primary {
    background: linear-gradient(135deg, var(--color-primary) 0%, #3b7ae8 100%);
    box-shadow: 0 2px 8px rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .auth-form .btn-primary:hover {
    box-shadow: 0 4px 16px rgba(79, 143, 247, 0.3);
}

[data-theme="dark"] .auth-error {
    background-color: rgba(220, 38, 38, 0.08);
    border-color: rgba(239, 68, 68, 0.15);
}

[data-theme="dark"] .auth-success {
    background-color: rgba(5, 150, 105, 0.08);
    border-color: rgba(34, 197, 94, 0.15);
}

[data-theme="dark"] .password-strength {
    background: var(--color-border, #2a2a42);
}

[data-theme="dark"] .password-toggle-btn:hover {
    background-color: rgba(255, 255, 255, 0.06);
}

/* ============================================
   26. File upload zone
   ============================================ */
[data-theme="dark"] .file-upload-zone {
    border-color: var(--color-border);
    background-color: var(--color-bg-secondary);
}

[data-theme="dark"] .file-upload-preview {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .file-upload-error {
    background-color: rgba(220, 38, 38, 0.1);
}

/* ============================================
   27. Attachment item
   ============================================ */
[data-theme="dark"] .attachment-item {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .attachment-item:hover {
    background-color: var(--color-border);
}

/* ============================================
   28. Wizard steps
   ============================================ */
[data-theme="dark"] .wizard-step-num {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

[data-theme="dark"] .wizard-step-line {
    background-color: var(--color-border);
}

/* ============================================
   29. CSV mapping & preview
   ============================================ */
[data-theme="dark"] .csv-mapping-item.mapped {
    background-color: rgba(5, 150, 105, 0.1);
}

[data-theme="dark"] .csv-mapping-item.unmapped {
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .csv-error-list {
    border-color: var(--color-border);
}

[data-theme="dark"] .csv-error-item {
    border-bottom-color: var(--color-border);
}

/* ============================================
   30. Radio label (CSV mode selector)
   ============================================ */
[data-theme="dark"] .radio-label {
    border-color: var(--color-border);
}

[data-theme="dark"] .radio-label:hover {
    border-color: var(--color-primary);
    background-color: rgba(79, 143, 247, 0.08);
}

/* ============================================
   31. Side panel header/footer borders
   ============================================ */
[data-theme="dark"] .side-panel-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .side-panel-footer {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .side-panel-nav-btn {
    border-color: var(--color-border);
}

[data-theme="dark"] .side-panel-nav-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

/* ============================================
   32. Side panel sections
   ============================================ */
[data-theme="dark"] .sp-section {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .sp-changelog-entry {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .sp-changelog-detail em {
    background: var(--color-bg-secondary);
}

/* ============================================
   33. Changelog detail em (in components.css)
   ============================================ */
[data-theme="dark"] .changelog-entry {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .changelog-detail em {
    background: var(--color-surface-alt);
}

/* ============================================
   34. Tag editor suggestions
   ============================================ */
[data-theme="dark"] .tag-editor-suggestions {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .tag-editor-sug-item:hover {
    background: rgba(79, 143, 247, 0.1);
    color: var(--color-primary);
}

[data-theme="dark"] .tag-editor-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.15);
}

/* ============================================
   35. Shortcut row hover
   ============================================ */
[data-theme="dark"] .shortcut-row:hover {
    background: var(--color-surface-alt);
}

/* ============================================
   36. Kanban popup status select hover
   ============================================ */
[data-theme="dark"] .kanban-popup-status-select:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .kanban-popup-close:hover {
    background: var(--color-surface-alt);
    color: var(--color-text);
}

/* ============================================
   37. Calendar tooltip border
   ============================================ */
[data-theme="dark"] .calendar-tooltip-product {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .calendar-tooltip-hint {
    border-top-color: var(--color-border);
}

/* ============================================
   38. Gantt header, row, grid
   ============================================ */
[data-theme="dark"] .gantt-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .gantt-month {
    border-right-color: var(--color-border);
}

[data-theme="dark"] .gantt-row {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .gantt-labels-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

/* ============================================
   39. Sidebar hover dark
   ============================================ */
[data-theme="dark"] .sidebar-nav-item:hover:not(.active) {
    background-color: rgba(79, 143, 247, 0.08);
    color: var(--color-text);
}

[data-theme="dark"] .sidebar-nav-item.active {
    background-color: rgba(79, 143, 247, 0.12) !important;
    box-shadow: inset 3px 0 0 var(--color-primary);
}

[data-theme="dark"] .sidebar-section-divider {
    background: var(--sidebar-border, #252540);
    opacity: 0.4;
}

[data-theme="dark"] .sidebar-user-avatar {
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .sidebar-footer {
    border-top-color: var(--sidebar-border) !important;
}

[data-theme="dark"] .sidebar-logo {
    border-bottom-color: var(--sidebar-border) !important;
}

/* ============================================
   39b. Sidebar collapse button dark
   ============================================ */
[data-theme="dark"] .sidebar-collapse-btn {
    color: var(--color-text-muted);
    border-top-color: var(--sidebar-border);
}

[data-theme="dark"] .sidebar-collapse-btn:hover {
    color: var(--color-text);
    background: rgba(79, 143, 247, 0.08);
}

/* ============================================
   40. Exchange rate topbar
   ============================================ */
[data-theme="dark"] .topbar-exchange-rate {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

/* ============================================
   41. Sidebar section divider (collapsed)
   ============================================ */
[data-theme="dark"] #sidebar.collapsed .sidebar-section-divider {
    background: var(--color-border);
}

/* ============================================
   42. Spinner
   ============================================ */
[data-theme="dark"] .spinner {
    border-color: var(--color-border);
    border-top-color: var(--color-primary);
}

/* ============================================
   43. Skeleton base shimmer
   ============================================ */
[data-theme="dark"] .skeleton-base {
    background: linear-gradient(
        90deg,
        var(--color-surface) 25%,
        var(--color-surface-alt) 37%,
        var(--color-surface) 63%
    );
    background-size: 400% 100%;
}

/* ============================================
   44. Error page
   ============================================ */
[data-theme="dark"] .error-page__code {
    color: var(--color-text-muted);
}

[data-theme="dark"] .error-page__text {
    color: var(--color-text-secondary);
}

/* ============================================
   45. Scroll progress bar
   ============================================ */
[data-theme="dark"] .scroll-progress::after {
    background-color: var(--color-primary);
}

/* ============================================
   46. Dashboard chart card borders
   ============================================ */
[data-theme="dark"] .chart-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .recent-imports .card-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .recent-imports .table-wrapper {
    border: none;
    background: transparent;
}

/* ============================================
   47. Backups page (enhanced v7 - cards, timeline, storage)
   ============================================ */
/* Toolbar */
[data-theme="dark"] .backups-toolbar {
    background: var(--color-surface);
    border-color: var(--color-border-light);
}

[data-theme="dark"] .backups-toolbar .search-input input {
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .backups-toolbar .search-input input:focus-visible {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .backups-date-input,
[data-theme="dark"] .backups-type-select {
    background: var(--color-surface-alt);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .backups-date-input:focus-visible,
[data-theme="dark"] .backups-type-select:focus-visible {
    background: var(--color-bg-secondary);
}

/* Auto-backup card */
[data-theme="dark"] .backups-auto-backup-card {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.15) 0%, rgba(79, 143, 247, 0.05) 100%);
    border-color: rgba(79, 143, 247, 0.4);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .backups-auto-backup-card:hover {
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .backups-auto-backup-icon {
    background: var(--color-primary);
    box-shadow: 0 2px 8px rgba(79, 143, 247, 0.5);
}

[data-theme="dark"] .backups-toggle-slider {
    background: rgba(100, 116, 139, 0.4);
}

[data-theme="dark"] .backups-toggle-slider::before {
    background: var(--color-text-light);
}

[data-theme="dark"] .backups-auto-backup-toggle input:checked + .backups-toggle-slider {
    background: var(--color-primary);
}

[data-theme="dark"] .backups-auto-backup-body {
    border-top-color: rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .backups-auto-backup-body.active {
    background: transparent;
}

[data-theme="dark"] .backups-auto-backup-select {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .backups-auto-backup-info-value {
    color: var(--color-primary);
}

/* Storage usage */
[data-theme="dark"] .backups-storage-card {
    background: var(--color-surface);
    border-color: var(--color-border-light);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .backups-storage-card:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .backups-storage-bar {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .backups-storage-bar-fill {
    box-shadow: 0 0 12px rgba(79, 143, 247, 0.6);
}

/* Timeline */
[data-theme="dark"] .backups-timeline-dot {
    background: var(--color-primary);
    border-color: var(--color-bg);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .backups-timeline-item:hover .backups-timeline-dot {
    box-shadow: 0 0 0 5px rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .backups-timeline-line {
    background: linear-gradient(180deg, var(--color-border) 0%, transparent 100%);
}

/* Backup cards */
[data-theme="dark"] .backups-card {
    background: var(--color-surface);
    border-color: var(--color-border-light);
    border-left-color: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .backups-card:hover {
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .backups-card[data-status="completed"] {
    border-left-color: #34d399;
}

[data-theme="dark"] .backups-card[data-status="failed"] {
    border-left-color: #f87171;
}

[data-theme="dark"] .backups-card[data-status="pending"] {
    border-left-color: #fbbf24;
}

[data-theme="dark"] .backups-card-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border-light);
}

[data-theme="dark"] .backups-card-date {
    color: var(--color-text);
}

[data-theme="dark"] .backups-card-badge-manual {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary);
}

[data-theme="dark"] .backups-card-badge-auto {
    background: rgba(52, 211, 153, 0.15);
    color: #34d399;
}

[data-theme="dark"] .backups-card-badge-incremental {
    background: rgba(245, 158, 11, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .backups-card-badge-size {
    background: var(--color-surface-alt);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .backups-card-badge-count {
    background: rgba(79, 143, 247, 0.12);
    color: var(--color-primary);
}

[data-theme="dark"] .backups-card-status-completed {
    background: rgba(52, 211, 153, 0.15);
    color: #34d399;
}

[data-theme="dark"] .backups-card-status-failed {
    background: rgba(248, 113, 113, 0.15);
    color: #f87171;
}

[data-theme="dark"] .backups-card-status-pending {
    background: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .backups-card-footer {
    background: var(--color-surface-alt);
    border-top-color: var(--color-border-light);
}

[data-theme="dark"] .backups-card-footer .btn-primary {
    background: var(--color-primary);
}

[data-theme="dark"] .backups-card-footer .btn-primary:hover {
    background: var(--color-primary-hover);
    box-shadow: 0 4px 12px rgba(79, 143, 247, 0.5);
}

[data-theme="dark"] .backups-card-footer .btn-ghost {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .backups-card-footer .btn-ghost:hover {
    background: var(--color-surface);
    border-color: var(--color-primary);
}

[data-theme="dark"] .backups-card-footer .btn-danger-text:hover {
    background: rgba(239, 68, 68, 0.15);
}

/* Empty state */
[data-theme="dark"] .backups-empty-icon {
    background: rgba(79, 143, 247, 0.12);
    color: var(--color-primary);
}

[data-theme="dark"] .backups-no-results .backups-empty-icon {
    background: var(--color-surface-alt);
    color: var(--color-text-muted);
}

/* Comparison modal */
[data-theme="dark"] .backup-compare-diff-count {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.15) 0%, rgba(79, 143, 247, 0.05) 100%);
    border-color: rgba(79, 143, 247, 0.4);
}

[data-theme="dark"] .backup-compare-diff-count strong {
    color: var(--color-primary);
}

[data-theme="dark"] .backup-compare-header {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .backup-compare-side strong {
    color: var(--color-text);
}

[data-theme="dark"] .compare-stat-added {
    background: rgba(52, 211, 153, 0.1);
}

[data-theme="dark"] .compare-stat-removed {
    background: rgba(248, 113, 113, 0.1);
}

[data-theme="dark"] .compare-stat-changed {
    background: rgba(251, 191, 36, 0.1);
}

[data-theme="dark"] .compare-stat-same {
    background: rgba(148, 163, 184, 0.1);
}

[data-theme="dark"] .compare-item-added {
    background: rgba(52, 211, 153, 0.08);
}

[data-theme="dark"] .compare-item-removed {
    background: rgba(248, 113, 113, 0.08);
}

[data-theme="dark"] .compare-item-changed {
    background: rgba(251, 191, 36, 0.08);
}

[data-theme="dark"] .compare-item-added:hover {
    background: rgba(52, 211, 153, 0.15);
}

[data-theme="dark"] .compare-item-removed:hover {
    background: rgba(248, 113, 113, 0.15);
}

[data-theme="dark"] .compare-item-changed:hover {
    background: rgba(251, 191, 36, 0.15);
}

[data-theme="dark"] .compare-field-old {
    color: #f87171;
}

[data-theme="dark"] .compare-field-new {
    color: #34d399;
}

[data-theme="dark"] .compare-no-diff-icon {
    background: rgba(52, 211, 153, 0.15);
    color: #34d399;
}

/* ============================================
   48. Trend indicators
   ============================================ */
[data-theme="dark"] .trend-up {
    color: #34d399;
    background-color: rgba(5, 150, 105, 0.1);
}

[data-theme="dark"] .trend-down {
    color: #f87171;
    background-color: rgba(220, 38, 38, 0.1);
}

/* ============================================
   49. Sidebar badges
   ============================================ */
[data-theme="dark"] .sidebar-badge[data-badge="imports"] {
    background-color: rgba(79, 143, 247, 0.12);
    color: var(--color-primary);
}

[data-theme="dark"] .sidebar-badge[data-badge="archive"] {
    background-color: var(--color-surface-alt);
    color: var(--color-text-muted);
}

/* ============================================
   50. Bottom nav item dark hover
   ============================================ */
[data-theme="dark"] .bottom-nav-item:hover {
    background: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .bottom-nav-item.active {
    color: var(--color-primary);
}

/* ============================================
   51. Settings unsaved bar + section flash
   ============================================ */
[data-theme="dark"] .settings-section.save-success {
    border-left-color: var(--color-success);
    background-color: rgba(5, 150, 105, 0.06);
    box-shadow: 0 0 0 1px rgba(5, 150, 105, 0.15);
}

[data-theme="dark"] .settings-search-highlight {
    background-color: #854d0e;
    color: #fef08a;
}

[data-theme="dark"] .settings-danger-zone {
    border-color: #ef4444;
    background: rgba(239, 68, 68, 0.08);
}

[data-theme="dark"] .settings-danger-zone:hover {
    box-shadow: 0 2px 12px rgba(239, 68, 68, 0.25);
}

[data-theme="dark"] .settings-danger-title {
    color: #f87171;
}

[data-theme="dark"] .settings-export-stat {
    background: var(--color-bg-secondary, #151528);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .settings-export-preview-tree {
    background: var(--color-bg-secondary, #151528);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .settings-export-json {
    color: var(--color-text, #e2e8f0);
}

[data-theme="dark"] .settings-unsaved-bar {
    background-color: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

/* ============================================
   52. Payment row colors dark
   ============================================ */
[data-theme="dark"] tr[data-payment="paid"] {
    background: rgba(34, 197, 94, 0.06) !important;
}

[data-theme="dark"] tr[data-payment="partial"] {
    background: rgba(245, 158, 11, 0.06) !important;
}

[data-theme="dark"] tr[data-payment="paid"]:hover {
    background: rgba(34, 197, 94, 0.1) !important;
}

[data-theme="dark"] tr[data-payment="partial"]:hover {
    background: rgba(245, 158, 11, 0.1) !important;
}

/* ============================================
   53. Fetch rate button
   ============================================ */
[data-theme="dark"] .btn-fetch-rate {
    background: rgba(79, 143, 247, 0.1);
    color: var(--color-primary);
}

[data-theme="dark"] .btn-fetch-rate:hover {
    background: var(--color-primary);
    color: #fff;
}

/* ============================================
   54. Notification close button
   ============================================ */
[data-theme="dark"] .notification-close {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notification-close:hover {
    color: var(--color-text);
}

/* ============================================
   55. Kanban column header colors fix
   ============================================ */
[data-theme="dark"] .kanban-column.planning .kanban-column-header {
    border-bottom-color: #60a5fa;
}

[data-theme="dark"] .kanban-column.transit .kanban-column-header {
    border-bottom-color: #fbbf24;
}

[data-theme="dark"] .kanban-column.customs .kanban-column-header {
    border-bottom-color: var(--color-primary);
}

[data-theme="dark"] .kanban-column.delivered .kanban-column-header {
    border-bottom-color: #34d399;
}

/* ============================================
   56. Calendar event chip dark adjustments
   ============================================ */
[data-theme="dark"] .calendar-event.event-planning {
    background-color: rgba(96, 165, 250, 0.15);
    color: #60a5fa;
}

[data-theme="dark"] .calendar-event.event-transit {
    background-color: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .calendar-event.event-customs {
    background-color: rgba(167, 139, 250, 0.15);
    color: #a78bfa;
}

[data-theme="dark"] .calendar-event.event-delivered {
    background-color: rgba(52, 211, 153, 0.15);
    color: #34d399;
}

/* ============================================
   57. Btn ghost dark tweaks
   ============================================ */
[data-theme="dark"] .btn-ghost:hover {
    background-color: var(--color-surface-alt);
    color: var(--color-text);
}

/* ============================================
   58. Btn secondary dark tweaks
   ============================================ */
[data-theme="dark"] .btn-secondary {
    color: var(--color-primary);
    border-color: var(--color-primary);
}

[data-theme="dark"] .btn-secondary:hover {
    background-color: rgba(79, 143, 247, 0.1);
}

/* ============================================
   59. Input validation borders dark
   ============================================ */
[data-theme="dark"] .input-error {
    border-color: var(--color-danger) !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);
}

[data-theme="dark"] .input-valid {
    border-color: var(--color-success) !important;
    box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.15);
}

/* ============================================
   60. Sidebar overlay dark
   ============================================ */
[data-theme="dark"] .sidebar-overlay.active {
    background: rgba(0, 0, 0, 0.7);
}

/* ============================================
   61. Converter history border
   ============================================ */
[data-theme="dark"] .converter-history {
    border-top-color: var(--color-border);
}

/* ============================================
   62. Restore options (backups)
   ============================================ */
[data-theme="dark"] .restore-option strong {
    color: var(--color-text);
}

/* ============================================
   63. Dashboard deliveries count badge
   ============================================ */
[data-theme="dark"] .dash-deliveries-count {
    background-color: rgba(79, 143, 247, 0.12);
    color: var(--color-primary);
}

/* ============================================
   64. Dragging row dark
   ============================================ */
[data-theme="dark"] tr.dragging {
    background: var(--color-surface-alt) !important;
}

[data-theme="dark"] tr.drag-over {
    border-top-color: var(--color-primary) !important;
}

/* ============================================
   65. Report card header border
   ============================================ */
[data-theme="dark"] .report-card-header h3 {
    color: var(--color-text);
}

/* ============================================
   66. Calendar day panel body scrollbar
   ============================================ */
[data-theme="dark"] .cal-panel-body {
    scrollbar-color: rgba(255, 255, 255, 0.12) transparent;
}

/* 67. Kanban card hover shadow - merged into rule at ~line 415 */

/* ============================================
   68. Skeleton card border
   ============================================ */
[data-theme="dark"] .skeleton-card {
    border-left-color: var(--color-border) !important;
}

/* ============================================
   71. Kanban enhanced stats & WIP popover
   ============================================ */
[data-theme="dark"] .kanban-column-stats {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .kanban-stat-value {
    color: var(--color-text);
}

[data-theme="dark"] .kanban-value-bar {
    background: var(--color-border);
}

[data-theme="dark"] .kanban-sparkline-wrap {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .kanban-sparkline-label {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-sparkline-total {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-wip-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .kanban-wip-popover-label {
    color: var(--color-text);
}

[data-theme="dark"] .kanban-wip-popover-subtitle {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-wip-popover-input {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .kanban-wip-popover-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .kanban-wip-popover-hint {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-column.kanban-wip-warning {
    background-color: rgba(245, 158, 11, 0.06);
}

[data-theme="dark"] .kanban-column.kanban-wip-warning .kanban-wip-indicator {
    background: rgba(245, 158, 11, 0.15);
    border-color: rgba(245, 158, 11, 0.25);
}

[data-theme="dark"] .kanban-column.kanban-wip-warning .kanban-column-header {
    background: rgba(245, 158, 11, 0.08);
}

[data-theme="dark"] .kanban-column.kanban-wip-exceeded {
    background-color: rgba(239, 68, 68, 0.06);
}

[data-theme="dark"] .kanban-column.kanban-wip-exceeded .kanban-wip-indicator {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.25);
}

[data-theme="dark"] .kanban-column.kanban-wip-exceeded .kanban-column-header {
    background: rgba(239, 68, 68, 0.08);
}

@media (prefers-reduced-motion: reduce) {
    [data-theme="dark"] .kanban-column.kanban-wip-exceeded {
        animation: none;
    }
}

/* ============================================
   69. Chart legend text
   ============================================ */
[data-theme="dark"] .chart-legend-item {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .report-legend-item {
    color: var(--color-text-secondary);
}

/* ============================================
   70. Dash shipping chart border
   ============================================ */
@media (max-width: 768px) {
    [data-theme="dark"] .dash-shipping-chart-wrap {
        border-right: none;
        border-bottom-color: var(--color-border);
    }
}

/* ============================================
   71. Import Lifecycle Stepper
   ============================================ */
[data-theme="dark"] .import-stepper {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .import-stepper-circle {
    border-color: var(--color-border);
    background: var(--color-surface);
    color: var(--color-text-muted);
}

[data-theme="dark"] .import-stepper-step.completed .import-stepper-circle {
    background: var(--color-success, #10b981);
    border-color: var(--color-success, #10b981);
}

[data-theme="dark"] .import-stepper-step.current .import-stepper-circle {
    background: var(--color-primary);
    border-color: var(--color-primary);
    box-shadow: 0 0 0 4px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .import-stepper-line {
    background: var(--color-border);
}

[data-theme="dark"] .import-stepper-step.completed .import-stepper-line {
    background: var(--color-success, #10b981);
}

/* ============================================
   71. Notification Center page
   ============================================ */
[data-theme="dark"] .notif-preferences-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .notif-prefs-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .notif-prefs-header h3 {
    color: var(--color-text);
}

[data-theme="dark"] .notif-prefs-close {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-prefs-close:hover {
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .notif-pref-label {
    color: var(--color-text);
}

[data-theme="dark"] .notif-prefs-footer {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .notif-toolbar {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .notif-checkbox-all {
    color: var(--color-text);
}

[data-theme="dark"] .notif-checkbox-all:hover {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .notif-group-toggle:hover {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .notif-group-title {
    color: var(--color-text);
}

[data-theme="dark"] .notif-group-count {
    background: var(--color-bg-secondary);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .notif-stat-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .notif-stat-card:hover {
    border-color: rgba(79, 143, 247, 0.3);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .notif-stat-value {
    color: var(--color-text);
}

[data-theme="dark"] .notif-stat-label {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-stat-icon.all {
    background: rgba(79, 143, 247, 0.12);
    color: #60a5fa;
}

[data-theme="dark"] .notif-stat-icon.unread {
    background: rgba(245, 158, 11, 0.12);
    color: #fbbf24;
}

[data-theme="dark"] .notif-stat-icon.today {
    background: rgba(16, 185, 129, 0.12);
    color: #34d399;
}

[data-theme="dark"] .notif-card {
    background: var(--color-surface);
    border-color: var(--color-border);
}

/* Dark mode: accent borders by type */
[data-theme="dark"] .notif-card[data-type="system"],
[data-theme="dark"] .notif-card[data-type="status"] {
    border-left-color: #60a5fa;
}

[data-theme="dark"] .notif-card[data-type="eta"] {
    border-left-color: #34d399;
}

[data-theme="dark"] .notif-card[data-type="payment"] {
    border-left-color: #fbbf24;
}

[data-theme="dark"] .notif-card[data-type="comment"],
[data-theme="dark"] .notif-card[data-type="alert"] {
    border-left-color: #f87171;
}

[data-theme="dark"] .notif-card.unread {
    background: rgba(79, 143, 247, 0.04);
}

[data-theme="dark"] .notif-card.unread::after {
    background: #60a5fa;
    box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.2);
}

[data-theme="dark"] .notif-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .notif-card.unread:hover {
    background: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .notif-title {
    color: var(--color-text);
}

[data-theme="dark"] .notif-desc {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .notif-time {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-icon.eta {
    background: rgba(16, 185, 129, 0.12);
    color: #34d399;
}

[data-theme="dark"] .notif-icon.status {
    background: rgba(79, 143, 247, 0.12);
    color: #60a5fa;
}

[data-theme="dark"] .notif-icon.payment {
    background: rgba(239, 68, 68, 0.12);
    color: #f87171;
}

[data-theme="dark"] .notif-icon.comment {
    background: rgba(16, 185, 129, 0.12);
    color: #34d399;
}

[data-theme="dark"] .notif-icon.system {
    background: rgba(107, 114, 128, 0.15);
    color: #9ca3af;
}

[data-theme="dark"] .notif-type-badge.eta {
    background: rgba(16, 185, 129, 0.12);
    color: #34d399;
}

[data-theme="dark"] .notif-type-badge.status {
    background: rgba(79, 143, 247, 0.12);
    color: #60a5fa;
}

[data-theme="dark"] .notif-type-badge.payment {
    background: rgba(239, 68, 68, 0.12);
    color: #f87171;
}

[data-theme="dark"] .notif-type-badge.comment {
    background: rgba(16, 185, 129, 0.12);
    color: #34d399;
}

[data-theme="dark"] .notif-type-badge.system {
    background: rgba(107, 114, 128, 0.15);
    color: #9ca3af;
}

[data-theme="dark"] .notif-action-btn {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-action-btn:hover {
    background: var(--color-surface-alt);
    color: var(--color-text);
}

[data-theme="dark"] .notif-btn-read:hover {
    color: var(--color-primary);
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .notif-btn-unread:hover {
    color: #fbbf24;
    background: rgba(245, 158, 11, 0.1);
}

[data-theme="dark"] .notif-btn-delete:hover {
    color: #f87171;
    background: rgba(239, 68, 68, 0.1);
}

[data-theme="dark"] .notif-empty-title {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .notif-empty-desc {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-search-wrapper .form-input {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .notif-search-icon {
    color: var(--color-text-muted);
}

/* Dark mode: filter pill buttons */
[data-theme="dark"] .notif-filter-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .notif-filter-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .notif-filter-btn.active {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .notif-filter-btn .notif-filter-count {
    background: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .notif-filter-btn.active .notif-filter-count {
    background: rgba(255, 255, 255, 0.25);
}

[data-theme="dark"] .notif-filters .form-select {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .notif-card.selected {
    background: rgba(79, 143, 247, 0.06);
    border-color: var(--color-primary);
}

/* ============================================
   72. Market Price Alerts (inline)
   ============================================ */
[data-theme="dark"] .market-alert-btn {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
    background: transparent;
}

[data-theme="dark"] .market-alert-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .market-alert-btn.has-alert {
    border-color: #f59e0b;
    color: #fbbf24;
    background-color: rgba(245, 158, 11, 0.08);
}

[data-theme="dark"] .market-alert-btn.has-alert:hover {
    background-color: rgba(245, 158, 11, 0.15);
}

[data-theme="dark"] .market-alert-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .market-alert-popover input {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .market-alert-popover input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .market-alert-popover label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .market-alert-triggered.above {
    background: rgba(239, 68, 68, 0.12);
    color: #f87171;
    border-color: rgba(239, 68, 68, 0.25);
}

[data-theme="dark"] .market-alert-triggered.below {
    background: rgba(34, 197, 94, 0.12);
    color: #34d399;
    border-color: rgba(34, 197, 94, 0.25);
}

[data-theme="dark"] .market-card-alerting {
    animation: alertPulseDark 2s ease-in-out infinite;
}

@keyframes alertPulseDark {
    0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.25); }
    50% { box-shadow: 0 0 0 8px rgba(239, 68, 68, 0); }
}

/* ============================================
   Table Cell Keyboard Navigation (dark)
   ============================================ */
[data-theme="dark"] .table-cell-focused {
    outline-color: #60a5fa;
    box-shadow: 0 0 0 1px rgba(96, 165, 250, 0.25);
}

[data-theme="dark"] .table-cell-navigating {
    background-color: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] tbody td[tabindex]:focus-visible {
    outline-color: #60a5fa;
}

/* ============================================
   73. Kanban Card Urgency / Priority Colors
   ============================================ */

/* Overdue card: muted red for dark mode */
[data-theme="dark"] .kanban-card.kanban-card-overdue {
    border-left-color: #f87171 !important;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, var(--color-surface) 60%);
    animation: urgencyPulseDark 3s ease-in-out infinite;
}

@keyframes urgencyPulseDark {
    0%, 100% {
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    }
    50% {
        box-shadow: 0 0 0 2px rgba(248, 113, 113, 0.2), 0 2px 8px rgba(248, 113, 113, 0.1);
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-theme="dark"] .kanban-card.kanban-card-overdue {
        animation: none;
        box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.25), 0 1px 3px rgba(0, 0, 0, 0.3);
    }
}

/* Urgent card: muted orange for dark mode */
[data-theme="dark"] .kanban-card.kanban-card-urgent {
    border-left-color: #fb923c !important;
    background: linear-gradient(135deg, rgba(249, 115, 22, 0.07) 0%, var(--color-surface) 60%);
}

/* Soon card: muted yellow for dark mode */
[data-theme="dark"] .kanban-card.kanban-card-soon {
    border-left-color: #fbbf24 !important;
    background: linear-gradient(135deg, rgba(234, 179, 8, 0.05) 0%, var(--color-surface) 60%);
}

/* Payment dots: slightly brighter for dark */
[data-theme="dark"] .kanban-payment-dot-paid {
    background-color: #4ade80;
    border-color: rgba(74, 222, 128, 0.3);
}

[data-theme="dark"] .kanban-payment-dot-partial {
    background-color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.3);
}

[data-theme="dark"] .kanban-payment-dot-unpaid {
    background-color: #f87171;
    border-color: rgba(248, 113, 113, 0.3);
}

[data-theme="dark"] .kanban-card-payment-dot {
    border-color: rgba(0, 0, 0, 0.3);
}

/* Urgency badges: brighter text for dark */
[data-theme="dark"] .kanban-urgency-badge-overdue {
    background: rgba(239, 68, 68, 0.18);
    color: #fca5a5;
}

[data-theme="dark"] .kanban-urgency-badge-urgent {
    background: rgba(249, 115, 22, 0.18);
    color: #fdba74;
}

/* Legend bar dark */
[data-theme="dark"] .kanban-legend {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-legend-title {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-legend-item {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-legend-color-overdue {
    background-color: #f87171;
}

[data-theme="dark"] .kanban-legend-color-urgent {
    background-color: #fb923c;
}

[data-theme="dark"] .kanban-legend-color-soon {
    background-color: #fbbf24;
}

/* ============================================
   Import Card View (dark)
   ============================================ */
[data-theme="dark"] .imports-view-toggle {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .imports-view-toggle .view-toggle-btn.active {
    background: var(--color-surface);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .import-card {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: var(--shadow-card);
}

[data-theme="dark"] .import-card:hover {
    border-color: #33334d;
    box-shadow: var(--shadow-md);
}

[data-theme="dark"] .import-card.selected {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.25), var(--shadow-md);
}

[data-theme="dark"] .import-card-financial {
    border-top-color: var(--color-border);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .import-card-actions button:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .import-card-actions button.card-action-edit:hover {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .import-card-actions button.card-action-archive:hover {
    background: rgba(56, 189, 248, 0.12);
}

[data-theme="dark"] .import-card-actions button.card-action-view:hover {
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .card-eta-countdown.eta-overdue {
    background: rgba(220, 38, 38, 0.12);
    color: #f87171;
}

[data-theme="dark"] .card-eta-countdown.eta-today {
    background: rgba(220, 38, 38, 0.12);
    color: #f87171;
}

[data-theme="dark"] .card-eta-countdown.eta-urgent {
    background: rgba(245, 158, 11, 0.12);
    color: #fbbf24;
}

[data-theme="dark"] .card-eta-countdown.eta-soon {
    background: rgba(59, 130, 246, 0.12);
    color: #60a5fa;
}

[data-theme="dark"] .card-eta-countdown.eta-normal {
    background: var(--color-surface-alt);
    color: var(--color-text-muted);
}

[data-theme="dark"] .import-card-skeleton {
    background: var(--color-surface);
    border-color: var(--color-border);
}

/* Dark mode: Calendar drag-to-reschedule */
[data-theme="dark"] .calendar-day.drag-over {
    background-color: rgba(79, 143, 247, 0.12) !important;
    outline-color: var(--color-primary);
}

[data-theme="dark"] .calendar-event.dragging {
    opacity: 0.3;
    filter: grayscale(0.4);
}

[data-theme="dark"] .calendar-event-ghost {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35), 0 2px 6px rgba(0, 0, 0, 0.25);
}

/* ============================================
   Multi-column Sort Indicators (dark)
   ============================================ */
[data-theme="dark"] thead th.sort-active {
    color: #6ba3fa;
}

[data-theme="dark"] .sort-arrow {
    color: #6ba3fa;
}

[data-theme="dark"] .sort-priority-badge {
    background: #4f8ff7;
    color: #fff;
}

[data-theme="dark"] .sort-clear-bar {
    background: rgba(79, 143, 247, 0.06);
    border-color: var(--color-border);
}

[data-theme="dark"] .sort-clear-btn {
    background: var(--color-surface);
    color: var(--color-text-secondary);
    border-color: var(--color-border);
}

[data-theme="dark"] .sort-clear-btn:hover {
    background: var(--color-surface-alt);
    color: var(--color-text);
    border-color: var(--color-text-muted);
}

[data-theme="dark"] .sort-clear-summary {
    color: var(--color-text-muted);
}

/* ============================================
   Document Checklist (dark)
   ============================================ */

[data-theme="dark"] .doc-checklist-count {
    background: rgba(79, 143, 247, 0.12);
    color: #6ba3fa;
}

[data-theme="dark"] .doc-checklist-progress {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .doc-checklist-progress-bar {
    background: #4f8ff7;
}

[data-theme="dark"] .doc-checklist-progress-bar.complete {
    background: #10b981;
}

[data-theme="dark"] .doc-checklist-progress-label {
    color: var(--color-text-muted);
}

[data-theme="dark"] .doc-checklist-item {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .doc-checklist-item:hover {
    border-color: #3a3a5a;
}

[data-theme="dark"] .doc-checklist-item.checked {
    background: rgba(16, 185, 129, 0.06);
    border-color: rgba(16, 185, 129, 0.2);
}

[data-theme="dark"] .doc-checklist-label-main {
    color: var(--color-text);
}

[data-theme="dark"] .doc-checklist-item.checked .doc-checklist-label-main {
    color: var(--color-text-muted);
}

[data-theme="dark"] .doc-checklist-label-sub {
    color: var(--color-text-muted);
}

[data-theme="dark"] .doc-checklist-note-toggle {
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

[data-theme="dark"] .doc-checklist-note-toggle:hover {
    background: var(--color-surface-alt);
    color: var(--color-text);
    border-color: #3a3a5a;
}

[data-theme="dark"] .doc-checklist-note-toggle.has-note {
    background: rgba(79, 143, 247, 0.1);
    color: #6ba3fa;
    border-color: rgba(79, 143, 247, 0.25);
}

[data-theme="dark"] .doc-checklist-note-input {
    background: var(--color-bg-secondary, #151528);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .doc-checklist-note-input:focus {
    border-color: #4f8ff7;
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .doc-checklist-note-input::placeholder {
    color: var(--color-text-muted);
}

[data-theme="dark"] .doc-checklist-checkbox {
    accent-color: #10b981;
}

/* ---- Quick Filters Bar (Dark) ---- */
[data-theme="dark"] .quick-filters-label {
    color: var(--color-text-muted);
}

[data-theme="dark"] .quick-filter-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .quick-filter-btn:hover {
    background: var(--color-surface-alt);
    border-color: #3a3a5a;
    color: var(--color-text);
}

[data-theme="dark"] .quick-filter-count {
    background: var(--color-bg-secondary);
    color: var(--color-text-muted);
}

/* Dark active base */
[data-theme="dark"] .quick-filter-btn.active {
    background: rgba(79, 143, 247, 0.12);
    border-color: #4f8ff7;
    color: #6ba3fa;
}

[data-theme="dark"] .quick-filter-btn.active .quick-filter-count {
    background: #4f8ff7;
    color: #fff;
}

/* Dark color accents (inactive) */
[data-theme="dark"] .quick-filter--red { border-color: rgba(239, 68, 68, 0.25); }
[data-theme="dark"] .quick-filter--red:hover { border-color: rgba(239, 68, 68, 0.45); background: rgba(239, 68, 68, 0.08); }
[data-theme="dark"] .quick-filter--red .quick-filter-count { background: rgba(239, 68, 68, 0.12); color: #f87171; }

[data-theme="dark"] .quick-filter--green { border-color: rgba(34, 197, 94, 0.25); }
[data-theme="dark"] .quick-filter--green:hover { border-color: rgba(34, 197, 94, 0.45); background: rgba(34, 197, 94, 0.08); }
[data-theme="dark"] .quick-filter--green .quick-filter-count { background: rgba(34, 197, 94, 0.12); color: #34d399; }

[data-theme="dark"] .quick-filter--orange { border-color: rgba(249, 115, 22, 0.25); }
[data-theme="dark"] .quick-filter--orange:hover { border-color: rgba(249, 115, 22, 0.45); background: rgba(249, 115, 22, 0.08); }
[data-theme="dark"] .quick-filter--orange .quick-filter-count { background: rgba(249, 115, 22, 0.12); color: #fb923c; }

[data-theme="dark"] .quick-filter--amber { border-color: rgba(245, 158, 11, 0.25); }
[data-theme="dark"] .quick-filter--amber:hover { border-color: rgba(245, 158, 11, 0.45); background: rgba(245, 158, 11, 0.08); }
[data-theme="dark"] .quick-filter--amber .quick-filter-count { background: rgba(245, 158, 11, 0.12); color: #fbbf24; }

[data-theme="dark"] .quick-filter--blue { border-color: rgba(59, 130, 246, 0.25); }
[data-theme="dark"] .quick-filter--blue:hover { border-color: rgba(59, 130, 246, 0.45); background: rgba(59, 130, 246, 0.08); }
[data-theme="dark"] .quick-filter--blue .quick-filter-count { background: rgba(59, 130, 246, 0.12); color: #60a5fa; }

[data-theme="dark"] .quick-filter--purple { border-color: rgba(139, 92, 246, 0.25); }
[data-theme="dark"] .quick-filter--purple:hover { border-color: rgba(139, 92, 246, 0.45); background: rgba(139, 92, 246, 0.08); }
[data-theme="dark"] .quick-filter--purple .quick-filter-count { background: rgba(139, 92, 246, 0.12); color: #a78bfa; }

/* Dark active color accents */
[data-theme="dark"] .quick-filter--red.active {
    border-color: #ef4444;
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
    box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.2);
}
[data-theme="dark"] .quick-filter--red.active .quick-filter-count { background: #ef4444; }

[data-theme="dark"] .quick-filter--green.active {
    border-color: #22c55e;
    background: rgba(34, 197, 94, 0.15);
    color: #34d399;
    box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.2);
}
[data-theme="dark"] .quick-filter--green.active .quick-filter-count { background: #22c55e; }

[data-theme="dark"] .quick-filter--orange.active {
    border-color: #f97316;
    background: rgba(249, 115, 22, 0.15);
    color: #fb923c;
    box-shadow: 0 0 0 1px rgba(249, 115, 22, 0.2);
}
[data-theme="dark"] .quick-filter--orange.active .quick-filter-count { background: #f97316; }

[data-theme="dark"] .quick-filter--amber.active {
    border-color: #f59e0b;
    background: rgba(245, 158, 11, 0.15);
    color: #fbbf24;
    box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.2);
}
[data-theme="dark"] .quick-filter--amber.active .quick-filter-count { background: #f59e0b; }

[data-theme="dark"] .quick-filter--blue.active {
    border-color: #3b82f6;
    background: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
    box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.2);
}
[data-theme="dark"] .quick-filter--blue.active .quick-filter-count { background: #3b82f6; }

[data-theme="dark"] .quick-filter--purple.active {
    border-color: #8b5cf6;
    background: rgba(139, 92, 246, 0.15);
    color: #a78bfa;
    box-shadow: 0 0 0 1px rgba(139, 92, 246, 0.2);
}
[data-theme="dark"] .quick-filter--purple.active .quick-filter-count { background: #8b5cf6; }

/* ---- Cost Analysis Charts (dark mode) ---- */
[data-theme="dark"] .cost-chart-container {
    background: transparent;
}

[data-theme="dark"] .cost-chart-legend {
    color: #d1d5db;
}

[data-theme="dark"] .cost-legend-item {
    color: #d1d5db;
}

[data-theme="dark"] .cost-legend-value {
    color: #9ca3af;
}

[data-theme="dark"] .cost-per-unit {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .cost-per-unit-value {
    color: #f3f4f6;
}

[data-theme="dark"] .cost-total-banner {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.12) 0%, rgba(139, 92, 246, 0.12) 100%);
    border-color: rgba(59, 130, 246, 0.25);
}

[data-theme="dark"] .cost-total-value {
    color: #60a5fa;
}

[data-theme="dark"] .cost-overview-section {
    background: var(--color-surface);
    border-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .cost-overview-header h3 {
    color: #f3f4f6;
}

[data-theme="dark"] .fin-card--costs {
    border-left-color: #a78bfa;
}

/* ---- Dashboard Date Range Bar (Dark) ---- */
[data-theme="dark"] .dash-date-range-bar {
    background-color: var(--color-surface, #1a1a2e);
    border-color: var(--color-border-light, #2a2a4a);
}

[data-theme="dark"] .dash-date-preset {
    color: var(--color-text-secondary, #9aa4b8);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .dash-date-preset:hover {
    color: var(--color-primary, #4f8ff7);
    border-color: var(--color-primary, #4f8ff7);
    background-color: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .dash-date-preset.active {
    color: #ffffff;
    background-color: var(--color-primary, #4f8ff7);
    border-color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .dash-date-input {
    background-color: var(--color-bg-secondary, #151528);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .dash-date-input:focus {
    border-color: var(--color-primary, #4f8ff7);
    box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
}

[data-theme="dark"] .dash-date-label {
    color: var(--color-text-secondary, #9aa4b8);
    background-color: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .dash-date-input-label {
    color: var(--color-text-muted, #636b7e);
}

/* ---- Kanban Collapsed Column (dark mode) ---- */
[data-theme="dark"] .kanban-column.kanban-column-collapsed:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .kanban-column-toggle:hover {
    background: rgba(255, 255, 255, 0.08);
    color: var(--color-text);
}

[data-theme="dark"] .kanban-column-collapsed-label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-column-collapsed-total {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-expand-all-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-expand-all-btn:hover {
    background: rgba(79, 143, 247, 0.1);
    color: #60a5fa;
    border-color: rgba(79, 143, 247, 0.3);
}

/* ============================================
   Sidebar Favorites Drag & Drop - Dark
   ============================================ */
[data-theme="dark"] .sidebar-fav-item.dragging {
    background: rgba(255, 255, 255, 0.04) !important;
    opacity: 0.4 !important;
}

[data-theme="dark"] .sidebar-fav-item.drag-over-above {
    box-shadow: inset 0 2px 0 0 #4f8ff7 !important;
}

[data-theme="dark"] .sidebar-fav-item.drag-over-below {
    box-shadow: inset 0 -2px 0 0 #4f8ff7 !important;
}

[data-theme="dark"] .sidebar-fav-drag-handle {
    color: #636b7e;
}

[data-theme="dark"] .sidebar-fav-edit-btn {
    color: #636b7e;
}

[data-theme="dark"] .sidebar-fav-edit-btn:hover,
[data-theme="dark"] .sidebar-fav-edit-btn.active {
    color: #4f8ff7;
    background: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .sidebar-fav-delete-btn {
    color: #636b7e;
}

[data-theme="dark"] .sidebar-fav-delete-btn:hover {
    color: #f87171;
    background: rgba(248, 113, 113, 0.12);
}

[data-theme="dark"] .sidebar-favorites-list.edit-mode {
    background: rgba(255, 255, 255, 0.02);
    border-color: #2a2a42;
}

/* ============================================
   Supplier Contacts - Dark Mode
   ============================================ */

[data-theme="dark"] .supplier-contacts {
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .supplier-contacts-add-btn {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .supplier-contacts-add-btn:hover {
    background: rgba(79, 143, 247, 0.1);
    border-color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .supplier-contact-card {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .supplier-contact-card:hover {
    background: var(--color-surface-alt, #22223a);
    border-color: rgba(79, 143, 247, 0.3);
}

[data-theme="dark"] .supplier-contact-avatar {
    background: rgba(79, 143, 247, 0.15);
    color: #60a5fa;
}

[data-theme="dark"] .supplier-contact-name {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .supplier-contact-role {
    background: rgba(99, 102, 241, 0.15);
    color: #a5b4fc;
}

[data-theme="dark"] .supplier-contact-detail-item {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .supplier-contact-detail-item a {
    color: #60a5fa;
}

[data-theme="dark"] .supplier-contact-detail-item a:hover {
    color: #93bbfd;
}

[data-theme="dark"] .supplier-contact-detail-item svg {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .supplier-contact-actions button {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .supplier-contact-actions button:hover {
    background: rgba(255, 255, 255, 0.06);
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .supplier-contact-actions button.contact-delete-btn:hover {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

[data-theme="dark"] .supplier-contacts-empty {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .supplier-contacts-empty-btn {
    border-color: var(--color-border, #2a2a42);
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .supplier-contacts-empty-btn:hover {
    background: rgba(79, 143, 247, 0.1);
    border-color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .supplier-contact-form {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-primary, #4f8ff7);
    box-shadow: 0 2px 8px rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .supplier-contact-form-grid .input-group label {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .supplier-contact-form-grid .input-group input {
    background: var(--color-surface-alt, #22223a);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .supplier-contact-form-grid .input-group input:focus {
    border-color: var(--color-primary, #4f8ff7);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .supplier-contact-form-primary label {
    color: var(--color-text-secondary, #9aa4b8);
}

/* ---- Dark Quick Actions Panel ---- */
[data-theme="dark"] .topbar-actions-panel {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .topbar-actions-divider {
    background: var(--color-border);
}

[data-theme="dark"] .topbar-action-item:hover {
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .topbar-action-item-icon {
    background: rgba(255, 255, 255, 0.06);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .topbar-action-item:hover .topbar-action-item-icon {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .topbar-action-shortcut {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--color-border);
    color: var(--color-text-muted);
}

/* ---- Calendar Minimap (dark mode) ---- */
[data-theme="dark"] .calendar-minimap {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .minimap-nav {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .minimap-day {
    color: var(--color-text);
}

[data-theme="dark"] .minimap-day:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .minimap-day.today {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .minimap-day.selected {
    outline-color: var(--color-primary);
}

[data-theme="dark"] .minimap-toggle.active {
    color: var(--color-primary);
}

/* Dark theme conditional formatting */
[data-theme="dark"] .formatting-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .formatting-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .formatting-btn .formatting-indicator {
    border-color: var(--color-surface);
}

[data-theme="dark"] .formatting-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .formatting-popover-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .formatting-popover-actions button {
    border-color: var(--color-border);
    background: var(--color-surface-alt);
    color: var(--color-text-muted);
}

[data-theme="dark"] .formatting-popover-actions button:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .formatting-popover-actions .btn-add-rule {
    background: rgba(79, 143, 247, 0.12);
    border-color: rgba(79, 143, 247, 0.3);
    color: var(--color-primary);
}

[data-theme="dark"] .formatting-popover-actions .btn-add-rule:hover {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .formatting-rule {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .formatting-rule:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .formatting-rule-field,
[data-theme="dark"] .formatting-rule-operator,
[data-theme="dark"] .formatting-rule-value {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .formatting-rule-color {
    border-color: var(--color-border);
}

[data-theme="dark"] .formatting-rule-delete:hover {
    color: #ef4444;
    background: rgba(239, 68, 68, 0.12);
}

[data-theme="dark"] .formatting-predefined-section {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .formatting-predefined-chip {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .formatting-predefined-chip:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-red {
    background-color: rgba(239, 68, 68, 0.08) !important;
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-orange {
    background-color: rgba(245, 158, 11, 0.08) !important;
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-gold {
    background-color: rgba(234, 179, 8, 0.08) !important;
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-green {
    background-color: rgba(16, 185, 129, 0.08) !important;
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-blue {
    background-color: rgba(59, 130, 246, 0.08) !important;
}

[data-theme="dark"] .table-wrapper table tbody tr.fmt-tint-purple {
    background-color: rgba(139, 92, 246, 0.08) !important;
}

/* ---- Dark: Quick-add Notes ---- */
[data-theme="dark"] .note-icon-btn {
    color: #636b7e;
}

[data-theme="dark"] .note-icon-btn:hover {
    background-color: rgba(79, 143, 247, 0.1);
    color: #6ba3fa;
}

[data-theme="dark"] .note-icon-btn.has-note {
    color: #6ba3fa;
}

[data-theme="dark"] .note-icon-btn.has-note:hover {
    background-color: rgba(79, 143, 247, 0.15);
    color: #93bbfc;
}

[data-theme="dark"] .note-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .note-popover-textarea {
    background: var(--color-bg);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .note-popover-textarea:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .note-popover-textarea::placeholder {
    color: var(--color-text-muted);
}

[data-theme="dark"] .note-popover-save {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .note-popover-save:hover {
    background: var(--color-primary-hover);
}

[data-theme="dark"] .note-popover-cancel {
    background: var(--color-surface-alt);
    border-color: var(--color-border) !important;
    color: var(--color-text-secondary);
}

[data-theme="dark"] .note-popover-cancel:hover {
    background: var(--color-bg);
    color: var(--color-text);
}

/* ---- Dark: Cost Trend Section ---- */
[data-theme="dark"] .cost-trend-section {
    background: var(--color-surface);
    border-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .cost-trend-section:hover {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .cost-trend-toggle {
    color: var(--color-text);
}

[data-theme="dark"] .cost-trend-toggle:hover {
    background: var(--color-surface-alt);
    color: var(--color-primary);
}

[data-theme="dark"] .cost-trend-currency-toggle {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .cost-trend-currency-toggle .currency-btn {
    color: var(--color-text-muted);
}

[data-theme="dark"] .cost-trend-currency-toggle .currency-btn:hover {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .cost-trend-currency-toggle .currency-btn.active {
    background: var(--color-surface);
    color: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* ---- Dark: Supplier Radar Analytics ---- */
[data-theme="dark"] .supplier-radar-section {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .supplier-radar-section:hover {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .supplier-radar-toggle {
    color: var(--color-text);
}

[data-theme="dark"] .supplier-radar-toggle:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .supplier-radar-toggle.expanded {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .supplier-radar-toggle svg:first-child {
    color: var(--color-primary);
}

[data-theme="dark"] .supplier-radar-toggle svg:last-child {
    color: var(--color-text-muted);
}

[data-theme="dark"] .supplier-radar-badge {
    background: rgba(79, 143, 247, 0.15);
    color: #6ba3fa;
}

[data-theme="dark"] .supplier-radar-instructions {
    background: rgba(56, 189, 248, 0.08);
    border-color: rgba(56, 189, 248, 0.15);
    color: var(--color-text);
}

[data-theme="dark"] .supplier-radar-chart-wrapper {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .radar-checkbox {
    border-color: var(--color-border);
}

[data-theme="dark"] .radar-checkbox:checked {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

[data-theme="dark"] .radar-checkbox:hover {
    border-color: var(--color-primary);
}

/* Dark: Rating Modal */
[data-theme="dark"] .rating-supplier-name {
    color: var(--color-text);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .rating-slider-label {
    color: var(--color-text);
}

[data-theme="dark"] .rating-slider {
    background: var(--color-border);
}

[data-theme="dark"] .rating-slider::-webkit-slider-thumb {
    background: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .rating-slider::-webkit-slider-thumb:hover {
    background: var(--color-primary-hover);
}

[data-theme="dark"] .rating-slider::-moz-range-thumb {
    background: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .rating-slider::-moz-range-thumb:hover {
    background: var(--color-primary-hover);
}

[data-theme="dark"] .rating-slider-value {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .rating-note {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.15);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .action-rate {
    color: #fbbf24;
}

[data-theme="dark"] .action-rate:hover {
    background: rgba(245, 158, 11, 0.12);
    color: #fbbf24;
}

/* ============================================
   Dark Mode: Kanban Inline Editing
   ============================================ */

[data-theme="dark"] .kanban-editable:hover {
    background: rgba(59, 130, 246, 0.12);
}

[data-theme="dark"] .kanban-editable .kanban-edit-icon {
    color: var(--color-primary);
}

[data-theme="dark"] .kanban-editable.kanban-editing {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .kanban-inline-input,
[data-theme="dark"] .kanban-inline-select {
    background: var(--color-surface);
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .kanban-inline-input:focus,
[data-theme="dark"] .kanban-inline-select:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.25);
}

[data-theme="dark"] .badge.kanban-editable:hover {
    background: rgba(59, 130, 246, 0.15);
    border-color: var(--color-primary);
}

/* ============================================
   Dark Mode: Comparison Chart
   ============================================ */
[data-theme="dark"] .comparison-card {
    background: var(--color-surface);
}

[data-theme="dark"] .comparison-correlation-badge {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-positive {
    background-color: rgba(34, 197, 94, 0.15);
    border-color: rgba(34, 197, 94, 0.4);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-negative {
    background-color: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.4);
}

[data-theme="dark"] .comparison-correlation-badge.correlation-neutral {
    background-color: rgba(107, 114, 128, 0.15);
    border-color: rgba(107, 114, 128, 0.4);
}

[data-theme="dark"] .comparison-legend {
    border-top-color: var(--color-border);
}

[data-theme="dark"] .comparison-legend-item {
    color: var(--color-text-secondary);
}

/* ============================================
   Dark: Saved Report Presets
   ============================================ */


/* ============================================
   Monthly Goals (dark mode)
   ============================================ */
[data-theme="dark"] .dash-goals-card {
    background: var(--color-surface);
}

[data-theme="dark"] .dash-goals-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .dash-goals-header h3 {
    color: var(--color-text);
}

[data-theme="dark"] .dash-goal-card {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .dash-goal-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .dash-goal-label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .dash-goal-ring-bg {
    color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .dash-goal-current {
    color: var(--color-text);
}

[data-theme="dark"] .dash-goal-target {
    color: var(--color-text-muted);
}

[data-theme="dark"] .dash-goals-modal-form .input-group label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .dash-goals-modal-form .form-input {
    background: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .dash-goals-modal-form .form-input:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

/* ---- Dark: Backup Comparison Viewer (Enhanced) ---- */
[data-theme="dark"] .backup-compare-badge-a {
    background: rgba(79, 143, 247, 0.15);
    color: #6ba3fa;
}

[data-theme="dark"] .backup-compare-badge-b {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}

[data-theme="dark"] .compare-nav {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .compare-nav-info {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-nav-info span {
    color: var(--color-primary);
}

[data-theme="dark"] .compare-nav-buttons .btn:disabled {
    opacity: 0.3;
}

[data-theme="dark"] .compare-sections {
    scrollbar-width: thin;
    scrollbar-color: var(--color-border) transparent;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar {
    width: 8px;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-track {
    background: transparent;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-thumb {
    background: var(--color-border);
    border-radius: 4px;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-thumb:hover {
    background: var(--color-border-light);
}

[data-theme="dark"] .compare-stat-added {
    background: rgba(16, 185, 129, 0.1);
}

[data-theme="dark"] .compare-stat-added .compare-stat-icon {
    background: rgba(16, 185, 129, 0.2);
    color: #34d399;
}

[data-theme="dark"] .compare-stat-added .compare-stat-value,
[data-theme="dark"] .compare-stat-added .compare-stat-label {
    color: #34d399;
}

[data-theme="dark"] .compare-stat-removed {
    background: rgba(239, 68, 68, 0.1);
}

[data-theme="dark"] .compare-stat-removed .compare-stat-icon {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
}

[data-theme="dark"] .compare-stat-removed .compare-stat-value,
[data-theme="dark"] .compare-stat-removed .compare-stat-label {
    color: #f87171;
}

[data-theme="dark"] .compare-stat-changed {
    background: rgba(245, 158, 11, 0.1);
}

[data-theme="dark"] .compare-stat-changed .compare-stat-icon {
    background: rgba(245, 158, 11, 0.2);
    color: #fbbf24;
}

[data-theme="dark"] .compare-stat-changed .compare-stat-value,
[data-theme="dark"] .compare-stat-changed .compare-stat-label {
    color: #fbbf24;
}

[data-theme="dark"] .compare-stat-same {
    background: rgba(148, 163, 184, 0.1);
}

[data-theme="dark"] .compare-stat-same .compare-stat-icon {
    background: rgba(148, 163, 184, 0.2);
    color: #94a3b8;
}

[data-theme="dark"] .compare-stat-same .compare-stat-value,
[data-theme="dark"] .compare-stat-same .compare-stat-label {
    color: #94a3b8;
}

[data-theme="dark"] .compare-section-title {
    color: var(--color-text);
}

[data-theme="dark"] .compare-section-added {
    color: #34d399;
    border-bottom-color: rgba(16, 185, 129, 0.3);
}

[data-theme="dark"] .compare-section-removed {
    color: #f87171;
    border-bottom-color: rgba(239, 68, 68, 0.3);
}

[data-theme="dark"] .compare-section-changed {
    color: #fbbf24;
    border-bottom-color: rgba(245, 158, 11, 0.3);
}

[data-theme="dark"] .compare-item {
    color: var(--color-text);
}

[data-theme="dark"] .compare-item-added {
    background: rgba(16, 185, 129, 0.08);
    border-left-color: #34d399;
}

[data-theme="dark"] .compare-item-removed {
    background: rgba(239, 68, 68, 0.08);
    border-left-color: #f87171;
}

[data-theme="dark"] .compare-item-changed {
    background: rgba(245, 158, 11, 0.08);
    border-left-color: #fbbf24;
}

[data-theme="dark"] .compare-item-added:hover {
    background: rgba(16, 185, 129, 0.12);
}

[data-theme="dark"] .compare-item-removed:hover {
    background: rgba(239, 68, 68, 0.12);
}

[data-theme="dark"] .compare-item-changed:hover {
    background: rgba(245, 158, 11, 0.12);
}

[data-theme="dark"] .compare-item-active {
    box-shadow: 0 0 0 2px var(--color-primary);
}

[data-theme="dark"] .compare-item-active.compare-item-added {
    box-shadow: 0 0 0 2px #34d399;
}

[data-theme="dark"] .compare-item-active.compare-item-removed {
    box-shadow: 0 0 0 2px #f87171;
}

[data-theme="dark"] .compare-item-active.compare-item-changed {
    box-shadow: 0 0 0 2px #fbbf24;
}

[data-theme="dark"] .compare-item-name {
    color: var(--color-text);
}

[data-theme="dark"] .compare-item-detail {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-field-change {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-field-name {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-field-old {
    color: #f87171;
}

[data-theme="dark"] .compare-field-new {
    color: #34d399;
}

[data-theme="dark"] .compare-item-more {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-no-diff {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-no-diff-icon {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}
[data-theme="dark"] .reports-presets-title {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .preset-count {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .report-preset-card {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .report-preset-card:hover {
    border-color: var(--color-primary, #4f8ff7);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .report-preset-icon {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .report-preset-name {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .report-preset-desc {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .report-preset-meta {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .report-preset-run-btn,
[data-theme="dark"] .report-preset-edit-btn,
[data-theme="dark"] .report-preset-delete-btn {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .report-preset-run-btn:hover {
    background: var(--color-primary, #4f8ff7);
    border-color: var(--color-primary, #4f8ff7);
    color: #fff;
}

[data-theme="dark"] .report-preset-edit-btn:hover {
    background: var(--color-warning, #f59e0b);
    border-color: var(--color-warning, #f59e0b);
    color: #fff;
}

[data-theme="dark"] .report-preset-delete-btn:hover {
    background: var(--color-danger, #ef4444);
    border-color: var(--color-danger, #ef4444);
    color: #fff;
}

[data-theme="dark"] .reports-presets-empty {
    background: var(--color-surface-alt, #22223a);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .reports-presets-empty svg {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .reports-presets-empty p {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .reports-presets-empty .preset-hint {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .preset-icon-option {
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .preset-icon-option:hover {
    border-color: var(--color-primary, #4f8ff7);
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .preset-icon-option:has(input[type="radio"]:checked) {
    border-color: var(--color-primary, #4f8ff7);
    background: rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .preset-icon-option input[type="radio"]:checked + span {
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .preset-icon-option span {
    color: var(--color-text-muted, #636b7e);
}


/* ---- Dark: Preferences Tab ---- */
[data-theme="dark"] .pref-storage-card {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .pref-storage-icon {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.15), rgba(79, 143, 247, 0.25));
}

[data-theme="dark"] .pref-storage-bar {
    background: var(--color-border);
}

[data-theme="dark"] .pref-category-item {
    border-color: var(--color-border);
    background: var(--color-surface-alt);
}

[data-theme="dark"] .pref-category-item:hover:not(.pref-category-disabled) {
    background-color: var(--color-surface);
    border-color: var(--color-primary);
}

[data-theme="dark"] .pref-upload-area {
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-upload-area:hover {
    border-color: var(--color-primary);
    background-color: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .pref-upload-area.pref-drag-over {
    background-color: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .pref-preview-card {
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-preview-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .pref-reset-input {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-reset-input:focus {
    border-color: var(--color-danger, #ef4444);
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.2);
}
/* ===================== */
/* Activity Page - Live Mode & Sound Toggle (Dark Theme) */
/* ===================== */
[data-theme="dark"] .activity-live-toggle {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .activity-live-toggle:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
}

[data-theme="dark"] .activity-live-toggle.active {
    background: #059669;
    border-color: #059669;
    color: #fff;
    box-shadow: 0 0 14px rgba(5, 150, 105, 0.4), 0 0 4px rgba(5, 150, 105, 0.25);
}

[data-theme="dark"] .activity-live-toggle.active .activity-live-dot {
    background: #fff;
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.6);
}

[data-theme="dark"] .activity-sound-toggle {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .activity-sound-toggle:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .activity-sound-toggle.active {
    background: rgba(34, 197, 94, 0.15);
    border-color: #22c55e;
    color: #22c55e;
}

[data-theme="dark"] .activity-new-changes-bar {
    background: linear-gradient(135deg, #4f8ff7, #3b7ae8);
    box-shadow: 0 2px 12px rgba(79, 143, 247, 0.5);
}

[data-theme="dark"] .activity-new-changes-bar:hover {
    box-shadow: 0 4px 20px rgba(79, 143, 247, 0.6);
}

[data-theme="dark"] .activity-timeline-entry.new-entry {
    animation: highlightEntryDark 1.5s ease-out;
}

@keyframes highlightEntryDark {
    0% {
        background: rgba(79, 143, 247, 0.2);
    }
    100% {
        background: transparent;
    }
}

/* Dark: sticky day header background */
[data-theme="dark"] .activity-day-header {
    background: var(--color-surface);
}

/* Dark: heatmap cell hover shadow */
[data-theme="dark"] .heatmap-cell:hover {
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}

/* Dark: hourly density bar rounded tops */
[data-theme="dark"] .timeline-sidebar-hour:hover .timeline-sidebar-bar {
    box-shadow: 0 -2px 10px rgba(79, 143, 247, 0.45);
}

/* ============================================
   Archive Analytics - Dark Mode
   ============================================ */

[data-theme="dark"] .archive-analytics-section {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .archive-analytics-header {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .archive-analytics-toggle {
    background: var(--color-surface-alt);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .archive-analytics-toggle:hover {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .archive-analytics-stat {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .archive-analytics-chart-card {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .archive-analytics-chart-card h4 {
    color: var(--color-text-secondary);
}

/* ---- Dark: iCal Export Dropdown ---- */
[data-theme="dark"] .cal-ics-dropdown {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4), 0 4px 12px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .cal-ics-dropdown-item {
    color: var(--color-text);
}

[data-theme="dark"] .cal-ics-dropdown-item:hover {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .cal-ics-dropdown-divider {
    background: var(--color-border);
}

[data-theme="dark"] .cal-ics-info {
    background: var(--color-bg-secondary);
}

[data-theme="dark"] .cal-ics-info-title {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .cal-ics-info-text {
    color: var(--color-text-muted);
}

/* ---- Dark: Backup Comparison Viewer (Enhanced) ---- */

[data-theme="dark"] .backup-compare-badge-a {
    background: rgba(79, 143, 247, 0.15);
    color: #6ba3fa;
}

[data-theme="dark"] .backup-compare-badge-b {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}

[data-theme="dark"] .compare-nav {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .compare-nav-info {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-nav-info span {
    color: var(--color-primary);
}

[data-theme="dark"] .compare-nav-buttons .btn:disabled {
    opacity: 0.3;
}

[data-theme="dark"] .compare-sections {
    scrollbar-width: thin;
    scrollbar-color: var(--color-border) transparent;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar {
    width: 8px;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-track {
    background: transparent;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-thumb {
    background: var(--color-border);
    border-radius: 4px;
}

[data-theme="dark"] .compare-sections::-webkit-scrollbar-thumb:hover {
    background: var(--color-border-light);
}

[data-theme="dark"] .compare-stat-added {
    background: rgba(16, 185, 129, 0.1);
}

[data-theme="dark"] .compare-stat-added .compare-stat-icon {
    background: rgba(16, 185, 129, 0.2);
    color: #34d399;
}

[data-theme="dark"] .compare-stat-added .compare-stat-value,
[data-theme="dark"] .compare-stat-added .compare-stat-label {
    color: #34d399;
}

[data-theme="dark"] .compare-stat-removed {
    background: rgba(239, 68, 68, 0.1);
}

[data-theme="dark"] .compare-stat-removed .compare-stat-icon {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
}

[data-theme="dark"] .compare-stat-removed .compare-stat-value,
[data-theme="dark"] .compare-stat-removed .compare-stat-label {
    color: #f87171;
}

[data-theme="dark"] .compare-stat-changed {
    background: rgba(245, 158, 11, 0.1);
}

[data-theme="dark"] .compare-stat-changed .compare-stat-icon {
    background: rgba(245, 158, 11, 0.2);
    color: #fbbf24;
}

[data-theme="dark"] .compare-stat-changed .compare-stat-value,
[data-theme="dark"] .compare-stat-changed .compare-stat-label {
    color: #fbbf24;
}

[data-theme="dark"] .compare-stat-same {
    background: rgba(148, 163, 184, 0.1);
}

[data-theme="dark"] .compare-stat-same .compare-stat-icon {
    background: rgba(148, 163, 184, 0.2);
    color: #94a3b8;
}

[data-theme="dark"] .compare-stat-same .compare-stat-value,
[data-theme="dark"] .compare-stat-same .compare-stat-label {
    color: #94a3b8;
}

[data-theme="dark"] .compare-section-title {
    color: var(--color-text);
}

[data-theme="dark"] .compare-section-added {
    color: #34d399;
    border-bottom-color: rgba(16, 185, 129, 0.3);
}

[data-theme="dark"] .compare-section-removed {
    color: #f87171;
    border-bottom-color: rgba(239, 68, 68, 0.3);
}

[data-theme="dark"] .compare-section-changed {
    color: #fbbf24;
    border-bottom-color: rgba(245, 158, 11, 0.3);
}

[data-theme="dark"] .compare-item {
    color: var(--color-text);
}

[data-theme="dark"] .compare-item-added {
    background: rgba(16, 185, 129, 0.08);
    border-left-color: #34d399;
}

[data-theme="dark"] .compare-item-removed {
    background: rgba(239, 68, 68, 0.08);
    border-left-color: #f87171;
}

[data-theme="dark"] .compare-item-changed {
    background: rgba(245, 158, 11, 0.08);
    border-left-color: #fbbf24;
}

[data-theme="dark"] .compare-item-added:hover {
    background: rgba(16, 185, 129, 0.12);
}

[data-theme="dark"] .compare-item-removed:hover {
    background: rgba(239, 68, 68, 0.12);
}

[data-theme="dark"] .compare-item-changed:hover {
    background: rgba(245, 158, 11, 0.12);
}

[data-theme="dark"] .compare-item-active {
    box-shadow: 0 0 0 2px var(--color-primary);
}

[data-theme="dark"] .compare-item-active.compare-item-added {
    box-shadow: 0 0 0 2px #34d399;
}

[data-theme="dark"] .compare-item-active.compare-item-removed {
    box-shadow: 0 0 0 2px #f87171;
}

[data-theme="dark"] .compare-item-active.compare-item-changed {
    box-shadow: 0 0 0 2px #fbbf24;
}

[data-theme="dark"] .compare-item-name {
    color: var(--color-text);
}

[data-theme="dark"] .compare-item-detail {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-field-change {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-field-name {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .compare-field-old {
    color: #f87171;
}

[data-theme="dark"] .compare-field-new {
    color: #34d399;
}

[data-theme="dark"] .compare-item-more {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-no-diff {
    color: var(--color-text-muted);
}

[data-theme="dark"] .compare-no-diff-icon {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}
[data-theme="dark"] .backup-comparison {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .backup-comparison-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .backup-comparison-diff-added {
    background: rgba(34, 197, 94, 0.15);
    border-left-color: #22c55e;
}

[data-theme="dark"] .backup-comparison-diff-removed {
    background: rgba(239, 68, 68, 0.15);
    border-left-color: #ef4444;
}

/* ---- Dark: Preferences Tab ---- */
[data-theme="dark"] .pref-storage-card {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
}

[data-theme="dark"] .pref-storage-icon {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.15), rgba(79, 143, 247, 0.25));
}

[data-theme="dark"] .pref-storage-bar {
    background: var(--color-border);
}

[data-theme="dark"] .pref-category-item {
    border-color: var(--color-border);
    background: var(--color-surface-alt);
}

[data-theme="dark"] .pref-category-item:hover:not(.pref-category-disabled) {
    background-color: var(--color-surface);
    border-color: var(--color-primary);
}

[data-theme="dark"] .pref-upload-area {
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-upload-area:hover {
    border-color: var(--color-primary);
    background-color: rgba(79, 143, 247, 0.08);
}

[data-theme="dark"] .pref-upload-area.pref-drag-over {
    background-color: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .pref-preview-card {
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-preview-header {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .pref-reset-input {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .pref-reset-input:focus {
    border-color: var(--color-danger, #ef4444);
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.2);
}

/* ===================== */
/* Activity Page - Live Mode & Sound Toggle (Dark Theme) - duplicate consolidated */
/* ===================== */
/* (Primary live toggle styles already defined above; keeping advanced filters below) */

/* Activity advanced filters - dark mode */
[data-theme="dark"] .btn-advanced-filters {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .btn-advanced-filters:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: var(--color-surface-alt);
}

[data-theme="dark"] .btn-advanced-filters.active {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .activity-advanced-panel {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .activity-advanced-panel .form-select {
    background: var(--color-bg);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .activity-advanced-panel .form-select:focus {
    border-color: var(--color-primary);
}

/* Activity summary banner - dark mode */
[data-theme="dark"] .activity-summary-banner {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
    box-shadow: 0 4px 12px rgba(79, 143, 247, 0.3);
}

[data-theme="dark"] .summary-banner-icon {
    background: rgba(255, 255, 255, 0.12);
}

/* Activity filter pills - dark mode */
[data-theme="dark"] .activity-filter-pills {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .filter-pill {
    background: var(--color-bg);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .filter-pill:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .filter-pill.active {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .filter-pill-count {
    background: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .filter-pill.active .filter-pill-count {
    background: rgba(255, 255, 255, 0.25);
}

/* Timeline sidebar - dark mode */
[data-theme="dark"] .activity-timeline-sidebar {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .timeline-sidebar-bar {
    background: linear-gradient(180deg, var(--color-primary), var(--color-primary-dark));
}

[data-theme="dark"] .timeline-sidebar-hour:hover .timeline-sidebar-bar {
    background: linear-gradient(180deg, var(--color-primary-hover), var(--color-primary));
    box-shadow: 0 -2px 8px rgba(79, 143, 247, 0.4);
}

/* Timeline entry dots - dark mode */
[data-theme="dark"] .activity-timeline-dot {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .activity-timeline-entry[data-type="edit"] .activity-timeline-dot {
    border-color: #3b82f6;
    background: #3b82f6;
}

[data-theme="dark"] .activity-timeline-entry[data-type="status"] .activity-timeline-dot {
    border-color: #f59e0b;
    background: #f59e0b;
}

[data-theme="dark"] .activity-timeline-entry[data-type="delete"] .activity-timeline-dot {
    border-color: #ef4444;
    background: #ef4444;
}

[data-theme="dark"] .activity-timeline-entry[data-type="create"] .activity-timeline-dot {
    border-color: #10b981;
    background: #10b981;
}

/* Timeline icons - dark mode */
[data-theme="dark"] .activity-timeline-icon {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .activity-timeline-entry[data-type="edit"] .activity-timeline-icon {
    background: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
}

[data-theme="dark"] .activity-timeline-entry[data-type="status"] .activity-timeline-icon {
    background: rgba(245, 158, 11, 0.15);
    color: #fbbf24;
}

[data-theme="dark"] .activity-timeline-entry[data-type="delete"] .activity-timeline-icon {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

[data-theme="dark"] .activity-timeline-entry[data-type="create"] .activity-timeline-icon {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}

/* Timeline expand button - dark mode */
[data-theme="dark"] .activity-timeline-expand-btn {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .activity-timeline-expand-btn:hover {
    background: var(--color-surface-alt);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

/* Activity diff - dark mode */
[data-theme="dark"] .activity-diff {
    background: var(--color-surface);
    border-color: var(--color-border);
}

/* ============================================
   Timeline Page - Milestone Features (Dark Mode)
   ============================================ */

[data-theme="dark"] .gantt-milestone-legend {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .gantt-milestone-legend-title {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .gantt-milestone-toggle-label {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .gantt-milestone-add-btn {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .gantt-milestone-add-btn:hover {
    background: var(--color-surface);
    border-color: var(--color-primary);
    color: var(--color-primary);
}

[data-theme="dark"] .gantt-custom-milestone-line {
    background: #f472b6;
}

[data-theme="dark"] .gantt-custom-milestone-label {
    background: #f472b6;
    color: #1f2937;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .gantt-custom-milestone-delete:hover {
    background: rgba(0, 0, 0, 0.3);
}


/* ============================================
   Kanban - Attachment Badge & Detail Modal (Dark)
   ============================================ */

[data-theme="dark"] .kanban-card-attachment-badge {
    background: rgba(255, 255, 255, 0.05);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-card-attachment-badge:hover {
    background: rgba(59, 130, 246, 0.15);
    color: var(--color-primary);
}

[data-theme="dark"] .kanban-modal-section {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-info-row {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-attachment-item {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-attachment-item:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-attachment-icon {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .kanban-modal-attachment-thumb {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-attachment-download:hover {
    background: rgba(59, 130, 246, 0.15);
    color: var(--color-primary);
}

[data-theme="dark"] .kanban-modal-changelog-item {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-comment-item {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-status-btn {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

[data-theme="dark"] .kanban-modal-status-btn:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--color-primary);
}

[data-theme="dark"] .kanban-modal-status-btn.active {
    background: rgba(59, 130, 246, 0.15);
    border-color: var(--color-primary);
}

/* ===================== */
/* Reports Page - Period Comparison (Dark Theme) */
/* ===================== */
[data-theme="dark"] .period-preset-btn {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .period-preset-btn:hover {
    border-color: var(--color-primary, #4f8ff7);
    background: rgba(79, 143, 247, 0.1);
    color: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .period-preset-btn.active {
    border-color: var(--color-primary, #4f8ff7);
    background: var(--color-primary, #4f8ff7);
    color: #fff;
}

[data-theme="dark"] .period-date-input {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .period-date-input:focus {
    border-color: var(--color-primary, #4f8ff7);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .period-separator {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .comparison-table th {
    background: var(--color-surface-alt, #22223a);
    color: var(--color-text-muted, #636b7e);
    border-bottom-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .comparison-table td {
    color: var(--color-text, #d4dbe8);
    border-bottom-color: var(--color-border-light, #1f1f35);
}

[data-theme="dark"] .comparison-table tbody tr:hover {
    background: rgba(79, 143, 247, 0.06);
}

[data-theme="dark"] .comparison-table .metric-label {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .comparison-table .metric-value {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .change-badge.positive {
    background: rgba(34, 197, 94, 0.15);
    color: #4ade80;
}

[data-theme="dark"] .change-badge.negative {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

[data-theme="dark"] .change-badge.neutral {
    background: var(--color-surface-alt, #22223a);
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .change-absolute {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .comparison-chart-section h4 {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .period-selector-label {
    color: var(--color-text, #d4dbe8);
}

/* ============================================
   Calendar - Event Categories (Session 16)
   ============================================ */
[data-theme="dark"] .cal-context-menu {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.6);
}

[data-theme="dark"] .cal-context-menu-header {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .cal-context-menu-item {
    color: var(--color-text);
}

[data-theme="dark"] .cal-context-menu-item:hover {
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .cal-add-event-btn {
    background: var(--color-primary);
    color: white;
}

[data-theme="dark"] .cal-add-event-btn:hover {
    background: var(--color-primary-hover);
}

/* ============================================
   Suppliers: Delivery Map (Dark Mode)
   ============================================ */

[data-theme="dark"] .supplier-delivery-map-section {
    background: var(--bg-primary, #16161e);
    border-color: var(--border-color, #2e2e3e);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .supplier-delivery-map-toggle {
    color: var(--text-primary, #e2e8f0);
}

[data-theme="dark"] .supplier-delivery-map-toggle:hover {
    background: var(--bg-hover, #2a2a3a);
}

[data-theme="dark"] .supplier-delivery-map-toggle.expanded {
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .delivery-map-country-row {
    background: var(--bg-secondary, #1e1e2e);
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .delivery-map-country-row:hover {
    background: var(--bg-hover, #2a2a3a);
    border-color: var(--color-primary, #60a5fa);
}

[data-theme="dark"] .delivery-map-bar-wrapper {
    background: rgba(71, 85, 105, 0.3);
}

[data-theme="dark"] .delivery-map-days {
    background: rgba(99, 102, 241, 0.15);
}

[data-theme="dark"] .delivery-map-days-value {
    color: #818cf8;
}

[data-theme="dark"] .delivery-map-summary {
    background: var(--bg-primary, #16161e);
    border-color: var(--border-color, #2e2e3e);
}

[data-theme="dark"] .delivery-map-stat-card {
    background: var(--bg-secondary, #1e1e2e);
}


/* ---- Settings: Theme Customizer ---- */
[data-theme="dark"] .theme-preset-card {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .theme-preset-card:hover {
    border-color: var(--color-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .theme-preset-card.active {
    background: rgba(79, 143, 247, 0.08);
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px var(--color-surface, #1a1a2e), 0 0 0 4px var(--color-primary);
}

[data-theme="dark"] .theme-preset-swatch {
    border-color: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .theme-color-input input[type="color"] {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .theme-preview-panel {
    background: var(--color-bg, #0f172a);
}

[data-theme="dark"] .theme-preview-card {
    background: var(--color-surface, #1e293b);
    border-color: var(--color-border, #334155);
}


/* ============================================
   CSV Import Enhanced - Dark Mode
   ============================================ */

/* File info bar */
[data-theme="dark"] .csv-file-info {
    background: var(--color-surface-alt) !important;
    color: var(--color-text-muted) !important;
}

[data-theme="dark"] .csv-file-info strong {
    color: var(--color-text-secondary);
}

/* Summary bar */
[data-theme="dark"] .csv-summary-bar {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .csv-summary-stat {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .csv-summary-stat strong {
    color: var(--color-text);
}

[data-theme="dark"] .csv-summary-divider {
    background: var(--color-border);
}

/* Column mapping grid */
[data-theme="dark"] .csv-mapping-row {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .csv-mapping-row:hover {
    border-color: var(--color-primary);
}

[data-theme="dark"] .csv-mapping-row.is-mapped {
    border-left-color: #22c55e;
}

[data-theme="dark"] .csv-mapping-row.has-errors {
    border-left-color: #ef4444;
}

[data-theme="dark"] .csv-mapping-csv-name {
    color: var(--color-text);
}

[data-theme="dark"] .csv-mapping-csv-sample {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-mapping-arrow {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-mapping-select {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .csv-mapping-select:focus {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .csv-mapping-select option:disabled {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-mapping-badge.type-number {
    background: rgba(25, 118, 210, 0.2);
    color: #64b5f6;
}

[data-theme="dark"] .csv-mapping-badge.type-date {
    background: rgba(198, 40, 40, 0.2);
    color: #ef5350;
}

[data-theme="dark"] .csv-mapping-badge.type-text {
    background: rgba(123, 31, 162, 0.2);
    color: #ba68c8;
}

[data-theme="dark"] .csv-mapping-required {
    color: #ef4444;
}

[data-theme="dark"] .csv-mapping-error-count {
    color: #ef4444;
}

/* Saved mappings */
[data-theme="dark"] .csv-saved-item {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .csv-saved-item:hover {
    background: var(--color-surface);
}

[data-theme="dark"] .csv-saved-item-name {
    color: var(--color-text);
}

[data-theme="dark"] .csv-saved-item-date {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-saved-item-actions button {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-saved-item-actions button:hover {
    background: var(--color-surface);
    color: #ef4444;
}

/* Columns dropdown */
[data-theme="dark"] .csv-columns-toggle {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .csv-columns-toggle:hover {
    border-color: var(--color-primary);
}

[data-theme="dark"] .csv-columns-panel {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .csv-col-item {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .csv-col-item-name {
    color: var(--color-text);
}

[data-theme="dark"] .csv-col-item-map {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-col-item-map.is-mapped {
    color: #22c55e;
}

[data-theme="dark"] .csv-col-item-map.is-unmapped {
    color: #f59e0b;
}

[data-theme="dark"] .csv-col-type-badge.type-number {
    background: rgba(25, 118, 210, 0.2);
    color: #64b5f6;
}

[data-theme="dark"] .csv-col-type-badge.type-date {
    background: rgba(198, 40, 40, 0.2);
    color: #ef5350;
}

[data-theme="dark"] .csv-col-type-badge.type-text {
    background: rgba(123, 31, 162, 0.2);
    color: #ba68c8;
}

/* Preview table */
[data-theme="dark"] .csv-preview-wrap {
    border-color: var(--color-border);
}

[data-theme="dark"] .csv-preview-table thead th {
    background: var(--color-surface-alt);
    border-bottom-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .csv-preview-table thead th .csv-th-mapped {
    color: #22c55e;
}

[data-theme="dark"] .csv-preview-table thead th .csv-th-type {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-preview-table thead th.mapped-col {
    border-bottom-color: #22c55e;
}

[data-theme="dark"] .csv-preview-table thead th.unmapped-col {
    border-bottom-color: #f59e0b;
}

[data-theme="dark"] .csv-preview-table tbody td {
    border-bottom-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .csv-preview-table tbody tr:hover {
    background: rgba(255, 255, 255, 0.03);
}

/* Validation error cells */
[data-theme="dark"] .csv-preview-table tbody tr.csv-row-warning {
    background: rgba(245, 158, 11, 0.1);
}

[data-theme="dark"] .csv-preview-table tbody tr.csv-row-warning:hover {
    background: rgba(245, 158, 11, 0.15);
}

[data-theme="dark"] .csv-preview-table tbody tr.csv-row-error {
    background: rgba(239, 68, 68, 0.08);
}

[data-theme="dark"] .csv-preview-table tbody tr.csv-row-error:hover {
    background: rgba(239, 68, 68, 0.12);
}

[data-theme="dark"] .csv-preview-table tbody tr.csv-row-skipped {
    opacity: 0.4;
}

[data-theme="dark"] .csv-preview-table tbody td.csv-cell-empty {
    background: rgba(245, 158, 11, 0.15);
}

[data-theme="dark"] .csv-preview-table tbody td.csv-cell-empty::after {
    color: #f59e0b;
}

[data-theme="dark"] .csv-preview-table tbody td.csv-cell-error {
    background: rgba(239, 68, 68, 0.12);
}

[data-theme="dark"] .csv-cell-error-text {
    color: #ef4444;
}

/* Row number + skip toggle */
[data-theme="dark"] .csv-preview-table .csv-row-num {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-row-skip-btn {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-row-skip-btn:hover {
    background: var(--color-surface-alt);
    color: #ef4444;
}

[data-theme="dark"] .csv-row-skip-btn.is-skipped {
    color: #ef4444;
}

/* Error summary panel */
[data-theme="dark"] .csv-error-summary {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.25);
}

[data-theme="dark"] .csv-error-summary-title {
    color: #ef4444;
}

[data-theme="dark"] .csv-error-summary-item {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .csv-error-summary-item .err-count {
    color: #ef4444;
}

[data-theme="dark"] .csv-error-suggestion {
    color: var(--color-text-muted);
}

/* Skip toggle */
[data-theme="dark"] .csv-skip-toggle {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .csv-skip-toggle label {
    color: var(--color-text);
}

[data-theme="dark"] .csv-skip-count {
    color: var(--color-text-muted);
}

/* Progress bar */
[data-theme="dark"] .csv-progress-bar-outer {
    background: var(--color-surface-alt);
}

[data-theme="dark"] .csv-progress-text {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .csv-progress-text strong {
    color: var(--color-text);
}

/* Legend */
[data-theme="dark"] .csv-issues-legend {
    color: var(--color-text-muted);
}

[data-theme="dark"] .csv-legend-dot.dot-warning {
    background: rgba(245, 158, 11, 0.4);
}

[data-theme="dark"] .csv-legend-dot.dot-error {
    background: rgba(239, 68, 68, 0.4);
}

[data-theme="dark"] .csv-legend-dot.dot-mapped {
    background: #22c55e;
}

[data-theme="dark"] .csv-legend-dot.dot-unmapped {
    background: #f59e0b;
}

/* ===================== */
/* Dashboard Widget Gallery & Custom Widgets (Dark Theme) */
/* ===================== */
[data-theme="dark"] .widget-gallery-info {
    background-color: rgba(79, 143, 247, 0.15);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .widget-gallery-item {
    background-color: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .widget-gallery-icon {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.15), rgba(79, 143, 247, 0.25));
    color: var(--color-primary);
}

[data-theme="dark"] .dash-widget-remove-btn:hover {
    background-color: rgba(239, 68, 68, 0.15);
}

[data-theme="dark"] .currency-widget-input,
[data-theme="dark"] .widget-notes-textarea,
[data-theme="dark"] .widget-tasks-input {
    background-color: var(--color-surface-alt);
    border-color: var(--color-border);
}

[data-theme="dark"] .currency-widget-rate {
    background-color: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .widget-link-item,
[data-theme="dark"] .widget-weather-item,
[data-theme="dark"] .widget-task-item,
[data-theme="dark"] .widget-clock-item {
    background-color: rgba(79, 143, 247, 0.08);
    border-color: var(--color-border);
}

[data-theme="dark"] .widget-link-item:hover,
[data-theme="dark"] .widget-task-item:hover {
    background-color: rgba(79, 143, 247, 0.12);
}

[data-theme="dark"] .widget-link-remove,
[data-theme="dark"] .widget-task-remove {
    background: rgba(239, 68, 68, 0.15);
}

[data-theme="dark"] .widget-link-remove:hover,
[data-theme="dark"] .widget-task-remove:hover {
    background: var(--color-danger);
}

/* ============================================
   DATA QUALITY WIDGET - DARK MODE
   ============================================ */
[data-theme="dark"] .dash-dq-card {
    background-color: var(--color-surface, #1e293b);
    border-color: var(--color-border, #334155);
}

[data-theme="dark"] .dash-dq-gauge-wrap {
    border-right-color: var(--color-border, #334155);
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.04), rgba(79, 143, 247, 0.08));
}

[data-theme="dark"] .dash-dq-gauge-bg {
    stroke: var(--color-border, #334155);
}

[data-theme="dark"] .dash-dq-gauge-pct {
    color: var(--color-text, #e2e8f0);
}

[data-theme="dark"] .dash-dq-gauge-sub {
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .dash-dq-section-title {
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .dash-dq-bar-name {
    color: var(--color-text-secondary, #94a3b8);
}

[data-theme="dark"] .dash-dq-bar-pct {
    color: var(--color-text, #e2e8f0);
}

[data-theme="dark"] .dash-dq-bar-track {
    background-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .dash-dq-weak-item {
    background-color: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .dash-dq-weak-item:hover {
    background-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .dash-dq-weak-name {
    color: var(--color-text-secondary, #94a3b8);
}

[data-theme="dark"] .dash-dq-empty {
    color: var(--color-text-muted, #64748b);
}

@media (max-width: 768px) {
    [data-theme="dark"] .dash-dq-gauge-wrap {
        border-right-color: transparent;
        border-bottom-color: var(--color-border, #334155);
    }
}


/* ============================================
   AUTOMATION RULES POPOVER - DARK MODE
   ============================================ */

[data-theme="dark"] .automation-btn {
    background: var(--color-surface-alt);
    color: var(--color-text-secondary);
    border-color: transparent;
}

[data-theme="dark"] .automation-btn:hover {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .automation-btn.has-active-rules {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary);
    border-color: var(--color-primary);
}

[data-theme="dark"] .automation-popover {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
}

[data-theme="dark"] .automation-popover-header {
    background: var(--color-bg-secondary);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .automation-popover-actions button {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .automation-popover-actions button:hover {
    background: var(--color-surface);
    color: var(--color-text);
}

[data-theme="dark"] .automation-popover-actions .btn-add-rule {
    background: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}

[data-theme="dark"] .automation-popover-actions .btn-add-rule:hover {
    background: var(--color-primary-hover);
}

[data-theme="dark"] .automation-rules-empty {
    color: var(--color-text-muted);
}

[data-theme="dark"] .automation-rule {
    background: var(--color-surface-alt);
    border-color: var(--color-border-light);
}

[data-theme="dark"] .automation-rule:hover {
    border-color: var(--color-border);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .automation-rule-name {
    color: var(--color-text);
}

[data-theme="dark"] .automation-rule-name:hover {
    color: var(--color-primary);
}

[data-theme="dark"] .automation-rule-name-edit {
    background: var(--color-surface);
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .automation-rule-trigger,
[data-theme="dark"] .automation-rule-condition,
[data-theme="dark"] .automation-rule-action,
[data-theme="dark"] .automation-rule-action-value {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .automation-rule-trigger:focus,
[data-theme="dark"] .automation-rule-condition:focus,
[data-theme="dark"] .automation-rule-action:focus,
[data-theme="dark"] .automation-rule-action-value:focus {
    border-color: var(--color-primary);
    color: var(--color-text);
}

[data-theme="dark"] .automation-rule-delete:hover {
    background: rgba(220, 38, 38, 0.15);
    color: #ef4444;
}

[data-theme="dark"] .automation-log-section {
    background: var(--color-bg-secondary);
    border-top-color: var(--color-border);
}

[data-theme="dark"] .automation-log-title {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .automation-log-entry {
    background: var(--color-surface);
    border-color: var(--color-border-light);
}

[data-theme="dark"] .automation-log-time {
    color: var(--color-text-muted);
}

[data-theme="dark"] .automation-log-text {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .automation-log-count {
    color: var(--color-primary);
}

/* ============================================
   Kanban Card Visual Improvements - Dark Mode
   ============================================ */

/* Count badge in column header */
[data-theme="dark"] .kanban-count {
    background: rgba(255, 255, 255, 0.08);
    color: var(--color-text-secondary);
}

/* Cards container drop hint */
[data-theme="dark"] .kanban-cards {
    border-bottom-color: var(--color-border);
}

/* Card metadata muted color */
[data-theme="dark"] .kanban-card-supplier {
    color: var(--color-text-muted);
}

[data-theme="dark"] .kanban-card-value {
    color: var(--color-text-secondary);
}

/* Swimlane header sticky */
[data-theme="dark"] .kanban-swimlane-header {
    background: rgba(255, 255, 255, 0.04);
    border-bottom-color: #363654;
}

[data-theme="dark"] .kanban-swimlane-header:hover {
    background: rgba(255, 255, 255, 0.07);
}

/* Swimlane enhanced dark mode */
[data-theme="dark"] .kanban-swimlane-body .kanban-swimlane-row-header-cell {
    background: rgba(255, 255, 255, 0.02);
    border-right-color: #363654;
}

[data-theme="dark"] .kanban-swimlane-cell-count {
    background: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .kanban-swimlane-mode-select {
    background: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

/* ============================================
   Dashboard Visual Improvements - Dark Mode
   ============================================ */

/* Greeting username gradient in dark mode */
[data-theme="dark"] .dash-greeting-header h1 .greeting-username {
    background: linear-gradient(135deg, #60a5fa, #93c5fd);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Section header accent dots in dark mode */
[data-theme="dark"] .dash-deliveries-header h3::before,
[data-theme="dark"] .dash-activity-header h3::before,
[data-theme="dark"] .dash-shipping-header h3::before,
[data-theme="dark"] .dash-top-suppliers-header h3::before,
[data-theme="dark"] .dash-goals-header h3::before,
[data-theme="dark"] .chart-card .chart-header h3::before,
[data-theme="dark"] .recent-imports .card-header h3::before {
    background-color: var(--color-primary, #4f8ff7);
}

/* Chart containers dark mode border */
[data-theme="dark"] .chart-card {
    border-color: var(--color-border, #2a2a42);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Activity feed timeline connector dark mode */
[data-theme="dark"] .activity-feed-item::before {
    background-color: var(--color-border, #2a2a42);
}

/* Activity dot glow in dark mode */
[data-theme="dark"] .dash-activity-dot {
    box-shadow: 0 0 0 3px var(--color-surface, #1a1a2e), 0 0 0 5px rgba(79, 143, 247, 0.12);
}

/* Activity feed icon shadow dark mode */
[data-theme="dark"] .activity-feed-icon {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Delivery date block dark mode */
[data-theme="dark"] .dash-delivery-date {
    background-color: var(--color-surface-alt, #151528);
}

/* Delivery item hover dark mode */
[data-theme="dark"] .dash-delivery-item:hover {
    background-color: rgba(79, 143, 247, 0.04);
}

/* KPI goals grid background dark mode */
[data-theme="dark"] .dash-goals-grid {
    background-color: var(--color-bg-secondary, #0f0f1e);
}

/* Shipping ontime bar dark mode */
[data-theme="dark"] .dash-shipping-ontime-bar {
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .dash-shipping-ontime-fill {
    background: linear-gradient(90deg, var(--color-success, #22c55e), #34d399);
}

/* Add widget button dark mode - let btn-primary styles apply */

/* ============================================
   Loading & Animation Improvements - Dark Mode
   ============================================ */

/* Skeleton shimmer: dark blue tint */
[data-theme="dark"] .skeleton-base {
    background: linear-gradient(
        105deg,
        var(--color-surface) 0%,
        var(--color-surface) 30%,
        rgba(79, 143, 247, 0.06) 45%,
        var(--color-surface-alt) 50%,
        rgba(79, 143, 247, 0.06) 55%,
        var(--color-surface) 70%,
        var(--color-surface) 100%
    );
    background-size: 300% 100%;
}

[data-theme="dark"] .skeleton {
    background: linear-gradient(
        105deg,
        var(--color-surface) 0%,
        var(--color-surface) 30%,
        rgba(79, 143, 247, 0.06) 45%,
        var(--color-surface-alt) 50%,
        rgba(79, 143, 247, 0.06) 55%,
        var(--color-surface) 70%,
        var(--color-surface) 100%
    );
    background-size: 300% 100%;
}

/* Button ripple: lighter for dark backgrounds */
[data-theme="dark"] .btn::after {
    background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.15) 0%, transparent 65%);
}

[data-theme="dark"] .btn-ghost::after,
[data-theme="dark"] .btn-outline::after,
[data-theme="dark"] .btn-secondary::after {
    background: radial-gradient(circle at 50% 50%, rgba(79, 143, 247, 0.15) 0%, transparent 65%);
}

/* Progress bar stripes: subtler in dark mode */
[data-theme="dark"] .doc-checklist-progress-bar::after,
[data-theme="dark"] .bulk-edit-progress-fill::after,
[data-theme="dark"] .csv-progress-bar-fill::after,
[data-theme="dark"] .password-strength-fill::after,
[data-theme="dark"] [class*="progress-fill"]::after,
[data-theme="dark"] [class*="progress-bar-fill"]::after {
    background: repeating-linear-gradient(
        -45deg,
        transparent 0px,
        transparent 6px,
        rgba(255, 255, 255, 0.08) 6px,
        rgba(255, 255, 255, 0.08) 12px
    );
    background-size: 17px 17px;
}

/* Badge pulse: adjusted glow for dark mode */
[data-theme="dark"] .badge-pulse,
[data-theme="dark"] .rate-dot-fresh {
    animation: badgePulseGlowDark 2.5s ease-in-out infinite;
}

@keyframes badgePulseGlowDark {
    0%, 100% {
        opacity: 1;
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.5);
    }
    50% {
        opacity: 0.85;
        box-shadow: 0 0 0 4px rgba(34, 197, 94, 0);
    }
}

/* Focus ring: dark mode override */
[data-theme="dark"] input:focus-visible,
[data-theme="dark"] select:focus-visible,
[data-theme="dark"] textarea:focus-visible {
    outline: 2px solid transparent;
    outline-offset: 2px;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px var(--color-primary);
}

/* Dropdown slide-down: dark mode shadow */
[data-theme="dark"] .dropdown-menu {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

/* ============================================
   Button & Form Design Improvements (dark)
   ============================================ */

/* Primary button gradient (dark) - muted for dark mode */
[data-theme="dark"] .btn-primary {
    background: linear-gradient(180deg, #5a8fe0 0%, #4878c8 100%);
    border-color: #4878c8;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .btn-primary:hover {
    background: linear-gradient(180deg, #6499ea 0%, #5a8fe0 100%);
    border-color: #5a8fe0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .btn-primary:active:not(:disabled) {
    background: #3d6db8;
    border-color: #3d6db8;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Secondary button (dark) */
[data-theme="dark"] .btn-secondary {
    color: #6ba3fa;
    border-color: #6ba3fa;
}

[data-theme="dark"] .btn-secondary:hover {
    background-color: rgba(79, 143, 247, 0.1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .btn-secondary:active:not(:disabled) {
    background-color: rgba(79, 143, 247, 0.15);
}

/* Danger button gradient (dark) */
[data-theme="dark"] .btn-danger {
    background: linear-gradient(180deg, #f87171 0%, #ef4444 100%);
    border-color: #ef4444;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .btn-danger:hover {
    background: linear-gradient(180deg, #ef4444 0%, #dc2626 100%);
    border-color: #dc2626;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .btn-danger:active:not(:disabled) {
    background: #dc2626;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Success button gradient (dark) */
[data-theme="dark"] .btn-success {
    background: linear-gradient(180deg, #34d399 0%, #10b981 100%);
    border-color: #10b981;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .btn-success:hover {
    background: linear-gradient(180deg, #10b981 0%, #059669 100%);
    border-color: #059669;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .btn-success:active:not(:disabled) {
    background: #059669;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Ghost button (dark) */
[data-theme="dark"] .btn-ghost:active:not(:disabled) {
    background-color: var(--color-border);
}

/* Outline button (dark) */
[data-theme="dark"] .btn-outline {
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .btn-outline:hover {
    border-color: var(--color-text-muted);
    background-color: var(--color-surface-alt);
}

[data-theme="dark"] .btn-outline:active:not(:disabled) {
    background-color: var(--color-border);
}

/* Disabled state (dark) */
[data-theme="dark"] .btn:disabled {
    opacity: 0.5;
}

/* Icon circle button (dark) */
[data-theme="dark"] .btn-icon-circle {
    background-color: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .btn-icon-circle:hover {
    background-color: var(--color-surface-alt);
    border-color: var(--color-text-muted);
    color: var(--color-text);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .btn-icon-circle:active:not(:disabled) {
    background-color: var(--color-border);
}

[data-theme="dark"] .btn-icon-circle.btn-icon-circle-primary {
    background: linear-gradient(180deg, #6ba3fa 0%, #4f8ff7 100%);
    border-color: #4f8ff7;
}

[data-theme="dark"] .btn-icon-circle.btn-icon-circle-primary:hover {
    background: linear-gradient(180deg, #4f8ff7 0%, #6ba3fa 100%);
}

[data-theme="dark"] .btn-icon-circle.btn-icon-circle-danger {
    background: linear-gradient(180deg, #f87171 0%, #ef4444 100%);
    border-color: #ef4444;
}

[data-theme="dark"] .btn-icon-circle.btn-icon-circle-danger:hover {
    background: linear-gradient(180deg, #ef4444 0%, #dc2626 100%);
}

/* Button group borders (dark) */
[data-theme="dark"] .btn-group .btn {
    border-color: var(--color-border);
}

[data-theme="dark"] .btn-group .btn:hover {
    border-color: var(--color-text-muted);
}

/* Form inputs (dark) - improved */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
    background-color: var(--color-bg-secondary);
    border-color: var(--color-border);
    color: var(--color-text);
    border-radius: 8px;
}

[data-theme="dark"] input[type="text"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="email"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="password"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="number"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="date"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="search"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="url"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] input[type="tel"]:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] select:hover:not(:focus-visible):not(:disabled),
[data-theme="dark"] textarea:hover:not(:focus-visible):not(:disabled) {
    border-color: #3a3a55;
}

/* Select arrow dark mode */
[data-theme="dark"] select {
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%239aa4b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Generic .form-select dark mode */
[data-theme="dark"] .form-select {
    background-color: var(--color-surface);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .form-select:focus,
[data-theme="dark"] .form-select:focus-visible {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.2);
}

/* Checkbox dark mode */
[data-theme="dark"] input[type="checkbox"] {
    accent-color: #4f8ff7;
}

/* Toggle slider dark mode */
[data-theme="dark"] .toggle-slider {
    background-color: var(--color-border);
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

[data-theme="dark"] .toggle-switch input:checked + .toggle-slider {
    background-color: #4f8ff7;
}

[data-theme="dark"] .toggle-slider::before {
    background-color: #e0e0e0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .toggle-switch:hover .toggle-slider {
    background-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .toggle-switch:hover input:checked + .toggle-slider {
    background-color: #6ba3fa;
}

/* ============================================
   Side Panel Visual Redesign (Dark Mode)
   ============================================ */

/* Panel shell */
[data-theme="dark"] .side-panel {
    box-shadow: -8px 0 32px rgba(0, 0, 0, 0.4), -2px 0 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .side-panel-backdrop {
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}

/* Header gradient (dark) */
[data-theme="dark"] .side-panel-header {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.04) 0%, rgba(79, 143, 247, 0.08) 100%);
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .side-panel-header::after {
    background: linear-gradient(90deg, transparent, rgba(79, 143, 247, 0.15), transparent);
}

[data-theme="dark"] .sp-header-badge.badge-blue { background: rgba(59, 130, 246, 0.2); color: #93c5fd; }
[data-theme="dark"] .sp-header-badge.badge-yellow { background: rgba(251, 191, 36, 0.2); color: #fcd34d; }
[data-theme="dark"] .sp-header-badge.badge-green { background: rgba(34, 197, 94, 0.2); color: #86efac; }
[data-theme="dark"] .sp-header-badge.badge-orange { background: rgba(249, 115, 22, 0.2); color: #fdba74; }
[data-theme="dark"] .sp-header-badge.badge-red { background: rgba(239, 68, 68, 0.2); color: #fca5a5; }
[data-theme="dark"] .sp-header-badge.badge-gray { background: rgba(156, 163, 175, 0.2); color: #d1d5db; }

[data-theme="dark"] .sp-header-meta {
    color: var(--color-text-muted);
}

/* Nav buttons (dark) */
[data-theme="dark"] .side-panel-nav-btn {
    background: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .side-panel-nav-btn:hover {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/* Close button (dark) */
[data-theme="dark"] .side-panel-close {
    border-color: var(--color-border);
    background: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .side-panel-close:hover {
    background: rgba(239, 68, 68, 0.12);
    color: #ef4444;
    border-color: rgba(239, 68, 68, 0.3);
}

/* Footer (dark) */
[data-theme="dark"] .side-panel-footer {
    background: linear-gradient(180deg, rgba(79, 143, 247, 0.02), rgba(79, 143, 247, 0.04));
}

/* Body scrollbar (dark) */
[data-theme="dark"] .side-panel-body::-webkit-scrollbar-thumb {
    background: var(--color-border);
}
[data-theme="dark"] .side-panel-body::-webkit-scrollbar-thumb:hover {
    background: var(--color-text-muted);
}

/* Tab bar (dark) */
[data-theme="dark"] .sp-tab-bar {
    background: var(--color-surface) !important;
    border-bottom-color: var(--color-border) !important;
}

[data-theme="dark"] .sp-tab-btn {
    color: var(--color-text-muted) !important;
}

[data-theme="dark"] .sp-tab-btn:hover {
    color: var(--color-text) !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

[data-theme="dark"] .sp-tab-btn.active {
    color: #6ba3fa !important;
    background: rgba(79, 143, 247, 0.1) !important;
}

[data-theme="dark"] .sp-tab-btn.active::after {
    background: #4f8ff7;
}

[data-theme="dark"] .sp-tab-icon {
    opacity: 0.6;
}

[data-theme="dark"] .sp-tab-btn:hover .sp-tab-icon,
[data-theme="dark"] .sp-tab-btn.active .sp-tab-icon {
    opacity: 1;
}

/* Sections (dark) */
[data-theme="dark"] .sp-section {
    background: var(--color-surface);
    border-color: var(--color-border);
}

[data-theme="dark"] .sp-section-title {
    border-bottom-color: var(--color-border);
}

[data-theme="dark"] .sp-section-title::before {
    background: #4f8ff7;
}

/* Fields (dark) */
[data-theme="dark"] .sp-field {
    border-bottom-color: rgba(255, 255, 255, 0.04);
}

/* Changelog (dark enhanced) */
[data-theme="dark"] .sp-changelog-entry {
    border-bottom-color: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .sp-changelog-detail em {
    background: rgba(79, 143, 247, 0.08);
}

/* Stepper (dark enhanced) */
[data-theme="dark"] .import-stepper {
    background: linear-gradient(180deg, rgba(79, 143, 247, 0.03), transparent);
}

[data-theme="dark"] .import-stepper-circle {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .import-stepper-step.completed .import-stepper-circle {
    background: linear-gradient(135deg, #10b981, #059669);
    box-shadow: 0 2px 6px rgba(16, 185, 129, 0.3);
}

[data-theme="dark"] .import-stepper-step.current .import-stepper-circle {
    background: linear-gradient(135deg, #4f8ff7, #2563eb);
    border-color: #4f8ff7;
    box-shadow: 0 0 0 4px rgba(79, 143, 247, 0.2), 0 2px 8px rgba(79, 143, 247, 0.3);
}

[data-theme="dark"] .import-stepper-step.completed .import-stepper-line {
    background: linear-gradient(90deg, #10b981, #059669);
}

/* Payment progress (dark) */
[data-theme="dark"] .sp-payments-progress-bar {
    background: var(--color-surface-alt) !important;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2) !important;
}

[data-theme="dark"] .sp-payments-progress-fill {
    background: linear-gradient(90deg, #4f8ff7, #2563eb) !important;
}

[data-theme="dark"] .sp-payments-progress-fill.complete {
    background: linear-gradient(90deg, #10b981, #059669) !important;
}

[data-theme="dark"] .sp-payments-progress-fill.over {
    background: linear-gradient(90deg, #f59e0b, #d97706) !important;
}

[data-theme="dark"] .sp-payment-item {
    border-color: var(--color-border) !important;
}

[data-theme="dark"] .sp-payment-item:hover {
    border-color: #3a3a5a !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
}

/* Document checklist (dark enhanced) */
[data-theme="dark"] .doc-checklist-progress {
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .doc-checklist-progress-bar::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.15), transparent);
}

[data-theme="dark"] .doc-checklist-item:hover {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}

[data-theme="dark"] .doc-checklist-checkbox {
    border-color: var(--color-border);
    background: var(--color-surface);
}

[data-theme="dark"] .doc-checklist-checkbox:checked {
    background: linear-gradient(135deg, #10b981, #059669);
    border-color: #059669;
    box-shadow: 0 1px 3px rgba(16, 185, 129, 0.35);
}

[data-theme="dark"] .doc-checklist-checkbox:hover {
    border-color: #4f8ff7;
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.12);
}

/* Comments (dark enhanced) */
[data-theme="dark"] .sp-comment-avatar {
    background: linear-gradient(135deg, rgba(79, 143, 247, 0.12), rgba(79, 143, 247, 0.2)) !important;
    color: #6ba3fa !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15) !important;
}

[data-theme="dark"] .sp-comment-body {
    background: var(--color-bg-secondary, var(--color-surface-alt)) !important;
    border-color: var(--color-border) !important;
}

[data-theme="dark"] .sp-comment-form {
    background: linear-gradient(180deg, transparent, rgba(79, 143, 247, 0.02)) !important;
}

[data-theme="dark"] .sp-comment-input {
    background: var(--color-surface) !important;
    border-color: var(--color-border) !important;
}

[data-theme="dark"] .sp-comment-input:focus {
    border-color: #4f8ff7 !important;
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15) !important;
}

[data-theme="dark"] .sp-comment-submit {
    background: #4f8ff7 !important;
    box-shadow: 0 1px 3px rgba(79, 143, 247, 0.3) !important;
}

[data-theme="dark"] .sp-comment-submit:hover {
    box-shadow: 0 2px 6px rgba(79, 143, 247, 0.4) !important;
}

/* Active row (dark) */
[data-theme="dark"] tr.sp-active {
    background: rgba(79, 143, 247, 0.06) !important;
    box-shadow: inset 3px 0 0 #4f8ff7;
}

/* ============================================
   Timeline & Calendar CSS Enhancement (Dark Mode)
   ============================================ */

/* -- Timeline: Gantt bar gradient fills (dark) -- */
[data-theme="dark"] .gantt-bar--planning {
    background: linear-gradient(135deg, color-mix(in srgb, var(--gantt-bar-planning), #000 8%), var(--gantt-bar-planning));
    box-shadow: 0 1px 4px rgba(96, 165, 250, 0.25), 0 1px 2px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .gantt-bar--transit {
    background: linear-gradient(135deg, color-mix(in srgb, var(--gantt-bar-transit), #000 8%), var(--gantt-bar-transit));
    box-shadow: 0 1px 4px rgba(251, 191, 36, 0.25), 0 1px 2px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .gantt-bar--customs {
    background: linear-gradient(135deg, color-mix(in srgb, var(--gantt-bar-customs), #000 8%), var(--gantt-bar-customs));
    box-shadow: 0 1px 4px rgba(167, 139, 250, 0.25), 0 1px 2px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .gantt-bar--delivered {
    background: linear-gradient(135deg, color-mix(in srgb, var(--gantt-bar-delivered), #000 8%), var(--gantt-bar-delivered));
    box-shadow: 0 1px 4px rgba(52, 211, 153, 0.25), 0 1px 2px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .gantt-bar:hover {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35), 0 2px 6px rgba(0, 0, 0, 0.2);
}

/* -- Timeline: Today marker (dark) -- */
[data-theme="dark"] .gantt-today {
    box-shadow: 0 0 8px rgba(248, 113, 113, 0.35);
}

/* -- Timeline: Milestone glow (dark) -- */
[data-theme="dark"] .gantt-milestone {
    border-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .gantt-milestone:hover {
    box-shadow: 0 0 14px rgba(251, 191, 36, 0.5), 0 2px 8px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .gantt-milestone--etd:hover {
    box-shadow: 0 0 14px rgba(96, 165, 250, 0.5), 0 2px 8px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .gantt-milestone--eta:hover,
[data-theme="dark"] .gantt-milestone--delivery:hover {
    box-shadow: 0 0 14px rgba(52, 211, 153, 0.5), 0 2px 8px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .gantt-milestone--payment:hover {
    box-shadow: 0 0 14px rgba(251, 191, 36, 0.5), 0 2px 8px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .gantt-milestone--customs:hover {
    box-shadow: 0 0 14px rgba(167, 139, 250, 0.5), 0 2px 8px rgba(0, 0, 0, 0.35);
}

/* -- Timeline: Tooltip (dark) -- */
[data-theme="dark"] .gantt-tooltip {
    backdrop-filter: blur(12px);
}

[data-theme="dark"] .gantt-tooltip-title {
    border-bottom-color: var(--color-border);
}

/* -- Timeline: Row hover (dark) -- */
[data-theme="dark"] .gantt-row:hover {
    background: rgba(79, 143, 247, 0.04);
}

/* -- Calendar: Day cell hover lift (dark) -- */
[data-theme="dark"] .calendar-day:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* -- Calendar: Today cell (dark) -- */
[data-theme="dark"] .calendar-day.today {
    background-color: rgba(96, 165, 250, 0.06);
}

/* -- Calendar: Event chip pill (dark) -- */
[data-theme="dark"] .calendar-event-dot {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}

/* -- Calendar: Week view card shadow (dark) -- */
[data-theme="dark"] .cal-weekview-event {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

[data-theme="dark"] .cal-weekview-event:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25), 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* -- Calendar: Nav arrow buttons (dark) -- */
[data-theme="dark"] .calendar-nav > .btn.btn-ghost.btn-sm {
    border-color: var(--color-border);
    background: var(--color-surface);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .calendar-nav > .btn.btn-ghost.btn-sm:hover {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
    box-shadow: 0 2px 8px rgba(96, 165, 250, 0.3);
}

/* -- Calendar: Minimap nav buttons (dark) -- */
[data-theme="dark"] .minimap-nav-btn {
    border-color: var(--color-border);
}

[data-theme="dark"] .minimap-nav-btn:hover {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

/* -- Calendar: Minimap month dividers (dark) -- */
[data-theme="dark"] .minimap-month {
    border-bottom-color: var(--color-border);
}

/* -- Calendar: Tooltip (dark) -- */
[data-theme="dark"] .calendar-tooltip {
    backdrop-filter: blur(12px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

/* -- Import Row Hover Tooltip (dark) -- */
[data-theme="dark"] .import-row-tooltip {
    background: var(--color-surface);
    border-color: var(--color-border);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .import-row-tooltip-quality-bar {
    background: var(--color-bg-secondary, #1e1e2e);
}

/* ============================================
   Archive Page - Enhanced Dark Mode
   ============================================ */

/* Archive analytics section */
[data-theme="dark"] .archive-analytics-section {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    border-color: var(--color-border);
}

/* Archive stat cards with colored left borders */
[data-theme="dark"] .archive-analytics-stat {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
    border-left-color: var(--color-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .archive-analytics-stat:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .archive-analytics-stat:nth-child(2) {
    border-left-color: var(--color-success);
}

[data-theme="dark"] .archive-analytics-stat:nth-child(3) {
    border-left-color: var(--color-warning);
}

[data-theme="dark"] .archive-analytics-stat:nth-child(4) {
    border-left-color: var(--color-info);
}

/* Archive chart cards */
[data-theme="dark"] .archive-analytics-chart-card {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .archive-analytics-chart-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Archive grid cards */
[data-theme="dark"] .archive-grid-card {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
}

[data-theme="dark"] .archive-grid-card:hover {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35) !important;
}

/* Archive search input */
[data-theme="dark"] #archive-search {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
}

[data-theme="dark"] #archive-search:focus {
    box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.15);
}

/* Archive view toggle */
[data-theme="dark"] .archive-view-toggle {
    background: var(--color-surface) !important;
    border-color: var(--color-border) !important;
}

[data-theme="dark"] .archive-view-toggle button {
    background: var(--color-surface) !important;
    color: var(--color-text-muted) !important;
}

[data-theme="dark"] .archive-view-toggle button:hover {
    background: var(--color-surface-alt) !important;
    color: var(--color-text) !important;
}

[data-theme="dark"] .archive-view-toggle button.is-active {
    background: var(--color-primary) !important;
    color: #fff !important;
}

[data-theme="dark"] .archive-view-toggle button + button {
    border-left-color: var(--color-border) !important;
}

/* Archive restore buttons */
[data-theme="dark"] #archive-restore-all:hover,
[data-theme="dark"] #archive-bulk-restore:hover {
    box-shadow: 0 2px 8px rgba(5, 150, 105, 0.25);
}

/* Archive confirm warning */
[data-theme="dark"] .archive-confirm-warning {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.25);
}

/* Restore preview */
[data-theme="dark"] .restore-preview {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--color-border);
}

/* Archive advanced filters */
[data-theme="dark"] .archive-advanced-filters {
    background: var(--color-surface) !important;
    border-color: var(--color-border) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2) !important;
}

/* Archive chart section */
[data-theme="dark"] .archive-chart-section {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
}

/* Archive stat cards (financial cards in grid) */
[data-theme="dark"] .archive-stats-grid .fin-card {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .archive-stats-grid .fin-card:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* ============================================
   CSV Import - Enhanced Dark Mode
   ============================================ */

/* Wizard step enhancements */
[data-theme="dark"] .wizard-step.active .wizard-step-num {
    box-shadow: 0 0 0 4px rgba(96, 165, 250, 0.2);
}

@keyframes wizardStepPulseDark {
    0%, 100% { box-shadow: 0 0 0 4px rgba(96, 165, 250, 0.2); }
    50% { box-shadow: 0 0 0 8px rgba(96, 165, 250, 0.08); }
}

[data-theme="dark"] .wizard-step.active .wizard-step-num {
    animation-name: wizardStepPulseDark;
}

[data-theme="dark"] .wizard-step.completed .wizard-step-num {
    box-shadow: 0 0 0 4px rgba(5, 150, 105, 0.15);
}

[data-theme="dark"] .wizard-step-line {
    background-color: var(--color-border);
}

[data-theme="dark"] .wizard-step.completed + .wizard-step-line {
    background-color: var(--color-success);
}

/* CSV mapping items - dark alternating rows */
[data-theme="dark"] .csv-mapping-item {
    border-color: var(--color-border);
}

[data-theme="dark"] .csv-mapping-item:nth-child(odd) {
    background-color: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .csv-mapping-item.mapped {
    background-color: rgba(5, 150, 105, 0.08);
    border-left-color: #22c55e;
}

[data-theme="dark"] .csv-mapping-item.unmapped {
    background-color: var(--color-surface-alt);
    border-left-color: var(--color-border);
}

[data-theme="dark"] .csv-mapping-item:hover {
    border-color: var(--color-primary);
}

/* CSV mapping row (injected) - dark alternating */
[data-theme="dark"] .csv-mapping-row:nth-child(even) {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

[data-theme="dark"] .csv-mapping-row:hover {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}

/* CSV mapping select */
[data-theme="dark"] .csv-mapping-select:focus {
    box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.15) !important;
}

/* CSV error list - dark */
[data-theme="dark"] .csv-error-list {
    background: rgba(239, 68, 68, 0.04);
    border-color: rgba(239, 68, 68, 0.2);
}

[data-theme="dark"] .csv-error-item {
    border-bottom-color: var(--color-border);
    border-left-color: #ef4444;
}

[data-theme="dark"] .csv-error-item:hover {
    background-color: rgba(239, 68, 68, 0.06);
}

/* CSV error summary */
[data-theme="dark"] .csv-error-summary {
    border-left-color: #ef4444 !important;
}

[data-theme="dark"] .csv-error-summary-item {
    border-bottom-color: rgba(239, 68, 68, 0.1);
}

/* CSV preview table - dark alternating rows */
[data-theme="dark"] .csv-preview-table tbody tr:nth-child(even):not(.csv-row-warning):not(.csv-row-error):not(.csv-row-skipped) {
    background-color: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .csv-preview-table tbody tr:hover {
    background-color: rgba(96, 165, 250, 0.04) !important;
}

/* CSV preview wrap */
[data-theme="dark"] .csv-preview-wrap {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
}

/* CSV progress bar - dark */
[data-theme="dark"] .csv-progress-bar-outer {
    background: var(--color-surface-alt) !important;
}

[data-theme="dark"] .csv-progress-bar-inner {
    background: linear-gradient(90deg, #3b82f6, #60a5fa) !important;
}

[data-theme="dark"] .csv-progress-bar-inner.done {
    background: linear-gradient(90deg, #059669, #34d399) !important;
}

[data-theme="dark"] .csv-progress-bar-inner.error {
    background: linear-gradient(90deg, #dc2626, #f87171) !important;
}

/* CSV saved items - dark */
[data-theme="dark"] .csv-saved-item:hover {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}

/* Radio label - dark */
[data-theme="dark"] .radio-label:hover {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

/* ============================================
   Dark Theme - Mobile Responsiveness
   ============================================ */

/* Modal drag handle in dark mode */
[data-theme="dark"] .modal::before {
    background: rgba(255, 255, 255, 0.15);
}

/* Dropdown/bottom sheet drag handle in dark mode */
[data-theme="dark"] .dropdown-menu.open::before {
    background: rgba(255, 255, 255, 0.15);
}

/* Dropdown backdrop in dark mode */
[data-theme="dark"] .dropdown-backdrop {
    background: rgba(0, 0, 0, 0.65);
}

/* Sidebar overlay in dark mode (mobile) */
[data-theme="dark"] .sidebar-overlay.active {
    background: rgba(0, 0, 0, 0.75);
}

/* Bottom sheet dropdowns in dark mode */
@media (max-width: 768px) {
    [data-theme="dark"] .dropdown-menu.open {
        background: var(--color-surface, #1e293b);
        border-top-color: var(--color-border, #334155);
        box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.4) !important;
    }

    [data-theme="dark"] .dropdown-item:hover {
        background-color: rgba(255, 255, 255, 0.06);
    }

    /* Mobile modals in dark mode */
    [data-theme="dark"] .modal {
        background: var(--color-surface, #1e293b);
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
    }

    [data-theme="dark"] .modal-header {
        background-color: rgba(255, 255, 255, 0.02);
        border-bottom-color: var(--color-border, #334155);
    }

    [data-theme="dark"] .modal-footer {
        background: var(--color-surface, #1e293b);
        border-top-color: var(--color-border, #334155);
    }

    /* Toast on mobile in dark mode */
    [data-theme="dark"] .toast {
        background: var(--color-surface, #1e293b);
        border-left-color: var(--color-border, #334155);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
    }

    /* Bulk bar fixed on mobile in dark mode */
    [data-theme="dark"] .bulk-bar {
        background: rgba(79, 143, 247, 0.12);
        border-color: rgba(79, 143, 247, 0.25);
        box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.3);
    }

    /* Column toggle panel in dark mode */
    [data-theme="dark"] .column-toggle-panel {
        background: var(--color-surface, #1e293b);
        border-top-color: var(--color-border, #334155);
        box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.4) !important;
    }

    /* Side panel in dark mode */
    [data-theme="dark"] .side-panel {
        background: var(--color-surface, #1e293b);
        border-left-color: var(--color-border, #334155);
    }

    /* Card hover states in dark mode */
    [data-theme="dark"] .import-card:hover {
        border-color: rgba(255, 255, 255, 0.12);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    }

    [data-theme="dark"] .import-card.selected {
        border-color: var(--color-primary);
        box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.25), 0 4px 12px rgba(0, 0, 0, 0.3);
    }

    /* Dashboard cards in dark mode */
    [data-theme="dark"] .stat-card {
        background: var(--color-surface, #1e293b);
        border-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .fin-card {
        background: var(--color-surface, #1e293b);
        border-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .chart-card {
        background: var(--color-surface, #1e293b);
        border-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    /* Date range bar in dark mode */
    [data-theme="dark"] .dash-date-range-bar {
        background: var(--color-surface, #1e293b);
        border-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .dash-date-preset {
        border-color: rgba(255, 255, 255, 0.1);
        color: var(--color-text-secondary, #94a3b8);
    }

    [data-theme="dark"] .dash-date-preset:hover {
        background-color: rgba(79, 143, 247, 0.08);
        border-color: var(--color-primary);
    }

    [data-theme="dark"] .dash-date-preset.active {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: #ffffff;
    }

    [data-theme="dark"] .dash-date-input {
        background: rgba(255, 255, 255, 0.04);
        border-color: rgba(255, 255, 255, 0.1);
        color: var(--color-text, #e2e8f0);
    }

    /* Deliveries widget in dark mode */
    [data-theme="dark"] .dash-deliveries-header {
        border-bottom-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .dash-delivery-item {
        border-bottom-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .dash-delivery-item:hover {
        background-color: rgba(79, 143, 247, 0.04);
    }

    /* Activity feed in dark mode */
    [data-theme="dark"] .dash-activity-item {
        border-bottom-color: var(--color-border-light, rgba(255, 255, 255, 0.08));
    }

    [data-theme="dark"] .dash-activity-item:hover {
        background-color: rgba(255, 255, 255, 0.03);
    }

    /* Input fields in dark mode on mobile */
    [data-theme="dark"] input[type="text"],
    [data-theme="dark"] input[type="email"],
    [data-theme="dark"] input[type="password"],
    [data-theme="dark"] input[type="number"],
    [data-theme="dark"] input[type="date"],
    [data-theme="dark"] input[type="search"],
    [data-theme="dark"] input[type="url"],
    [data-theme="dark"] input[type="tel"],
    [data-theme="dark"] select,
    [data-theme="dark"] textarea {
        background: rgba(255, 255, 255, 0.04);
        border-color: rgba(255, 255, 255, 0.1);
        color: var(--color-text, #e2e8f0);
    }

    [data-theme="dark"] input:focus-visible,
    [data-theme="dark"] select:focus-visible,
    [data-theme="dark"] textarea:focus-visible {
        background: rgba(255, 255, 255, 0.06);
        border-color: var(--color-primary);
        box-shadow: 0 0 0 2px rgba(79, 143, 247, 0.2);
    }

    /* Topbar search collapse animation in dark mode */
    [data-theme="dark"] .global-search-input-wrap {
        background: rgba(255, 255, 255, 0.06);
        border-color: rgba(255, 255, 255, 0.1);
    }

    [data-theme="dark"] .global-search-input-wrap:focus-within {
        background: rgba(255, 255, 255, 0.08);
        border-color: var(--color-primary);
        box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.12);
    }
}

/* Reduced motion: disable animations in dark mode too */
@media (prefers-reduced-motion: reduce) {
    [data-theme="dark"] .modal,
    [data-theme="dark"] .dropdown-menu.open,
    [data-theme="dark"] .toast,
    [data-theme="dark"] .sidebar-overlay {
        animation: none !important;
        transition: none !important;
    }
}

/* ============================================
   Dashboard Enhancements - Dark Theme
   ============================================ */

/* Last updated timestamp */
[data-theme="dark"] .dash-last-updated {
    background-color: var(--color-surface, #1a1a2e);
    border-color: var(--color-border-light, #2a2a4a);
}

[data-theme="dark"] .dash-refresh-btn:hover {
    color: var(--color-primary, #4f8ff7);
    background-color: rgba(79, 143, 247, 0.1);
}

/* Sparkline in fin-cards */
[data-theme="dark"] .fin-card-sparkline {
    opacity: 0.8;
}

/* ============================================
   COMPREHENSIVE DARK MODE AUDIT - Session 20
   Accessibility & Polish Pass
   ============================================ */

/* Form inputs - ensure visible borders and proper colors */
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="month"],
[data-theme="dark"] input[type="week"],
[data-theme="dark"] input[type="time"],
[data-theme="dark"] input[type="datetime-local"],
[data-theme="dark"] input[type="search"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="tel"],
[data-theme="dark"] input[type="file"],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    color: var(--color-text) !important;
}

/* Dropdown menus - proper contrast backgrounds */
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .cell-dropdown,
[data-theme="dark"] .bulk-status-dropdown,
[data-theme="dark"] .tag-editor,
[data-theme="dark"] .ctx-submenu {
    background: var(--color-surface) !important;
    border: 1px solid var(--color-border) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.06) !important;
}

/* Table header distinguishable from body */
[data-theme="dark"] thead th {
    background-color: var(--color-surface-alt) !important;
    border-bottom: 2px solid var(--color-primary) !important;
    color: var(--color-text) !important;
    font-weight: 600 !important;
}

/* Toast notifications readable in dark mode */
[data-theme="dark"] .toast-title {
    color: var(--color-text) !important;
}

[data-theme="dark"] .toast-message {
    color: var(--color-text-secondary) !important;
}

/* Modals - no white backgrounds bleeding through */
[data-theme="dark"] .modal {
    background: var(--color-surface) !important;
    border: 1px solid var(--color-border) !important;
}

[data-theme="dark"] .modal-header h3,
[data-theme="dark"] .modal-title {
    color: var(--color-text) !important;
}

/* Stat card borders and gradients */
[data-theme="dark"] .stat-value {
    color: var(--color-text) !important;
}

[data-theme="dark"] .stat-label {
    color: var(--color-text-secondary) !important;
}

/* Settings page - danger zone visible */
[data-theme="dark"] .settings-danger-zone {
    background: rgba(220, 38, 38, 0.06) !important;
    border: 1px solid rgba(220, 38, 38, 0.25) !important;
}

[data-theme="dark"] .settings-danger-zone h3 {
    color: #f87171 !important;
}

/* Print styles force light mode */
@media print {
    [data-theme="dark"] {
        --color-bg: #ffffff !important;
        --color-surface: #ffffff !important;
        --color-text: #000000 !important;
        --color-text-secondary: #444444 !important;
        --color-border: #cccccc !important;
    }

    [data-theme="dark"] body {
        background: #ffffff !important;
        color: #000000 !important;
    }

    [data-theme="dark"] .card,
    [data-theme="dark"] .stat-card,
    [data-theme="dark"] .modal,
    [data-theme="dark"] table {
        background: #ffffff !important;
        color: #000000 !important;
    }

    [data-theme="dark"] thead th {
        background: #f0f0f0 !important;
        color: #000000 !important;
    }

    [data-theme="dark"] tbody td {
        background: #ffffff !important;
        color: #000000 !important;
    }
}

/* Skip link in dark mode */
[data-theme="dark"] .skip-link {
    background: var(--color-primary);
    color: #ffffff;
}

/* Shortcuts in dark mode */
[data-theme="dark"] .sh-kbd {
    background: var(--color-surface-alt);
    border-color: var(--color-border);
    color: var(--color-text);
}

/* ============================================
   Timeline & Calendar Polish - Session 19 Iter 7
   ============================================ */

/* Timeline: Enhanced today line dashed */
[data-theme="dark"] .gantt-today-line {
    border-left-color: var(--gantt-today-color);
    box-shadow: 0 0 10px rgba(248, 113, 113, 0.5);
}

/* Timeline: Enhanced tooltip */
[data-theme="dark"] .gantt-tooltip {
    backdrop-filter: blur(16px);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

/* Calendar: Enhanced today highlight */
[data-theme="dark"] .calendar-day.today {
    background-color: rgba(79, 143, 247, 0.08);
    box-shadow: 0 0 0 4px rgba(79, 143, 247, 0.15);
}

[data-theme="dark"] .calendar-day.today .calendar-day-number {
    background: var(--color-primary);
    box-shadow: 0 2px 8px rgba(79, 143, 247, 0.4);
}

/* Calendar: Month/year hover */
[data-theme="dark"] .calendar-nav .current-month:hover {
    color: var(--color-primary);
}

/* Calendar: More badge (pill) dark mode */
[data-theme="dark"] .calendar-more {
    background: var(--color-primary);
    color: #fff;
}

[data-theme="dark"] .calendar-more:hover {
    background: var(--color-primary-hover, #6ba3fa);
    box-shadow: 0 2px 8px rgba(79, 143, 247, 0.4);
}

/* Calendar: Mini month preview labels (dark) */
[data-theme="dark"] .cal-mini-month-prev,
[data-theme="dark"] .cal-mini-month-next {
    color: var(--color-text-muted, var(--color-text-secondary));
}

/* Calendar: Week number column (dark) */
[data-theme="dark"] .calendar-week-number {
    background-color: var(--color-surface-alt);
    border-right-color: var(--color-border);
}

[data-theme="dark"] .calendar-week-header {
    border-right-color: var(--color-border);
}

/* Calendar: Event chip category colors (dark) */
[data-theme="dark"] .calendar-event.etd {
    background-color: rgba(59, 130, 246, 0.18);
    color: #60a5fa;
    border-left-color: #60a5fa;
}

[data-theme="dark"] .calendar-event.eta {
    background-color: rgba(34, 197, 94, 0.18);
    color: #4ade80;
    border-left-color: #4ade80;
}

[data-theme="dark"] .calendar-event.platnosc,
[data-theme="dark"] .calendar-event.event-payment {
    background-color: rgba(245, 158, 11, 0.18);
    color: #fbbf24;
    border-left-color: #fbbf24;
}

[data-theme="dark"] .calendar-event.event-delivery,
[data-theme="dark"] .calendar-event.odprawa {
    background-color: rgba(139, 92, 246, 0.18);
    color: #a78bfa;
    border-left-color: #a78bfa;
}

/* ============================================
   Archive Page Header & Timeline - Dark Mode
   ============================================ */

/* Archive page header */
[data-theme="dark"] .archive-page-header {
    background: var(--color-surface) !important;
    border-color: var(--color-border) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.05) !important;
}

[data-theme="dark"] .archive-header-icon {
    background: linear-gradient(135deg, rgba(107, 114, 128, 0.12), rgba(107, 114, 128, 0.08)) !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15) !important;
}

[data-theme="dark"] .archive-header-value-amount {
    color: #9ca3af !important;
}

/* Archive timeline section */
[data-theme="dark"] .archive-timeline-section {
    background: var(--color-surface) !important;
    border-color: var(--color-border) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
}

[data-theme="dark"] .archive-timeline-bar {
    background: linear-gradient(135deg, #6b7280, #4b5563) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/* ---- Dark: Reports Page Enhancements (Session 19 Iter 7) ---- */
[data-theme="dark"] .reports-date-filter {
    background: var(--color-surface, #1a1a2e);
}

[data-theme="dark"] .date-filter-wrapper {
    background: var(--color-surface, #1a1a2e);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .date-filter-label {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .date-filter-input {
    background: var(--color-surface-alt, #22223a);
    border-color: var(--color-border, #2a2a42);
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .date-filter-input:focus {
    border-color: var(--color-primary, #4f8ff7);
    background: var(--color-surface, #1a1a2e);
}

[data-theme="dark"] .date-filter-separator {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .reports-section-tabs {
    background: var(--color-surface-alt, #22223a);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .report-tab-btn {
    color: var(--color-text-secondary, #9aa4b8);
}

[data-theme="dark"] .report-tab-btn:hover {
    color: var(--color-text, #d4dbe8);
    background: var(--color-surface, #1a1a2e);
}

[data-theme="dark"] .report-tab-btn.tab-active {
    background: var(--color-surface, #1a1a2e);
    color: var(--color-primary, #4f8ff7);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .report-tab-btn.tab-active::after {
    background: var(--color-primary, #4f8ff7);
}

[data-theme="dark"] .kpi-trend-up {
    color: #4ade80;
}

[data-theme="dark"] .kpi-trend-down {
    color: #f87171;
}

[data-theme="dark"] .report-card-subtitle {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .report-empty-section {
    background: var(--color-surface-alt, #22223a);
    border-color: var(--color-border, #2a2a42);
}

[data-theme="dark"] .report-empty-section svg {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .report-empty-section h3 {
    color: var(--color-text, #d4dbe8);
}

[data-theme="dark"] .report-empty-section p {
    color: var(--color-text-muted, #636b7e);
}

[data-theme="dark"] .chart-print-image {
    filter: invert(0);
}

/* ============================================
   TOPBAR ENHANCEMENTS DARK THEME
   Session 19 Iteration 7
   ============================================ */

/* Global Search Dropdown */
[data-theme="dark"] .global-search-dropdown {
    background: var(--color-surface, #1e293b);
    border-color: var(--color-border, #334155);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .gs-group-header {
    color: var(--color-text-muted, #94a3b8);
    border-top-color: var(--color-border, #334155);
}

[data-theme="dark"] .gs-item {
    border-bottom-color: rgba(255, 255, 255, 0.04);
}

[data-theme="dark"] .gs-item:hover,
[data-theme="dark"] .gs-item--active {
    background-color: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .gs-item-icon {
    background: rgba(255, 255, 255, 0.08);
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .gs-item-icon--action {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary);
}

[data-theme="dark"] .gs-item-title {
    color: var(--color-text, #e2e8f0);
}

[data-theme="dark"] .gs-item-title mark {
    background: rgba(251, 191, 36, 0.2);
    color: #fbbf24;
}

[data-theme="dark"] .gs-item-subtitle {
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .gs-shortcut {
    background: rgba(255, 255, 255, 0.08);
    border-color: var(--color-border, #334155);
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .gs-footer {
    background: rgba(255, 255, 255, 0.03);
    border-top-color: var(--color-border, #334155);
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .gs-empty {
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .gs-loading-spinner {
    border-color: var(--color-border, #334155);
    border-top-color: var(--color-primary);
}

[data-theme="dark"] .gs-clear-history {
    border-top-color: var(--color-border, #334155);
    color: var(--color-primary);
}

[data-theme="dark"] .gs-clear-history:hover {
    background: rgba(79, 143, 247, 0.1);
}

[data-theme="dark"] .gs-item-remove:hover {
    background: rgba(239, 68, 68, 0.15);
    color: var(--color-danger);
}

/* User Dropdown Menu */
[data-theme="dark"] .user-dropdown-info {
    background: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .user-dropdown-avatar {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary);
}

[data-theme="dark"] .user-dropdown-name {
    color: var(--color-text, #e2e8f0);
}

[data-theme="dark"] .user-dropdown-email {
    color: var(--color-text-muted, #94a3b8);
}

[data-theme="dark"] .user-dropdown-role {
    background: rgba(79, 143, 247, 0.15);
    color: var(--color-primary);
}

/* Exchange Rate Trends */
[data-theme="dark"] .rate-trend-up {
    color: var(--color-success, #10b981);
}

[data-theme="dark"] .rate-trend-down {
    color: var(--color-danger, #ef4444);
}

[data-theme="dark"] .rate-value.rate-up {
    color: var(--color-success, #10b981);
}

[data-theme="dark"] .rate-value.rate-down {
    color: var(--color-danger, #ef4444);
}

/* Search Input Focus */
[data-theme="dark"] .global-search-input-wrap {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

[data-theme="dark"] .global-search-input-wrap:focus-within {
    background: var(--color-surface, #1e293b) !important;
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px rgba(79, 143, 247, 0.15), 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

[data-theme="dark"] .global-search-kbd {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: var(--color-text-muted, #94a3b8) !important;
}
