:root { --tinte: #1d2433; --leise: #6b7280; --rand: #e5e7eb; --akzent: #1f6feb; --warn: #b45309; --fehler: #b91c1c; --hinter: #f6f7f9; --karte: #fff; }
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.45 system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--tinte); background: var(--hinter); }
header { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 10px 16px; background: var(--karte); border-bottom: 1px solid var(--rand); }
.marke { font-weight: 700; text-decoration: none; color: var(--tinte); }
nav { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: center; }
nav a { color: var(--tinte); text-decoration: none; padding: 4px 6px; border-radius: 6px; }
nav a.aktiv { background: var(--akzent); color: #fff; }
main { max-width: 1100px; margin: 0 auto; padding: 16px; }
.karte { background: var(--karte); border: 1px solid var(--rand); border-radius: 10px; padding: 16px; margin-bottom: 16px; }
.schmal { max-width: 420px; margin: 10vh auto; }
h1 { font-size: 1.5rem; margin: 0 0 12px; } h2 { font-size: 1.1rem; margin: 0 0 10px; }
table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
th, td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--rand); vertical-align: top; }
.zahl { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.leise { color: var(--leise); } .fehler { color: var(--fehler); } .warn { color: var(--warn); }
.zaehler { display: inline-block; min-width: 1.6em; padding: 0 6px; border-radius: 999px; background: var(--akzent); color: #fff; font-size: 0.8rem; text-align: center; }
.meldungen { list-style: none; padding: 0; margin: 0; } .meldungen li { padding: 6px 0; border-bottom: 1px solid var(--rand); }
.meldungen li.art-deckung, .meldungen li.art-ustva_faellig { color: var(--fehler); font-weight: 600; }
label { display: block; margin: 8px 0; } input, select, textarea { width: 100%; padding: 8px; border: 1px solid var(--rand); border-radius: 6px; font: inherit; }
button { padding: 8px 14px; border: 0; border-radius: 6px; background: var(--akzent); color: #fff; font: inherit; cursor: pointer; }
button.leise { background: transparent; color: var(--leise); padding: 4px 6px; }
form.inline { display: inline; }
@media (max-width: 700px) { main { padding: 10px; } th, td { padding: 5px; font-size: 0.9rem; } }
