@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Regular.otf) format("opentype");font-weight:400}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Medium.otf) format("opentype");font-weight:500}
@font-face{font-family:Satoshi;src:url(fonts/Satoshi-Bold.otf) format("opentype");font-weight:600 700}
:root{--blau:#0077B6;--text:#1d2733;--grau:#6b7785;--rand:#dde3ea;--rot:#c0392b;--gruen:#1e8449;--hg:#f5f7fa}
*{box-sizing:border-box}body{margin:0;font-family:Satoshi,system-ui,sans-serif;color:var(--text);background:var(--hg);font-size:17px;line-height:1.45}
.kopf{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-bottom:1px solid var(--rand)}
.marke{font-weight:700;color:var(--blau)}.marke span{color:var(--text);font-weight:500}
main{max-width:1200px;margin:0 auto;padding:16px}
.karte{background:#fff;border:1px solid var(--rand);border-radius:12px;padding:16px;margin-bottom:16px}
.raster{display:grid;gap:16px}@media(min-width:900px){.raster{grid-template-columns:3fr 2fr;align-items:start}}
label{display:block;margin:10px 0 4px;font-weight:600}input,select,textarea{width:100%;padding:12px;font:inherit;border:1px solid var(--rand);border-radius:8px;background:#fff}
button,.knopf{display:inline-block;min-height:48px;padding:12px 18px;font:inherit;font-weight:600;border-radius:10px;border:0;background:var(--blau);color:#fff;cursor:pointer;text-decoration:none}
button.zweit{background:#fff;color:var(--blau);border:1px solid var(--blau)}button:disabled{opacity:.5}
.zeile{display:flex;gap:8px;flex-wrap:wrap}.zeile>*{flex:1 1 140px}
.status-offen{color:var(--blau)}.status-korrektur{color:var(--rot);font-weight:700}.status-eingereicht,.status-freigegeben{color:var(--gruen)}
.hinweis{background:#fff8e1;border-left:4px solid #f0b400;padding:8px 12px;margin:8px 0}.fehler{background:#fdecea;border-left:4px solid var(--rot);padding:8px 12px;margin:8px 0}
table{width:100%;border-collapse:collapse}td,th{padding:8px;border-bottom:1px solid var(--rand);text-align:left}
canvas.sig{display:block;width:100%;height:180px;touch-action:none;background:#fff;border:1px dashed var(--grau);border-radius:8px}
.fuss{text-align:center;padding:24px;color:var(--grau);font-size:14px}.fuss a{color:var(--grau)}
.schmal{max-width:460px;margin:24px auto}
label.haken{display:flex;gap:10px;align-items:center;font-weight:500}label.haken input{width:auto}
.marke{text-decoration:none}.recht h2{font-size:18px;margin-top:22px}
.status-uebermittelt{color:var(--gruen)}
.tabelle{overflow-x:auto}button.klein{min-height:40px;padding:6px 10px;font-size:15px}
@media(max-width:480px){td,th{padding:6px 4px}main{padding:12px}.karte{padding:12px}}
