Why: replaced emoji-based weather icons with a dynamic SVG mapping, introduced WEATHER_ICON_MAP, updated format_weather_data and Weather class to use icon names and svg_file, removed unused constants and clarified day/night variant handling.
- New Features
- Added WEATHER_ICON_MAP linking weather codes to SVG identifiers and supporting night variants.
- Updated format_weather_data to return icon_name and use svg_file for dynamic icon resolution.
- Modified Weather widget to set condition label via dynamic SVG files instead of emoji.
- Enhancements
- Implemented day/night icon variant logic using optimistic naming based on known variants.
- Removed unused constant imports and simplified label update logic.
- Improved error handling with explicit fallbacks for missing weather fields.
- Bug Fixes
- Fixed potential missing icon fallback by using .get with default values.
- Corrected label assignment order to match new data structure.
New Features
- Introduce WEATHER_GRADIENT_MAP and WEATHER_EMOJI_MAP for condition‑to‑emoji mapping.
- Add SYSTEM_UPDATE_INTERVAL, WEATHER_UPDATE_INTERVAL, CALENDAR_UPDATE_INTERVAL constants and extend cache timeouts.
- Implement CpuInfo and RamInfo widgets with real‑time CPU percentage, temperature, and RAM usage display.
Enhancements
- Extend LOCATION_CACHE_TIMEOUT to 7 days.
- Integrate progress bar updates for CPU and memory usage.
- Organize desktop widget manager with separate top‑left and bottom‑right windows.
Bug Fixes
- None