75fc3aa3d6
Phase 3 step 5b of the UX overhaul. Wraps the existing 8-cell stats
grid + progression / weekly-goals / time-attack sections inside the
standard modal scaffold. The cell layout (the audit's pick for
"best layout in the codebase") is preserved.
Changes:
- spawn_stats_screen now calls spawn_modal(StatsScreen, ...) and
populates the card with the same content as before, retoned to
ui_theme: stat values are TYPE_HEADLINE in ACCENT_PRIMARY (yellow
numbers pop against the midnight-purple card), labels are TYPE_BODY
in TEXT_SECONDARY.
- Stat cells lose their 6%-alpha-white fill (clashed with the new
card surface) and gain a BORDER_SUBTLE outline at RADIUS_SM
instead — same visual purpose, fits the new palette.
- Section headers ("Progression", "Weekly Goals") use STATE_INFO and
TEXT_SECONDARY respectively at TYPE_BODY_LG.
- Time Attack callout uses STATE_WARNING.
- "Press S to close" prose hint replaced by a primary "Done" button
carrying its "S" hotkey chip.
A new handle_stats_close_button system mirrors the keyboard `S`
toggle for clicks. font_res threaded through toggle_stats_screen so
the modal scaffold can pick up FiraMono.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>