@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,600;8..60,700&display=swap";:root{--bg:#efe8dc;--surface:#faf6f0;--text:#1f1612;--muted:#7a6a5c;--border:#d4c4b0;--accent:#5c3a2a;--danger:#a33b3b;color:var(--text);background:radial-gradient(1000px 480px at 0% -5%, #e8dcc8 0%, transparent 55%), var(--bg);font-family:IBM Plex Sans,sans-serif;line-height:1.45}*{box-sizing:border-box}body{margin:0}h1,h2,h3{margin:0 0 .35rem;font-family:"Source Serif 4",Georgia,serif}button,input,select{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;padding:.5rem .7rem}select{padding-right:2rem}button{background:var(--accent);color:#fff8f0;border-color:var(--accent);cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.linkish{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline}.app{max-width:1280px;margin:0 auto;padding:1.5rem 1.25rem 4rem}.topbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.topbar-brand h1{margin:0;font-size:1.45rem}.topbar-filters{flex:320px;align-items:end;gap:.75rem;display:flex}.topbar-filters .field{min-width:180px}.account-chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:.75rem;padding:.35rem .4rem;display:flex}.avatar{background:var(--accent);color:#fff8f0;border-radius:50%;flex-shrink:0;place-items:center;width:2.1rem;height:2.1rem;font-size:.75rem;font-weight:600;display:grid}.account-meta{min-width:0;display:grid}.account-meta strong{font-size:.9rem;line-height:1.2}.account-meta span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:.75rem;overflow:hidden}.btn-outline{color:var(--accent);border:1px solid var(--border);white-space:nowrap;background:0 0;border-radius:999px;padding:.35rem .75rem;font-size:.8rem}.btn-outline:hover{background:#f3ebe1}.debug-query{color:#1f1612;white-space:pre-wrap;word-break:break-all;background:#fff3a3;border-radius:8px;margin:0;padding:.7rem .85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .2rem;font-size:.75rem}.muted{color:var(--muted)}.small{font-size:.8rem}.error{color:var(--danger)}.banner{text-align:center;padding:.75rem}.login-wrap{place-items:center;min-height:100vh;padding:1rem;display:grid}.card,.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.login-card{gap:.85rem;width:min(420px,100%);display:grid}.field{gap:.3rem;display:grid}.field span{color:var(--muted);font-size:.8rem}.stack{gap:1rem;display:grid}.filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.filter-hint{flex:100%;margin:0}.debug-toggle{color:var(--muted);white-space:nowrap;align-items:center;gap:.4rem;font-size:.8rem;display:flex}.debug-toggle input{border:1px solid var(--border);width:1rem;height:1rem;accent-color:var(--accent);margin:0;padding:0}.statement-toolbar{justify-content:flex-end;display:flex}.statement-header h2{margin-bottom:.15rem}.statement-table tbody tr{cursor:default}.statement-table tbody tr:hover{background:0 0}@media print{.no-print{display:none!important}.app{background:#fff;max-width:none;padding:0}.table-wrap{background:#fff;border:0}}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.65rem .75rem}tbody tr{cursor:pointer}tbody tr:hover{background:#f3ebe1}.badge{text-transform:capitalize;background:#e7d9c8;border-radius:999px;padding:.15rem .5rem;font-size:.8rem;display:inline-block}.status-active{background:#dcead4}.status-partial{background:#f4e3c4}.status-paid{background:#d7e6f2}.status-voided,.status-new{background:#ece6df}.pager{align-items:center;gap:.75rem;display:flex}.metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;display:grid}.metric,.details-grid div{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:.25rem;padding:.9rem;display:grid}.metric span,.details-grid span{color:var(--muted);font-size:.8rem}.details-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}
