Problem\nLevel progress is only tracked in-memory. If the player refreshes, they lose all story mode progress and have to restart from level 1.\n\nSolution\n- Store completed level IDs in localStorage under 'corun_completed_levels'\n- On Game.tsx mount, restore from localStorage\n- On level completion, persist immediately\n- Show locked/unlocked state in LevelSelect based on stored progress\n\nFile: src/components/Game.tsx, src/components/LevelSelect.tsx
Problem\nLevel progress is only tracked in-memory. If the player refreshes, they lose all story mode progress and have to restart from level 1.\n\nSolution\n- Store completed level IDs in localStorage under 'corun_completed_levels'\n- On Game.tsx mount, restore from localStorage\n- On level completion, persist immediately\n- Show locked/unlocked state in LevelSelect based on stored progress\n\nFile: src/components/Game.tsx, src/components/LevelSelect.tsx