/* a11y-floor-2026-08-13 · accessibility and motion floor
   Sibling copy of the block marked `a11y-floor-2026-08-13` in assets/css/xai.css.
   Locate it by that marker, never by line number — the original pointer here said
   "lines 3808-3825" and had already decayed by 2026-08-14 (3808 now holds
   .canon-src; the block begins at 3827).

   COVERAGE, re-measured 2026-08-14 via predeploy_check.get_public_html_files()
   (N=207), superseding the "35 / 228" figures this header used to assert:
     172  link xai.css and get the floor there
      28  link this file
       0  link both
       7  link NEITHER and have no floor at all — book/, egg/, record/frontier/,
          record/problems/, riemann/, spark/, suda/. Six also lack
          prefers-reduced-motion. This is an open item, not a covered case.

   WARNING — this is an unwatched parallel source of truth. No checker in
   09_TOOLS/ or 12_PUBLIC_SITE/ references a11y.css, so nothing detects
   divergence from the xai.css copy. Disposition is an open owner decision:
   maintain both, inline the floor and delete this, or gate it. Until then,
   any edit here must be mirrored by hand. */
:root { color-scheme: dark; }
.skip-to-content {
  position: absolute; left: -9999px; top: 0; z-index: 999;
  background: var(--accent, #FFEB3B); color: #050505;
  padding: .65rem 1.1rem; text-decoration: none; border-radius: 0 0 4px 0;
  font: 500 .9rem/1 'Roboto', system-ui, sans-serif; letter-spacing: .02em;
}
.skip-to-content:focus { left: 0; }
:focus-visible { outline: 2px solid var(--accent, #FFEB3B); outline-offset: 3px; border-radius: 2px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important; animation-iteration-count: 1 !important;
    transition-duration: .001ms !important; scroll-behavior: auto !important;
  }
}
