:root[data-theme="dark"] {
  color-scheme: dark;
  --ink: #f8fafc;
  --muted: #cbd5e1;
  --subtle: #94a3b8;
  --line: rgba(148, 163, 184, .22);
  --line-strong: rgba(203, 213, 225, .36);
  --surface: #111827;
  --surface-soft: #0b1120;
  --surface-tint: #111827;
  --primary-50: rgba(79, 70, 229, .20);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .25);
  --shadow: 0 16px 40px rgba(0, 0, 0, .34);
}

:root[data-theme="dark"] body {
  background: var(--surface-soft);
}

:root[data-theme="dark"] .site-header,
:root[data-theme="dark"] .mobile-nav,
:root[data-theme="dark"] .breadcrumbs {
  background: rgba(15, 23, 42, .88);
}

:root[data-theme="dark"] .theme-toggle__sun {
  display: none;
}

:root[data-theme="dark"] .theme-toggle__moon {
  display: block;
}

:root[data-theme="dark"] .hero {
  background:
    radial-gradient(circle at 18% 12%, rgba(6, 182, 212, .20), transparent 28%),
    radial-gradient(circle at 78% 10%, rgba(249, 115, 22, .18), transparent 26%),
    linear-gradient(180deg, #0b1120 0%, #111827 58%, #0f172a 100%);
}

:root[data-theme="dark"] .trust-hero {
  background:
    linear-gradient(135deg, rgba(79, 70, 229, .20), rgba(6, 182, 212, .12) 48%, rgba(249, 115, 22, .12)),
    linear-gradient(180deg, #0b1120 0%, #111827 100%);
}

:root[data-theme="dark"] .hero__lead {
  color: #d1d5db;
}

:root[data-theme="dark"] .hero__trust div,
:root[data-theme="dark"] .hero__media,
:root[data-theme="dark"] .btn--secondary,
:root[data-theme="dark"] .tool-card,
:root[data-theme="dark"] .category-card,
:root[data-theme="dark"] .home-tool-link,
:root[data-theme="dark"] .visual-panel,
:root[data-theme="dark"] .benefit-grid article,
:root[data-theme="dark"] .step-timeline article,
:root[data-theme="dark"] .tutorial-card,
:root[data-theme="dark"] .trust-stack article,
:root[data-theme="dark"] .comparison-table,
:root[data-theme="dark"] .workflow-strip article,
:root[data-theme="dark"] .accordion__item,
:root[data-theme="dark"] .mobile-nav__link,
:root[data-theme="dark"] .legal-content > section,
:root[data-theme="dark"] .legal-card,
:root[data-theme="dark"] .contact-panel,
:root[data-theme="dark"] .trust-summary article {
  background: #111827;
  border-color: var(--line);
}

:root[data-theme="dark"] .page-updated,
:root[data-theme="dark"] .social-links a,
:root[data-theme="dark"] .policy-row {
  background: rgba(255, 255, 255, .05);
  border-color: var(--line);
}

:root[data-theme="dark"] .category-card {
  background: linear-gradient(180deg, #111827, #101727);
}

:root[data-theme="dark"] .nav-menu__panel {
  background: #111827;
  border-color: var(--line);
}

:root[data-theme="dark"] .nav-tool:hover {
  background: rgba(255, 255, 255, .05);
}

:root[data-theme="dark"] .nav-tool__icon,
:root[data-theme="dark"] .tool-card__icon,
:root[data-theme="dark"] .home-tool-link__icon {
  background: rgba(255, 255, 255, .06);
}

:root[data-theme="dark"] .site-footer {
  background: #020617;
}

:root[data-theme="dark"] .comparison-table__head {
  background: rgba(255, 255, 255, .05);
}

:root[data-theme="dark"] .final-cta {
  background:
    radial-gradient(circle at 15% 18%, rgba(6, 182, 212, .18), transparent 28%),
    radial-gradient(circle at 86% 20%, rgba(249, 115, 22, .15), transparent 24%),
    linear-gradient(180deg, #0b1120, #111827);
}

:root[data-theme="dark"] .tool-hero {
  background:
    radial-gradient(circle at 18% 20%, rgba(79, 70, 229, .20), transparent 30%),
    radial-gradient(circle at 84% 16%, rgba(6, 182, 212, .16), transparent 28%),
    linear-gradient(180deg, #0b1120, #111827);
}

:root[data-theme="dark"] .tool-hero__art,
:root[data-theme="dark"] .upload-panel,
:root[data-theme="dark"] .result-panel,
:root[data-theme="dark"] .state-panel,
:root[data-theme="dark"] .tool-stat {
  background: #111827;
  border-color: var(--line);
}

:root[data-theme="dark"] .upload-dropzone,
:root[data-theme="dark"] .tool-privacy-note,
:root[data-theme="dark"] .tool-option input,
:root[data-theme="dark"] .tool-option select,
:root[data-theme="dark"] .tool-option textarea {
  background: rgba(255, 255, 255, .05);
  border-color: var(--line);
}

:root[data-theme="dark"] .tool-alert {
  color: #fecaca;
  background: rgba(127, 29, 29, .26);
  border-color: rgba(248, 113, 113, .32);
}

:root[data-theme="dark"] .tool-result-notice {
  color: #bbf7d0;
  background: rgba(6, 78, 59, .28);
  border-color: rgba(52, 211, 153, .30);
}

:root[data-theme="dark"] .tool-result-notice--warning {
  color: #fde68a;
  background: rgba(113, 63, 18, .24);
  border-color: rgba(251, 191, 36, .30);
}
