/* Accessible light/dark appearance. Loaded last so it can safely refine every page. */
:root[data-theme="dark"]{
  --muted:#b7b7bf;
  color-scheme:dark;
}

:root[data-theme="light"]{
  --bg:#f6f3ee;
  --bg-soft:#eee9e2;
  --panel:#ffffff;
  --panel-2:#f3efe9;
  --text:#18181b;
  --muted:#565660;
  --line:#d4cec6;
  color-scheme:light;
}

html[data-theme="light"],
html[data-theme="light"] body{
  background:#f6f3ee;
  color:#18181b;
}

/* Dark-theme header and footer defaults. */
.site-header,.footer{color:#f7f7f7}
.site-header .nav{color:#d7d7dc}
.site-header .menu-btn{border-color:rgba(255,255,255,.18);background:#111114;color:#fff}

/* Light mode uses the official black-letter logo on light navigation surfaces. */
html[data-theme="light"] .site-header,
html[data-theme="light"] .footer{
  background:#fff!important;
  color:#18181b!important;
  border-color:#d4cec6!important;
}
html[data-theme="light"] .site-header .nav-wrap,
html[data-theme="light"] .footer .container,
html[data-theme="light"] .footer-grid,
html[data-theme="light"] .footer .legal{
  background:#fff!important;
  color:#18181b!important;
  border-color:#d4cec6!important;
}
html[data-theme="light"] .site-header .nav,
html[data-theme="light"] .site-header .nav a,
html[data-theme="light"] .footer a{color:#3d3d45!important}
html[data-theme="light"] .site-header .nav a:hover,
html[data-theme="light"] .site-header .nav a:focus-visible,
html[data-theme="light"] .footer a:hover,
html[data-theme="light"] .footer a:focus-visible{color:#000!important}
html[data-theme="light"] .site-header .menu-btn,
html[data-theme="light"] .theme-toggle{
  border-color:#aaa39b;
  background:#fff!important;
  color:#18181b!important;
}
html[data-theme="light"] .theme-toggle:hover{border-color:#66616a;background:#f3efe9}
html[data-theme="light"] .theme-toggle:focus-visible{outline-color:#18181b}
html[data-theme="light"] .support-submenu{
  background:rgba(255,255,255,.98)!important;
  border-color:#d4cec6!important;
  box-shadow:0 20px 48px rgba(46,38,30,.14);
}
html[data-theme="light"] .support-submenu a:hover,
html[data-theme="light"] .support-submenu a:focus-visible{
  background:#f3efe9!important;
  color:#18181b!important;
}
html[data-theme="light"] .footer h4,
html[data-theme="light"] .footer .muted,
html[data-theme="light"] .footer .legal{color:#565660!important}

.theme-toggle{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:8px 13px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:#101012;
  color:#f7f7f7;
  font:600 .78rem/1 Oxanium,Inter,ui-sans-serif,system-ui,sans-serif;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.theme-toggle:hover{border-color:rgba(255,255,255,.5);background:#19191d}
.theme-toggle:active{transform:translateY(1px)}
.theme-toggle:focus-visible{outline:3px solid #fff;outline-offset:3px}
.theme-icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html[data-theme="dark"] .theme-icon-moon,
html[data-theme="light"] .theme-icon-sun{display:none}

/* Improve the smallest text in both themes. */
.legal{font-size:.82rem;line-height:1.65;color:#9b9ba3}
.footer a{color:#b5b5bd}
.wave small,.feature p,.section-head p{line-height:1.65}

html[data-theme="light"] main{color:#18181b}
html[data-theme="light"] main>section:not(.hero){
  background:#f6f3ee!important;
  border-color:#d4cec6!important;
}
html[data-theme="light"] main :where(h1,h2,h3,h4,p,li,dt,dd,span,strong,small,label,legend,th,td){color:inherit}
html[data-theme="light"] main :where(.muted,.section-head p,.feature p,.product-body p,.product-hero p,.page-hero p,.research-card p,.review-form-intro,.review-policy,.review-meta,.review-field small,.admin-header p,.admin-login p,.review-privacy-card p,.review-privacy-card li){color:#565660}
html[data-theme="light"] main :where(.eyebrow,.review-product,.optional,.private-label){color:#666671}
html[data-theme="light"] main :where(.grad-text,.hero-gradient,.spectrum-word,.wavelength-gradient){color:transparent;-webkit-text-fill-color:transparent}

html[data-theme="light"] main :where(
  .stat,.feature,.product-card,.research-card,.price-option,.panel-format-note,
  .positioning-panel,.position-card,.open-air-callout,.regulatory-card,.event-card,
  .event-video-card,.event-person-card,.support-quick-grid>a,.wavelength-mode-card,
  .irradiance-explanation,.measurement-proof-card,.review-card,.review-form-card,
  .review-empty,.review-loading,.review-error,.admin-login,.admin-review,.admin-help,
  .review-privacy-card,.manual-card,.manual-support,.product-manual-strip,.order-card,
  .order-panel,.order-intro-note,.payment-box,.order-step,.fulfillment-option,
  .challenge-box,.selection-note,.final-cta,.wave-detail,.reviews-summary
){
  background:#fff!important;
  border-color:#d4cec6!important;
  color:#18181b;
  box-shadow:0 10px 30px rgba(46,38,30,.045);
}

html[data-theme="light"] main :where(.spec-grid,.spec,.table-wrap,.compare th,.compare td,.accordion,.acc-item){border-color:#d4cec6}
html[data-theme="light"] main .compare th{background:#eee9e2;color:#18181b}
html[data-theme="light"] main .compare td{background:#fff;color:#18181b}
html[data-theme="light"] main :where(.review-filter,.review-field input,.review-field select,.review-field textarea,.admin-token-input,.admin-note){
  background:#fff;
  border-color:#bdb6ad;
  color:#18181b;
}
html[data-theme="light"] main :where(.review-field input,.review-field select,.review-field textarea,.admin-token-input,.admin-note)::placeholder{color:#77717a;opacity:1}

html[data-theme="light"] main :where(.btn-primary,.review-submit,.admin-btn.primary,.admin-btn.active){background:#18181b;color:#fff;border-color:#18181b}
html[data-theme="light"] main :where(.btn-dark,.review-load-more,.review-video-button,.admin-btn){background:#fff;color:#18181b;border-color:#aaa39b;backdrop-filter:none}
html[data-theme="light"] main :where(.text-link,.review-video-link,.review-form-intro a,.review-consent a,.review-policy a,.review-privacy-card a){color:#303039}
html[data-theme="light"] main .review-stars,
html[data-theme="light"] main .rating-options label:hover,
html[data-theme="light"] main .rating-options label:hover~label,
html[data-theme="light"] main .rating-options input:checked~label{color:#a56b00}
html[data-theme="light"] main .reviewer-name{color:#18181b}
html[data-theme="light"] main .verified-badge{color:#2d6f29;background:#eff8ec;border-color:#88ba7a}
html[data-theme="light"] main .review-form-status.success{color:#2d6f29}
html[data-theme="light"] main .review-form-status.error{color:#a21721}

/* Keep the Phoenix comparison statistics readable against the light theme. */
html[data-theme="light"] main .challenge-stats{
  background:#d4cec6!important;
  border-color:#d4cec6!important;
}
html[data-theme="light"] main .challenge-stats>div{
  background:#fff!important;
  color:#18181b!important;
}
html[data-theme="light"] main .challenge-stats strong{
  color:#18181b!important;
}
html[data-theme="light"] main .challenge-stats span{
  color:#565660!important;
}

/* Light mode presents isolated products and mode examples on white. */
html[data-theme="light"] main :where(
  .product-image,.product-visual,.product-placeholder,.media-frame,.clean-product,
  .flagship-visual,.catalog-feature-visual,.prizm-visual,.prizm-product-visual,
  .home-commercial-visual,.wavelength-mode-media,.product-gallery,.gallery-item,
  .product-card-image,.product-hero-image,.image-card,.image-wrap,.mode-image
){background-color:#fff!important}
html[data-theme="light"] main :where(.product-image,.product-visual,.product-placeholder,.media-frame,.clean-product,.wavelength-mode-media){border-color:#d4cec6!important}

/* Transparent cutouts must also composite over white, even when an older wrapper is dark. */
html[data-theme="light"] main img:not(.review-photo){background-color:#fff!important}

/* The image-led homepage hero remains intentionally cinematic in both modes. */
html[data-theme="light"] main .hero{color:#fff;background:#030303!important;border-color:#26262b!important}
html[data-theme="light"] main .hero :where(h1,h2,h3,h4,p,span,strong,small){color:inherit}
html[data-theme="light"] main .hero .hero-lede{color:#e2e2e6!important}

@media (min-width:1001px) and (max-width:1320px){
  .nav-wrap{gap:15px}
  .nav{gap:14px;font-size:.76rem}
  .nav-cta{padding:9px 12px}
  .brand img{width:142px}
  .theme-toggle{padding-inline:11px;font-size:.72rem}
}

@media (max-width:1000px){
  .nav-wrap{gap:10px}
  .theme-toggle{order:3}
  .nav.open{color:#ddd;background:#0b0b0d;border-color:#29292e}
  html[data-theme="light"] .nav.open{color:#18181b;background:#fff;border-color:#d4cec6}
}

@media (max-width:420px){
  .brand img{width:118px}
  .menu-btn{padding:8px 10px}
  .theme-toggle{gap:6px;padding:8px 10px;font-size:.7rem}
}

@media (prefers-reduced-motion:reduce){.theme-toggle{transition:none}}

/* v1.0.102 — complete, high-contrast light presentation. */
html[data-theme="light"] main :where(
  .eyebrow,.muted,.brand-slogan,.product-kicker,.hero-app-note,.notice,
  .panel-format-note,.panel-format-note strong,.phoenix-card-pricing strong,
  .price-line,.product-price,.price-label,.price-big,.commercial-price,
  .order-price,.total-line,.total-line strong,.total-line.grand,
  .payment-box strong,.order-confirm strong,.order-step h3,.order-step p strong,
  .order-step a,.fulfillment-option strong,.manual-card h2,.manual-card h3,
  .position-range,.positioning-note a,.open-air-compare td strong,
  .open-air-callout strong,.manual-actions .btn-ghost,.support-quick-grid strong,
  .event-card figcaption strong,.event-video-card figcaption strong,
  .measurement-proof-copy strong,.measurement-proof-copy b,
  .challenge-box>p strong,.challenge-close,.regulatory-copy h2
){color:#18181b!important}

html[data-theme="light"] main :where(
  .feature .num,.product-price small,.product-body p,.chip,.spec span,
  .page-hero p,.acc-panel,.position-card p,.positioning-note,
  .open-air-callout span,.measurement-proof-copy small,.wave-context,
  .review-meta,.legal
){color:#565660!important}

/* Wavelength selector and research details. */
html[data-theme="light"] main .spectrum-section{background:#f6f3ee!important}
html[data-theme="light"] main .spectrum{
  background:#fff!important;
  border-color:#c8c1b8!important;
}
html[data-theme="light"] main .wave{
  background:#fff!important;
  border-color:#d4cec6!important;
  color:#18181b!important;
}
html[data-theme="light"] main .wave:hover,
html[data-theme="light"] main .wave.active{
  background:#ebe6df!important;
  border-color:#8e877e!important;
  color:#111114!important;
}
html[data-theme="light"] main .wave strong{color:#18181b!important}
html[data-theme="light"] main .wave small{color:#4f4f58!important}
html[data-theme="light"] main .wave-detail{
  background:#fff!important;
  border-color:#c8c1b8!important;
  color:#18181b!important;
}
html[data-theme="light"] main .wave-detail :where(h3,.wave-benefit-label,.wave-benefits){color:#18181b!important}
html[data-theme="light"] main .wave-detail :where(.eyebrow,.wave-context){color:#565660!important}
html[data-theme="light"] main .wave-research-links .text-link{color:#202028!important;text-decoration:underline;text-underline-offset:3px}

/* Common components that retained dark-theme text or surfaces. */
html[data-theme="light"] main .proof-strip{background:#fff!important;border-color:#d4cec6!important}
html[data-theme="light"] main .proof-grid>div{border-color:#d4cec6!important}
html[data-theme="light"] main .proof-grid strong{color:#18181b!important}
html[data-theme="light"] main .proof-grid span{color:#565660!important}
html[data-theme="light"] main .accordion .acc-btn{color:#18181b!important}
html[data-theme="light"] main :where(.product-card,.feature,.price-option,.position-card,.order-step,.fulfillment-option){color:#18181b!important}
html[data-theme="light"] main :where(.order-select,.order-qty,.checkout-field input,.checkout-field textarea){background:#fff!important;color:#18181b!important;border-color:#aaa39b!important}
html[data-theme="light"] main :where(.cart-qty-controls button,.cart-remove,.order-secondary,.btn-ghost){background:#fff!important;color:#18181b!important;border-color:#aaa39b!important}
html[data-theme="light"] main .text-link:hover{color:#000!important}
html[data-theme="light"] main .regulatory-emblem span{color:#fff!important}

/* The homepage hero retains the close-up colored lenses on a white panel in light mode. */
html[data-theme="light"] main .hero-cinematic{
  background-color:#fff!important;
  background-image:url('../images/hero-spectrum-light-v204.webp')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:cover!important;
  color:#18181b!important;
  border-color:#d4cec6!important;
}
html[data-theme="light"] main .hero-cinematic .hero-picture{display:none!important}
html[data-theme="light"] main .hero-cinematic::before{
  background:linear-gradient(90deg,#fff 0%,#fff 56%,rgba(255,255,255,.96) 64%,rgba(255,255,255,.28) 82%,rgba(255,255,255,0) 100%)!important;
}
html[data-theme="light"] main .hero-cinematic::after{background:none!important}
html[data-theme="light"] main .hero-cinematic .hero-copy{max-width:720px;text-shadow:none!important}
html[data-theme="light"] main .hero-cinematic :where(h1,.brand-slogan){color:#18181b!important}
html[data-theme="light"] main .hero-cinematic .hero-lede{color:#3f3f48!important}
html[data-theme="light"] main .hero-cinematic .hero-spectrum-label{color:#4f4f58!important;text-shadow:none!important}
html[data-theme="light"] main .hero-cinematic .hero-spectrum-label span{color:#9c3e24!important}
html[data-theme="light"] main .hero-cinematic .btn-primary{background:#18181b!important;color:#fff!important;border-color:#18181b!important}
html[data-theme="light"] main .hero-cinematic .btn-dark{background:#fff!important;color:#18181b!important;border-color:#77717a!important;backdrop-filter:none!important}

@media(max-width:900px){
  html[data-theme="light"] main .hero-cinematic{
    background-position:58% top!important;
    background-size:cover!important;
  }
  html[data-theme="light"] main .hero-cinematic::before{background:rgba(255,255,255,.88)!important}
}

@media(max-width:650px){
  html[data-theme="light"] main .hero-cinematic{
    background-position:62% top!important;
    background-size:cover!important;
  }
  html[data-theme="light"] main .hero-cinematic::before{background:rgba(255,255,255,.91)!important}
}


/* v204 light-mode product-image cleanup */
html[data-theme="light"] img[src*="-light"],
html[data-theme="light"] source[srcset*="-light"]{background:#fff!important}
html[data-theme="light"] .product-card img,
html[data-theme="light"] .system-card-visual img,
html[data-theme="light"] .nrg-gallery-main,
html[data-theme="light"] .nrg-gallery-thumb img{background:#fff!important}
