[hidden]{display:none!important}
:root{
  --bg:#f4f4f7; --flaeche:#fff; --flaeche2:#f0f0f4; --tinte:#17151f; --tinte2:#4b4f5c; --tinte3:#8a8d99;
  --linie:#e4e3ea; --akzent:#e4007c; --akzent-soft:#fde3f1; --dunkel:#14121f;
  --ok:#1f8a4c; --ok-soft:#e1f3e8; --warn:#9a6a00; --warn-soft:#fbf0d6; --bad:#a23b2c; --bad-soft:#f8e3df;
  --lauf:#2f6fe0; --lauf-soft:#e6eefc;
  --schatten:0 1px 2px rgba(16,24,40,.04),0 4px 14px rgba(16,24,40,.05);
}
@media (prefers-color-scheme: dark){:root{
  --bg:#111016; --flaeche:#1b1a22; --flaeche2:#25232e; --tinte:#ecebf1; --tinte2:#b8b6c4; --tinte3:#7f7c8c;
  --linie:#302e3a; --akzent:#ff4fa8; --akzent-soft:#3a1a2b;
  --ok:#6cc893; --ok-soft:#1d3327; --warn:#e2b54a; --warn-soft:#3a2f14; --bad:#ec8a7b; --bad-soft:#3d221e;
  --lauf:#7aa5ff; --lauf-soft:#1e2a44; --schatten:none;
}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tinte);font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
small{color:var(--tinte3);font-weight:400}
a{color:var(--akzent)}
.kopf{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 20px;background:var(--dunkel);color:#fff}
.kopf small{color:#a9a6b8}
.marke{display:flex;gap:12px;align-items:center}.marke b{display:block;font-size:17px}.marke small{display:block;font-size:12px}
.radar{width:26px;height:26px;border-radius:50%;border:2px solid var(--akzent);position:relative;flex:none;
  background:conic-gradient(from 0deg,rgba(228,0,124,.55),transparent 30%);animation:dreh 3s linear infinite}
.radar.gross{width:72px;height:72px;margin:0 auto 14px}
@keyframes dreh{to{transform:rotate(360deg)}}
.chips{display:flex;gap:8px;align-items:center;margin-left:auto;flex-wrap:wrap}
.chip{font-size:12px;padding:3px 10px;border-radius:999px;background:#2a2834;color:#d8d6e2;white-space:nowrap}
.chip.ok{background:#1d3327;color:#8fe0ad}.chip.warn{background:#3a2f14;color:#f0c867}
.glocke{position:relative;background:#2a2834;border:0;border-radius:999px;width:34px;height:34px;cursor:pointer;font-size:15px}
.glocke span{position:absolute;top:-4px;right:-4px;background:var(--akzent);color:#fff;font-size:11px;font-weight:700;border-radius:999px;padding:1px 6px}
main.raster{max-width:1440px;margin:0 auto;padding:20px;display:grid;grid-template-columns:360px 1fr;gap:18px;align-items:start}
@media (max-width:1000px){main.raster{grid-template-columns:1fr}}
.karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:14px;padding:16px 18px;box-shadow:var(--schatten);margin-bottom:18px}
.karte h3{margin:0 0 12px;font-size:14px;letter-spacing:.02em;display:flex;justify-content:space-between;align-items:baseline}
.still{color:var(--tinte2);font-size:13px;margin:0 0 12px}
.feld{display:block;font-size:12px;color:var(--tinte2);margin-bottom:11px}
.feld input,.feld select{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--linie);border-radius:8px;background:var(--flaeche);color:var(--tinte);font:inherit}
.zeile{display:flex;gap:12px;align-items:center}.zeile .feld{flex:0 0 130px}
.haken{font-size:13px;color:var(--tinte2);display:flex;gap:6px;align-items:center;margin-top:6px}
.umschalter{display:flex;background:var(--flaeche2);padding:4px;border-radius:10px;margin-bottom:12px}
.umschalter button{flex:1;border:0;background:none;padding:7px;border-radius:7px;font:inherit;color:var(--tinte2);cursor:pointer}
.umschalter button.aktiv{background:var(--flaeche);color:var(--tinte);font-weight:600;box-shadow:var(--schatten)}
.haupt{width:100%;border:0;border-radius:10px;padding:11px;background:var(--akzent);color:#fff;font:600 15px system-ui;cursor:pointer}
.haupt:disabled{opacity:.5;cursor:default}
.knopf{display:inline-block;border:1px solid var(--linie);background:var(--flaeche);color:var(--tinte);border-radius:8px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer;text-decoration:none}
.knopf.voll{background:var(--akzent);border-color:var(--akzent);color:#fff;font-weight:600}
.mini{border:0;background:none;color:var(--tinte3);cursor:pointer;font-size:13px;padding:2px 4px}
.mini:hover{color:var(--akzent)}

.ziele,.liste{list-style:none;margin:0;padding:0}
.ziele li{border-top:1px solid var(--linie);padding:10px 0;display:grid;grid-template-columns:1fr auto;gap:4px 8px}
.ziele li:first-child{border:0}
.ziele b{font-size:14px}.ziele .meta{font-size:12px;color:var(--tinte3);grid-column:1/-1}
.ziele .aus{opacity:.5}
.ziele select{font-size:12px;border:1px solid var(--linie);border-radius:6px;background:var(--flaeche);color:var(--tinte2);padding:2px}
.tag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--flaeche2);color:var(--tinte2);margin-right:4px}
.tag.handeln{background:var(--ok-soft);color:var(--ok)}.tag.beobachten{background:var(--warn-soft);color:var(--warn)}
.tag.fehler{background:var(--bad-soft);color:var(--bad)}.tag.laeuft{background:var(--lauf-soft);color:var(--lauf)}
.tag.auto{background:var(--akzent-soft);color:var(--akzent)}

.live{min-height:420px}
.leer{text-align:center;color:var(--tinte2);padding:70px 20px;max-width:520px;margin:0 auto}
.lauf-kopf{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;margin-bottom:14px}
.lauf-kopf h2{margin:2px 0;font-size:24px}
.phasen{display:flex;gap:6px}
.phasen span{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--flaeche2);color:var(--tinte3)}
.phasen span.aktiv{background:var(--lauf-soft);color:var(--lauf);font-weight:600}
.phasen span.fertig{background:var(--ok-soft);color:var(--ok)}
.ergebnis{border-radius:12px;padding:14px 16px;margin-bottom:16px;background:var(--flaeche2);border-left:5px solid var(--tinte3)}
.ergebnis.handeln{background:var(--ok-soft);border-color:var(--ok)}.ergebnis.beobachten{background:var(--warn-soft);border-color:var(--warn)}
.ergebnis.fehler{background:var(--bad-soft);border-color:var(--bad)}
.ergebnis b.u{font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.ergebnis p{margin:4px 0 10px;font-size:16px}
.ergebnis .knoepfe{display:flex;gap:8px;flex-wrap:wrap}
.ergebnis .kosten{font-size:12px;color:var(--tinte3);margin-top:8px}
.spalten{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
@media (max-width:1200px){.spalten{grid-template-columns:1fr}}
.spalten h4{margin:0 0 10px;font-size:13px;color:var(--tinte2);text-transform:uppercase;letter-spacing:.05em}
.sig{border:1px solid var(--linie);border-radius:12px;padding:12px 14px;margin-bottom:10px;animation:rein .4s ease}
@keyframes rein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.sig .k{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}
.sig .k span{font-size:11px;padding:1px 8px;border-radius:999px;background:var(--flaeche2);color:var(--tinte2)}
.sig .k .r4,.sig .k .r5{background:var(--ok-soft);color:var(--ok);font-weight:600}
.sig .k .neu{background:var(--akzent);color:#fff}
.sig b{display:block;font-size:15px;margin-bottom:2px}
.sig .m{font-size:12px;color:var(--tinte3)}
.sig p{font-size:13px;margin:6px 0 0;color:var(--tinte2)}
.protokoll{list-style:none;margin:0;padding:0;font-size:13px;max-height:520px;overflow:auto}
.protokoll li{padding:6px 0 6px 22px;border-bottom:1px dashed var(--linie);position:relative;color:var(--tinte2);word-break:break-word}
.protokoll li:before{content:attr(data-i);position:absolute;left:0;top:6px}
.protokoll li.suche{color:var(--tinte)}
.protokoll li .zeit{color:var(--tinte3);font-size:11px;margin-right:6px}
.zwei{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:900px){.zwei{grid-template-columns:1fr}}
.liste li{border-top:1px solid var(--linie);padding:9px 0;font-size:14px;cursor:pointer}
.liste li:first-child{border:0}.liste li:hover b{color:var(--akzent)}
.liste .meta{font-size:12px;color:var(--tinte3)}
.liste li.ungelesen b:before{content:"● ";color:var(--akzent)}
.liste li pre{white-space:pre-wrap;font:inherit;font-size:13px;color:var(--tinte2);margin:4px 0 0}
.toast{position:fixed;right:20px;bottom:20px;max-width:380px;background:var(--dunkel);color:#fff;padding:14px 16px;border-radius:12px;
  border-left:5px solid var(--akzent);box-shadow:0 10px 30px rgba(0,0,0,.25);cursor:pointer;z-index:10;animation:rein .3s}
.toast b{display:block;margin-bottom:4px}
.direkt{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.knopf.klein{padding:3px 10px;font-size:12px}
