/* Loaded after styles.css; the preference controller resolves the active theme. */
html[data-theme='dark'] {
  color-scheme: dark;
  --background: #0d0e11;
  --surface: #191b21;
  --ink: #f5f5f7;
  --muted: #adb3bf;
  --blue: #78b8ff;
  --blue-hover: #a7d1ff;
  --line: #343740;
  --button-blue: #0071e3;
  --button-hover: #0062c4;
}

html[data-theme='dark'] .site-header { background: rgba(13, 14, 17, .96); }
html[data-theme='dark'] .site-footer { background: var(--background); }
html[data-theme='dark'] :is(.brand-statement, .about) { background: #121419; }
html[data-theme='dark'] .skip-link {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--line);
  box-shadow: 0 16px 40px #0005;
}
html[data-theme='dark'] :is(button, a, summary, [tabindex]):focus-visible { outline-color: var(--blue); }
html[data-theme='dark'] .button-primary { background: var(--button-blue); color: #fff; }
html[data-theme='dark'] .button-primary:hover { background: var(--button-hover); }
html[data-theme='dark'] :is(.site-nav a, .footer-column a, .footer-bottom a):hover { color: var(--blue); }
html[data-theme='dark'] .product-details summary:hover { color: var(--blue-hover); }

/* One overlay treats the poster and playing video identically, retaining the folds. */
html[data-theme='dark'] .hero-media { background: var(--background); }
html[data-theme='dark'] .hero-media::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, #0d0e11 0%, rgba(13, 14, 17, .98) 36%, rgba(13, 14, 17, .88) 57%, rgba(13, 14, 17, .5) 84%, rgba(13, 14, 17, .63) 100%);
}
html[data-theme='dark'] .hero-kicker { color: #c5cad3; }
html[data-theme='dark'] .kicker-dot { color: #858d9c; }
html[data-theme='dark'] .motion-toggle {
  background: rgba(25, 27, 33, .9);
  color: var(--ink);
  border-color: #6b7281;
}
html[data-theme='dark'] :is(.brand-statement, .details-content) { color: #c4c9d2; }
html[data-theme='dark'] :is(.product-art figcaption, .research-number, .footer-brand .footer-tagline, .footer-bottom) { color: var(--muted); }
html[data-theme='dark'] .research-item { border-color: var(--line); }

/* The product illustrations share the page's subdued blue palette. */
html[data-theme='dark'] .workflow-grid { background-image: radial-gradient(#43546b .8px, transparent .8px); }
html[data-theme='dark'] .flow-node {
  color: var(--ink);
  background: #202936;
  border-color: #45566d;
  box-shadow: 0 8px 30px #0003;
}
html[data-theme='dark'] .flow-node small { color: #abbcd0; }
html[data-theme='dark'] .node-symbol { color: #8abaff; }
html[data-theme='dark'] .flow-center { border-color: #719cd2; box-shadow: 0 10px 38px #0004; }
html[data-theme='dark'] .flow-connector { background: #6684a8; }
html[data-theme='dark'] .archive-back { background: #233349; border-color: #405875; }
html[data-theme='dark'] .archive-sheet {
  background: linear-gradient(140deg, #273344, #1c2532);
  border-color: #4b607a;
  box-shadow: 0 20px 50px #0004;
}
html[data-theme='dark'] :is(.archive-label, .archive-row) { color: #b4c4d8; }
html[data-theme='dark'] .archive-label span { color: var(--blue); }
html[data-theme='dark'] .archive-row { border-color: #43566f; }
html[data-theme='dark'] .archive-row i { background: #5e7898; }
html[data-theme='dark'] .archive-row b { color: #a4caff; }
html[data-theme='dark'] .intelligence-art svg { filter: drop-shadow(0 15px 18px #0004); }
html[data-theme='dark'] .intelligence-art svg g[stroke] { stroke: #698bb4; }
html[data-theme='dark'] .intelligence-art svg > circle[stroke] { stroke: #719cd2; }
html[data-theme='dark'] .intelligence-art stop:first-child { stop-color: #d2e7ff; }
html[data-theme='dark'] .intelligence-art stop:last-child { stop-color: #6799d3; }

@media (max-width: 767px) {
  html[data-theme='dark'].js .site-nav {
    background: var(--background);
    border-color: var(--line);
    box-shadow: 0 18px 24px #0004;
  }
}
