/* CUE — shared accessibility + navigation styles. Included on every page.
   Visible focus, reduced-motion support, skip link, screen-reader utility,
   and a consistent footer nav. © 2026 CUE / cuetv.us */

/* Visible keyboard focus on every interactive element (don't rely on browser default,
   which custom buttons often strip). */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible,
select:focus-visible, [tabindex]:focus-visible, summary:focus-visible {
  outline: 3px solid #3aa7ff;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Respect users who ask for less motion: kill the orb pulse, float reactions,
   typing cursor, and any transitions/animations. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* Skip-to-content link — visible on keyboard focus. */
.cue-skip {
  position: absolute; left: -9999px; top: 0; z-index: 1000;
  background: #3aa7ff; color: #04203a; font-weight: 600;
  padding: 10px 16px; border-radius: 0 0 10px 0; text-decoration: none;
}
.cue-skip:focus { left: 0; }

/* Screen-reader-only text (for context not visible to sighted users). */
.sr-only {
  position: absolute !important; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* Consistent footer nav. */
.cue-foot {
  border-top: 1px solid rgba(150,160,255,.16);
  margin-top: 36px; padding: 20px 0 8px;
  font-size: 13px; color: #9aa0c4; text-align: center; line-height: 2;
}
.cue-foot nav a { color: #9aa0c4; text-decoration: none; margin: 0 8px; }
.cue-foot nav a:hover, .cue-foot nav a:focus-visible { color: #3aa7ff; }
.cue-foot .legal { color: #6b6f93; font-size: 12px; }
