* Fix#457 - Persist entry sorting preferences across app launches
Changed sorting state from @State to @AppStorage in EntriesView to ensure user preferences are saved to UserDefaults. Also made sorting criteria mutually exclusive for a better UX.
* Add option to pick theme (light/dark/auto).
Moved language files and other resources into a sub-folder to clean up the structure a little.
* use #EnvironmentObject
* Fix reading time display affected by 12/24-hour system setting (#451)
Reading time was incorrectly displayed as time-of-day (e.g., "12:45:00 AM" on 12-hour format devices) instead of as a duration. This occurred because DateFormatter was being used to format what should be a duration value, causing it to apply system time format preferences.
Replaced DateFormatter with simple duration calculation that formats as HH:MM:SS regardless of device settings. Added comprehensive unit tests covering basic durations, hour boundaries, fractional minutes, and edge cases.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Add GitHub Action to run SharedLib tests
---------
Co-authored-by: Claude <noreply@anthropic.com>