:root{--bg:#f5f6f8;--karte:#fff;--text:#1d2330;--leise:#6b7280;--rand:#e3e6ea;--akzent:#1f5f8b;--warn:#fff4e5;--fehler:#b42318;--ok:#1b7f4b}
*{box-sizing:border-box}body{margin:0;font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--akzent);text-decoration:none}a:hover{text-decoration:underline}
.kopf{display:flex;align-items:center;gap:1.2rem;padding:.6rem 1rem;background:#fff;border-bottom:1px solid var(--rand);flex-wrap:wrap}
.marke{font-weight:700;color:var(--text)}.kopf nav a{margin-right:.9rem}.rechts{margin-left:auto;display:flex;gap:.8rem;align-items:center}.rechts form{display:inline}
.benutzer{color:var(--leise)}main{max-width:1200px;margin:0 auto;padding:1rem}footer{text-align:center;color:var(--leise);font-size:.85rem;padding:2rem 0}
h1{font-size:1.4rem;margin:.4rem 0 1rem}h2{font-size:1.05rem;margin:1rem 0 .5rem}.leise-text{color:var(--leise);font-weight:400;font-size:.85rem}
.karte{background:var(--karte);border:1px solid var(--rand);border-radius:8px;padding:1rem;margin-bottom:1rem}.karte.schmal{max-width:420px;margin:3rem auto}.karte.warn{background:var(--warn)}
.kacheln{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.7rem;margin-bottom:1rem}
.kachel{display:block;background:#fff;border:1px solid var(--rand);border-radius:8px;padding:.8rem 1rem;color:var(--text)}.kachel b{display:block;font-size:1.6rem}.kachel span{color:var(--leise);font-size:.85rem}
.spalten{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:900px){.spalten{grid-template-columns:1fr}}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--rand);border-radius:8px;overflow:hidden}th,td{padding:.45rem .6rem;border-bottom:1px solid var(--rand);text-align:left;vertical-align:top}th{background:#fafbfc;font-weight:600;font-size:.85rem;color:var(--leise)}
td.r,th.r{text-align:right;white-space:nowrap}.leer{color:var(--leise);text-align:center}tr.inaktiv td{color:var(--leise);text-decoration:line-through}
.status{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.78rem;background:#eef1f4;color:#374151}.s-neu{background:#e8f1fb;color:#1f5f8b}.s-erkannt{background:#e8f1fb;color:#1f5f8b}.s-zu_pruefen{background:#fff4e5;color:#9a5b00}.s-gebucht{background:#e6f5ec;color:var(--ok)}.s-exportiert{background:#e6f5ec;color:var(--ok)}.s-verworfen{background:#fde8e6;color:var(--fehler)}.s-beleglos{background:#f3e8ff;color:#6d28d9}
form.zeile,.filter{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}form.zeile label{display:flex;gap:.4rem;align-items:center}
input,select,textarea,button{font:inherit}input,select,textarea{padding:.4rem .5rem;border:1px solid #cfd4da;border-radius:6px;background:#fff}
button,.knopf{display:inline-block;padding:.45rem .9rem;border-radius:6px;border:1px solid var(--akzent);background:var(--akzent);color:#fff;cursor:pointer}button.leise,.knopf.leise{background:#fff;color:var(--akzent)}
.formular{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.formular label{display:flex;flex-direction:column;font-size:.85rem;color:var(--leise)}.formular label.breit{grid-column:1/-1}.formular button{grid-column:1/-1;justify-self:start}
.karte.schmal label{display:block;margin-bottom:.8rem}.karte.schmal input{width:100%}
.fehler{color:var(--fehler);background:#fde8e6;padding:.6rem .8rem;border-radius:6px}.hinweis{color:var(--leise);font-size:.9rem}.hinweis.warn{color:#9a5b00;background:var(--warn);padding:.6rem .8rem;border-radius:6px}
.vorschau{width:100%;min-height:520px;border:1px solid var(--rand);border-radius:6px;background:#fafbfc}img.vorschau{min-height:0;max-height:70vh;object-fit:contain}
code{background:#f1f3f5;padding:.05rem .3rem;border-radius:4px;font-size:.9em;word-break:break-all}code.gross{font-size:1.1rem}
table.eingabe select{max-width:22em}details summary{cursor:pointer;font-weight:600}
.marke small.bereich{font-weight:400;opacity:.7;margin-left:.3em}
.plus{color:#1f7a3a}.minus{color:#a33}.klein{font-size:.85em;color:#555}tr.inaktiv td{opacity:.55}.kacheln.klein .kachel b{font-size:1.2rem}
.zeile.zwischen{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.firma-karte{margin-bottom:1.2rem}
