:root{--red:#c62828;--red-dark:#8e1f1f;--bg:#f4f5f7;--card:#fff;--text:#1c1f23;--muted:#6b7280;--border:#e3e6ea;--ok:#2e7d32;--ok-bg:#e6f4ea;--bald:#b26a00;--bald-bg:#fdf0dc;--ueberfaellig:#c62828;--ueberfaellig-bg:#fde5e5;--offen:#475569;--offen-bg:#eef1f5;--shadow:0 1px 2px #0000000d, 0 6px 16px #0000000a;--radius:14px}@media (prefers-color-scheme:dark){:root{--bg:#14171a;--card:#1e2226;--text:#e7eaed;--muted:#9aa4b0;--border:#2c3238;--ok-bg:#14321a;--bald-bg:#3a2a0e;--ueberfaellig-bg:#3a1414;--offen-bg:#232a31;--shadow:0 1px 3px #0006}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior-y:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.app{flex-direction:column;max-width:780px;height:100dvh;margin:0 auto;display:flex}.topbar{z-index:10;background:linear-gradient(180deg, var(--red), var(--red-dark));color:#fff;padding:calc(11px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-left)) 11px max(16px, env(safe-area-inset-right));align-items:center;gap:8px;display:flex;position:sticky;top:0;box-shadow:0 2px 10px #00000024}.brand{letter-spacing:.2px;font-size:1.2rem;font-weight:800}.sync-indicator{color:#fff;background:#ffffff29;border-radius:999px;margin-left:auto;padding:5px 11px;font-size:.75rem;font-weight:600}.sync-indicator.sync-error{background:#0000004d}.topbar .header-gear{color:#fff;font-size:1.15rem}.spin{animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.content{-webkit-overflow-scrolling:touch;flex:1;padding:16px 16px 88px;overflow-y:auto}.tabbar{background:var(--card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);flex:none;display:flex;box-shadow:0 -2px 12px #0000000f}.tabbar a{text-align:center;color:var(--muted);white-space:nowrap;flex:1;padding:11px 1px;font-size:.68rem;font-weight:600;text-decoration:none}.tabbar a.active{color:var(--red);box-shadow:inset 0 2.5px 0 var(--red)}h1{margin:4px 0 16px;font-size:1.4rem}h2{margin:24px 0 10px;font-size:1.1rem}h3{margin:0 0 4px;font-size:1rem}.muted{color:var(--muted)}.small{font-size:.85rem}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;margin-bottom:10px;padding:14px;text-decoration:none;display:block}a.card:active{transform:scale(.995)}.row-between{justify-content:space-between;align-items:center;gap:10px;display:flex}.stack{flex-direction:column;gap:2px;display:flex}.badge{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.78rem;font-weight:700;display:inline-block}.badge-ok{color:var(--ok);background:var(--ok-bg)}.badge-bald{color:var(--bald);background:var(--bald-bg)}.badge-ueberfaellig{color:var(--ueberfaellig);background:var(--ueberfaellig-bg)}.badge-offen{color:var(--offen);background:var(--offen-bg)}.pill{background:var(--offen-bg);color:var(--muted);border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-block}.answer-text{white-space:pre-wrap;line-height:1.5}.hitrow{border-top:1px solid var(--border);cursor:pointer;padding:8px 0}.hitrow:hover{opacity:.85}.progress{background:var(--offen-bg);border-radius:999px;width:100%;height:8px;overflow:hidden}.progress>span{border-radius:999px;height:100%;transition:width .3s;display:block}.summary{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.chip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex:1;min-width:72px;padding:10px}.chip .num{font-size:1.5rem;font-weight:800;line-height:1.1;display:block}.chip .lbl{color:var(--muted);font-size:.72rem;font-weight:600}button{font:inherit;cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-weight:600;transition:transform 60ms,background .15s,opacity .15s}button:active{transform:scale(.97)}.btn-primary{background:var(--red);color:#fff}.btn-primary:active{background:var(--red-dark)}.btn-secondary{background:var(--offen-bg);color:var(--text);border:1px solid var(--border)}.btn-danger{color:var(--ueberfaellig);border:1px solid var(--ueberfaellig);background:0 0}.btn-block{width:100%}.icon-btn{color:var(--muted);background:0 0;padding:4px 8px;font-size:1.1rem}.btn-row{gap:8px;margin-top:8px;display:flex}.fab{bottom:calc(68px + env(safe-area-inset-bottom));background:var(--red);color:#fff;width:56px;height:56px;box-shadow:var(--shadow);z-index:20;border-radius:50%;justify-content:center;align-items:center;font-size:1.6rem;display:flex;position:fixed;right:max(16px,50% - 374px)}label{margin:10px 0 4px;font-size:.85rem;font-weight:600;display:block}input,select,textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:10px;padding:10px}textarea{resize:vertical;min-height:60px}input:focus,select:focus,textarea:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #c6282824}.modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.modal{background:var(--card);border-radius:16px 16px 0 0;width:100%;max-width:780px;max-height:92vh;animation:.18s ease-out slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{background:var(--card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.modal-header h2{margin:0;font-size:1.1rem}.modal-body{padding:16px 16px calc(20px + env(safe-area-inset-bottom))}.empty{text-align:center;color:var(--muted);padding:40px 20px}.divider{background:var(--border);border:0;height:1px;margin:14px 0}.back-link{color:var(--muted);margin-bottom:8px;font-weight:600;text-decoration:none;display:inline-block}.seg{gap:6px;display:flex}.seg-btn{background:var(--offen-bg);color:var(--muted);border:1px solid var(--border);flex:1}.seg-ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}.seg-nok{background:var(--ueberfaellig-bg);color:var(--ueberfaellig);border-color:var(--ueberfaellig)}.seg-na{background:var(--offen-bg);color:var(--text);border-color:var(--muted)}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-top:10px;display:grid}.photo{position:relative}.photo-img{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:100%;height:90px}.photo-del{color:#fff;background:#0009;border-radius:50%;width:24px;height:24px;padding:0;font-size:.8rem;line-height:1;position:absolute;top:4px;right:4px}.print-only{display:none}@media print{.topbar,.tabbar,.fab,.screen-only,.back-link{display:none!important}.print-only{display:block!important}.app{max-width:none;height:auto;margin:0;display:block}.content{height:auto;padding:0;overflow:visible}body{color:#000;background:#fff}}.print-head{border-bottom:2px solid #000;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:8px;display:flex}.print-title{color:#000;font-size:1.4rem;font-weight:800}.print-sub{color:#555;font-size:.9rem}.print-brand{color:var(--red);font-weight:700}.print-meta,.print-fields,.print-check{border-collapse:collapse;color:#000;width:100%;margin-bottom:12px}.print-meta td,.print-fields td{vertical-align:top;border:1px solid #999;padding:6px 8px}.print-meta td:first-child,.print-fields td:first-child{background:#f3f3f3;width:40%;font-weight:600}.print-check th,.print-check td{text-align:left;border:1px solid #999;padding:6px 8px}.print-check th{background:#f3f3f3}.print-notes{color:#000;margin:12px 0}.print-photos{color:#000;margin-top:12px}.print-photo-grid{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.print-photo{border:1px solid #ccc;width:30%}.print-sign{margin-top:48px}.print-sign>div{color:#000;border-top:1px solid #000;width:260px;padding-top:4px;font-size:.85rem}.check-row{cursor:pointer;align-items:center;gap:8px;margin:10px 0 4px;font-weight:600;display:flex}.check-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--red);border:0;flex:none;padding:0}.chip-select{flex-wrap:wrap;gap:6px;margin:4px 0 6px;display:flex}.chip-toggle{background:var(--offen-bg);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:600}.chip-toggle.chip-on{background:var(--red);color:#fff;border-color:var(--red)}.tmpl-heading-row input{background:var(--offen-bg)}.form-section-title{border-top:1px solid var(--border);margin:18px 0 6px;padding-top:8px;font-size:1.05rem}.form-info{color:var(--muted);background:var(--offen-bg);border-radius:8px;margin:8px 0;padding:8px 10px;font-size:.9rem}.check-summary{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.check-section{background:var(--offen-bg);border:1px solid var(--border);text-align:left;border-radius:10px;align-items:center;gap:8px;width:100%;margin-bottom:6px;padding:10px 12px;font-weight:700;display:flex}.check-section-caret{color:var(--muted);width:14px}.check-section-title{flex:1}.check-section-meta{align-items:center;gap:4px;display:flex}.check-item{border:1px solid var(--border);background:var(--card);border-radius:10px;margin-bottom:6px;overflow:hidden}.check-item-head{width:100%;color:inherit;text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:11px 12px;font-weight:600;display:flex}.check-item-label{flex:1}.check-item-note{padding:0 12px 10px}.check-item-body{padding:0 12px 12px}.print-grid{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px;display:grid}.print-cell{color:#000;border:1px solid #999;padding:6px 8px}.print-cell-label{color:#333;font-size:.8rem;font-weight:600}.print-cell-value{color:#000}.print-subhead{color:#000;background:#f3f3f3;border:1px solid #999;grid-column:1/-1;margin-top:4px;padding:4px 8px;font-weight:700}.print-infotext{color:#333;grid-column:1/-1;padding:2px 8px;font-size:.85rem}.print-fields td.print-row-head,.print-check td.print-row-head{background:#eee;width:auto;font-weight:700}.print-fields td.print-row-info{color:#333;background:#fff;width:auto;font-size:.85rem;font-weight:400}
