:root{
  --fg:#1c2024; --fg-schwach:#6b7280; --bg:#f5f6f8; --karte:#fff;
  --linie:#dfe3e8; --akzent:#0b5d3b; --akzent-hell:#e7f1ec;
  --warn:#8a4b00; --warn-bg:#fdf3e3; --ok:#0b5d3b; --ok-bg:#e7f1ec;
}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
     color:var(--fg);background:var(--bg)}
body.schmal main{max-width:760px;margin:2rem auto;padding:0 1rem}
main{max-width:1100px;margin:1.5rem auto;padding:0 1rem}
a{color:var(--akzent)}
h2{margin-top:0}
h3{margin:1.2rem 0 .4rem;font-size:1rem;text-transform:uppercase;letter-spacing:.04em;
   color:var(--fg-schwach)}
.kopf{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;background:var(--akzent);
      color:#fff;padding:.7rem 1.2rem}
.kopf a{color:#fff;text-decoration:none;margin-right:1rem}
.kopf nav{flex:1}
.marke{font-weight:700}
.marke-gross{color:var(--akzent)}
.konto{display:flex;align-items:center;gap:.6rem;font-size:.9rem}
.karte{background:var(--karte);border:1px solid var(--linie);border-radius:8px;
       padding:1rem 1.2rem;margin-bottom:1.2rem}
.warnkarte{border-color:#e6c98a;background:var(--warn-bg)}
label{display:block;margin:.6rem 0}
input,select,textarea{width:100%;padding:.5rem;border:1px solid var(--linie);
                      border-radius:6px;font:inherit;background:#fff;color:var(--fg)}
input[type=checkbox]{width:auto}
fieldset{border:1px solid var(--linie);border-radius:8px;margin:0 0 1rem;padding:.6rem 1rem}
legend{padding:0 .4rem;color:var(--fg-schwach);font-size:.85rem;text-transform:uppercase}
.reihe{display:flex;flex-wrap:wrap;gap:1rem}
.reihe label{flex:1 1 180px}
button{background:var(--akzent);color:#fff;border:0;border-radius:6px;padding:.5rem 1rem;
       font:inherit;cursor:pointer}
button.link{background:none;color:inherit;text-decoration:underline;padding:.2rem}
.inline{display:inline}
.tabelle{width:100%;border-collapse:collapse;background:var(--karte);
         border:1px solid var(--linie);border-radius:8px;overflow:hidden}
.tabelle th,.tabelle td{padding:.5rem .7rem;text-align:left;border-bottom:1px solid var(--linie);
                        vertical-align:top}
.tabelle thead th{background:#eef1f4;font-size:.85rem;text-transform:uppercase;
                  letter-spacing:.03em;color:var(--fg-schwach)}
.tabelle tr.gruppe th{background:#f0f3f6;font-size:.8rem;text-transform:uppercase}
.tabelle tr.erledigt{color:var(--fg-schwach);text-decoration:line-through}
.status{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.8rem;
        background:#eceff3}
.s-warte_leitung{background:var(--warn-bg);color:var(--warn)}
.s-in_umsetzung{background:#e6eefc;color:#1a3f8f}
.s-erledigt{background:var(--ok-bg);color:var(--ok)}
.hinweis{padding:.7rem 1rem;border-radius:8px;background:var(--akzent-hell);margin:0 0 1rem}
.hinweis.warn{background:var(--warn-bg);color:var(--warn)}
.hinweis.ok{background:var(--ok-bg);color:var(--ok)}
.grau{color:var(--fg-schwach)}
.klein{font-size:.85rem}
.liste{margin:.3rem 0;padding-left:1.1rem}
.daten{display:grid;grid-template-columns:200px 1fr;gap:.3rem 1rem;margin:0}
.daten dt{color:var(--fg-schwach)}
.daten dd{margin:0}
.position{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;padding:.35rem 0;
          border-bottom:1px solid var(--linie)}
.hakenzeile{flex:1 1 320px;display:flex;gap:.6rem;align-items:flex-start;margin:0}
.position input[type=text]{flex:1 1 220px}
.mark{font-weight:700;width:3.5rem}
.mark.ja{color:var(--ok)} .mark.nein{color:var(--fg-schwach)} .mark.offen{color:var(--warn)}
.schluessel{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1.2rem;
            letter-spacing:.1em;background:#eef1f4;padding:.6rem;border-radius:6px}
footer{max-width:1100px;margin:2rem auto;padding:0 1rem;color:var(--fg-schwach);font-size:.85rem}
@media (prefers-color-scheme:dark){
  :root{--fg:#e6e8ea;--fg-schwach:#9aa3ad;--bg:#15181b;--karte:#1d2126;--linie:#2c3238;
        --akzent:#2f8f63;--akzent-hell:#1e2d26;--warn-bg:#2f2718;--ok-bg:#1e2d26}
  .tabelle thead th,.tabelle tr.gruppe th{background:#22272d}
  input,select,textarea{background:#15181b;color:var(--fg)}
  .schluessel{background:#22272d}
}
.versteckt{display:none}
.s-mail-offen{background:var(--warn-bg);color:var(--warn)}
.s-mail-gesendet{background:var(--ok-bg);color:var(--ok)}
.s-mail-fehler{background:#fbe3e3;color:#8a1f1f}
.kacheln{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem;margin:0 0 1rem}
.kachel{display:flex;flex-direction:column;background:var(--karte);border:1px solid var(--linie);
        border-radius:8px;padding:.8rem 1rem;text-decoration:none;color:var(--fg)}
.kachel .zahl{font-size:1.8rem;font-weight:700;line-height:1.1}
.kachel.aktiv{border-color:var(--akzent);box-shadow:inset 0 0 0 1px var(--akzent)}
.kachel.warnkachel{background:var(--warn-bg);border-color:#e6c98a;color:var(--warn)}
.warntext{color:var(--warn)}
.nowrap{white-space:nowrap}
