- Settings (GameSettings, saved to settings.json beside the saves; applied at once by SettingsApplier):
- Graphics: quality level, resolution, fullscreen, vsync.
- Audio: master volume (works now), plus music and effects volumes (stored for Step 25).
- Controls: mouse sensitivity, invert Y, and key remapping. Click a key, press the new one, Esc cancels. Saved as Input System binding overrides; the HUD hotbar shows the remapped keys.
- Accessibility: UI/text size 80–150% (PanelSettings scale, put back after a test run in the editor); colour-blind-safe rarity colours (Okabe–Ito, on UI borders and text and on the loot beams); longer enemy and boss wind-ups (×1.25 or ×1.5, boss-polydegmon §13); damage numbers on/off.
- Restore defaults.
- One settings window (SettingsPanel) shared by the title screen and the Esc menu (new Settings button). Esc in Settings goes back to the menu.
- Characters: up to 8 save slots (hero_0…hero_7.json). The old single save becomes slot 0 automatically.
- Title: Continue (the last character played), Characters (each row shows name, class, level, chapter, time and tier, with Play, a tier picker and Delete with confirm), New Character (class, then a name; empty = the class name), Settings, Quit.
- SaveData.CharacterName; Embers → Saves → Delete Save now clears every slot.
- Controller layout:
- Left stick moves, right stick looks.
- Hotbar: X / Y / B / LB / RT / LT.
- A interacts, RB cycles targets, Start opens the menu, Select opens the bag.
- D-pad: up = skill tree, down = map, left = town portal.
- Left stick click sprints, right stick click jumps.
- Menus still need the mouse (no gamepad UI navigation yet).
- Tests: slots (separate, newest first, free slot, delete), the old save migrating to slot 0, settings save/load/clamp, a remapped key surviving a fresh map. The test assembly now references Unity.InputSystem.