Fixes # ## Problem ## Change **Not in this PR:** ## How it was checked - [ ] `cargo xtask ci` passes on this branch, rebased on current `main` - [ ] A test that fails without this change (for a crash fix: a regression test that panicked before it) - [ ] User-visible change: ran the app and looked at the result ## Screenshots ## Merging - **Overlap:** - **Existing edits and libraries:** - **Shared numbers taken:** - **Where it came from:** - **New dependencies, `unsafe`, build scripts, network access, spawned processes, deleted files, CI or `xtask` gate changes:** ## Checklist - [ ] No new panic path in non-test code: no `unwrap` / `expect` / `panic!`, no indexing or unchecked arithmetic on a number from a file, a person or an agent (`get`, `checked_mul`, NaN and char boundaries handled) - [ ] New text on screen goes through `tr()` and has its key in `crates/ui-egui/locales/*.json`; a new shortcut is free in `docs/library-shortcuts.md` - [ ] The feature's rows in `docs/parity-checklist.md` and its entry in `docs/gaps.md` are updated, honestly (🟡 when it is partial), in the same commit - [ ] New code has a caller: no command, module or setting that nothing reaches yet - [ ] Every new image, icon or other asset has its entry in `assets/ATTRIBUTION.md`; no font or media files added - [ ] Ready to merge (otherwise open it as a draft)