Fix: Offline-Pfote als schwebendes Element (Welten verstecken Header), SW by-v1079

Der Header (#app-header) ist in den Welten per 'display:none !important'
ausgeblendet (Welten übernehmen Navigation). Mein Pfötchen saß da
drin und war genau dort unsichtbar wo es sichtbar sein sollte.

- Button aus dem Header rausgeholt, am Ende vom body als schwebendes
  Element platziert (position:fixed; top-right; z-index:9000)
- Eigener Stil: 40px runder Glas-Hintergrund, blur-Effekt, leichter
  Schatten — passt zur FAB-Optik unten rechts
- Dark-Mode Hintergrund: dunkles Glas
- Sichtbar in allen Welten und auf allen Seiten (auch wo Header da
  ist — sitzt daneben)
- 'hidden'-Default raus, Element ist sofort sichtbar (nur Färbung
  wartet auf refresh())
This commit is contained in:
rene 2026-05-26 14:24:45 +02:00
parent 776641fa65
commit 06b91dc54b
6 changed files with 54 additions and 41 deletions

View file

@ -8867,9 +8867,36 @@ svg.empty-state-icon {
}
/* ============================================================
Offline-Bereitschafts-Indikator (Pfote im Header)
Offline-Bereitschafts-Indikator schwebend oben rechts
5 Pfade Score 0 (grau) bis 5 (grün, gefüllt)
============================================================ */
#offline-indicator {
position: fixed;
top: calc(env(safe-area-inset-top, 0px) + 8px);
right: 12px;
width: 40px;
height: 40px;
border-radius: 50%;
background: rgba(255,255,255,0.85);
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
border: 1px solid rgba(0,0,0,0.08);
box-shadow: 0 2px 8px rgba(0,0,0,0.12);
display: flex;
align-items: center;
justify-content: center;
padding: 0;
cursor: pointer;
z-index: 9000; /* unter Modals (~9999), über allem anderen */
transition: transform 0.12s, box-shadow 0.12s;
}
[data-theme="dark"] #offline-indicator {
background: rgba(31,41,55,0.85);
border-color: rgba(255,255,255,0.08);
}
#offline-indicator:active { transform: scale(0.92); }
#offline-indicator .offline-paw { width: 24px; height: 24px; }
.offline-paw .paw-elem {
color: var(--c-text-muted);
transition: stroke 0.5s ease, fill 0.5s ease;
@ -8878,14 +8905,6 @@ svg.empty-state-icon {
color: var(--c-success);
fill: var(--c-success);
}
#offline-indicator {
background: none;
border: none;
cursor: pointer;
}
#offline-indicator:hover .paw-elem {
opacity: 0.85;
}
.offline-status-row {
display: flex;