- Each ready version gets a "Languages" dropdown next to Play: the original language
first, then translations with their completion; picking one starts the version in
that language
- The game header gets the same dropdown, aggregated over published, ready versions.
Each language points at the version that has it best (most complete, the main
version on a tie); an original language counts as complete
- The old row of language tags linking to the translation editor is replaced
- Backend: versions carry source_name (the name of the original language)
- pages/languages.ts holds the aggregation logic with tests; LanguageMenu closes on
outside click and Escape
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>