Fix: Dark-Mode CSS-Syntax korrigiert — html.dark + @media getrennt (SW by-v956)
Ungültige Syntax (@media..., html.dark kombiniert) aufgelöst.
Zwei separate valide Blöcke: html.dark{} für JS-Klasse, @media{} als Fallback.
This commit is contained in:
parent
10964c6509
commit
e610613b58
4 changed files with 46 additions and 34 deletions
|
|
@ -406,7 +406,7 @@ async def serve_media(path: str, request: _Request):
|
||||||
raise _HE(404, "Nicht gefunden.")
|
raise _HE(404, "Nicht gefunden.")
|
||||||
return _media_response(filepath)
|
return _media_response(filepath)
|
||||||
|
|
||||||
APP_VER = "955" # muss mit APP_VER in app.js übereinstimmen
|
APP_VER = "956" # muss mit APP_VER in app.js übereinstimmen
|
||||||
|
|
||||||
@app.get("/.well-known/assetlinks.json")
|
@app.get("/.well-known/assetlinks.json")
|
||||||
async def assetlinks():
|
async def assetlinks():
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
Router, State-Management, Navigation, Initialisierung.
|
Router, State-Management, Navigation, Initialisierung.
|
||||||
============================================================ */
|
============================================================ */
|
||||||
|
|
||||||
const APP_VER = '955'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
|
const APP_VER = '956'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
|
||||||
const APP_VERSION = '1.5.1'; // ← semantische Version, wird bei make release gesetzt
|
const APP_VERSION = '1.5.1'; // ← semantische Version, wird bei make release gesetzt
|
||||||
const IS_STAGING = location.hostname === 'staging.banyaro.app';
|
const IS_STAGING = location.hostname === 'staging.banyaro.app';
|
||||||
// Cache-Bust-Parameter nach Update-Reload sofort entfernen
|
// Cache-Bust-Parameter nach Update-Reload sofort entfernen
|
||||||
|
|
|
||||||
|
|
@ -605,7 +605,19 @@
|
||||||
.fade-up.visible { opacity: 1; transform: none; }
|
.fade-up.visible { opacity: 1; transform: none; }
|
||||||
|
|
||||||
/* Dark Mode */
|
/* Dark Mode */
|
||||||
@media (prefers-color-scheme: dark), html.dark {
|
/* Dark-Mode via JS-Klasse (html.dark) — Fallback für macOS 26 / Brave */
|
||||||
|
html.dark {
|
||||||
|
--bg: #141210;
|
||||||
|
--surface: #1e1a16;
|
||||||
|
--text: #ede8e2;
|
||||||
|
--text-secondary:#a89880;
|
||||||
|
--text-muted: #6b5e50;
|
||||||
|
--border: #2e2620;
|
||||||
|
--primary-light: #3a2510;
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
/* Dark-Mode via Media Query (Standard-Browser-Fallback) */
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
:root {
|
:root {
|
||||||
--bg: #141210;
|
--bg: #141210;
|
||||||
--surface: #1e1a16;
|
--surface: #1e1a16;
|
||||||
|
|
@ -616,37 +628,37 @@
|
||||||
--primary-light: #3a2510;
|
--primary-light: #3a2510;
|
||||||
color-scheme: dark;
|
color-scheme: dark;
|
||||||
}
|
}
|
||||||
body { background: #141210 !important; color: #ede8e2 !important; }
|
|
||||||
nav { background: #1a1612 !important; border-color: #2e2620 !important; }
|
|
||||||
nav a { color: #a89880 !important; }
|
|
||||||
nav .nav-brand { color: #C4843A !important; }
|
|
||||||
section { background: #141210 !important; }
|
|
||||||
section:nth-child(even) { background: #1a1612 !important; }
|
|
||||||
#fuer-beide { background: #1a1612 !important; }
|
|
||||||
#funktionen { background: #1a1612 !important; }
|
|
||||||
#welpen { background: #1a1612 !important; }
|
|
||||||
#stimmen { background: #141210 !important; }
|
|
||||||
#zuechter { background: #1a1208 !important; }
|
|
||||||
#warum { background: #141210 !important; }
|
|
||||||
#vergleich { background: #1a1612 !important; }
|
|
||||||
#preise { background: #141210 !important; }
|
|
||||||
#ueber { background: #1a1612 !important; }
|
|
||||||
.outcome-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
|
||||||
.feature-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
|
||||||
.testimonial-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
|
||||||
.pricing-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
|
||||||
.pricing-card.featured { border-color: #C4843A !important; }
|
|
||||||
.audience-card > div { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
|
||||||
.feature-group-label { background: #3a2510 !important; color: #C4843A !important; }
|
|
||||||
h2, h3 { color: #ede8e2 !important; }
|
|
||||||
p { color: #a89880; }
|
|
||||||
table { background: #1e1a16 !important; }
|
|
||||||
th { background: #C4843A !important; }
|
|
||||||
td { border-color: #2e2620 !important; color: #ede8e2 !important; }
|
|
||||||
tr:nth-child(even) td { background: #141210 !important; }
|
|
||||||
footer { background: #0d0b09 !important; }
|
|
||||||
.section-intro { color: #a89880 !important; }
|
|
||||||
}
|
}
|
||||||
|
html.dark body { background: #141210 !important; color: #ede8e2 !important; }
|
||||||
|
html.dark nav { background: #1a1612 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark nav a { color: #a89880 !important; }
|
||||||
|
html.dark nav .nav-brand { color: #C4843A !important; }
|
||||||
|
html.dark section { background: #141210 !important; }
|
||||||
|
html.dark section:nth-child(even) { background: #1a1612 !important; }
|
||||||
|
html.dark #fuer-beide { background: #1a1612 !important; }
|
||||||
|
html.dark #funktionen { background: #1a1612 !important; }
|
||||||
|
html.dark #welpen { background: #1a1612 !important; }
|
||||||
|
html.dark #stimmen { background: #141210 !important; }
|
||||||
|
html.dark #zuechter { background: #1a1208 !important; }
|
||||||
|
html.dark #warum { background: #141210 !important; }
|
||||||
|
html.dark #vergleich { background: #1a1612 !important; }
|
||||||
|
html.dark #preise { background: #141210 !important; }
|
||||||
|
html.dark #ueber { background: #1a1612 !important; }
|
||||||
|
html.dark .outcome-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark .feature-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark .testimonial-card{ background: #1e1a16 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark .pricing-card { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark .pricing-card.featured { border-color: #C4843A !important; }
|
||||||
|
html.dark .audience-card > div { background: #1e1a16 !important; border-color: #2e2620 !important; }
|
||||||
|
html.dark .feature-group-label { background: #3a2510 !important; color: #C4843A !important; }
|
||||||
|
html.dark h2, html.dark h3 { color: #ede8e2 !important; }
|
||||||
|
html.dark p { color: #a89880; }
|
||||||
|
html.dark table { background: #1e1a16 !important; }
|
||||||
|
html.dark th { background: #C4843A !important; }
|
||||||
|
html.dark td { border-color: #2e2620 !important; color: #ede8e2 !important; }
|
||||||
|
html.dark tr:nth-child(even) td { background: #141210 !important; }
|
||||||
|
html.dark footer { background: #0d0b09 !important; }
|
||||||
|
html.dark .section-intro { color: #a89880 !important; }
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
Offline-Cache + Push Notifications + Tile-Cache
|
Offline-Cache + Push Notifications + Tile-Cache
|
||||||
============================================================ */
|
============================================================ */
|
||||||
|
|
||||||
const CACHE_VERSION = 'by-v955';
|
const CACHE_VERSION = 'by-v956';
|
||||||
const CACHE_STATIC = `${CACHE_VERSION}-static`;
|
const CACHE_STATIC = `${CACHE_VERSION}-static`;
|
||||||
const CACHE_TILES = 'ban-yaro-tiles-v1'; // bleibt über SW-Updates erhalten
|
const CACHE_TILES = 'ban-yaro-tiles-v1'; // bleibt über SW-Updates erhalten
|
||||||
const CACHE_API = 'ban-yaro-api-v1'; // API-Response-Cache
|
const CACHE_API = 'ban-yaro-api-v1'; // API-Response-Cache
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue