Issue
Bingo victory modal lacks polish and accessibility. No dismiss mechanism beyond the "Keep Playing" button, animation is jarring, and no keyboard support.
Current State
<div class="fixed inset-0 bg-black/50 flex items-center justify-center p-4 z-50">
<div class="animate-[bounce_0.5s_ease-out]">
🎉 BINGO!
<button>Keep Playing</button>
</div>
</div>
Issues
- No close (X) button for quick dismiss
- Overlay blocks all interaction until button clicked
- Bounce animation jarring on slower devices
- No Escape key support
- No backdrop click to dismiss
- Confetti animation opportunity missed
Recommended Implementation
Animation Options
- Fade + Scale:
opacity: 0; transform: scale(0.9) → opacity: 1; scale(1) (300ms)
- Slide Up + Fade: Subtle entrance from bottom
- Keep Bounce: But at 1000ms (slower, less jarring)
Files to Update
app/templates/components/bingo_modal.html (add close button, update animation)
app/static/css/app.css (add new animation keyframes)
app/templates/base.html (optional: add keyboard handler script)
app/static/js/modal.js (new file for backdrop/keyboard logic, or use HTMX events)
Issue
Bingo victory modal lacks polish and accessibility. No dismiss mechanism beyond the "Keep Playing" button, animation is jarring, and no keyboard support.
Current State
Issues
Recommended Implementation
Animation Options
opacity: 0; transform: scale(0.9)→opacity: 1; scale(1)(300ms)Files to Update
app/templates/components/bingo_modal.html(add close button, update animation)app/static/css/app.css(add new animation keyframes)app/templates/base.html(optional: add keyboard handler script)app/static/js/modal.js(new file for backdrop/keyboard logic, or use HTMX events)