/* Dark Theme Variables */
[data-theme="dark"] {
  /* Brand Colors */
  --primary-blue: #3b82f6;
  --primary-teal: #60a5fa;
  --gradient-primary: linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%);
  --primary-light-blue: rgba(59, 130, 246, 0.08);
  --shimmer-shine: #ffffff;
  --dynamic-accent: #c084fc;
  --shimmer-glow: rgba(96, 165, 250, 0.35);

  /* Inverted Neutral Colors */
  --gray-50: #09090b;
  --gray-100: #18181b;
  --gray-200: #27272a;
  --gray-300: #3f3f46;
  --gray-400: #52525b;
  --gray-500: #71717a;
  --gray-600: #a1a1aa;
  --gray-700: #d4d4d8;
  --gray-800: #e4e4e7;
  --gray-900: #f4f4f5;

  /* Semantic Colors */
  --bg-page: #09090b;
  --bg-card: #18181b;
  --bg-section: #121214;
  --section-divider: rgba(255, 255, 255, 0.05);
  --text-primary: #f4f4f5;
  --text-secondary: #a1a1aa;
  --text-tertiary: #71717a;
  --border: #27272a;

  /* Shadows for dark background */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.5), 0 2px 4px -1px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.6), 0 4px 6px -2px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.7), 0 10px 10px -5px rgba(0, 0, 0, 0.6);
}

/* Dark mode overrides and component fine-tuning */

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

[data-theme="dark"] .navbar {
  background: rgba(9, 9, 11, 0.85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
}

[data-theme="dark"] .hero {
  background-image: none;
}

[data-theme="dark"] .hero::before,
[data-theme="dark"] .hero::after {
  opacity: 0;
}

[data-theme="dark"] .hero-badge {
  background: rgba(24, 24, 27, 0.85);
  border-color: rgba(59, 130, 246, 0.2);
  box-shadow: 0 8px 20px -18px rgba(59, 130, 246, 0.5);
}

[data-theme="dark"] .mobile-drawer .drawer-sheet {
  background: rgba(9, 9, 11, 0.98);
  backdrop-filter: blur(16px);
  border-bottom-color: var(--border);
}

[data-theme="dark"] .drawer-link:active {
  background: var(--gray-200);
}

[data-theme="dark"] .drawer-link.active {
  background: rgba(59, 130, 246, 0.12);
  color: var(--primary-blue);
}

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

[data-theme="dark"] .lang-trigger {
  background: var(--bg-card);
  border-color: var(--border);
  color: var(--text-secondary);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .lang-trigger:hover {
    background: var(--gray-50);
    border-color: var(--gray-300);
  }
}

[data-theme="dark"] .lang-trigger.open {
  background: rgba(59, 130, 246, 0.12);
  color: var(--primary-blue);
  border-color: var(--primary-blue);
}

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

[data-theme="dark"] .lang-menu-item {
  color: var(--text-primary);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .lang-menu-item:hover {
    background: var(--gray-100);
  }
}

[data-theme="dark"] .lang-menu-item.selected {
  background: rgba(59, 130, 246, 0.1);
  color: var(--primary-blue);
}

[data-theme="dark"] .theme-toggle,
[data-theme="dark"] .lang-trigger-compact,
[data-theme="dark"] .mobile-menu-toggle {
  background: var(--bg-card);
  border-color: var(--border);
  color: var(--text-primary);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .theme-toggle:hover,
  [data-theme="dark"] .lang-trigger-compact:hover,
  [data-theme="dark"] .mobile-menu-toggle:hover {
    background: var(--gray-100);
  }
}

[data-theme="dark"] .btn-secondary {
  background: var(--bg-card);
  border-color: var(--border);
  color: var(--primary-blue);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .btn-secondary:hover {
    background: var(--gray-50);
    border-color: var(--gray-300);
  }
}

/* Tab triggers in dark mode */
[data-theme="dark"] .app-tab {
  background: var(--bg-card);
  border-color: var(--border);
  color: var(--text-tertiary);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .app-tab:hover {
    border-color: var(--gray-400);
    color: var(--text-primary);
  }
}

[data-theme="dark"] .app-tab.active {
  background: var(--gradient-primary);
  color: white;
  border-color: transparent;
}

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

[data-theme="dark"] .feature-slide-icon {
  background: rgba(59, 130, 246, 0.1);
  color: var(--primary-blue);
}

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

[data-theme="dark"] .check-list div {
  border-bottom-color: var(--border);
}

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

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

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

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

[data-theme="dark"] .tag-list li {
  background: var(--gray-50);
  border-color: var(--border);
}

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

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

[data-theme="dark"] .support-list a {
  background: var(--gray-50);
  border-color: var(--border);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .support-list a:hover {
    background: var(--bg-card);
    border-color: var(--gray-400);
  }
}

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

[data-theme="dark"] .opensource-panel-links a {
  background: var(--gray-50);
  border-color: var(--border);
}

@media (hover: hover) and (pointer: fine) {
  [data-theme="dark"] .opensource-panel-links a:hover {
    background: rgba(59, 130, 246, 0.1);
    border-color: var(--primary-blue);
  }
}

/* Footer in dark mode */
[data-theme="dark"] .footer {
  background: #09090b;
  border-top-color: var(--primary-blue);
}

[data-theme="dark"] .footer-top {
  border-bottom-color: rgba(255, 255, 255, 0.04);
}

/* Smooth Transition of dark/light theme trigger */
body, .navbar, .hero, .features-section, .split-section, .how-it-works, .faq-section, .open-source, .contact-section, .footer {
  transition: background-color var(--transition-base), color var(--transition-base), border-color var(--transition-base);
}

.feature-slide, .step-card, .community-card, .support-panel, .check-list, .faq-list, .simple-panel, .detail-card {
  transition: background-color var(--transition-base), color var(--transition-base), border-color var(--transition-base), transform 0.3s ease, box-shadow 0.3s ease;
}

/* Dark mode doc sidebar active and hover styles */
[data-theme="dark"] .doc-sidebar-link:hover {
  background: rgba(59, 130, 246, 0.08);
  color: var(--primary-blue);
}
[data-theme="dark"] .doc-sidebar-link.active {
  background: rgba(59, 130, 246, 0.12);
  color: var(--primary-blue);
}
