:root{
  --blau:#123a6b;
  --blau-hell:#e8eef7;
  --rand:#d3dae6;
  --text:#16202e;
  --grau:#5b6879;
  --gruen:#1c7a4a;
  --rot:#a01818;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;line-height:1.5;color:var(--text);background:#f5f7fa;
}
a{color:var(--blau);text-decoration:none}
a:hover{text-decoration:underline}

.kopf{background:var(--blau);color:#fff}
.kopf-innen{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;
  max-width:1100px;margin:0 auto;padding:14px 18px}
.marke{color:#fff;font-size:20px;font-weight:700;letter-spacing:.2px}
.marke span{opacity:.7;font-weight:400}
.wer{display:flex;align-items:center;gap:10px;font-size:15px;flex-wrap:wrap}
.chip{background:rgba(255,255,255,.16);border-radius:999px;padding:2px 10px;font-size:13px}
.inline{display:inline;margin:0}

.nav{display:flex;flex-wrap:wrap;gap:2px;max-width:1100px;margin:0 auto;padding:0 12px 10px}
.nav a{color:#dce6f5;padding:10px 12px;border-radius:8px;font-size:15px}
.nav a:hover{background:rgba(255,255,255,.12);text-decoration:none;color:#fff}

.inhalt{max-width:1100px;margin:0 auto;padding:22px 18px 60px}
.fuss{max-width:1100px;margin:0 auto;padding:18px;color:var(--grau);font-size:13px;
  display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid var(--rand)}

h1{font-size:26px;margin:0 0 6px}
h2{font-size:20px;margin:26px 0 10px}
.unter{color:var(--grau);margin:0 0 18px}

.karten{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:18px 0}
.karte{background:#fff;border:1px solid var(--rand);border-radius:12px;padding:16px}
.karte .zahl{font-size:32px;font-weight:700;color:var(--blau);line-height:1.1}
.karte .was{color:var(--grau);font-size:14px;margin-top:4px}

.kasten{background:#fff;border:1px solid var(--rand);border-radius:12px;padding:18px;margin:16px 0}
.kasten h2{margin-top:0}

table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--rand);border-radius:12px;overflow:hidden}
th,td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--rand);font-size:15px;vertical-align:top}
th{background:var(--blau-hell);font-size:14px;color:var(--blau)}
tr:last-child td{border-bottom:none}
td.rechts,th.rechts{text-align:right}
tr.inaktiv td{color:var(--grau)}

label{display:block;font-size:14px;color:var(--grau);margin:12px 0 4px}
input[type=text],input[type=email],input[type=password],input[type=number],select{
  width:100%;padding:12px;border:1px solid var(--rand);border-radius:10px;font-size:16px;background:#fff;color:var(--text)
}
input:focus,select:focus{outline:2px solid var(--blau);outline-offset:1px}
.feldpaar{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}

.knopf{display:inline-block;background:var(--blau);color:#fff;border:none;border-radius:10px;
  padding:12px 20px;font-size:16px;cursor:pointer;min-height:46px}
.knopf:hover{filter:brightness(1.1);text-decoration:none}
.knopf.klein{padding:8px 14px;font-size:14px;min-height:38px;background:rgba(255,255,255,.18)}
.knopf.zart{background:#fff;color:var(--blau);border:1px solid var(--blau)}
.knopf.rot{background:var(--rot)}

.meldung{border-radius:10px;padding:12px 14px;margin:14px 0;font-size:15px}
.meldung.gut{background:#e6f4ec;border:1px solid #b6ddc6;color:#14563a}
.meldung.schlecht{background:#fdeaea;border:1px solid #f2c3c3;color:#7d1414}

.tuer{max-width:420px;margin:8vh auto;background:#fff;border:1px solid var(--rand);border-radius:16px;padding:26px}
.tuer h1{font-size:24px}
.tuer .knopf{width:100%;margin-top:18px}

.hinweis{color:var(--grau);font-size:14px;margin-top:10px}
.leer{color:var(--grau);font-style:italic;padding:14px 0}
