:root{--bg:#f4f6f9;--panel:#fff;--ink:#1b2430;--muted:#6b7686;--line:#dde3ea;--brand:#c8102e;--brand-dark:#9d0c24;--nav:#1b2430;--ok:#1a7f4b;--warn:#b7791f;--bad:#c0392b;--changed:#fff2b3;color:var(--ink);font-family:Segoe UI,system-ui,-apple-system,Roboto,sans-serif;font-size:14px}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--brand-dark);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 14px;font-size:20px}h2{margin:18px 0 10px;font-size:16px}.topbar{background:var(--nav);color:#fff;z-index:30;align-items:center;gap:8px;height:48px;padding:0 16px;display:flex;position:sticky;top:0}.topbar .logo{letter-spacing:.5px;margin-right:18px;font-weight:700}.topbar .logo b{color:var(--brand)}.topbar nav{flex:1;gap:2px;display:flex;overflow-x:auto}.topbar nav a{color:#cfd6df;white-space:nowrap;padding:14px 12px}.topbar nav a.active,.topbar nav a:hover{color:#fff;box-shadow:inset 0 -3px var(--brand);text-decoration:none}.topbar .who{color:#aab4c1;text-align:right;font-size:12px;line-height:1.25}.topbar button{color:#fff;background:0 0;border:1px solid #55606f}.page{max-width:100%;padding:18px 20px 60px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin-bottom:14px;padding:14px 16px}button,.btn{font:inherit;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}button:hover:not(:disabled){border-color:#9aa5b3}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--brand);border-color:var(--brand);color:#fff}button.primary:hover:not(:disabled){background:var(--brand-dark)}button.ok{background:var(--ok);border-color:var(--ok);color:#fff}button.danger{color:var(--bad)}button.small{padding:2px 8px;font-size:12px}button.link{color:var(--brand-dark);background:0 0;border:none;padding:0}input,select,textarea{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;min-width:0;padding:6px 8px}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:2px solid #f1b1bb}label.f{color:var(--muted);flex-direction:column;gap:3px;font-size:12px;display:flex}label.f input,label.f select{color:var(--ink);font-size:14px}.filters{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.filters label.f{min-width:120px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spacer{flex:1}.muted{color:var(--muted)}.err{color:var(--bad);background:#fdecea;border:1px solid #f5c6c1;border-radius:6px;margin:8px 0;padding:8px 12px}.okmsg{color:var(--ok);background:#e7f6ee;border:1px solid #bfe3cf;border-radius:6px;margin:8px 0;padding:8px 12px}.warnmsg{color:#7a5513;background:#fff6e0;border:1px solid #f1dca7;border-radius:6px;margin:8px 0;padding:8px 12px}.stats{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.stat{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:130px;padding:8px 14px}.stat b{font-size:17px;display:block}.stat span{color:var(--muted);font-size:12px}.tablewrap{border:1px solid var(--line);background:#fff;border-radius:8px;min-height:160px;max-height:calc(100vh - 330px);overflow:auto}table{border-collapse:separate;border-spacing:0;width:100%}th,td{white-space:nowrap;text-align:left;vertical-align:middle;border-bottom:1px solid #eef1f5;border-right:1px solid #f3f5f8;padding:5px 8px}th{z-index:5;color:#435062;border-bottom:1px solid var(--line);background:#eef2f7;font-size:12px;position:sticky;top:0}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr:hover td{background:#fafbfd}tr.editing td{background:#fffbe8}tr.removed td{color:#98a2b0;text-decoration:line-through}td.changed{background:var(--changed);cursor:help}tr:hover td.changed{background:#ffec99}td input,td select{width:100%;min-width:90px;padding:2px 4px;font-size:13px}td input[type=number]{text-align:right;min-width:110px}.sticky-l{z-index:4;background:inherit;position:sticky;left:0}td.sticky-l{background:#fff}tr.editing td.sticky-l{background:#fffbe8}.badge{color:#435062;background:#e9edf2;border-radius:10px;padding:1px 8px;font-size:12px;display:inline-block}.badge.confirmed{color:var(--ok);background:#dff3e8}.badge.disputed{color:var(--bad);background:#fde7e4}.badge.in_review{color:var(--warn);background:#fff0cf}.badge.added_by_dealer{color:#2a5db0;background:#e3ecfb}.badge.removed_by_bank{color:#888;background:#eee}.badge.locked{color:var(--bad);background:#fde7e4}.pager{align-items:center;gap:10px;margin-top:10px;display:flex}.modal-bg{z-index:100;background:#141c2873;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:#fff;border-radius:10px;width:min(760px,100%);padding:18px 20px;box-shadow:0 12px 40px #00000040}.modal h2{margin-top:0}.grid2{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.drawer{z-index:90;background:#fff;width:min(480px,100%);padding:16px 18px;position:fixed;top:0;bottom:0;right:0;overflow:auto;box-shadow:-8px 0 30px #0003}.hist-item{border-left:3px solid var(--line);margin-bottom:10px;padding:4px 0 4px 10px}.hist-item small{color:var(--muted);display:block}.old{color:var(--bad);text-decoration:line-through}.new{color:var(--ok);font-weight:600}.login{max-width:360px;margin:12vh auto}.login h1{text-align:center}.login label.f{margin-bottom:12px}.login button{justify-content:center;width:100%;padding:9px}.tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:12px;display:flex}.tabs button{background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;padding:8px 14px}.tabs button.on{border-bottom-color:var(--brand);font-weight:600}.progress{background:#e6ebf1;border-radius:4px;height:8px;overflow:hidden}.progress>div{background:var(--brand);height:100%;transition:width .2s}.sheetcard{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:12px;padding:12px 14px}.sheetcard.off{opacity:.55}ul.issues{color:#7a5513;margin:6px 0;padding-left:18px;font-size:12px}.pw{-webkit-user-select:all;user-select:all;background:#f2f4f7;border-radius:6px;padding:6px 10px;font-family:Consolas,monospace;font-size:16px}.pct{color:var(--muted);font-size:12px}
