Skip to content

Sweep focus:ring-primary/50 → full-opacity ring for WCAG AA contrast (repo-wide) #1218

@Chris0Jeky

Description

@Chris0Jeky

Context

Gemini flagged on PR #1216 that focus:ring-primary/50 (50% opacity) on dark bg-surface-container-high (#2a2a2a) yields ~2.8:1 contrast — below the WCAG 2.1 AA 3:1 requirement for UI components.

PR #1216 fixed the two occurrences it touched (BoardSettingsModal) to full focus:ring-primary. But focus:ring-primary/50 is the established convention across ~16 other components (the canonical ColumnEditModal.vue plus LabelManagerModal, FilterPanel, etc. — 18 total usages repo-wide, 0 full-opacity).

Task

Sweep the remaining focus:ring-primary/50 usages to full focus:ring-primary (or another ≥3:1 treatment) so focus indicators are accessible on the dark/paper-night surfaces consistently. Update the canonical token pattern (ColumnEditModal) so future tokenization doesn't reintroduce the low-contrast ring.

grep -rn "focus:ring-primary/50" frontend/taskdeck-web/src

Out-of-scope follow-up from PR #1216 (paper-night straggler tokenization) per the review policy (real finding, tracked rather than fixed piecemeal).

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status
    Pending

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions