:root{
  --blau:#006FC0; --blau-dunkel:#00538F; --tief:#0B2540;
  --line:#D3DCE4; --ink:#16222F; --muted:#5F7387; --bg:#EEF2F6;
  --gruen:#1E7A4B; --gruen-hell:#EAF5EE;
  --gelb:#8A6A17; --gelb-hell:#FBF3E2;
  --rot:#A93F14; --rot-hell:#FBE7E1;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.45;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;padding-bottom:40px}
header{background:#fff;border-bottom:3px solid var(--blau);
  padding:calc(env(safe-area-inset-top) + 12px) 14px 12px}
header .inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:13px}
header .logo{width:150px;height:auto}
header .t{border-left:1px solid var(--line);padding-left:13px}
header h1{font-size:18px;margin:0;color:var(--tief)}
header p{margin:1px 0 0;font-size:11.5px;color:var(--muted);letter-spacing:.09em;
  text-transform:uppercase;font-weight:600}
header .rechts{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
header .rechts a{font-size:14px;color:var(--tief);font-weight:600;text-decoration:none;
  border:1px solid var(--line);border-radius:8px;padding:9px 14px;background:#fff}
header .rechts .wer{font-size:13.5px;color:var(--muted);margin-right:4px}
.wrap{max-width:960px;margin:0 auto;padding:18px 14px}
h2.titel{font-size:22px;color:var(--tief);margin:0 0 4px;font-weight:700}
p.unter{margin:0 0 18px;font-size:14px;color:var(--muted)}
h3.abschnitt{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--blau-dunkel);
  margin:26px 0 12px;font-weight:700}
.zahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:8px}
.zk{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px}
.zk b{display:block;font-size:30px;color:var(--tief);font-variant-numeric:tabular-nums;line-height:1.1}
.zk span{font-size:13px;color:var(--muted)}
.zk.frei{border-left:3px solid var(--gruen)} .zk.frei b{color:var(--gruen)}
.zk.plan{border-left:3px solid var(--gelb)} .zk.plan b{color:var(--gelb)}
.zk.weg{border-left:3px solid var(--blau)}
.tab{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.kopfz{display:flex;padding:11px 15px;border-bottom:1px solid var(--line);font-size:11.5px;
  text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
.z{display:flex;padding:14px 15px;border-bottom:1px solid #EEF1F4;align-items:center;gap:8px;flex-wrap:wrap}
.z:last-child{border-bottom:none}
.c1{flex:1.8;min-width:170px} .c2{flex:0 0 90px} .c3{flex:1;min-width:130px} .c4{flex:0 0 200px;text-align:right}
.c1 b{display:block;font-size:15px;color:var(--tief)}
.c1 span{font-size:12.5px;color:var(--muted)}
/* Name und Kennung gehören untereinander, nicht nebeneinander */
.c1x b,.k1 b{display:block;font-size:15px;color:var(--tief);line-height:1.3}
.c1x span,.k1 span{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.marke{display:inline-block;font-size:11.5px;font-weight:700;padding:5px 10px;border-radius:20px}
.marke.offen{background:var(--gelb-hell);color:var(--gelb)}
.marke.ok{background:var(--gruen-hell);color:var(--gruen)}
.marke.nein{background:var(--rot-hell);color:var(--rot)}
.marke.teil{background:#E8F2FA;color:var(--blau-dunkel)}
button,.knopf{font:inherit;font-size:14px;font-weight:600;color:var(--tief);background:#fff;
  border:1px solid var(--line);border-radius:8px;padding:10px 15px;cursor:pointer;text-decoration:none;
  display:inline-block}
button.prim,.knopf.prim{background:var(--tief);border-color:var(--tief);color:#fff}
button.ja{background:var(--gruen);border-color:var(--gruen);color:#fff}
label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin:0 0 5px}
input,select,textarea{width:100%;font:inherit;font-size:16px;border:1px solid var(--line);
  border-radius:8px;padding:11px 12px;margin:0 0 14px;background:#fff}
.zeile{display:flex;gap:12px;flex-wrap:wrap}
.zeile>div{flex:1;min-width:160px}
section{background:#fff;border:1px solid var(--line);border-left:3px solid var(--blau);
  border-radius:10px;padding:18px;margin-bottom:14px}
section h2{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--blau-dunkel);
  margin:0 0 14px;font-weight:700}
.hinweis{background:#E8F2FA;border:1px solid #BEDCF2;color:#0A4D80;border-radius:9px;
  padding:13px 15px;font-size:13.5px;margin-bottom:16px;line-height:1.55}
.hinweis b{display:block;margin-bottom:3px}
.hinweis.warn{background:var(--gelb-hell);border-color:#EBD9B0;color:var(--gelb)}
footer{color:var(--muted);font-size:12px;text-align:center;padding:22px 14px 0;line-height:1.6}
