/* ============================================================
   NEEDFUL CALCULATOR — Dark Mode Overrides
   dark-mode.css
   ============================================================ */

[data-theme="dark"] {
  /* Surfaces */
  --bg-body:     #0F172A;
  --bg-surface:  #1E293B;
  --bg-muted:    #0F172A;
  --bg-glass:    rgba(30, 41, 59, 0.85);

  /* Text */
  --txt-primary:   #F1F5F9;
  --txt-secondary: #CBD5E1;
  --txt-muted:     #94A3B8;
  --txt-light:     #64748B;

  /* Borders */
  --border-color: rgba(255, 255, 255, 0.08);

  /* Shadows */
  --shadow-sm:  0 1px 3px rgba(0,0,0,0.3), 0 1px 2px rgba(0,0,0,0.2);
  --shadow-md:  0 4px 16px rgba(0,0,0,0.35), 0 2px 6px rgba(0,0,0,0.2);
  --shadow-lg:  0 12px 40px rgba(0,0,0,0.4), 0 4px 12px rgba(0,0,0,0.2);
  --shadow-xl:  0 24px 64px rgba(0,0,0,0.5), 0 8px 24px rgba(0,0,0,0.25);

  /* Gradients */
  --gradient-hero:   linear-gradient(135deg, #0F172A 0%, #111827 50%, #1E1B4B 100%);
  --gradient-card:   linear-gradient(145deg, rgba(30,41,59,0.95) 0%, rgba(15,23,42,0.8) 100%);
  --clr-primary-light: rgba(37, 99, 235, 0.15);
  --clr-accent-light:  rgba(6, 182, 212, 0.1);
}

/* Scrollbar */
[data-theme="dark"] ::-webkit-scrollbar-track { background: #0F172A; }
[data-theme="dark"] ::-webkit-scrollbar-thumb { background: #334155; }
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover { background: #475569; }

/* Header Glass */
[data-theme="dark"] .site-header {
  border-bottom-color: rgba(255, 255, 255, 0.06);
  background: rgba(15, 23, 42, 0.85);
}

/* Hero */
[data-theme="dark"] .hero::before {
  background: radial-gradient(circle, rgba(124, 58, 237, 0.15) 0%, transparent 70%);
}

[data-theme="dark"] .hero::after {
  background: radial-gradient(circle, rgba(6, 182, 212, 0.1) 0%, transparent 70%);
}

[data-theme="dark"] .hero-title {
  background: linear-gradient(135deg, #F1F5F9 0%, #60A5FA 50%, #A78BFA 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

[data-theme="dark"] .hero-eyebrow {
  background: rgba(30, 41, 59, 0.9);
  border-color: rgba(37, 99, 235, 0.3);
}

[data-theme="dark"] .hero-search input {
  background: rgba(30, 41, 59, 0.9);
  border-color: rgba(37, 99, 235, 0.3);
  color: var(--txt-primary);
}

[data-theme="dark"] .hero-search input:focus {
  background: #1E293B;
  border-color: var(--clr-primary);
}

/* Section labels */
[data-theme="dark"] .section-eyebrow {
  background: rgba(37, 99, 235, 0.15);
}

/* Tool Cards */
[data-theme="dark"] .tool-card {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.07);
}

[data-theme="dark"] .tool-card:hover {
  border-color: rgba(37, 99, 235, 0.3);
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), 0 0 0 1px rgba(37,99,235,0.15);
}

/* Category Cards */
[data-theme="dark"] .cat-finance   { background: linear-gradient(135deg, rgba(37,99,235,0.15), rgba(29,78,216,0.08)); }
[data-theme="dark"] .cat-health    { background: linear-gradient(135deg, rgba(5,150,105,0.15), rgba(4,120,87,0.08)); }
[data-theme="dark"] .cat-education { background: linear-gradient(135deg, rgba(124,58,237,0.15), rgba(109,40,217,0.08)); }
[data-theme="dark"] .cat-unit      { background: linear-gradient(135deg, rgba(217,119,6,0.15), rgba(180,83,9,0.08)); }
[data-theme="dark"] .cat-date      { background: linear-gradient(135deg, rgba(225,29,72,0.15), rgba(190,18,60,0.08)); }
[data-theme="dark"] .cat-pdf       { background: linear-gradient(135deg, rgba(13,148,136,0.15), rgba(15,118,110,0.08)); }

/* Blog Cards */
[data-theme="dark"] .blog-card {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.07);
}

/* Feature Cards */
[data-theme="dark"] .feature-card {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.07);
}

/* FAQ */
[data-theme="dark"] .faq-item { background: var(--bg-surface); }

[data-theme="dark"] .faq-answer-inner {
  border-top-color: rgba(255,255,255,0.08);
}

/* Forms */
[data-theme="dark"] .header-search input,
[data-theme="dark"] .form-input,
[data-theme="dark"] .sidebar-search input {
  background: var(--bg-body);
  border-color: rgba(255,255,255,0.1);
  color: var(--txt-primary);
}

[data-theme="dark"] .header-search input:focus,
[data-theme="dark"] .form-input:focus,
[data-theme="dark"] .sidebar-search input:focus {
  border-color: var(--clr-primary);
  background: var(--bg-surface);
}

/* Buttons */
[data-theme="dark"] .btn-secondary {
  background: rgba(37, 99, 235, 0.1);
  border-color: rgba(37, 99, 235, 0.4);
  color: #60A5FA;
}

[data-theme="dark"] .btn-ghost {
  background: transparent;
  border-color: rgba(255,255,255,0.12);
  color: var(--txt-secondary);
}

[data-theme="dark"] .btn-ghost:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.2);
}

/* Theme toggle */
[data-theme="dark"] .theme-toggle {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.1);
  color: var(--txt-muted);
}

[data-theme="dark"] .theme-toggle:hover {
  background: rgba(37, 99, 235, 0.15);
  color: #60A5FA;
  border-color: rgba(37, 99, 235, 0.3);
}

/* Calculator Widget */
[data-theme="dark"] .calc-widget { border-color: rgba(255,255,255,0.08); }

[data-theme="dark"] .calc-results {
  background: rgba(37, 99, 235, 0.08);
  border-color: rgba(37, 99, 235, 0.15);
}

[data-theme="dark"] .calc-result-row { border-bottom-color: rgba(255,255,255,0.06); }

/* Sidebar */
[data-theme="dark"] .sidebar-widget {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.07);
}

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

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

[data-theme="dark"] .sidebar-cat-count {
  background: rgba(255,255,255,0.05);
  color: var(--txt-muted);
}

/* Trending Cards */
[data-theme="dark"] .trending-card { background: var(--bg-surface); }

/* Tags */
[data-theme="dark"] .tag {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
  color: var(--txt-secondary);
}

/* Ad slots */
[data-theme="dark"] .ad-slot {
  background: rgba(255,255,255,0.03);
  border-color: rgba(255,255,255,0.08);
}

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

/* Range slider */
[data-theme="dark"] .range-slider { background: rgba(255,255,255,0.1); }

/* Newsletter */
[data-theme="dark"] .newsletter-form input {
  background: rgba(15, 23, 42, 0.8);
  color: var(--txt-primary);
}

/* Footer (always dark, no change needed) */

/* Section title gradient */
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4 {
  color: var(--txt-primary);
}

/* Mobile Nav */
[data-theme="dark"] .mobile-nav { background: #0F172A; }

[data-theme="dark"] .hamburger {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.1);
}

[data-theme="dark"] .hamburger span { background: var(--txt-secondary); }

/* Search results */
[data-theme="dark"] .search-results {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.08);
}

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

/* Nav dropdown */
[data-theme="dark"] .nav-dropdown {
  background: var(--bg-surface);
  border-color: rgba(255,255,255,0.08);
}

/* Transition for theme switch */
*, *::before, *::after {
  transition-property: background-color, border-color, color;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}

/* Exceptions to transition */
.btn, .tool-card, .category-card, .blog-card, .feature-card,
.faq-item, .trending-card, .social-btn, .nav-link, .footer-links a {
  transition: all 0.25s ease;
}
