/* CSE Kontrast — dritte Flaechen-Ebene fuer Eingabefelder und neutrale Knoepfe.
 *
 * PROBLEM (Nutzer, 18.08.2026): In beiden Modi verschwinden Eingabefelder und
 * neutrale Knoepfe in ihrer Umgebung. Ursache steckt im Haus-Stylesheet selbst:
 * Felder tragen "background: var(--karte)" - also EXAKT die Farbe der Karte,
 * auf der sie liegen (weiss auf weiss bzw. #252423 auf #252423). Getrennt hat
 * sie nur "--rand", und der ist bewusst sehr zurueckhaltend.
 *
 * LOESUNG: Karte und Feld sind nicht mehr dieselbe Flaeche. Hell liegt das Feld
 * eine Spur TIEFER (leicht getoent), dunkel eine Spur HOEHER (leicht aufgehellt)
 * als seine Karte - dazu ein klar sichtbarer Rand. Es kommt KEINE neue Farbe
 * dazu: Die Struktur entsteht allein aus Helligkeit und Rand, damit die
 * Farbcodes des Hauses (blau = Aktion, gelb = erfassen, Bereichsfarben) die
 * einzigen Farbsignale bleiben.
 *
 * Eingebunden wird die Datei von /shared/cse-thema.js - also automatisch in
 * jeder App, die den Themen-Baustein nutzt. Wer hier etwas aendert, aendert
 * ALLE Apps: vorher lokal in Hell UND Dunkel gegenpruefen.
 */

:root {
  /* Hell: Feld BLEIBT weiss - so hebt es sich von der grauen Seite ab. Auf
     weissen Karten traegt der Rand die Trennung, deshalb ist er kraeftig
     (#8a8886 statt vorher #e1dfdd). Erste Fassung mit zarter Toenung war dem
     Nutzer zu zaghaft (19.08.2026). */
  --feld: #ffffff;
  --feld-rand: #8a8886;
  /* Aktives Feld: gelber Leuchtring. Gelb ist im Haus die Farbe fuers ERFASSEN
     - der Ring sagt also "hier schreibst du gerade". Kein neuer Farbwert: exakt
     die Toene der Status-Ampel "In Arbeit". (Nutzerwunsch 25.08.2026) */
  --feld-aktiv: #d9a300;
  --feld-aktiv-schein: rgba(217, 163, 0, .22);
  /* Platzhalter (grauer Hinweistext im leeren Feld): die "leise" Textfarbe
     des Hauses - kein neuer Farbwert, nur Helligkeit trennt Hinweis von
     echtem Inhalt. */
  --feld-hinweis: #605e5c;
}

/* Dunkel: BEIDE Schreibweisen bedienen - die Apps nutzen teils das Attribut
   data-theme am <html>, teils die Klasse (siehe Variante in cse-thema.js). */
html[data-theme="dunkel"],
html.dunkel {
  /* Ins NEUTRALE Grau (Nutzer 19.08.2026, zweite Runde): Die warmen Toene
     (#454341) wirkten noch braeunlich - jetzt echtes Grau, Rand ebenso. */
  --feld: #414141;
  --feld-rand: #7a7a7a;
  --feld-hinweis: #a19f9d;
  --feld-aktiv: #f5c518;
  --feld-aktiv-schein: rgba(245, 197, 24, .28);
}

/* … und nach Windows/Teams, solange nichts gewaehlt wurde. Fehlt dieser Zweig,
   bleibt der Systemdunkelmodus auf den hellen Werten stehen. */
@media (prefers-color-scheme: dark) {
  html:not([data-theme="hell"]):not(.hell) {
    --feld: #414141;
    --feld-rand: #7a7a7a;
    --feld-hinweis: #a19f9d;
    --feld-aktiv: #f5c518;
    --feld-aktiv-schein: rgba(245, 197, 24, .28);
  }
}

/* ---------- Eingabefelder ----------
   Ausgenommen sind Bedienelemente, die keine Flaeche zum Hineinschreiben sind:
   Haken, Auswahlpunkte, Schieber, Farbwaehler, Dateiwahl. Die tragen ihre
   eigene Darstellung und wuerden von einer Fuellung nur entstellt. */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]):not([type="submit"]):not([type="button"]),
select,
textarea {
  background-color: var(--feld);
  border-color: var(--feld-rand);
}

/* Gesperrte Felder bleiben erkennbar gesperrt - sonst sehen sie aus wie
   beschreibbar (im Portal z. B. die feste Vorgangsnummer). */
input:disabled, select:disabled, textarea:disabled,
input:read-only:not([type="checkbox"]):not([type="radio"]) {
  background-color: transparent;
  border-color: var(--rand);
}

/* ---------- Platzhalter ----------
   Grauer Hinweistext im leeren Feld ("Hier ... eingeben"). Er ist KEIN Inhalt:
   verschwindet beim Tippen, wird beim Absenden nicht mitgeschickt - und
   ersetzt kein <label>. Kursiv, damit man Hinweis und echten Wert auch aus
   dem Augenwinkel unterscheidet. opacity: 1 ist noetig, weil Firefox
   Platzhalter sonst zusaetzlich aufhellt. */
input::placeholder,
textarea::placeholder {
  color: var(--feld-hinweis, #8a8a8a);
  font-style: italic;
  opacity: 1;
}

/* contenteditable-Flaechen kennen kein placeholder-Attribut: dort den Text in
   data-hinweis legen. ACHTUNG: ein zurueckbleibendes <br> macht :empty
   unwirksam - wer die Flaeche per Skript leert, muss sie WIRKLICH leeren. */
[contenteditable][data-hinweis]:empty::before {
  content: attr(data-hinweis);
  color: var(--feld-hinweis, #8a8a8a);
  font-style: italic;
  pointer-events: none;
}

/* Fokus: sichtbar machen, WO man gerade tippt - gelber Leuchtring, weil Gelb
   im Haus fuers Erfassen steht. Blau bleibt der AKTION (Knoepfe, Navigation)
   vorbehalten; so kollidieren die beiden Signale nicht mehr.
   !important, weil viele Apps eine eigene :focus-Regel mitbringen - die sollen
   hier nicht wieder auf Blau zurueckfallen. */
input:focus, select:focus, textarea:focus,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid var(--feld-aktiv, #d9a300) !important;
  outline-offset: 1px;
  border-color: var(--feld-aktiv, #d9a300) !important;
  box-shadow: 0 0 0 4px var(--feld-aktiv-schein, rgba(217, 163, 0, .22));
}
/* Haken, Auswahlpunkte & Co. behalten den schlichten Ring - sie sind keine
   Schreibflaechen und ein Leuchtring wirkt dort wie ein Fehler. */
input[type="checkbox"]:focus, input[type="radio"]:focus,
input[type="range"]:focus, input[type="file"]:focus,
input[type="checkbox"]:focus-visible, input[type="radio"]:focus-visible {
  outline: 2px solid var(--blau-hell, #0078d4) !important;
  border-color: initial !important;
  box-shadow: none;
}

/* ---------- Neutrale Knoepfe ----------
   Nur im Hauptbereich: In der farbigen Kopfzeile sind .leise-Knoepfe bewusst
   transparent und tragen die Kopf-Schriftfarbe. Aktive/eingefaerbte Zustaende
   (.aktiv, .primaer, .gefahr) bleiben unangetastet - sie sind Farbsignale.
   .chip gehoert dazu: Filter-Chips sind neutrale Knoepfe und standen sonst
   weiter auf der Kartenfarbe (Nutzer 19.08.2026). */
main button.leise:not(.aktiv):not(.primaer):not(.gefahr),
main .leise:not(.aktiv):not(.primaer):not(.gefahr),
main .chip:not(.aktiv):not(.primaer):not(.gefahr) {
  background-color: var(--feld);
  border: 1px solid var(--feld-rand);
}
main button.leise:not(.aktiv):hover,
main .leise:not(.aktiv):hover,
main .chip:not(.aktiv):hover {
  border-color: var(--blau-hell, #0078d4);
}
