/* Private R26 static screen texture. Install in the 5 parent pages only,
   never again in their scene iframes. This does not style a surrounding Wix
   document or browser top-layer/fullscreen content outside this document.

   The artwork, text, architecture and existing logo animations stay untouched.
   Normal alpha compositing bounds the treatment; no difference/screen blending,
   content filters, backdrop filters, displaced text or viewport flashes.
   https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/mix-blend-mode
   https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/filter
   No animated tracking band or per-frame JavaScript.
   https://developer.mozilla.org/en-US/docs/Web/Performance/Guides/Animation_performance_and_frame_rate

   These restrained defaults still require integrated contrast/visual testing.
   Reduced motion/forced colors/print automatically hide the entire treatment.
   The owner has not authorized a visitor motion switch. Respect that boundary;
   do not infer WCAG compliance from automatic suppression or low opacity alone.
   https://www.w3.org/WAI/WCAG22/Understanding/pause-stop-hide.html
   https://www.w3.org/WAI/WCAG22/Understanding/three-flashes-or-below-threshold.html
*/

#aether-crt-r25 {
  position: fixed;
  inset: 0;
  z-index: 1100; /* Existing local startup is 1000; header/footer are 5. */
  overflow: hidden;
  contain: strict;
  pointer-events: none;
  user-select: none;
  visibility: hidden; /* Fail closed until the controller has synchronized. */
  mix-blend-mode: normal;
  background-image:
    repeating-linear-gradient(to bottom,
      rgba(8, 5, 16, .032) 0 1px, transparent 1px 4px),
    repeating-linear-gradient(to right,
      transparent 0 2px, rgba(139, 78, 170, .012) 2px 3px);
}

#aether-crt-r25[data-aether-crt-hidden="false"] {
  visibility: visible;
}

/* R26 owner correction: the traveling television tracking band is removed.
   Retain only the faint static texture. No animated overlay crosses artwork. */
#aether-crt-r25::before { content:none; animation:none; }

/* CSS guards remain effective even when a media-query event is delayed. Keep
   the animation allocated but paused so preference changes do not reset it. */
@media (prefers-reduced-motion: reduce), (forced-colors: active), print {
  #aether-crt-r25 { visibility: hidden !important; }
  #aether-crt-r25::before { animation-play-state: paused !important; }
}
