
:root{--bg:#f6f7f9;--fg:#1d2330;--mut:#5d6675;--card:#fff;--line:#d9dee6;--acc:#2a6fb5;--ok:#1e7a3c;
--warn:#a35a00;--bad:#b3261e;--on:#2a6fb5;--onfg:#fff}
@media (prefers-color-scheme:dark){:root{--bg:#14171c;--fg:#e6e9ee;--mut:#9aa3b2;--card:#1d2128;--line:#323844;
--acc:#6aa5e8;--ok:#5cc47e;--warn:#e0a24a;--bad:#f07a72;--on:#3a7fcc;--onfg:#fff}}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);
font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
header{background:var(--card);border-bottom:1px solid var(--line);padding:10px 16px}
header .kopf{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
header b{font-size:17px}header small{color:var(--mut)}
nav{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}
nav a{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--fg);border:1px solid var(--line)}
nav a.akt{background:var(--acc);color:#fff;border-color:var(--acc)}
main{max-width:860px;margin:0 auto;padding:12px 16px 40px}
.karte{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:12px 0}
.karte h2{font-size:17px;margin:0 0 8px}.mut{color:var(--mut);font-size:14px}
.hinweis{border-left:4px solid var(--acc);background:var(--card);padding:10px 12px;margin:12px 0;
white-space:pre-line;border-radius:6px}
.hinweis.fehler{border-color:var(--bad)}.frage{border-left:4px solid var(--warn)}
button,.knopf{font:inherit;padding:8px 12px;border-radius:8px;border:1px solid var(--line);background:var(--card);
color:var(--fg);cursor:pointer;min-height:40px;text-decoration:none;display:inline-block}
button.haupt{background:var(--acc);border-color:var(--acc);color:#fff}
button.gefahr{border-color:var(--bad);color:var(--bad)}
input,select{font:inherit;padding:7px 9px;border-radius:8px;border:1px solid var(--line);background:var(--bg);
color:var(--fg);min-height:40px;max-width:100%}
form.zeile{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:6px 0}
.tage{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:6px 0}
.tage form{margin:0}.tage button{width:100%;padding:6px 0;min-height:38px}
.tage button.an{background:var(--on);color:var(--onfg);border-color:var(--on)}
table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:6px 4px;border-bottom:1px solid var(--line);
vertical-align:top;font-size:14px}
.liste{list-style:none;padding:0;margin:0}.liste li{display:flex;justify-content:space-between;gap:8px;
align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}.liste li i{color:var(--mut)}
.gruen{color:var(--ok)}.rot{color:var(--bad)}
.breit{overflow-x:auto}
form.zeile .feld{flex-basis:100%;font-size:15px}
input.kurz{width:9em}input.zahl{width:5em}
nav.reiter{display:flex;gap:4px;flex-wrap:wrap;margin:4px 0 8px}
nav.reiter a{padding:5px 9px;border-radius:8px;text-decoration:none;color:var(--fg);border:1px solid var(--line);background:var(--card)}
nav.reiter a.akt{background:var(--acc);color:#fff;border-color:var(--acc)}
nav.reiter small{opacity:.75}td:first-child{white-space:nowrap}
nav.extra{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:8px;font-size:14px}
nav.extra a{padding:5px 9px;border-radius:8px;text-decoration:none;color:var(--fg);border:1px dashed var(--line)}
nav.extra span.akt{padding:5px 9px;border-radius:8px;border:1px solid var(--acc);color:var(--acc)}
nav.extra a.kachel{border:1px solid var(--ok);color:var(--ok);font-weight:600}
.schutz{border-left:4px solid var(--warn)}
