d6015dd44e
The Hub → Game Selection → Game screens were internal $state with no history entries, so the device/browser Back button skipped straight out of /play. Now the screen is derived from the URL (?game=…&v=…) and forward moves use goto, so each screen is a real history entry: Back goes Game → Selection → Hub → site, matching the rest of the app. The in-app Back button uses history.back() so it mirrors the device button. Statuses refresh on every navigation (incl. Back). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>