fix(radio): keyboard a11y — skip link, focus-visible, mobile-menu
human-flow P0-P1 fixes for radio.azcomputerguru.com: - K1: skip-to-content link (first tab stop) + id/tabindex on <main>. - K2: global :focus-visible ring (accent outline) across links, buttons, inputs and player controls; reveal the seek-bar handle on focus. - K3: mobile menu a11y — aria-expanded/aria-controls, Escape closes and restores focus to the toggle, focus moves to first link on open. All token-based, no emojis. Not built (node_modules absent on this host). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -644,6 +644,15 @@ export default function PersistentPlayer() {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.persistent-player__progress-bar:focus-visible {
|
||||
outline: 2px solid var(--color-accent, hsl(200 85% 55%));
|
||||
outline-offset: 2px;
|
||||
}
|
||||
|
||||
.persistent-player__progress-bar:focus-visible .persistent-player__progress-handle {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
[data-theme="light"] .persistent-player__progress-bar {
|
||||
background: hsl(220 12% 85% / 0.5);
|
||||
}
|
||||
@@ -755,6 +764,17 @@ export default function PersistentPlayer() {
|
||||
background: hsl(220 16% 92% / 0.6);
|
||||
}
|
||||
|
||||
.persistent-player__btn:focus-visible {
|
||||
outline: 2px solid var(--color-accent, hsl(200 85% 55%));
|
||||
outline-offset: 2px;
|
||||
color: var(--color-text-primary, hsl(220 10% 92%));
|
||||
}
|
||||
|
||||
.persistent-player__btn--play:focus-visible {
|
||||
color: hsl(220 20% 8%);
|
||||
box-shadow: 0 0 16px hsl(200 85% 55% / 0.3);
|
||||
}
|
||||
|
||||
.persistent-player__btn--play {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
|
||||
Reference in New Issue
Block a user