/* REP – Gestaltung (Neufassung 14.11.2026): eine Kopfzeile, ruhiges Seitenmenü, am Handy Leiste unten und Karten statt Tabellen */
:root{--bg:#f4f6f9;--fg:#18212f;--mut:#596373;--line:#dfe4ea;--acc:#1f5fbf;--acc-hell:#e8f0fc;--dunkel:#14213d;--rob:#2f7d5b;--ene:#8a5200;
  --bad:#c0392b;--ok:#2e8b57;--warn:#b7791f;--card:#fff;--knopf:#1f5fbf;--rot:#c0392b;--zeile:#eef1f4;--kopfz:#f3f5f8;--hover:#fafbfd;--feld:#fff;--feldrand:#cfd6de;--ro:#f7f8fa;--sec:#e9edf2;--tagbg:#eef1f5;--err-bg:#fde8e6;--err-rand:#f3b8b1;--ok-bg:#e3f4e8;--ok-rand:#a7d7b6;--warn-bg:#fffaf0;--warn-rand:#f0c36d;--warn-fg:#9a5b00;--chatbg:#f7f8fb;--markbg:#f1f8f3;--lk:#b3261e;--radius:10px;--schatten:0 1px 2px rgba(20,33,61,.06),0 2px 8px rgba(20,33,61,.04);--kopf:52px;--unten:60px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--fg)}
a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}
h1{font-size:22px;line-height:1.25;margin:0 0 14px;font-weight:700;letter-spacing:-.01em}
h2{font-size:16px;margin:24px 0 10px;font-weight:650}
svg.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mut{color:var(--mut)}.small{font-size:13px}
.sprung{position:absolute;left:-999px}.sprung:focus{left:8px;top:8px;background:var(--card);padding:6px 10px;z-index:50}

/* ---------- Kopfzeile */
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;height:var(--kopf);background:var(--dunkel);color:#fff;padding:0 16px}
.top a{color:#fff}.top .brand{font-weight:700;font-size:17px;white-space:nowrap}.top .brand:hover{text-decoration:none}
.top .brand-lang{font-weight:400;opacity:.75}
.top .sp{flex:1}
.top form{display:inline;margin:0}
.bf{display:flex;align-items:center;gap:0;background:#ffffff1a;border-radius:999px;padding:3px;overflow-x:auto;scrollbar-width:none;min-width:0}
.bf::-webkit-scrollbar{display:none}
.bf button{padding:5px 12px;border-radius:999px;border:0;font-size:13px;background:none;color:#fff;cursor:pointer;font-family:inherit;white-space:nowrap}
.bf button.on{background:#fff;color:var(--dunkel);font-weight:600}
.bf b{padding:5px 12px;font-size:13px}
details.konto{position:relative}
details.konto>summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 6px;border-radius:999px}
details.konto>summary::-webkit-details-marker{display:none}
details.konto>summary:hover{background:#ffffff1a}
.avatar{width:32px;height:32px;border-radius:50%;background:#fff;color:var(--dunkel);display:grid;place-items:center;font-weight:700;font-size:14px;text-transform:uppercase}
.konto-name{font-size:13px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.konto-menue{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px rgba(20,33,61,.18);padding:8px;z-index:40}
.konto-menue .wer{padding:6px 10px 8px;border-bottom:1px solid var(--line);margin-bottom:6px}
.konto-menue a,.konto-menue button.lk{display:block;width:100%;text-align:left;padding:9px 10px;border-radius:6px;color:var(--fg);background:none;border:0;font:inherit;cursor:pointer;text-decoration:none}
.konto-menue a:hover,.konto-menue button.lk:hover{background:var(--bg);text-decoration:none}
.konto-menue form{display:block}

/* ---------- Aufbau: Seitenmenü + Inhalt */
.wrap{display:flex;min-height:calc(100vh - var(--kopf))}
nav.side{width:236px;background:var(--card);border-right:1px solid var(--line);padding:12px 10px 24px;flex-shrink:0;position:sticky;top:var(--kopf);height:calc(100vh - var(--kopf));overflow-y:auto}
nav.side a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:var(--fg);line-height:1.3}
nav.side a:hover{background:var(--bg);text-decoration:none}
nav.side a.hier{background:var(--acc-hell);color:var(--acc);font-weight:600}
nav.side .haupt a{font-weight:600}
nav.side .haupt{padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--line)}
nav.side details{margin-top:2px}
nav.side summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 10px;border-radius:8px;font-weight:600;color:var(--fg)}
nav.side summary::-webkit-details-marker{display:none}
nav.side summary:hover{background:var(--bg)}
nav.side summary::after{content:"";margin-left:auto;width:7px;height:7px;border-right:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:rotate(-45deg);transition:transform .15s}
nav.side details[open]>summary::after{transform:rotate(45deg)}
nav.side details>a{margin-left:30px;padding:6px 10px;font-size:14px}
nav.side .zu{display:none}
main{flex:1;padding:22px 28px 40px;min-width:0;max-width:1500px}
.unten{display:none}

/* ---------- Bausteine */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;align-items:start}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--schatten)}
.card h2:first-child{margin-top:0}
.kpi{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--zeile);padding:6px 0}
.kpi:last-child{border-bottom:0}
.kpi>span:last-child,.kpi>b{white-space:nowrap}
.kacheln{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 18px}
.kachel{display:flex;flex-direction:column;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;color:var(--fg);box-shadow:var(--schatten)}
.kachel:hover{text-decoration:none;border-color:var(--acc)}
.kachel b{font-size:26px;line-height:1.1;font-weight:700}
.kachel span{font-size:13px;color:var(--mut)}
.kachel.wichtig{border-color:var(--warn-rand);background:var(--warn-bg)}.kachel.wichtig b{color:var(--warn-fg)}
.kachel.null b{color:var(--mut);opacity:.7}
table{border-collapse:collapse;width:100%;background:var(--card)}
th,td{border-bottom:1px solid var(--zeile);padding:8px 10px;text-align:left;vertical-align:top}
th{background:var(--kopfz);font-weight:600;font-size:12.5px;color:var(--mut);position:sticky;top:0;white-space:nowrap}
td.num,th.num{text-align:right;white-space:nowrap}
tbody tr:hover td{background:var(--hover)}
.tbl{overflow:auto;max-height:76vh;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);box-shadow:var(--schatten)}
.tag{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;background:var(--tagbg);white-space:nowrap}
.tag.Robotik{background:#e3f2ea;color:var(--rob)}.tag.Energie{background:#fbefdc;color:var(--ene)}.tag.Kombi{background:#e8e6f8;color:#5a4bb5}
.tag.warn{background:#fff0c2;color:#7a4b00}
.st-offen,.st-angefragt{background:#fff4d6}.st-erfüllt,.st-Nachweis{background:#dcf3e4}.st-na{background:#f0f0f0;color:#999}.st-fehlt{background:#f8cbad;font-weight:600}.st-genannt{background:#e8f5d8}
.mark{outline:2px solid var(--bad);outline-offset:-2px}
tr.mark{outline:0}tr.mark td{background:var(--markbg)}tr.mark td:first-child{box-shadow:inset 3px 0 0 var(--ok)}
form.f{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 18px;background:var(--card);padding:16px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--schatten)}
form.f label{display:flex;flex-direction:column;font-size:13px;color:var(--mut);gap:4px;min-width:0}
form.f label:has(input[type=checkbox]){flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;color:var(--fg)}
form.f label:has(input[type=checkbox]) .hilfe{flex-basis:100%}
.tbl.eng th{white-space:normal;vertical-align:bottom}.tbl.eng td,.tbl.eng th{padding:8px 8px}
form.f .wide{grid-column:1/-1}
input,select,textarea{font:inherit;padding:8px 10px;border:1px solid var(--feldrand);border-radius:7px;background:var(--feld);color:var(--fg);min-width:0}
input:focus,select:focus,textarea:focus{outline:2px solid #9bbcf0;outline-offset:0;border-color:var(--acc)}
input[type=checkbox]{width:18px;height:18px;padding:0;accent-color:var(--acc)}
input[type=radio]{width:18px!important;min-width:18px;height:18px;padding:0;flex:none;accent-color:var(--acc)}
input[readonly],textarea[readonly]{background:var(--ro)}
textarea{min-height:76px}
textarea.gross{min-height:420px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;line-height:1.45}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--knopf);color:#fff;border:0;border-radius:8px;padding:8px 16px;cursor:pointer;font:inherit;font-weight:600;line-height:1.3}
.btn:hover{text-decoration:none;filter:brightness(.95)}
.btn.sec{background:var(--sec);color:var(--fg)}.btn.red{background:var(--rot)}
button[disabled]{opacity:.6;cursor:wait}
.bar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.bar form{display:flex;gap:8px;flex-wrap:wrap}
.bar.gross .btn{padding:12px 20px;font-size:15px}
.err{background:var(--err-bg);border:1px solid var(--err-rand);padding:10px 14px;border-radius:8px;margin-bottom:12px}
.ok{background:var(--ok-bg);border:1px solid var(--ok-rand);padding:10px 14px;border-radius:8px;margin-bottom:12px}
.hilfe{font-size:12px;color:var(--mut);font-weight:400}
.faellig{color:var(--bad);font-weight:600}
.login{max-width:380px;margin:10vh auto;background:var(--card);padding:28px;border-radius:14px;border:1px solid var(--line);box-shadow:var(--schatten)}
.login h1{font-size:20px}
.login label{display:block;font-size:13px;color:var(--mut)}
.login input{width:100%;margin:6px 0 14px;font-size:16px}
.login .btn{width:100%;min-height:44px}
pre.md,pre.blatt{white-space:pre-wrap;background:var(--card);border:1px solid var(--line);padding:14px;border-radius:var(--radius);font-size:13px;line-height:1.5}
.galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-bottom:12px}
.galerie .card{display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}
.thumb{width:100%;height:150px;object-fit:cover;border-radius:6px;background:var(--tagbg);display:block}
details.auf{margin-bottom:14px}details.auf>summary{cursor:pointer;font-weight:600}details.auf[open]>summary{margin-bottom:12px}
details.filter>summary{cursor:pointer;font-weight:600;padding:2px 0}
form.inl{display:inline}
form.ablehnen{display:inline-flex;margin:4px 0 0}
form.schritte textarea{width:100%;margin-bottom:8px}
.card button.lk{background:none;border:0;color:var(--lk);cursor:pointer;font:inherit;padding:0;text-decoration:underline}
hr{border:0;border-top:1px solid var(--line);margin:16px 0}
ul{padding-left:20px}

/* ---------- Handy und schmale Fenster */
@media (max-width:860px){
  body{padding-bottom:calc(var(--unten) + env(safe-area-inset-bottom))}
  .top{padding:0 10px;gap:8px}
  .top .brand-lang,.konto-name{display:none}
  .wrap{display:block}
  main{padding:14px 12px 28px}
  h1{font-size:20px}
  /* Menü als Blatt über die ganze Fläche */
  nav.side{display:none;position:fixed;inset:var(--kopf) 0 calc(var(--unten) + env(safe-area-inset-bottom)) 0;width:auto;height:auto;z-index:25;border:0;padding:12px 12px 24px}
  nav.side.auf{display:block}
  nav.side a,nav.side summary{padding:12px 12px;font-size:16px}
  nav.side details>a{font-size:15px;padding:11px 12px}
  nav.side .zu{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-weight:700;font-size:18px;padding:0 12px}
  /* Leiste unten: die vier wichtigsten Ziele und das Menü */
  .unten{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 10px rgba(20,33,61,.06)}
  .unten a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:var(--unten);color:var(--mut);font-size:11.5px;font-weight:600}
  .unten a:hover{text-decoration:none}
  .unten a.hier{color:var(--acc)}
  .unten svg.ic{width:23px;height:23px}
  input,select,textarea{font-size:16px}
  .btn{min-height:44px;padding:10px 16px}
  .bar form{width:100%}
  .bar input:not([type=checkbox]):not([type=file]){flex:1 1 60%;min-width:150px}
  .bar select{flex:1 1 30%;min-width:120px}
  .bar.gross .btn{flex:1}
  .card button.lk{padding:8px 0}
  .breit{display:none}
  .kacheln{grid-template-columns:repeat(2,1fr);gap:10px}
  .kachel b{font-size:24px}
  form.f{grid-template-columns:1fr 1fr;padding:12px;gap:10px 12px}
  form.f label{grid-column:1/-1}
  form.f label.halb{grid-column:auto}
  form.f input,form.f select,form.f textarea{width:100%;max-width:100%}
  form.f input[type=checkbox]{width:20px}
  details.auf form.f{border:0;padding:0;box-shadow:none}
  input[type=file]{max-width:100%}
  .tbl{max-height:none}
}
@media (max-width:640px){
  /* Tabellen als Karten: jede Zeile eine Karte, die Spaltenüberschrift steht links vom Wert */
  .tbl.karten{border:0;background:none;box-shadow:none;overflow:visible}
  .tbl.karten table,.tbl.karten tbody{display:block;background:none}
  .tbl.karten thead{display:none}
  .tbl.karten tr{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:10px;box-shadow:var(--schatten)}
  .tbl.karten tr.mark{border-color:var(--ok)}
  .tbl.karten tr.mark td:first-child{box-shadow:none}
  .tbl.karten td{display:flex;justify-content:space-between;gap:14px;border:0;padding:3px 0;text-align:right;white-space:normal;background:none!important}
  .tbl.karten td::before{content:attr(data-l);color:var(--mut);font-size:13px;text-align:left;flex:none;max-width:45%}
  .tbl.karten td:first-child{display:block;text-align:left;font-weight:600;font-size:16px;padding-bottom:6px}
  .tbl.karten td:first-child::before{content:none}
  .tbl.karten td:empty,.tbl.karten td.leer{display:none}
  .tbl.karten td.voll{display:block;text-align:left}
  .tbl.karten td.voll::before{display:block;max-width:none;margin-bottom:2px}
  .tbl.karten td[colspan]{display:block;text-align:left}
  .tbl.karten td[colspan]::before{content:none}
  .tbl.karten td.num{flex-wrap:wrap;white-space:nowrap}
  .tbl.karten td.num>div,.tbl.karten td>div.small{flex-basis:100%;text-align:right;white-space:normal}
  .tbl.karten td:first-child>div.small{text-align:left}
  .tbl.karten td:first-child a{display:block;padding:6px 0;min-height:40px}
  .tbl.karten td{overflow-wrap:anywhere}
}
@media (min-width:861px){details.filter>summary{display:none}}
@media print{.top,nav.side,.unten{display:none}main{padding:0}}

/* ---------- Assistent (Chat) */
.chat-knopf{position:fixed;right:20px;bottom:20px;z-index:28;display:flex;align-items:center;gap:8px;background:var(--knopf);color:#fff;border:0;border-radius:999px;padding:12px 18px;font:inherit;font-weight:600;cursor:pointer;box-shadow:0 6px 20px rgba(31,95,191,.35)}
.chat-knopf svg.ic{width:22px;height:22px}
.chat.fenster{position:fixed;right:20px;bottom:20px;z-index:45;width:400px;max-width:calc(100vw - 24px);height:min(620px,calc(100vh - 90px));display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px rgba(20,33,61,.25);overflow:hidden}
.chat.fenster[hidden]{display:none}
.chat.fenster>header{display:flex;align-items:center;gap:12px;background:var(--dunkel);color:#fff;padding:10px 14px}
.chat.fenster>header a{color:#fff;font-size:13px;opacity:.85}
.chat.fenster>header .sp{flex:1}
.chat.fenster>header button{background:none;border:0;color:#fff;font-size:18px;cursor:pointer;padding:2px 6px}
.chat.gross{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--schatten);padding:12px;max-width:900px}
.chat.gross .chat-liste{min-height:260px;max-height:58vh}
.chat-liste{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--chatbg)}
.chat.gross .chat-liste{border-radius:8px}
.blase{max-width:88%;padding:9px 12px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}
.blase.ich{align-self:flex-end;background:var(--knopf);color:#fff;border-bottom-right-radius:4px}
.blase.ki{align-self:flex-start;background:var(--card);border:1px solid var(--line);border-bottom-left-radius:4px}
.blase.fehler{align-self:flex-start;background:var(--err-bg);border:1px solid var(--err-rand)}
.blase.wartet{align-self:flex-start;background:var(--card);border:1px dashed var(--line);color:var(--mut)}
.blase .zusatz{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;white-space:normal}
.blase .zusatz a{font-size:13px;padding:4px 10px;border-radius:999px;background:var(--acc-hell);color:var(--acc)}
.blase .zusatz a.tun{background:var(--knopf);color:#fff;font-weight:600}
.chat-tipps{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 0}
.chat-tipps button{font:inherit;font-size:13px;padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--fg);cursor:pointer}
.chat-form{display:flex;gap:8px;padding:10px 12px;align-items:flex-end}
.chat-form textarea{flex:1;min-height:42px;max-height:140px;resize:none}
@media (max-width:860px){
  .chat-knopf{right:12px;bottom:calc(var(--unten) + 12px + env(safe-area-inset-bottom));padding:12px}
  .chat-knopf span{display:none}
  .chat.fenster{inset:0;width:auto;max-width:none;height:auto;border-radius:0;border:0}
  .blase{max-width:94%}
}
@media print{.chat-knopf,.chat.fenster{display:none}}
.chat-tipps[hidden]{display:none}
.blase .zusatz a.tun{border-radius:14px}

/* ---------- Nachbesserungen aus der Bedienungsprüfung (14.11.2026) */
main{overflow-wrap:break-word}
.card,.kpi,.kachel,.blase,h1,h2{overflow-wrap:anywhere}
.kpi>*:first-child{min-width:0}
td,th{overflow-wrap:break-word}
main>table,.card>table{display:block;overflow-x:auto;max-width:100%}
form.f div.wide,p:has(>.btn){display:flex;flex-wrap:wrap;gap:8px;align-items:center}
form.loeschen{margin-top:36px;padding-top:16px;border-top:1px solid var(--line)}
.chat-leer{color:var(--mut);text-align:center;margin:auto;padding:20px;font-size:14px}
.matrix td:first-child,.matrix th:first-child{position:sticky;left:0;background:var(--card);z-index:1;box-shadow:1px 0 0 var(--line)}
.matrix th:first-child{background:var(--kopfz);z-index:2}
.matrix td a{display:block;min-height:32px;padding:4px 2px}
.tag.Robotik{color:#256a4c}
@media (max-width:860px){
  main{padding-bottom:96px}
  .bf button{padding:9px 12px}.bf b{padding:9px 12px}
  details.auf>summary,details.filter>summary{padding:11px 0}
  .konto-menue a,.konto-menue button.lk{padding:12px 10px}
  nav.side.auf~.chat-knopf,nav.side.auf~main~.chat-knopf{display:none}
  .chat.fenster>header{padding:6px 8px 6px 14px}
  .chat.fenster>header a,.chat.fenster>header button{min-width:44px;min-height:44px;display:grid;place-items:center}
  .chat.fenster>header a[href="/chat"]{display:none}
  .chat.fenster>header button{font-size:22px}
}
@media (min-width:861px){main{padding-bottom:96px}}
details.ki-hilfe>summary{cursor:pointer;color:var(--acc);font-weight:600;padding:6px 0}
details.ki-hilfe[open]>summary{margin-bottom:10px}
@media (max-width:860px){details.ki-hilfe>summary{padding:11px 0}}
form.f div.wide .small{flex-basis:100%}

.mailtext{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg,#f6f7f9);border:1px solid var(--line,#d9dde3);border-radius:8px;padding:12px;font:inherit;margin:6px 0 12px}
.haken{display:flex;flex-wrap:wrap;gap:6px 18px;padding:6px 0}.haken label{display:inline-flex;align-items:center;gap:6px;font-weight:400}.haken input{width:auto}
.sprachwahl{display:flex;gap:6px;padding:8px 14px}.sprachwahl button{border:1px solid var(--line,#d9dde3);background:none;border-radius:6px;padding:4px 9px;cursor:pointer;font:inherit;color:inherit}.sprachwahl button.on{background:var(--knopf,#1f5fbf);color:#fff;border-color:transparent}
.login-sprache{justify-content:center;margin-top:14px}

.tag.rot{background:var(--err-bg);color:var(--fg)}

/* ---------- Dunkle Darstellung (Konto-Menü: Hell / Dunkel / Automatisch; thema.js setzt data-thema am <html>) */
:root[data-thema=dunkel]{color-scheme:dark;--bg:#0f141c;--fg:#e4e9f0;--mut:#9aa6b6;--line:#2b3442;--acc:#7fb0ff;--acc-hell:#1b2f4f;--dunkel:#0a0f18;--rob:#6fcf9f;--ene:#e3ad62;
  --bad:#f28b7d;--ok:#6fcf97;--warn:#e3b765;--card:#18202b;--knopf:#2f6fd0;--rot:#b3382c;--zeile:#232c38;--kopfz:#1e2733;--hover:#1d2632;--feld:#111822;--feldrand:#3a4556;--ro:#1a222d;
  --sec:#2a3443;--tagbg:#2a3443;--err-bg:#3a1c19;--err-rand:#7a342c;--ok-bg:#16301f;--ok-rand:#2f6a43;--warn-bg:#33290f;--warn-rand:#7a5a1a;--warn-fg:#f0c36d;--chatbg:#111822;--markbg:#16281d;
  --lk:#f28b7d;--schatten:0 1px 2px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.25)}
[data-thema=dunkel] .top,[data-thema=dunkel] .chat.fenster>header{border-bottom:1px solid var(--line)}
[data-thema=dunkel] .tag.Robotik{background:#173426;color:#7fd8a8}[data-thema=dunkel] .tag.Energie{background:#3a2a10;color:#e9b874}[data-thema=dunkel] .tag.Kombi{background:#2a2550;color:#b3a8f5}
[data-thema=dunkel] .tag.warn{background:#3d3110;color:#f0cf7a}
[data-thema=dunkel] .st-offen,[data-thema=dunkel] .st-angefragt{background:#3d3110}[data-thema=dunkel] .st-erfüllt,[data-thema=dunkel] .st-Nachweis{background:#16361f}
[data-thema=dunkel] .st-na{background:#232a34;color:#7d8795}[data-thema=dunkel] .st-fehlt{background:#55241a}[data-thema=dunkel] .st-genannt{background:#24361a}
[data-thema=dunkel] input:focus,[data-thema=dunkel] select:focus,[data-thema=dunkel] textarea:focus{outline-color:#3f6fb5}
[data-thema=dunkel] .btn:hover{filter:brightness(1.12)}
[data-thema=dunkel] .thumb{opacity:.92}
@media print{:root[data-thema=dunkel]{color-scheme:light;--bg:#fff;--fg:#000;--card:#fff;--mut:#444;--line:#bbb;--zeile:#ddd;--kopfz:#eee}}
.themawahl{padding-top:0}
[data-thema-wahl=hell] [data-thema-setzen=hell],[data-thema-wahl=dunkel] [data-thema-setzen=dunkel],[data-thema-wahl=auto] [data-thema-setzen=auto]{background:var(--knopf);color:#fff;border-color:transparent}
/* Glocke, Hinweise, Rechte */
.glocke{position:relative;text-decoration:none;font-size:18px;padding:4px 8px;border-radius:8px;color:var(--fg)}
.glocke:hover{background:var(--hover)}
.glocke b{position:absolute;top:-2px;right:-2px;background:var(--bad);color:#fff;font-size:10px;line-height:16px;min-width:16px;text-align:center;border-radius:8px;padding:0 3px}
ul.hinweise{list-style:none;padding:0;margin:0}
ul.hinweise li{padding:9px 10px;border-bottom:1px solid var(--zeile)}
ul.hinweise li.neu{background:var(--ok-bg)}
form.rechte .recht{padding:7px 0;border-bottom:1px solid var(--zeile);display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
pre.mailtext{white-space:pre-wrap;word-break:break-word}
img.mini{width:38px;height:38px;object-fit:cover;border-radius:6px;vertical-align:middle;margin-right:6px;border:1px solid var(--line);background:var(--card)}
img.produktbild{max-width:260px;max-height:200px;border-radius:var(--radius);border:1px solid var(--line);display:block;margin:0 0 12px;background:var(--card)}
.anhang{display:inline-flex;gap:6px;align-items:center;margin-right:12px}
