*,:before,:after{box-sizing:border-box}:root{color:#1f2328;background:#f6f7f9;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}body{margin:0}a{color:inherit}button{font:inherit;cursor:pointer;color:#fff;background:#1f2328;border:1px solid #1f2328;border-radius:6px;padding:.35rem .75rem;font-size:.875rem}button.secondary{color:#1f2328;background:#fff}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.topbar{background:#fff;border-bottom:1px solid #e3e5e8;align-items:center;gap:2rem;padding:.75rem 2rem;display:flex}.brand{font-size:1.125rem;font-weight:700}.topbar nav{gap:1.25rem;font-size:.9375rem;display:flex}.topbar nav a{color:#59636e;text-decoration:none}.topbar nav a[aria-current=page]{color:#1f2328;font-weight:600}.page{max-width:1120px;margin:0 auto;padding:2rem}.page-head{justify-content:space-between;align-items:center;display:flex}.page-head h1{margin:0;font-size:1.5rem}.summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;display:grid}.summary div{background:#fff;border:1px solid #e3e5e8;border-radius:8px;padding:1rem 1.25rem}.summary .ledger-figure{position:relative}.ledger-delta{font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:600;position:absolute;top:1rem;right:1.25rem}.ledger-delta-in{color:#1a7f37}.ledger-delta-out{color:#59636e}.summary dt{color:#59636e;font-size:.875rem}.summary dd{font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-size:1.375rem;font-weight:600}.invoices{border-collapse:collapse;background:#fff;border:1px solid #e3e5e8;border-radius:8px;width:100%;font-size:.9375rem}.invoices th,.invoices td{text-align:left;border-bottom:1px solid #eef0f2;padding:.75rem 1rem}.invoices th{color:#59636e;font-size:.8125rem;font-weight:500}.invoices tbody tr:last-child td{border-bottom:none}.num{font-variant-numeric:tabular-nums;text-align:right!important}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8125rem}.muted{color:#59636e}.actions{width:9rem;text-align:right!important}.actions button{transition:background-color .1s ease-out}.actions button:hover{background:#000}.actions button:focus-visible{outline-offset:2px;outline:2px solid #1d4ed8}.actions button:disabled{cursor:not-allowed;opacity:.5}.status-slot{display:inline-grid}.status-slot>.status{grid-area:1/1;justify-self:start}.status{border-radius:999px;padding:.125rem .5rem;font-size:.8125rem;font-weight:500;display:inline-block}.status-draft{color:#59636e;background:#eef0f2}.status-sent{color:#1d4ed8;background:#e7f0fe}.status-overdue{color:#b42318;background:#fdecec}.status-paid{color:#1a7f37;background:#e6f4ea}
