Nocturne 1.0.3
After pressing "Restore clock to how it was", the mode you were on could not be turned back on.
restoreOriginalClock() wrote mode straight to UserDefaults, which leaves @AppStorage's in-memory copy stale. Disk said off while self.mode still read blind, so clicking Blind in the menu hit the didSet guard mode != oldValue, saw no change, and never applied anything. The click looked like it did nothing.
Reproduced:
1. pick Blind -> mode=blind, IsAnalog=false
2. press Restore -> disk mode=off, in-memory mode=blind (stale)
3. click Blind -> nothing happens, clock stays readable
4. click a DIFFERENT mode -> works fine
It now assigns through the property, which keeps the in-memory value honest and also bumps the generation counter that cancels an in-flight overlay callback. Pressing Restore mid-restart previously left the overlay up with the mode already off.