fix(a11y): call-button 44x44 tap targets on touch (LC-573) #541
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/lc573-call-button-tap-targets"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes the tail of LC-565 / LC-UI-12 (Visual / accessibility regression pass), carved out as follow-up LC-573. The reconcile comment left two tap-target items open (roadmap R4).
What changed
.lc-cbtncall-control buttons were omitted from PR #535's coarse-pointer 44px selector list, so they stayed ~34-40px on touch. This adds.lc-cbtnto the@media (pointer: coarse)min-height rule and, because the buttons collapse to icon-only on a narrow bar (@container lc-callbar), a 44px min-width +justify-content: centerfor a true 44x44.No overflow risk, unlike the composer: the outer
.lc-callbarwraps and the inner.lc-callbar-controlscluster scrolls horizontally on mobile rather than pushing the page wide.Dense-row decision (the other open item)
The composer bottom row and room-header action cluster keep height-only (as shipped in #535). They clear the WCAG 2.5.8 (AA) 24px floor on both axes (44px tall x >=28px wide); full 44px width (AAA 2.5.5) is not pursued because it needs a composer reflow (wrap / overflow menu) that would harm the primary typing UX. The call bar, a dedicated scrolling control strip, is the exception that gets true 44x44. Decision is recorded in the rule's comment and on LC-573.
Verification
CSS-only, tokens only, scoped to coarse pointers. dev-web image rebuilt; served
/assets/main.csscarries the rule; app healthy.Acceptance criteria
🤖 Generated with Claude Code
https://claude.ai/code/session_01GJbJChgMXj7m1Q8GdnTPyT