:root{color-scheme:light dark;--bg:#f3f5f4;--surface:#fff;--ink:#172d29;--muted:#52635d;--line:#d4ded9;--accent:#155d46;--button:#e9f4ee;--red:#993923;--redbg:#fff0e8;--green:#185a40;--greenbg:#e9f4ee;--focus:#245bd1}
@media(prefers-color-scheme:dark){:root{--bg:#101c18;--surface:#192822;--ink:#eef5f0;--muted:#b0c5b9;--line:#3c5146;--accent:#99dfb8;--button:#253d31;--red:#ffc4ad;--redbg:#482d23;--green:#a2e5bd;--greenbg:#253e30;--focus:#9fbeff}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,sans-serif}main{max-width:1000px;margin:48px auto;padding:0 24px}.heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:22px}h1{font-size:26px;letter-spacing:-.7px;margin:0}#today{font-size:13px;color:var(--muted)}.toolbar{display:flex;gap:20px;align-items:center;margin-bottom:18px}.search{flex:1}input[type=search]{width:100%;max-width:370px;font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}input::placeholder{color:var(--muted);opacity:1}.filter{display:flex;align-items:center;gap:7px;white-space:nowrap;min-height:44px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.board{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.columns,.row{display:grid;grid-template-columns:minmax(160px,1.7fr) 1fr 1fr .85fr 95px;gap:12px;align-items:center;padding:18px 22px}.columns{font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);padding-top:12px;padding-bottom:12px}.row+.row{border-top:1px solid var(--line)}.client strong{display:block;font-size:15px;font-weight:650}.number{display:block;color:var(--muted);font-size:12px;margin-top:2px}.amount{font-variant-numeric:tabular-nums;font-weight:600}.badge{font-size:12px;font-weight:600;border-radius:5px;padding:4px 8px;display:inline-block;background:var(--bg);color:var(--muted)}.badge.overdue{background:var(--redbg);color:var(--red)}.badge.paid{background:var(--greenbg);color:var(--green)}button{min-height:42px;width:95px;border:1px solid var(--line);border-radius:7px;background:var(--button);color:var(--accent);font:600 13px system-ui;cursor:pointer}button:hover{filter:brightness(.95)}button:disabled{opacity:.65;cursor:wait}input:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.totals{display:flex;justify-content:flex-end;gap:44px;margin-top:24px}.totals span{font-size:12px;display:block;color:var(--muted)}.totals strong{display:block;font-size:25px;font-weight:650;font-variant-numeric:tabular-nums;margin-top:2px}#message{font-size:13px;color:var(--muted);min-height:20px;margin-top:20px}#empty{padding:12px 22px;color:var(--muted)}
@media(max-width:620px){main{margin:24px auto;padding:0 16px}.heading{align-items:flex-start;flex-direction:column;gap:3px;margin-bottom:18px}.toolbar{gap:10px;align-items:center}input[type=search]{font-size:16px;min-width:0;padding:10px}.filter{font-size:13px}.columns{display:none}.row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:16px}.client{grid-column:1;grid-row:1}.amount{grid-column:2;grid-row:1;text-align:right}.due{grid-column:1;grid-row:2;color:var(--muted);font-size:13px}.due:before{content:'Due '}.status{grid-column:1;grid-row:3}.payment{grid-column:2;grid-row:2 / span 2;align-self:end}.totals{justify-content:space-between;gap:12px}.totals strong{font-size:24px}}
