:root { color-scheme: light; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background:#eef3f7; color:#172633; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; }
header { padding:calc(18px + env(safe-area-inset-top)) 18px 18px; color:white; background:linear-gradient(135deg,#173f62,#2e6f94); }
.eyebrow { font-size:.78rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; opacity:.75; }
h1 { margin:.2rem 0 .35rem; font-size:1.55rem; }
header p { margin:0; opacity:.9; }
main { max-width:720px; margin:0 auto; padding:14px 14px calc(24px + env(safe-area-inset-bottom)); }
.card { background:white; border:1px solid #cfdae3; border-radius:14px; padding:16px; box-shadow:0 3px 12px rgba(20,50,70,.07); }
.empty { text-align:center; margin-top:32px; }
.empty > button { width:100%; margin-top:8px; }
.scanner { display:grid; gap:10px; margin-top:14px; }
.scanner video { display:block; width:100%; max-height:58vh; border-radius:10px; background:#10202c; object-fit:cover; }
.fortschritt { position:sticky; top:0; z-index:2; padding:10px 12px; margin-bottom:10px; border-radius:10px; background:#dcebf5; font-weight:700; }
.liste { display:grid; gap:12px; }
.aufgabe { background:white; border:1px solid #cbd7df; border-radius:14px; padding:15px; box-shadow:0 2px 8px rgba(20,50,70,.06); }
.aufgabe.done { border-color:#72a980; background:#f4fbf5; }
.aufgabe.not_found { border-color:#c69062; background:#fff9f1; }
.uvz { display:flex; font-size:1.25rem; font-weight:800; }
.meta { display:flex; gap:8px; flex-wrap:wrap; margin:7px 0 12px; }
.chip { padding:5px 9px; border-radius:999px; background:#e8eef2; font-weight:700; }
.uvz-chip, .akte-an-chip { border:1px solid rgba(0,0,0,.16); background:var(--chip-hintergrund,#e8eef2); color:var(--chip-text,inherit); }
.uvz-chip { padding:5px 11px; }
.aktionen { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
button, select { min-height:46px; border:1px solid #9eafbb; border-radius:9px; background:#fff; padding:9px 12px; font:inherit; font-weight:650; color:inherit; }
button.primary { background:#235f88; border-color:#235f88; color:white; }
button.selected { outline:3px solid rgba(35,95,136,.23); background:#e8f2f9; border-color:#235f88; }
.abweichung { grid-column:1/-1; display:grid; grid-template-columns:1fr; gap:7px; padding-top:4px; }
.abweichung[hidden] { display:none; }
.abschluss { display:grid; gap:8px; margin-top:15px; }
.quiet { color:#7a3434; }
.result { text-align:center; }
.qr { display:flex; justify-content:center; margin:14px auto; overflow:auto; }
.qr img, .qr canvas { max-width:100%; height:auto !important; }
.meldung { min-height:1.4em; text-align:center; color:#6b2f24; }
[hidden] { display:none !important; }
@media (min-width:600px) { .liste { grid-template-columns:1fr 1fr; } }
