/* uffRechnung – jeschäftlich · Farbwelten
   Umschaltbar oben rechts, gespeichert pro Browser.
   Alle Themes setzen nur Variablen – die Bauweise bleibt gleich. */

/* ---------- 1. jeschäftlich (Standard) – Grün als Leitfarbe ---------- */
body.thema-jeschaeftlich {
  --papier:#f4f5f2; --tinte:#16161a; --flaeche:#ffffff; --linie:#16161a;
  --grau:#87877f; --rot:#df081c; --lila:#662d91; --gruen:#009245;
  --akzent:#009245;
}
body.thema-jeschaeftlich .btn-primary { background:var(--gruen); border-color:var(--gruen); }
body.thema-jeschaeftlich .mainnav a.aktiv { background:var(--gruen); }
body.thema-jeschaeftlich .card { box-shadow:var(--versatz) var(--versatz) 0 var(--gruen); }
body.thema-jeschaeftlich h1.offset::before { color:var(--rot); }
body.thema-jeschaeftlich h1.offset::after { color:var(--gruen); }
body.thema-jeschaeftlich .fab { background:var(--gruen); border-color:var(--tinte); }

/* ---------- 2. Nachtschicht (Darkmode) ---------- */
body.thema-nacht {
  --papier:#131317; --tinte:#f0f0ee; --flaeche:#1e1e25; --linie:#f0f0ee;
  --grau:#9797a0; --rot:#ff3b4e; --lila:#a97ce8; --gruen:#2bd177;
  --akzent:#2bd177;
}
body.thema-nacht::before { opacity:.06; }
body.thema-nacht .brand-zeichen, body.thema-nacht .brand-wort,
body.thema-nacht .login-mark img { filter:invert(1) hue-rotate(180deg); }
body.thema-nacht .btn-primary { background:var(--gruen); border-color:var(--gruen); color:#12121a; }
body.thema-nacht .mainnav a.aktiv { background:var(--gruen); color:#12121a; }
body.thema-nacht .fab { background:var(--gruen); color:#12121a; }
body.thema-nacht .buchtabelle td { border-bottom-color:#33333d; }
body.thema-nacht .buchtabelle tr.storno td { background:#191920; }
body.thema-nacht .zeittabelle td { border-bottom-color:#33333d; }
body.thema-nacht .toast { background:var(--flaeche); color:var(--tinte); }
body.thema-nacht .log-zeile { border-bottom-color:#2a2a33; }
body.thema-nacht .rollen-hinweis { background:#2a2416; }
body.thema-nacht input, body.thema-nacht select, body.thema-nacht textarea { background:#26262e; }

/* ---------- 3. Trash 2000 – wie eine Bastel-Homepage von damals ---------- */
body.thema-trash {
  --papier:#000080; --tinte:#ffffff; --flaeche:#c0c0c0; --linie:#000000;
  --grau:#ffff00; --rot:#ff00ff; --lila:#00ffff; --gruen:#00ff00;
  --akzent:#ff00ff;
  --display:'Comic Sans MS','Comic Sans',cursive;
  --text:'Comic Sans MS','Comic Sans',cursive;
  --zahl:'Courier New',monospace;
  --versatz:4px;
  background:
    repeating-linear-gradient(45deg, #000080 0 22px, #0000a8 22px 44px);
}
body.thema-trash::before {
  opacity:.12;
  background-image:radial-gradient(#ff00ff 1px, transparent 1px);
  background-size:6px 6px;
}
body.thema-trash .topbar, body.thema-trash .mainnav {
  background:linear-gradient(90deg,#ff00ff,#00ffff,#ffff00,#00ff00);
  border-bottom:4px ridge #ffffff;
}
body.thema-trash .brand span, body.thema-trash h1.offset { text-shadow:2px 2px 0 #ffff00, 4px 4px 0 #ff00ff; }
body.thema-trash h1.offset::before { color:#00ffff; }
body.thema-trash h1.offset::after { color:#ffff00; }
body.thema-trash .card, body.thema-trash .kz, body.thema-trash .zeile-item,
body.thema-trash .projekt, body.thema-trash .rahmen, body.thema-trash .modal {
  border:4px outset #ffffff; box-shadow:6px 6px 0 #ff00ff; background:#c0c0c0; color:#000;
}
body.thema-trash .btn {
  border:3px outset #ffffff; background:#c0c0c0; color:#000080; font-weight:bold;
  box-shadow:3px 3px 0 #ff00ff; text-transform:uppercase;
}
body.thema-trash .btn:active { border-style:inset; }
body.thema-trash .btn-primary { background:#ff00ff; color:#ffff00; border-color:#ffff00; }
body.thema-trash .mainnav a { color:#000080; font-weight:bold; text-shadow:1px 1px 0 #fff; }
body.thema-trash .mainnav a.aktiv { background:#ff00ff; color:#ffff00; }
body.thema-trash input, body.thema-trash select, body.thema-trash textarea {
  border:3px inset #ffffff; background:#ffffff; color:#000;
}
body.thema-trash .fab {
  background:#ff00ff; color:#ffff00; border:4px outset #ffffff;
  animation:trash-wackel 1.1s ease-in-out infinite;
}
@keyframes trash-wackel { 0%,100%{transform:rotate(-5deg) scale(1)} 50%{transform:rotate(5deg) scale(1.08)} }
body.thema-trash .kz .wert { color:#000080; text-shadow:1px 1px 0 #ffff00; }
body.thema-trash .tag.offen { background:#ffff00; color:#ff0000; border-color:#ff0000; }
body.thema-trash .buchtabelle th { background:#000080; color:#ffff00; }
body.thema-trash .buchtabelle td { color:#000; }
body.thema-trash .hinweis, body.thema-trash .login-note { color:#ffff00; }
body.thema-trash .leer { color:#ffff00; border-color:#ff00ff; }
body.thema-trash .studio-chip { background:#ff00ff; color:#ffff00; }

/* ---------- 4. Kassenrolle – Thermobon, schmal und sachlich ---------- */
body.thema-kasse {
  --papier:#eeece4; --tinte:#2a2723; --flaeche:#faf8f2; --linie:#2a2723;
  --grau:#8d887c; --rot:#8c2f16; --lila:#4a4336; --gruen:#3f5d2e;
  --akzent:#8c2f16;
  --display:'Courier New',monospace;
  --text:'Courier New',monospace;
  --zahl:'Courier New',monospace;
  --versatz:0px;
}
body.thema-kasse::before {
  opacity:.09;
  background-image:repeating-linear-gradient(0deg, #2a2723 0 1px, transparent 1px 4px);
}
body.thema-kasse .card, body.thema-kasse .kz, body.thema-kasse .zeile-item,
body.thema-kasse .projekt, body.thema-kasse .modal, body.thema-kasse .rahmen {
  box-shadow:none; border-width:1px; border-style:dashed;
}
body.thema-kasse .btn { box-shadow:none; border-width:1px; text-transform:uppercase; letter-spacing:.14em; }
body.thema-kasse .btn:hover { transform:none; background:var(--tinte); color:var(--papier); }
body.thema-kasse h1.offset { text-transform:uppercase; letter-spacing:.14em; font-size:26px; }
body.thema-kasse h1.offset::before, body.thema-kasse h1.offset::after { content:none; }
body.thema-kasse h2 { text-transform:uppercase; letter-spacing:.12em; border-bottom:1px dashed var(--linie); padding-bottom:5px; }
body.thema-kasse .mainnav a.aktiv { background:var(--tinte); color:var(--papier); }
body.thema-kasse .fab { border-radius:0; box-shadow:none; background:var(--tinte); }
body.thema-kasse .buchtabelle th { border-bottom:1px dashed var(--linie); }
body.thema-kasse .buchtabelle td { border-bottom:1px dotted #cdc8bb; }

/* Umschalter oben */
.themawahl { width:auto; padding:5px 8px; font-size:12px; background:var(--flaeche); }

/* Trash: Lesbarkeit nachziehen – Spaß ja, unlesbar nein */
body.thema-trash .ust-block { background:#c0c0c0; border:3px inset #fff; }
body.thema-trash .ust-zeile { color:#000080; }
body.thema-trash .ust-zeile b { color:#000; }
body.thema-trash .ust-zeile.hervor { color:#c000c0; border-top-color:#000080; }
body.thema-trash .kz .label { color:#000080; }
body.thema-trash .studio-chip { background:#ffff00; color:#ff00ff; text-shadow:none; border:2px solid #000; }
body.thema-trash .ust-tag.an { border-color:#c000c0; color:#c000c0; background:#ffff00; }
body.thema-trash .ust-tag.aus { border-color:#000080; color:#000080; background:#fff; }
body.thema-trash .buchtabelle td.leise { color:#333; }
body.thema-trash h2 { color:#ffff00; text-shadow:2px 2px 0 #ff00ff; }
body.thema-trash .card h3 { color:#000080; }
body.thema-trash .modal h2 { color:#000080; text-shadow:none; }
body.thema-trash .feld, body.thema-trash label { color:#000080; }
body.thema-trash .auswahl-leiste { background:#c0c0c0; }
body.thema-trash .auswahl-leiste .info { color:#000080; }
body.thema-trash .protokoll { background:#c0c0c0; }
body.thema-trash .log-zeile .was { color:#000080; }
body.thema-trash .log-zeile .det, body.thema-trash .log-zeile .zeit { color:#606060; }
body.thema-trash .best-status.offen { border-color:#000080; color:#000080; background:#fff; }

/* Nachtschicht: Kontraste in Sonderbereichen */
body.thema-nacht .ust-block { background:#191920; }
body.thema-nacht .best-status.offen { border-color:var(--grau); color:var(--grau); }
body.thema-nacht .beleg-zone { border-color:var(--grau); }
body.thema-nacht .beleg-zone.drueber { background:#2a2140; }

/* Kassenrolle: Tabellen ruhig halten */
body.thema-kasse .ust-block { border:1px dashed var(--linie); }
body.thema-kasse .ust-tag { border-style:dashed; }
