Skip to content

Commit 3b80102

Browse files
fix(a11y): improve focus outline contrast for keyboard navigation
- Increase focus ring opacity from 10% to 50% in focus-ring shortcut - Add ring-offset-bg for consistent offset coloring - Update input-base focus states (border-fg/50, ring-fg/30) for better visibility - Change link focus outline from var(--border) to var(--fg-muted) for WCAG compliance Fixes #647
1 parent 4e08976 commit 3b80102

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

app/assets/main.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ a:hover {
129129
}
130130

131131
a:focus-visible {
132-
outline: 2px solid var(--border);
132+
outline: 2px solid var(--fg-muted);
133133
outline-offset: 2px;
134134
border-radius: 2px;
135135
}

uno.config.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,8 @@ export default defineConfig({
119119
['container', 'max-w-6xl mx-auto px-4 sm:px-6'],
120120
['container-sm', 'max-w-4xl mx-auto px-4 sm:px-6'],
121121

122-
// Focus states - subtle but accessible
123-
['focus-ring', 'outline-none focus-visible:(ring-2 ring-fg/10 ring-offset-2)'],
122+
// Focus states - accessible contrast for keyboard navigation
123+
['focus-ring', 'outline-none focus-visible:(ring-2 ring-fg/50 ring-offset-2 ring-offset-bg)'],
124124

125125
// Buttons
126126
[
@@ -149,7 +149,7 @@ export default defineConfig({
149149
// Form elements
150150
[
151151
'input-base',
152-
'w-full bg-bg-subtle border border-border rounded-md px-4 py-3 font-mono text-sm text-fg placeholder:text-fg-subtle transition-all duration-200 focus:(border-fg/40 outline-none ring-1 ring-fg/10)',
152+
'w-full bg-bg-subtle border border-border rounded-md px-4 py-3 font-mono text-sm text-fg placeholder:text-fg-subtle transition-all duration-200 focus:(border-fg/50 outline-none ring-1 ring-fg/30)',
153153
],
154154

155155
// Tags/badges

0 commit comments

Comments
 (0)