:root{--blue:#1f4e79;--blue-l:#e8f0f8;--line:#d9dee3;--muted:#5f6b76;--offen:#fff2cc;--pruefen:#f8cbad;--info:#ededed;color:#1d2329;background:#f5f7f9;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}.page{max-width:1280px;margin:0 auto;padding:24px 20px 60px}header h1{color:var(--blue);margin:0 0 6px;font-size:1.6rem}.lead{margin:0 0 4px;font-size:1.05rem}.privacy{color:var(--muted);margin:0 0 20px}.drop{text-align:center;cursor:pointer;background:#fff;border:2px dashed #9fb3c8;border-radius:12px;padding:36px 20px;font-size:1.1rem;transition:background .15s,border-color .15s}.drop:hover,.drop:focus,.drop.over{background:var(--blue-l);border-color:var(--blue);outline:none}.drop.busy{opacity:.6;pointer-events:none}.drop-icon{margin-bottom:6px;font-size:2.2rem}.status{color:var(--muted)}.alert{border-radius:8px;margin:12px 0;padding:10px 14px}.alert.error{background:#fde8e6;border:1px solid #f2b8b2}.alert ul{margin:6px 0 0;padding-left:20px}.card{border:1px solid var(--line);background:#fff;border-radius:12px;margin:16px 0;padding:16px 18px}.card h2{margin:0 0 12px;font-size:1.15rem}.stats{flex-wrap:wrap;gap:12px;display:flex}.stat{background:#f2f4f5;border-radius:10px;min-width:120px;padding:10px 14px}.stat.offen{background:var(--offen)}.stat.pruefen{background:var(--pruefen)}.stat.info{background:var(--info)}.stat .num{font-size:1.5rem;font-weight:700}.stat .lbl{color:var(--muted);font-size:.9rem}.actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px;display:flex}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 12px}button.primary{background:var(--blue);color:#fff;border:none;padding:12px 22px;font-size:1.05rem;font-weight:600}button.primary:hover{background:#163a5c}button.link{color:#b03a2e;background:0 0;border:none;padding:0;text-decoration:underline}.saved{color:#2e7d32}table{border-collapse:collapse}table.uva td,table.uva th{text-align:right;padding:4px 14px 4px 0}table.uva td:first-child,table.uva th:first-child{text-align:left}table.uva tr.sum td{border-top:1px solid var(--line);font-weight:600}table.uva tr.total td{border-top:2px solid #1d2329;padding-top:6px;font-size:1.1rem;font-weight:700}table.uva tr.diff td{background:var(--offen)}.muted{color:var(--muted);font-size:.92rem}.tabs{align-items:center;gap:8px;margin-bottom:10px;display:flex}.tabs button.on{background:var(--blue);color:#fff;border-color:var(--blue)}.tabs .only{color:var(--muted);margin-left:auto}.scroll{overflow-x:auto}table.preview{width:100%;font-size:.85rem}table.preview th{text-align:left;white-space:nowrap;background:#f2f4f5;padding:6px;position:sticky;top:0}table.preview td{border-top:1px solid var(--line);vertical-align:top;padding:5px 6px}table.preview td.text{min-width:260px}table.preview td.amounts,table.preview td.n{white-space:nowrap}table.preview td.n{text-align:right;font-variant-numeric:tabular-nums}table.preview td.note{color:#3b4650;min-width:220px}tr.flag-offen td{background:var(--offen)}tr.flag-pruefen td{background:var(--pruefen)}tr.flag-info td{background:var(--info);color:var(--muted)}.badge{background:#fff;border:1px solid #c9a227;border-radius:6px;padding:1px 6px;font-size:.75rem;font-weight:600;display:inline-block}.badge.pruefen{border-color:#c0562f}.badge.info{border-color:#999}details summary{cursor:pointer;font-weight:600}.rules code{white-space:normal}.addrule{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.addrule input,.addrule select{font:inherit;border:1px solid var(--line);border-radius:8px;padding:6px 8px}.addrule input{min-width:240px}footer{color:#3b4650;margin-top:24px}footer li{margin-bottom:6px}
