/* Dark Mode Overrides */
[data-theme="dark"] {
  --bg-color: #121212;
  --text-color: #e5e5e5;
  --secondary-color: #ffffff;
  --card-bg: #1e1e1e;
  --border-color: #333333;
  --text-light: #b0b0b0;
  --shadow: 0 4px 15px rgba(0, 0, 0, 0.5);
}

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

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

[data-theme="dark"] .text-muted,
[data-theme="dark"] .text-secondary {
  color: var(--text-light) !important;
}

/* Navbar */
[data-theme="dark"] .navbar {
  background-color: #1a1a1a;
  border-bottom: 1px solid #333;
}

[data-theme="dark"] .navbar-brand {
  color: #ffffff !important;
}

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

[data-theme="dark"] .nav-link:hover,
[data-theme="dark"] .nav-link.active {
  color: var(--primary-color) !important;
}

[data-theme="dark"] .theme-toggle {
  color: #e0e0e0;
}

/* Cards & Generic BG overrides */
[data-theme="dark"] .product-card,
[data-theme="dark"] .blog-card,
[data-theme="dark"] .category-item,
[data-theme="dark"] .testimonial-card,
[data-theme="dark"] .feature-box,
[data-theme="dark"] .store-card,
[data-theme="dark"] .accordion-item {
  background-color: var(--card-bg);
  border-color: var(--border-color);
}

[data-theme="dark"] .product-card:hover,
[data-theme="dark"] .blog-card:hover,
[data-theme="dark"] .category-item:hover,
[data-theme="dark"] .feature-box:hover,
[data-theme="dark"] .store-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.8);
}

[data-theme="dark"] .product-info h3 a,
[data-theme="dark"] .blog-content h3 a {
  color: #ffffff;
}

[data-theme="dark"] .product-info h3 a:hover,
[data-theme="dark"] .blog-content h3 a:hover {
  color: var(--primary-color);
}

[data-theme="dark"] .product-action a {
  background-color: #333;
  color: #fff;
}

[data-theme="dark"] .product-action a:hover {
  background-color: var(--primary-color);
}

/* Breadcrumb / Layout Adjustments */
[data-theme="dark"] .bg-light {
  background-color: #151515 !important;
}

/* Form Controls */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
  background-color: #2b2b2b !important;
  border-color: #444 !important;
  color: #fff !important;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
  background-color: #2b2b2b;
  color: #fff;
  border-color: var(--primary-color) !important;
  box-shadow: none;
}

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

/* Steps */
[data-theme="dark"] .step-number {
  border-color: var(--bg-color);
}

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

/* Tags */
[data-theme="dark"] .tag-cloud a {
  background-color: var(--card-bg);
  border-color: var(--border-color);
  color: var(--text-color);
}

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

/* Accordion Specifics */
[data-theme="dark"] .accordion-button {
  background-color: var(--card-bg);
  color: #fff;
}

[data-theme="dark"] .accordion-button:not(.collapsed) {
  background-color: var(--primary-color);
  color: #fff;
}

[data-theme="dark"] .accordion-button::after {
  filter: invert(1);
}

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

/* Brands */
[data-theme="dark"] .brand-logo {
  filter: grayscale(100%) invert(1);
  opacity: 0.7;
}

[data-theme="dark"] .brand-logo:hover {
  filter: grayscale(0%) invert(0);
  opacity: 1;
}

/* App Buttons */
[data-theme="dark"] .app-btn {
  background: #333;
}

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

/* Dropdown Dark Mode */
[data-theme="dark"] .dropdown-menu {
  border-color: var(--border-color) !important;
}

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

/* Dashboard Dark Mode */
[data-theme="dark"] .dashboard-card {
  background-color: var(--card-bg);
  border-color: var(--border-color);
}

[data-theme="dark"] .stat-icon {
  background-color: rgba(199, 161, 122, 0.2);
}

[data-theme="dark"] .admin-sidebar {
  background-color: #000;
  border-right: 1px solid #222;
}

[data-theme="dark"] .admin-sidebar .nav-link {
  color: rgba(255, 255, 255, 0.6) !important;
}

[data-theme="dark"] .admin-sidebar .nav-link:hover,
[data-theme="dark"] .admin-sidebar .nav-link.active {
  background-color: var(--primary-color);
  color: #fff !important;
}

[data-theme="dark"] .table-custom {
  background-color: var(--card-bg);
}

[data-theme="dark"] .table-custom thead th {
  background-color: rgba(255, 255, 255, 0.03);
  color: #fff;
}

[data-theme="dark"] .table-custom tbody td {
  color: var(--text-color);
}

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

[data-theme="dark"] .table> :not(caption)>*>* {
  background-color: transparent !important;
  color: inherit !important;
  border-bottom-color: var(--border-color) !important;
}

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

[data-theme="dark"] .table-hover tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.05) !important;
  color: #ffffff !important;
}

/* Global Contrast Fixes for auto-style classes */
[data-theme="dark"] .auto-style-2e19ea,
[data-theme="dark"] .auto-style-9d4fb0,
[data-theme="dark"] .auto-style-04ff10,
[data-theme="dark"] .auto-style-ad361b,
[data-theme="dark"] .auto-style-97cd7c,
[data-theme="dark"] .auto-style-dae5e5 {
  color: #ffffff !important;
}

[data-theme="dark"] .auto-style-368796,
[data-theme="dark"] .auto-style-8d4cfe,
[data-theme="dark"] .auto-style-c7046f,
[data-theme="dark"] .auto-style-b00a7d,
[data-theme="dark"] .auto-style-6ae563 {
  background-color: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

[data-theme="dark"] .auto-style-a87775,
[data-theme="dark"] .auto-style-3f0ea9,
[data-theme="dark"] .auto-style-6b2279 {
  background-color: var(--bg-color) !important;
}

[data-theme="dark"] .sidebar.widget-area .widget h4 {
  color: #ffffff !important;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 10px;
}

[data-theme="dark"] .sidebar.widget-area .widget a {
  color: var(--text-color) !important;
}

[data-theme="dark"] .sidebar.widget-area .widget a:hover {
  color: var(--primary-color) !important;
}

/* Extra Contrast Fixes */
[data-theme="dark"] .badge.bg-light {
  background-color: #333 !important;
  color: #fff !important;
}

[data-theme="dark"] .list-group-item {
  background-color: var(--card-bg);
  color: var(--text-color);
  border-color: var(--border-color);
}

[data-theme="dark"] .card-title,
[data-theme="dark"] .card-text {
  color: #ffffff !important;
}

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

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

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

[data-theme="dark"] .auto-style-22cea7 {
  border-color: #444 !important;
}

[data-theme="dark"] .auto-style-b43cb0 {
  border-color: var(--primary-color) !important;
}

[data-theme="dark"] .auto-style-f19123 {
  color: var(--primary-color) !important;
}

/* Dashboard Specific Surface Fixes */
[data-theme="dark"] .bg-white,
[data-theme="dark"] .dark-mode-surface {
  background-color: #252525 !important;
  border-color: #333 !important;
  color: var(--text-color) !important;
}

[data-theme="dark"] .dashboard-card.border-start {
  border-left-width: 4px !important;
}

/* Badge Contrast in Dark Mode */
[data-theme="dark"] .badge.bg-success-subtle {
  background-color: rgba(25, 135, 84, 0.2) !important;
  color: #4ade80 !important;
}

[data-theme="dark"] .badge.bg-info-subtle {
  background-color: rgba(13, 202, 240, 0.2) !important;
  color: #67e8f9 !important;
}

[data-theme="dark"] .badge.bg-warning-subtle {
  background-color: rgba(255, 193, 7, 0.2) !important;
  color: #fde047 !important;
}

[data-theme="dark"] .badge.bg-danger-subtle {
  background-color: rgba(220, 53, 69, 0.2) !important;
  color: #fca5a5 !important;
}

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

/* Delivery Tracker Fixes */
[data-theme="dark"] .progress {
  background-color: #333 !important;
}

[data-theme="dark"] .rounded-circle.border-white {
  border-color: var(--bg-color) !important;
}

/* Admin Specifics */
[data-theme="dark"] .admin-sidebar .profile-logo {
  opacity: 0.9;
}

[data-theme="dark"] .admin-sidebar .nav-link.border-top {
  border-color: #333 !important;
}

/* Chart Canvas Contrast (optional but helpful) */
[data-theme="dark"] canvas {
  filter: saturate(0.8) brightness(1.1);
}