/* === HyperWeave Accessibility Layer ===
 * Non-negotiable media queries for motion, color scheme, and forced colors.
 * Included in EVERY artifact.
 *
 * CAMO NOTE: @media (prefers-color-scheme) and @media (forced-colors: active)
 * are INERT when served through GitHub Camo as img tags. The img element
 * creates an isolated browsing context — the parent document's color scheme
 * and forced-colors mode do not propagate into it. Artifacts will always
 * render in their default (dark) theme on GitHub READMEs.
 *
 * These queries DO activate when the SVG is embedded directly (svg inline,
 * object, or opened as a standalone document). This is a known accepted
 * tradeoff: dark-default through Camo, adaptive in direct embed.
 */

/* ── Reduced Motion ── */
@media (prefers-reduced-motion: reduce) {
  .hw-logic-bit { animation: none !important; opacity: .8; }
  .hw-scanner { animation: none; opacity: 0; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  animate, animateTransform, animateMotion, set {
    display: none !important;
  }
}

/* ── Light Mode Override (see CAMO NOTE above — inert through img) ── */
/* Light mode: genome alleles injected by CSS assembler into per-artifact @media block. */

/* ── Forced Colors (Windows High Contrast) ── */
@media (forced-colors: active) {
  text { fill: CanvasText !important; }
  rect, path, circle, ellipse, polygon, polyline, line {
    stroke: CanvasText;
  }
  .hw-frame-bg { fill: Canvas !important; }
  .hw-accent-bar { fill: Highlight !important; }
  .hw-signal { fill: Highlight !important; }
  .hw-logic-bit { fill: Highlight !important; }
}
