[data-theme="dark"] {
  color-scheme: dark;
  --bg-body: var(--dark-bg-body);
  --bg-card: var(--dark-bg-card);
  --bg-section: var(--dark-bg-section);
  --text-primary: var(--dark-text);
  --text-secondary: #b2bcc9;
  --text-muted: #95a0af;
  --border: var(--dark-border);
  /* Softer greens on dark surfaces (root --primary is too dark for text-on-hero). */
  --primary: #4a9b78;
  --primary-light: #6ab88a;

  /* Bootstrap 5.3 — align reboot/components with theme tokens (otherwise headings & nav stay near-black). */
  --bs-body-color: var(--text-primary);
  --bs-body-bg: var(--bg-body);
  --bs-emphasis-color: var(--text-primary);
  --bs-emphasis-color-rgb: 230, 237, 243;
  --bs-secondary-color: rgba(230, 237, 243, 0.55);
  --bs-secondary-rgb: 149, 160, 175;
  --bs-heading-color: var(--text-primary);
  --bs-link-color: #6ab88a;
  --bs-link-hover-color: #9fe0c3;
  --bs-border-color: var(--border);
}

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

[data-theme="dark"] .site-navbar {
  background: rgba(13, 17, 23, 0.92);
  border-bottom-color: var(--dark-border);
  --bs-navbar-color: rgba(230, 237, 243, 0.78);
  --bs-navbar-hover-color: #ffffff;
  --bs-navbar-active-color: #ffffff;
  --bs-navbar-disabled-color: rgba(230, 237, 243, 0.45);
  --bs-navbar-brand-color: #e6edf3;
  --bs-navbar-brand-hover-color: #ffffff;
  --bs-navbar-toggler-border-color: rgba(230, 237, 243, 0.35);
}

[data-theme="dark"] .site-navbar .navbar-toggler-icon {
  filter: brightness(0) invert(1);
  opacity: 0.92;
}

[data-theme="dark"] .brand-pill {
  color: #b3d8c8;
  border-color: var(--border);
}

[data-theme="dark"] .brand-pill:hover {
  color: #e6edf3;
  border-color: rgba(106, 184, 138, 0.45);
}

[data-theme="dark"] .breadcrumb {
  --bs-breadcrumb-divider-color: var(--text-muted);
  --bs-breadcrumb-item-active-color: var(--text-muted);
}

[data-theme="dark"] .breadcrumb-item a {
  color: #6ab88a;
}

[data-theme="dark"] .breadcrumb-item a:hover {
  color: #9fe0c3;
}

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

[data-theme="dark"] .table {
  --bs-table-color: var(--text-primary);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--border);
  --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
  --bs-table-hover-bg: rgba(64, 145, 108, 0.1);
  --bs-table-active-bg: rgba(64, 145, 108, 0.14);
}

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

[data-theme="dark"] .card-clean .h5,
[data-theme="dark"] .card-clean .h6,
[data-theme="dark"] .card-clean h3 {
  color: var(--text-primary);
}

[data-theme="dark"] .ideas-index-title,
[data-theme="dark"] .categories-landing-title,
[data-theme="dark"] .blog-landing-title,
[data-theme="dark"] .calc-landing-title {
  color: var(--text-primary);
}

[data-theme="dark"] .blog-landing-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 0% 0%, rgba(64, 145, 108, 0.22), transparent 55%),
    radial-gradient(ellipse 70% 50% at 100% 20%, rgba(244, 162, 97, 0.12), transparent 50%);
}

[data-theme="dark"] .blog-post-card h3,
[data-theme="dark"] .blog-post-card a.text-reset {
  color: var(--text-primary);
}

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

[data-theme="dark"] .hero {
  background:
    radial-gradient(circle at 10% 10%, rgba(64, 145, 108, 0.25), transparent 35%),
    radial-gradient(circle at 90% 20%, rgba(231, 111, 81, 0.18), transparent 35%),
    linear-gradient(135deg, #0f151c 0%, #151d27 100%);
}

[data-theme="dark"] .ad-zone {
  border-color: #3b4652;
  background: #17212c;
  color: #9db0c5;
}

[data-theme="dark"] .btn-outline-custom {
  --bs-btn-color: #c8e6d8;
  --bs-btn-hover-color: #fff;
  --bs-btn-active-color: #fff;
  color: #c8e6d8;
  border-color: #7fb59f;
  background: rgba(22, 27, 34, 0.75);
}

[data-theme="dark"] .btn-outline-custom:hover {
  background: #3f8a68;
  border-color: #3f8a68;
  color: #fff;
}

[data-theme="dark"] .theme-toggle-btn.btn-outline-custom {
  background: rgba(30, 38, 48, 0.95);
  color: #f8fafc;
  --bs-btn-color: #f8fafc;
  border-color: rgba(255, 255, 255, 0.35);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:hover,
[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:focus-visible,
[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:active {
  color: #f8fafc;
  --bs-btn-color: #f8fafc;
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.45);
}

/* Same moon icon in dark mode — always visible, light stroke (no sun swap) */
[data-theme="dark"] .theme-toggle-btn .theme-icon-moon {
  stroke: #f8fafc;
}

[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:hover .theme-icon-moon,
[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:focus-visible .theme-icon-moon,
[data-theme="dark"] .theme-toggle-btn.btn-outline-custom:active .theme-icon-moon {
  stroke: #ffffff;
}

[data-theme="dark"] .theme-toggle-hint {
  color: #0d1117;
  background: #f8fafc;
  border: 1px solid rgba(13, 17, 23, 0.12);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.55);
}

[data-theme="dark"] .btn-primary-custom {
  --bs-btn-color: #fff;
  --bs-btn-hover-color: #fff;
  color: #fff;
}

[data-theme="dark"] .page-hero {
  background:
    radial-gradient(circle at 0% 0%, rgba(64, 145, 108, 0.22), transparent 45%),
    linear-gradient(160deg, #121820 0%, #0d1117 100%);
  border-bottom-color: var(--border);
}

[data-theme="dark"] .contact-email-card {
  background: linear-gradient(135deg, rgba(64, 145, 108, 0.12), rgba(244, 162, 97, 0.06));
  border-color: var(--border);
}

[data-theme="dark"] .contact-email-card a {
  color: #8fd4b8;
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
  background-color: var(--bg-card);
  border-color: var(--border);
  color: var(--text-primary);
}

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

[data-theme="dark"] .idea-hero {
  background:
    radial-gradient(ellipse 80% 60% at 0% 0%, rgba(64, 145, 108, 0.18), transparent 55%),
    linear-gradient(165deg, #141b24 0%, #0d1117 100%);
  border-bottom-color: var(--border);
}

[data-theme="dark"] .idea-breadcrumb {
  background: rgba(22, 27, 34, 0.85);
  border-color: var(--border);
}

[data-theme="dark"] .idea-breadcrumb .breadcrumb-item a {
  color: #6ab88a;
}

[data-theme="dark"] .idea-breadcrumb .breadcrumb-item a:hover {
  color: #9fe0c3;
}

[data-theme="dark"] .idea-breadcrumb .breadcrumb-item.active {
  color: var(--text-muted);
}

[data-theme="dark"] .idea-pill {
  background: rgba(22, 27, 34, 0.9);
  border-color: var(--border);
  color: var(--text-secondary);
}

[data-theme="dark"] .idea-pill-accent {
  background: rgba(64, 145, 108, 0.15);
  border-color: rgba(127, 181, 159, 0.35);
  color: #b3d8c8;
}

[data-theme="dark"] .idea-meta-card {
  background: rgba(22, 27, 34, 0.85);
  border-color: var(--border);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .idea-trust-panel {
  border-color: var(--border);
}

[data-theme="dark"] .idea-takeaways {
  border-color: rgba(127, 181, 159, 0.25);
  background: linear-gradient(135deg, rgba(64, 145, 108, 0.1), rgba(244, 162, 97, 0.05));
}

[data-theme="dark"] .idea-table-wrap {
  border-color: var(--border);
}

[data-theme="dark"] .idea-table thead {
  background: rgba(64, 145, 108, 0.12);
}

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

[data-theme="dark"] .idea-tool-list li {
  border-bottom-color: rgba(48, 54, 61, 0.9);
}

[data-theme="dark"] .idea-example-list li {
  background: rgba(64, 145, 108, 0.08);
}

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

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

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

[data-theme="dark"] .idea-share-float {
  background: rgba(22, 27, 34, 0.92);
  border-color: var(--border);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.45);
}

[data-theme="dark"] .idea-share-btn:hover {
  background: rgba(64, 145, 108, 0.18);
}

[data-theme="dark"] .ideas-index-hero {
  background:
    radial-gradient(circle at 0% 0%, rgba(64, 145, 108, 0.14), transparent 45%),
    linear-gradient(165deg, #141b24 0%, #0d1117 100%);
  border-bottom-color: var(--border);
}

[data-theme="dark"] .categories-landing-hero {
  background:
    radial-gradient(circle at 0% 0%, rgba(64, 145, 108, 0.14), transparent 45%),
    linear-gradient(165deg, #141b24 0%, #0d1117 100%);
  border-bottom-color: var(--border);
}

[data-theme="dark"] .calculator-result {
  background: #17252f;
  border-color: #29506a;
}

[data-theme="dark"] .scroll-top-btn {
  background: var(--bg-card);
  border-color: var(--border);
  color: #b3d8c8;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .scroll-top-btn:hover {
  background: #3f8a68;
  border-color: #3f8a68;
  color: #fff;
}

[data-theme="dark"] .blog-post-main {
  background: linear-gradient(180deg, var(--dark-bg-section) 0%, var(--dark-bg-body) 16rem, var(--dark-bg-body) 100%);
}

[data-theme="dark"] .blog-hero-card,
[data-theme="dark"] .blog-article-shell,
[data-theme="dark"] .blog-sidebar-card,
[data-theme="dark"] .blog-post-card,
[data-theme="dark"] .blog-related-card,
[data-theme="dark"] .blog-breadcrumb-card {
  background: var(--dark-bg-card);
  border-color: var(--dark-border);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}

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

[data-theme="dark"] .blog-insight-card {
  background: linear-gradient(135deg, rgba(64, 145, 108, 0.12) 0%, rgba(244, 162, 97, 0.08) 100%);
  border-color: rgba(64, 145, 108, 0.35);
}

[data-theme="dark"] .blog-key-points,
[data-theme="dark"] .blog-cta-bottom {
  background: var(--dark-bg-section);
  border-color: var(--dark-border);
}

[data-theme="dark"] .blog-pullquote {
  background: rgba(244, 162, 97, 0.1);
}

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

[data-theme="dark"] .blog-share-chip {
  border-color: var(--dark-border);
}

[data-theme="dark"] .blog-share-chip:hover {
  background: rgba(64, 145, 108, 0.15);
}

[data-theme="dark"] .blog-share-icon-btn {
  background: var(--dark-bg-body);
  border-color: var(--dark-border);
}

[data-theme="dark"] .blog-share-icon-btn:hover {
  background: rgba(64, 145, 108, 0.12);
}

[data-theme="dark"] .blog-sidebar-mrec {
  background: var(--dark-bg-section);
  border-color: var(--dark-border);
}

[data-theme="dark"] .home-link-card,
[data-theme="dark"] .home-step-card,
[data-theme="dark"] .home-blog-card,
[data-theme="dark"] .home-resource-tile,
[data-theme="dark"] .home-stat-strip .home-stat-card {
  background: var(--dark-bg-card);
  border-color: var(--dark-border);
}

[data-theme="dark"] .home-link-card:hover,
[data-theme="dark"] .home-blog-card:hover {
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .home-hero-badge {
  background: rgba(64, 145, 108, 0.18);
  border-color: rgba(64, 145, 108, 0.35);
}

[data-theme="dark"] .home-calculator-aside {
  background: linear-gradient(165deg, rgba(64, 145, 108, 0.12) 0%, rgba(22, 27, 34, 0.95) 100%);
  border-color: var(--dark-border);
}

[data-theme="dark"] .home-resources {
  background: linear-gradient(135deg, var(--dark-bg-card) 0%, rgba(22, 27, 34, 0.95) 100%);
  border-color: var(--dark-border);
}

[data-theme="dark"] .calc-landing-hero {
  background:
    radial-gradient(circle at 0% 0%, rgba(64, 145, 108, 0.14), transparent 45%),
    linear-gradient(165deg, #141b24 0%, #0d1117 100%);
  border-bottom-color: var(--border);
}

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

[data-theme="dark"] .calc-tool-head {
  border-bottom-color: var(--dark-border);
  background: linear-gradient(180deg, rgba(64, 145, 108, 0.1) 0%, transparent 100%);
}

[data-theme="dark"] .calc-output {
  border-color: rgba(64, 145, 108, 0.35);
  background: rgba(64, 145, 108, 0.1);
}

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

[data-theme="dark"] .calc-kicker {
  color: #6ab88a;
}

[data-theme="dark"] .calc-toc-wrap {
  background: linear-gradient(180deg, var(--dark-bg-body) 70%, transparent);
}

[data-theme="dark"] .calc-tool-card:hover {
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .hero-title,
[data-theme="dark"] .home-section-title {
  color: var(--text-primary);
}

[data-theme="dark"] .category-card-link.text-reset,
[data-theme="dark"] .category-card-link .h5,
[data-theme="dark"] .category-card-link h2 {
  color: var(--text-primary);
}

[data-theme="dark"] .category-related-card h3 {
  color: var(--text-primary);
}

[data-theme="dark"] .calc-tool-card,
[data-theme="dark"] .calc-tool-card .h5,
[data-theme="dark"] .calc-tool-card h2 {
  color: var(--text-primary);
}
