Save downloads dashboard.json, Load opens a file picker and imports through apply_import with errors reported in the modal, Clear asks for confirmation then wipes to Dashboard::blank(). App provides the store and ModalState and mounts the modal; init_hydrated starts autosave.