/* Display preference and theme-specific colours; brand navy and images stay true. */
:root { color-scheme: light; }
.contact-band .eyebrow { color: #5a4518; }
.utility-actions { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.utility-location { min-width: 0; }
.location-short { display: none; }
.theme-toggle { display: inline-grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 10px; border: 1px solid #ffffff45; border-radius: 6px; color: #fff; background: transparent; }
.theme-toggle[hidden] { display: none; }
.theme-toggle:hover { background: #ffffff15; border-color: #ffffff80; }
.utility .theme-toggle .icon { width: 20px; height: 20px; color: inherit; }
.theme-toggle .theme-sun { display: none; }
[data-theme="dark"] .theme-toggle .theme-sun { display: block; }
[data-theme="dark"] .theme-toggle .theme-moon { display: none; }
@media (max-width: 480px) {
  .location-full { display: none; }
  .location-short { display: inline; }
  .utility-actions { gap: 8px; }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --ink: #e4edf7;
  --muted: #afbed0;
  --cream: #101d2e;
  --line: #33445c;
  --soft: #1b2a3d;
  --surface: #142034;
  --raised: #1b2b42;
  --shadow: 0 14px 38px #0003;
}
[data-theme="dark"] body { background: #0c1422; }
[data-theme="dark"] :is(h1, h2, h3) { color: #f3f6fb; }
[data-theme="dark"] :is(.text-link, .faq-list summary, .journal-prose a, .journal-references a, .journal-comparison caption, .journal-comparison th[scope="row"]),
[data-theme="dark"] .journal-comparison td::before { color: #f3f6fb; }
[data-theme="dark"] :is(.eyebrow, .hero-eyebrow, .hero-proof, .hero-coordinate, .product-category, .product-sku, .availability, .breadcrumb, .footer-bottom, .image-frame figcaption, .application-top .icon, .application-top > span, .benefits .icon, .hero-product > div > span) { color: var(--muted); }
[data-theme="dark"] :is(.card, .hero-product, .product-card, .journal-card, .product-search, .filter-button, .product-add, .skip-link, .journal-source-note) { background: var(--surface); }
[data-theme="dark"] .featured-section { background: #0c1422; }
[data-theme="dark"] .site-header { background: #0c1422f5; border-color: var(--line); }
[data-theme="dark"] .primary-nav { background: var(--surface); }
[data-theme="dark"] .primary-nav a:hover { color: var(--gold); }
[data-theme="dark"] .header-quote { background: var(--surface); border-color: var(--line); }
[data-theme="dark"] .quote-count { color: var(--navy); background: var(--gold); }
[data-theme="dark"] .menu-toggle span { background: var(--ink); }
[data-theme="dark"] .button-secondary { color: var(--ink); border-color: #6a7f97; }
[data-theme="dark"] .button-secondary:hover { background: var(--raised); border-color: var(--muted); }
[data-theme="dark"] .text-link { border-color: #6a7f97; }
[data-theme="dark"] .text-link:hover { border-color: var(--gold); }
[data-theme="dark"] .marked { color: var(--gold); }
[data-theme="dark"] .marked::after { background: #f8bd4330; }
[data-theme="dark"] .hero-proof .icon { color: #8bd4a6; }
[data-theme="dark"] .hero-product { border-color: var(--line); }
[data-theme="dark"] .hero-product > img { background: #f7f8f8; border-radius: 5px; }
[data-theme="dark"] :is(.product-add, .filter-button, .product-search) { color: var(--ink); border-color: #6a7f97; }
[data-theme="dark"] :is(.product-add:hover, .product-add.selected, .filter-button.active) { background: var(--gold); border-color: var(--gold); color: var(--navy); }
[data-theme="dark"] .product-search input { color: var(--ink); }
[data-theme="dark"] .product-search input::placeholder { color: var(--muted); opacity: 1; }
[data-theme="dark"] .product-image .muted { color: #5c6b7b; }
[data-theme="dark"] .availability.available { color: #8bd4a6; }
[data-theme="dark"] .availability.available::before { background: #8bd4a6; }
[data-theme="dark"] :is(.product-skeleton > div, .product-skeleton > span) { background: var(--raised); }
[data-theme="dark"] .image-tag { background: #142034ed; }
[data-theme="dark"] :is(.local-reasons > div, .contact-routes article, .solution-jump-links a, .step) { border-color: var(--line); }
[data-theme="dark"] :is(.local-reasons > div > span, .step > span, .page-step-number, .journal-card-meta > span:first-child) { color: var(--gold); }
[data-theme="dark"] .application-card { background: var(--surface); }
[data-theme="dark"] .application-card:hover { background: var(--raised); border-color: var(--gold); }
[data-theme="dark"] .contact-band h2 { color: var(--navy); }
[data-theme="dark"] .contact-band .eyebrow { color: #5a4518; }
[data-theme="dark"] .site-footer { background: var(--cream); }
[data-theme="dark"] .footer-grid > div > a { color: var(--muted); }
[data-theme="dark"] .footer-grid > div > a:hover { color: var(--ink); }
[data-theme="dark"] :is(.brand img, .footer-intro img) { background: #fff; border-radius: 5px; mix-blend-mode: normal; }
[data-theme="dark"] .quote-tray { background: var(--surface); border-color: var(--line); }
[data-theme="dark"] :is(.page-section-tint, .journal-related) { background: var(--cream); }
[data-theme="dark"] .solution-jump-links a:hover { background: var(--raised); border-color: var(--muted); }
[data-theme="dark"] .journal-article-image.journal-field-image { background: var(--surface); }
[data-theme="dark"] .journal-comparison th[scope="row"] { background: var(--surface); }
[data-theme="dark"] .journal-sidebar nav a:hover { color: var(--gold); }
@media (max-width: 680px) {
  [data-theme="dark"] .journal-comparison th[scope="row"] { background: transparent; }
}
