/* N7: Dunkelmodus der Fahrer-App (für Nachtfahrten). Aktiv mit <html class="dark">.
   Gedämpfte Flächen, heller Text; Ampelfarben (grün/orange/rot), SOS und Verspätung bleiben eindeutig. */
html.dark{color-scheme:dark;--bg:#0D1310;--tx:#E3ECE6;--mu:#9AABA1;--ln:#24302A;--rl:#3A1517;--am:#3A2F10;--amd:#F3C969;--gt:#16301F;--card:#161F1A;--card2:#1D2822;--edge:#2A3830;--gtx:#B8E6C6}
html.dark body{background:#08100B}
html.dark .ph,html.dark .fpage,html.dark .sheetov>.sh{background:var(--bg);color:var(--tx)}
html.dark .sheetov>.sh.w{background:var(--card)}
html.dark .hero,html.dark .fpage .bh{background:#0A2416}
html.dark .card,html.dark .ns-alert,html.dark .ns-q button,html.dark .ns-nb>div,html.dark .ns-day,html.dark .ni,html.dark #inc .box,html.dark .ztwrap,html.dark .spwrap{background:var(--card);color:var(--tx);box-shadow:none}
html.dark .tabs{background:var(--card);box-shadow:0 -2px 12px rgba(0,0,0,.5)}
html.dark .tabs button.on{background:var(--gt);color:var(--gtx)}
html.dark .big,html.dark .ns-day b,html.dark .ns-q button,html.dark .chip,html.dark .ak,html.dark .st.ok,html.dark h3,html.dark .ok3{color:var(--gtx)}
html.dark .date{background:var(--gt);color:var(--gtx)}
html.dark .date.red,html.dark .pr{background:var(--rl);color:#FF9A9E}
html.dark .pg{background:var(--gt);color:#8FE0A8}
html.dark .pa{background:var(--am);color:var(--amd)}
html.dark .btn.ghost,html.dark .chip,html.dark .seg,html.dark .wsel button,html.dark .rec,html.dark .endq button,html.dark .lsq button,html.dark .st i{background:var(--card2);color:var(--tx)}
html.dark .chip.on,html.dark .wsel button.on,html.dark .endq button.on,html.dark .lsq button.on{background:#2F7A4A;color:#fff}
html.dark .seg button.on{background:#2A3A31;color:#fff}
html.dark .lsq button.red{background:var(--rl);color:#FF9A9E}
html.dark select,html.dark textarea,html.dark input.f{background:#101814;color:var(--tx);border-color:var(--edge)}
html.dark .kv,html.dark .wk{border-color:var(--ln)}
html.dark .grab{background:#3A4A41}
html.dark .note,html.dark .err,html.dark .no3{color:#FF8A8F}
html.dark .ns-me{background:var(--card);color:#FF9A9E}
html.dark .voice{background:var(--gt)}
html.dark #sig{background:#E9EFEB}
html.dark .toast{background:#24382C;color:#fff}
/* Dienst-Karte: dunkler, weiße Knöpfe gedämpft (blenden nachts nicht) */
html.dark .ns-hero{background:linear-gradient(150deg,#08200F 0%,#0C2E19 60%,#0F3A20 100%);box-shadow:none}
html.dark .ns-bus,html.dark .ns-b1,html.dark .ns-cta{background:#C9DCCF;color:#0A2416}
html.dark .ns-end.soon{background:#C9DCCF;color:#9E1218}
/* Inline-Farben aus den Seiten (weiße/helle Kästen) gedämpft */
html.dark [style*="background:#fff;"],html.dark [style*="background:#fff\""],html.dark [style*="background: #fff"],html.dark [style*="background:#FBFDFB"],html.dark [style*="background:#F4F8F5"],html.dark [style*="background:#EEF4F0"],html.dark [style*="background:#EEF1EE"],html.dark [style*="background:#f7f7f7"]{background:var(--card2)!important;color:var(--tx)}
html.dark [style*="background:#FFF4D6"]{background:var(--am)!important;color:var(--amd)!important}
html.dark [style*="background:#FDECEC"],html.dark [style*="background:var(--rl)"]{background:var(--rl)!important;color:#FF9A9E!important}
html.dark [style*="background:#E3F6E8"],html.dark [style*="background:#E8F5EC"]{background:var(--gt)!important;color:#8FE0A8!important}
html.dark [style*="color:var(--gd)"],html.dark [style*="color:#0E3B22"],html.dark [style*="color:#0F5132"],html.dark [style*="color:var(--gm)"]{color:var(--gtx)!important}
html.dark [style*="color:#A3161C"],html.dark [style*="color:var(--rd)"]{color:#FF8A8F!important}
html.dark [style*="color:#5b4500"],html.dark [style*="color:#8A5A00"],html.dark [style*="color:#8a6a00"]{color:var(--amd)!important}
html.dark [style*="color:#6B7A71"]{color:var(--mu)!important}
/* SOS und Notruf bleiben kräftig rot */
html.dark .btn.red,html.dark #inc .hd.r,html.dark .rec.on{background:#E3262E;color:#fff}
/* Stundenzettel-Blatt und Dienstplan-Blatt bleiben Papier (weiß) */
html.dark .zt,html.dark .dps,html.dark .dpsthumb{background:#fff;color:#000}
/* Leaflet-Karten (Rasterkacheln) abdunkeln – Marker, Strecke und Pins bleiben unverändert */
html.dark .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.75) contrast(.9) saturate(.5)}
html.dark .leaflet-container{background:#1a1f1c}
html.dark .leaflet-popup-content-wrapper,html.dark .leaflet-popup-tip{background:var(--card);color:var(--tx)}
html.dark .maplibregl-ctrl-attrib{background:rgba(20,28,24,.7)!important;color:#9AABA1}
html.dark .maplibregl-ctrl-attrib a{color:#9AABA1}
/* Navi: Bedienelemente dunkel, Abbiege-Kasten, Haltestellen-Schilder, grüne Strecke und Umleitung (orange/rot) bleiben wie sie sind */
html.dark #navi{background:#1a1f1c}
html.dark #navi .bot,html.dark #navi .side button,html.dark #navi .spd{background:#161F1A;color:var(--tx)}
html.dark #navi .bot .t b,html.dark #navi .spd{color:var(--gtx)}
html.dark #navi .bot .t div,html.dark #navi .spd small{color:var(--mu)}
html.dark #navi .bot button{background:#24302A;color:var(--tx)}
html.dark #navi .hint{background:var(--am);color:var(--amd)}
html.dark .nvbus{background:#161F1A;color:var(--tx);border-color:#4A5A51}
/* Anmeldung */
html.dark #login,html.dark #splash{background:#0D1310}
html.dark #login .f{background:#101814;color:var(--tx);border-color:#2A3830}
html.dark #login label,html.dark #lTitle{color:var(--gtx)!important}
/* Kontrast: Kästchen mit weißem Hintergrund und fest eingetragener Schriftfarbe (km-Stand auf der Startseite u. a.) */
html.dark [style*="background:#fff;color:#000"],html.dark [style*="background:#fff;color:#111"],html.dark [style*="background:#fff;color:#1b1b1b"],html.dark [style*="background:#fff;color:#0E3B22"]{color:var(--tx)!important}
html.dark [style*="background:#fff;color:#0E7A3A"]{color:#8FE0A8!important}
html.dark [style*="background:#fff;color:#5B21B6"]{color:#C4B5FD!important}
html.dark [style*="background:#fff;color:#A3161C"]{color:#FF9A9E!important}
