- Eigene HTML/JS/CSS werden IMMER frisch vom Netz geladen (kein Cache-First mehr)
- Map-Tiles (OSM/cartocdn) bleiben für Offline im Cache
- Cache-Version v3 → v4 (alte Bug-Caches werden in activate() gelöscht)
- Update-Hook: Browser fragt nach Reload wenn neuer SW aktiviert wird
- Fix: Updates an GitHub Pages sind sofort für alle sichtbar
User-Requests:
1. Legendenmenü auf Mobile war außerhalb des Displays -> jetzt
eingeklappt (nur Header) auf beiden Map-Files. Body scrollbar
bei Bedarf.
2. ÖPNV-Control soll auch klappbar sein -> gleiche Einklapp-Logik
wie Legende auf tourenplan-mit-tram.html.
3. Home-Button oben links auf jeder Seite -> alle 9 HTML-Files
(index ausgenommen weil es die Startseite ist) haben jetzt einen
🏠 Startseite Button fixed-position oben links.
Mobile-Optimierungen (max-width: 768px):
- Home-Button + Theme-Toggle kleiner (10px margin statt 16px,
padding 8x12 statt 10x16)
- Leaflet-Controls kleinere Margins
- Legende + ÖPNV-Control max-width 180px (von 220px)
- topleft-Control margin-top 56px damit es unter dem Home-Button
sitzt statt ihn zu überdecken
Auch im jga_wetter_update.py (für Cron-generierte wetter.html):
- CSS-Variablen statt hardcoded Farben
- home-btn CSS + Mobile-Override
- Home-Button HTML-Injection in get_body()
**Hotel präsenter auf Karten:**
- Größerer Hotel-Marker (56px vs 38px)
- Goldener pulsierender Glow (CSS-Animation hotelPulse)
- Permanentes Label 'Hotel Uno · Basis' unter dem Pin
- Auto-Open Popup nach 1.5s mit goldenem Banner
- Filter-Toggle (Hotel immer sichtbar, Action/Fun/Sight ausblendbar)
**Feature 7 - Route zwischen Locations:**
- OSRM Public API für echte Auto-Routen
- Schnell-Routen vom Hotel (3 nächste Locations)
- 'Zurück zum Hotel' Button in jedem Location-Popup
- Fallback auf Haversine-Luftlinie wenn API down
**Feature 8 - Was ist in der Nähe:**
- Nachbarn <3km Luftlinie in jedem Popup
**Feature 14 - Restaurant-Tipps:**
- Geo-Cluster-basierte Restaurant-Empfehlungen pro Location
- 14 handgepflegte Tipps (€€, Cuisine, Beschreibung)
**Feature 20 - PWA:**
- manifest.json + sw.js (cache-first für eigene Files)
- Theme-Color, Apple-Meta, SW-Registrierung in allen 5 HTML-Dateien
**Feature 21 - Dark/Light Mode Toggle:**
- CSS-Variablen-System + 🌙/☀️ Toggle-Button
- localStorage-Persistenz (nur index.html, andere Seiten folgen)
**Bugfixes:**
- Enigma-URL auf User-Sublink korrigiert (alle 3 Map-Dateien)
- tourenplan-mit-tram.html Locations-Sync mit tourenplan.html
(Endorfin/KartPlanet hatten komplett andere Preise+Koordinaten+URLs)