@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&family=Cormorant+Garamond:wght@500;600&display=swap";:root{--ink:#1b2430;--muted:#4a5565;--line:#dde2e8;--line-soft:#eef1f4;--field:#c8cfd8;--bg:#f4f5f7;--card:#fff;--accent:#0f5e5e;--accent-dark:#0a4444;--accent-soft:#e3f2ef;--warn-bg:#fff6e5;--warn-line:#f0d49a;--warn-ink:#6b4a00;--danger:#a3261f;--mono:"IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:IBM Plex Sans,system-ui,sans-serif}a{color:var(--accent)}a:hover{color:var(--accent-dark)}h1{margin:0;font-size:28px;font-weight:600}h2{margin:0;font-size:18px;font-weight:600}p.sub{color:var(--muted);margin:4px 0 0;font-size:14px}.topbar{background:var(--ink);color:#fff;flex-wrap:wrap;align-items:center;gap:20px;padding:12px 28px;display:flex}.topbar .brand{color:#fff;letter-spacing:.01em;align-items:center;gap:10px;font-size:17px;font-weight:600;text-decoration:none;display:flex}.topbar .brand:hover{color:#fff}.topbar .brand img{width:40px;height:40px;display:block}.topbar nav{flex-wrap:wrap;flex:auto;gap:4px;display:flex}.topbar nav a{color:#d5dce4;border-radius:6px;padding:10px 14px;font-size:14px;text-decoration:none}.topbar nav a.active{color:#fff;background:#2e3a4a}.topbar .who{color:#d5dce4;align-items:center;gap:12px;font-size:13px;display:flex}.topbar .who b{color:#8fd3c9;text-transform:capitalize;font-weight:500}.topbar .who button{color:#d5dce4;cursor:pointer;font:inherit;background:0 0;border:1px solid #4a5565;border-radius:6px;padding:6px 10px;font-size:12px}main.page{flex-direction:column;gap:18px;max-width:1200px;margin:0 auto;padding:24px 20px 56px;display:flex}.row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.spread{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.panel{background:var(--card);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:14px;padding:18px 20px;display:flex}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=760px){.grid3,.grid4{grid-template-columns:1fr}}label.f{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}input,select,textarea{font:inherit;border:1px solid var(--field);color:var(--ink);background:#fff;border-radius:8px;padding:9px 11px;font-size:14px}textarea{resize:vertical}button,.btn{font:inherit;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-size:14px;text-decoration:none;display:inline-flex}button.ghost,.btn.ghost{color:var(--accent);background:#fff}button.plain{color:var(--accent);background:0 0;border:0;min-height:0;padding:4px 6px}button:disabled{opacity:.5;cursor:default}.btn:hover{color:#fff}.btn.ghost:hover{color:var(--accent-dark)}.pills{flex-wrap:wrap;gap:6px;display:flex}.pill{border:1px solid var(--field);min-height:40px;color:var(--ink);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px}.pill.on{background:var(--accent);border-color:var(--accent);color:#fff}.seg{border:1px solid var(--field);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{color:var(--ink);background:#fff;border:0;border-radius:0;min-height:40px}.seg button.on{background:var(--ink);color:#fff}.tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;display:flex}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;padding:10px 14px}.tabs button.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tablewrap{overflow-x:auto}table.t{border-collapse:collapse;width:100%;font-size:14px}table.t th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 8px;font-size:12px;font-weight:500}table.t td{border-bottom:1px solid var(--line-soft);vertical-align:top;padding:9px 8px}table.t td.n,table.t th.n{text-align:right;font-family:var(--mono);white-space:nowrap}table.t tr.pay td{background:#f7f9fc}.tag{white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:12px}.tag.received{background:var(--accent-soft);color:var(--accent-dark)}.tag.on_order{color:var(--warn-ink);background:#fff1d6}.tag.payment{color:#1d3d6e;background:#e8eef8}.tag.credit{color:#4d2a6e;background:#f1e8f8}.note{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-ink);border-radius:8px;padding:10px 12px;font-size:13px}.error{color:var(--danger);font-size:14px}.kv{justify-content:space-between;gap:12px;font-size:14px;display:flex}.kv .v{font-family:var(--mono)}.kv.total{border-top:1px solid var(--line);padding-top:10px;font-size:16px;font-weight:600}.muted{color:var(--muted)}.small{font-size:12px}.center{justify-content:center;align-items:center;min-height:70vh;display:flex}dialog{border:1px solid var(--line);border-radius:12px;width:min(640px,94vw);padding:0}dialog::backdrop{background:#1b243066}dialog form{flex-direction:column;gap:12px;padding:20px;display:flex}.panel.tile{gap:6px}.panel.tile b{font-size:26px;font-weight:600}.warnink{color:var(--warn-ink)}.chg{font-family:var(--mono);white-space:nowrap;font-size:12px}.chg.up{color:var(--accent-dark)}.chg.down{color:var(--danger)}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:12px;height:12px;display:inline-block}.sharebar{align-items:center;gap:8px;min-width:140px;display:flex}.sharebar i{background:var(--accent);border-radius:4px;height:8px;display:block}.sharebar span{font-family:var(--mono);color:var(--muted);font-size:12px}table.t.heat td.n{font-size:13px}table.t tr.dim td{color:var(--muted)}.bucket{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.bucket b{font-family:var(--mono);font-size:18px;font-weight:500}.bucket.late{background:var(--warn-bg);border-color:var(--warn-line)}.tag.age{background:var(--line-soft);color:var(--ink);font-family:var(--mono)}.tag.age.late{background:var(--warn-bg);color:var(--warn-ink)}.chartwrap{overflow-x:auto}.chartwrap svg{min-width:560px}@media (width<=760px){.grid4.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.panel.tile b{font-size:22px}}.entrygrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;display:grid}.sheet{background:#fff;flex-direction:column;gap:22px;width:8.5in;min-height:11in;margin:0 auto 24px;padding:.6in .9in .5in;font-size:13pt;display:flex;box-shadow:0 1px 3px #00000014}.sheet.cardsheet{gap:12px;padding:.5in;font-size:10pt}.sheet .logo{width:1.25in;height:1.25in;margin:0 auto;display:block}.sheet .wordmark{text-align:center;font-family:Cormorant Garamond,Georgia,serif;font-size:34px;font-weight:500}.sheet .tagline{text-align:center;letter-spacing:.28em;margin-top:-14px;font-size:12pt;font-weight:600}.sheet .billto{border-top:1px solid var(--field);justify-content:space-between;gap:24px;padding-top:12px;line-height:1.6;display:flex}.sheet table.totals{border-collapse:collapse;width:100%}.sheet table.totals td{border-bottom:1px solid var(--line);padding:9px 0}.sheet table.totals td.n{text-align:right;font-family:var(--mono)}.sheet table.totals tr.last td{border-bottom:2px solid var(--ink)}.sheet table.totals tr.due td{border-bottom:0;padding-top:14px;font-size:14pt;font-weight:600}.sheet .footer{border-top:1px solid var(--field);white-space:pre-line;margin-top:auto;padding-top:10px;font-size:10.5pt;line-height:1.6}.sheet table.t{font-size:9pt}.sheet table.t th{font-size:8pt}.printbar{z-index:2;background:var(--bg);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:12px 20px;display:flex;position:sticky;top:0}@media print{@page{size:letter;margin:0}html,body,#root{background:#fff!important}*,:before,:after{-webkit-print-color-adjust:economy;print-color-adjust:economy;box-shadow:none!important;text-shadow:none!important;background:0 0!important}.topbar,.printbar,.noprint,dialog{display:none!important}.sheet{page-break-after:always;break-after:page;width:8.5in;height:11in;min-height:0;margin:0;overflow:hidden}.sheet.cardsheet{height:auto;overflow:visible}.sheet:last-child{page-break-after:auto;break-after:auto}table.t thead{display:table-header-group}table.t tr{break-inside:avoid}.tag{border-radius:0;padding:0;color:#000!important}.muted,table.t th{color:#333!important}.sheet .logo{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
