/* =================================================================== Creator Workspace - Anmeldeseite ------------------------------------------------------------------- Grundsatz: dunkel und ruhig. Die Farben stammen aus dem Motiv, sind aber bewusst entsättigt - Neon als Stimmung, nicht als Blendung. Kein reines Weiss auf Schwarz, keine harten Kanten, keine Blinker. =================================================================== */ :root { --tinte: #05070d; --glas: rgba(10, 14, 23, 0.74); --glas-tief: rgba(6, 9, 16, 0.86); --rand: rgba(150, 186, 220, 0.16); --rand-hell: rgba(150, 186, 220, 0.30); --text: #dbe4ef; /* kein reines Weiss - schont die Augen */ --text-leise: #94a5bb; /* Von #6d7d92 auf #75859a angehoben (01.09.2026). Aufgefallen erst, als die Buehne im Hintergrund dazukam und der Kontrast an echten BILDPUNKTEN gemessen wurde statt an der Farbangabe: Der leiseste Grauton lag bei 4,43:1 -- knapp unter den geforderten 4,5:1. Das war schon vorher so, nur hatte es nie jemand nachgerechnet. Jetzt 4,95:1 auf dem hellsten Untergrund, 5,35:1 auf reiner Tinte. Immer noch deutlich leiser als der Haupttext, aber lesbar -- und das gilt jetzt fuer JEDE Seite, nicht nur fuer die mit dem Hintergrundbild. */ --text-still: #75859a; --akzent: #3fbdf5; /* aus dem Neon des Motivs, entsättigt */ --akzent-tief: #1f7fb0; --violett: #8a76ff; --warn: #ff9aa2; /* weiches Rot statt Signalrot */ --radius: 18px; --radius-klein: 12px; --schatten: 0 24px 60px -20px rgba(0, 0, 0, 0.75); --tempo: .22s cubic-bezier(.4, 0, .2, 1); } *, *::before, *::after { box-sizing: border-box; } /* `color-scheme: dark` ist der eigentliche Schalter für alles, was der Browser selbst zeichnet und was CSS nicht erreicht: die aufgeklappte Liste eines bleibt im Dokument -- es haelt den Wert und macht jedes vorhandene `feld.value` weiter richtig. Es wird nur unsichtbar gemacht; sichtbar ist der Knopf darueber. Bewusst NICHT display:none: Ein so verstecktes Feld faellt aus der Formularpruefung des Browsers heraus, und `required` wuerde stumm nicht mehr greifen. =================================================================== */ .wahl2 { position: relative; display: block; } .wahl2__echt { position: absolute; inset: 0; opacity: 0; pointer-events: none; /* Nur ein Pixel gross, damit ein Fehlerhinweis des Browsers noch am richtigen Ort erscheint. */ width: 1px; height: 1px; } .wahl2__knopf { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; padding: 10px 12px; cursor: pointer; background: linear-gradient(#141c28, #101722); border: 1px solid var(--rand); border-radius: var(--radius-klein); color: var(--text); font: inherit; text-align: left; transition: border-color .16s ease, background .16s ease; } .wahl2__knopf:hover:not([disabled]) { border-color: rgba(255, 255, 255, .24); background: linear-gradient(#18212f, #141b27); } .wahl2__knopf:focus-visible, .wahl2__knopf[aria-expanded="true"] { outline: none; border-color: rgba(63, 189, 245, .65); box-shadow: 0 0 0 3px rgba(63, 189, 245, .16); } .wahl2__knopf[disabled] { opacity: .5; cursor: default; } .wahl2__knopf[data-leer="ja"] .wahl2__text { color: var(--text-still); } .wahl2__text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .wahl2__pfeil { width: 16px; height: 16px; flex: none; fill: none; stroke: var(--text-still); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s ease; } .wahl2__knopf[aria-expanded="true"] .wahl2__pfeil { transform: rotate(180deg); } /* Die Liste haengt am Fenster, nicht am Elternelement -- in einer Karte mit overflow: hidden waere sie sonst abgeschnitten. */ .wahl2__liste { position: fixed; z-index: 90; min-width: 180px; max-width: min(420px, calc(100vw - 24px)); overflow-y: auto; padding: 5px; background: #0d1420; border: 1px solid rgba(63, 189, 245, .3); border-radius: 11px; box-shadow: 0 18px 44px -16px rgba(0, 0, 0, .85); } .wahl2__gruppe { margin: 7px 8px 3px; font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--akzent); } .wahl2__gruppe:first-child { margin-top: 3px; } .wahl2__eintrag { display: block; width: 100%; padding: 8px 11px; cursor: pointer; background: transparent; border: 0; border-radius: 7px; color: var(--text-leise); font: inherit; font-size: .88rem; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .wahl2__eintrag:hover:not([disabled]) { background: rgba(255, 255, 255, .06); color: var(--text); } .wahl2__eintrag:focus-visible { outline: none; background: rgba(63, 189, 245, .16); color: #fff; } .wahl2__eintrag[data-an="ja"] { color: #fff; font-weight: 600; background: rgba(63, 189, 245, .12); } .wahl2__eintrag[disabled], .wahl2__eintrag[data-aus="ja"] { color: var(--text-still); cursor: default; } @media (prefers-reduced-motion: reduce) { .wahl2__knopf, .wahl2__pfeil { transition: none; } } /* =================================================================== Schalter (31.08.2026). Lag zuerst in wissen.css -- und fehlte prompt auf der Automationen- Seite, wo er als nacktes Kaestchen erschien. Genau derselbe Fehler wie damals bei .knopf-still: Ein gemeinsamer Baustein in einer Seiten-Datei fehlt irgendwann dort, wo die Datei nicht geladen wird. =================================================================== */ /* ---------- Schalter „besonders wichtig“ --------------------------------- Ein Kästchen von 17 Pixeln ist auf dem Handy kaum zu treffen und sagt nicht, was passiert. Der Schalter ist groß, zeigt seinen Zustand und erklärt sich in einer Zeile. */ .schalter { display: flex; align-items: flex-start; gap: 14px; margin-top: 18px; padding: 14px 16px; cursor: pointer; border: 1px solid var(--rand); border-radius: var(--radius); background: rgba(255, 255, 255, .022); transition: border-color .18s ease, background .18s ease; } .schalter:hover { border-color: rgba(255, 255, 255, .2); } .schalter input { position: absolute; opacity: 0; width: 0; height: 0; } .schalter__gleis { flex: none; position: relative; width: 42px; height: 24px; margin-top: 1px; border-radius: 999px; background: rgba(255, 255, 255, .1); border: 1px solid var(--rand); transition: background .2s ease, border-color .2s ease; } .schalter__punkt { position: absolute; left: 3px; top: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--text-still); transition: transform .2s ease, background .2s ease; } .schalter input:checked + .schalter__gleis { background: rgba(232, 192, 125, .3); border-color: rgba(232, 192, 125, .6); } .schalter input:checked + .schalter__gleis .schalter__punkt { transform: translateX(18px); background: #e8c07d; } .schalter input:focus-visible + .schalter__gleis { box-shadow: 0 0 0 3px rgba(232, 192, 125, .28); } .schalter:has(input:checked) { border-color: rgba(232, 192, 125, .35); background: rgba(232, 192, 125, .05); } .schalter__text { display: grid; gap: 2px; font-size: .88rem; } .schalter__text .leise { font-size: .79rem; }