offlineEfficiency() : 100% (0-15min) → 25% (1h) → 0% (2h).
computeOfflineGains() intègre la courbe par tranches de 1min.
GameState.lastOnline ajouté, store hydrate avec offline report.
OfflineReport.tsx affiché au retour si absence > 60s.
13 nouveaux tests (66 total, tous passent).
12 SCSS files (1167 lines) replaced by centralized index.css with
Tailwind v4 @theme tokens, @layer components, and utility classes.
Game panel design system (gp-*) preserved as CSS components.
Inline styles in Settings/Login/MilestoneBar converted to Tailwind utilities.
sass removed from dependencies. Build clean, 53 tests pass.
- zones.scss : système data-zone avec biomes (swamp, landing, page)
- Home.jsx migré de .game-cover → zone[data-zone="swamp"]
- Landing.jsx migré → zone[data-zone="landing"]
- Background sorti de home.scss → zones.scss (un seul endroit)
- Prêt pour ajouter des biomes (cave, volcano, ocean) en une ligne
- Suppression Hud.jsx + HUDON/HUDOFF.svg (cockpit header fait le même job)
- Retrait toggle HUD de la navbar + props isVisible
- Compteur click-zone : glow vert, plus gros, lisible sur fond sombre
- Tooltip sur le bouton bulles navbar