:root{--font-ui: "Hanken Grotesk", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--canvas: #f6f7f9;--surface: #ffffff;--sunken: #f0f1f4;--border: #e5e7ee;--border-strong: #d4d7e0;--ink: #14161c;--muted: #5a6170;--faint: #8b909e;--accent: #2f5bff;--accent-ink: #ffffff;--accent-wash: #eef2ff;--pos: #15924c;--pos-soft: #e3f6ea;--neg: #d92d20;--neg-soft: #fdeceb;--warn: #b86e00;--warn-soft: #fbf0dd;--info: #2f5bff;--info-soft: #eef2ff;--shadow-sm: 0 1px 2px rgba(20,22,28,.05), 0 1px 3px rgba(20,22,28,.06);--shadow-lg: 0 16px 48px rgba(20,22,28,.16);--r-sm: 6px;--r-md: 8px;--r-lg: 12px}html[data-theme=dark]{--canvas: #0b0c0f;--surface: #141519;--sunken: #101116;--border: #262932;--border-strong: #343845;--ink: #eceef3;--muted: #98a0b0;--faint: #5f6675;--accent: #5b7cff;--accent-ink: #0b0c0f;--accent-wash: #161b2e;--pos: #34d39a;--pos-soft: #11251d;--neg: #f87171;--neg-soft: #2a1518;--warn: #fbbf3b;--warn-soft: #271d0d;--info: #5b7cff;--info-soft: #161b2e;--shadow-sm: 0 1px 2px rgba(0,0,0,.4);--shadow-lg: 0 20px 56px rgba(0,0,0,.6)}*{box-sizing:border-box}html,body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-weight:700;letter-spacing:-.014em;margin:0}a{color:var(--accent);text-decoration:none}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.label{font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.muted{color:var(--muted)}.faint{color:var(--faint)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.btn--primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn--primary:hover{background:color-mix(in srgb,var(--accent) 88%,black)}.input{width:100%;height:44px;padding:0 14px;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--r-sm);font-family:inherit;font-size:15px}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700}.pill:before{content:"";width:5px;height:5px;border-radius:999px;background:currentColor}.pill--paid{background:var(--pos-soft);color:var(--pos)}.pill--overdue{background:var(--neg-soft);color:var(--neg)}.pill--sent,.pill--active{background:var(--info-soft);color:var(--info)}.pill--draft,.pill--done{background:var(--sunken);color:var(--muted)}.table{width:100%;border-collapse:collapse;font-size:13.5px}.table th{text-align:left;padding:10px 12px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--border)}.table td{padding:12px;border-bottom:1px solid var(--border)}.table tbody tr:last-child td{border-bottom:none}.row{display:flex;align-items:center;gap:12px}.spread{display:flex;align-items:center;justify-content:space-between}@media(max-width:640px){.table{font-size:12.5px}.table th{padding:8px 10px}.table td{padding:10px}}.shell.svelte-46z6t{min-height:100vh;display:flex;flex-direction:column}header.svelte-46z6t{border-bottom:1px solid var(--border);background:var(--surface);padding:14px 24px}.brand.svelte-46z6t{display:flex;align-items:center;gap:11px;max-width:920px;margin:0 auto;width:100%}.logo.svelte-46z6t{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:800}.brand.svelte-46z6t strong:where(.svelte-46z6t){font-size:15px}main.svelte-46z6t{flex:1;width:100%;max-width:920px;margin:0 auto;padding:32px 24px}footer.svelte-46z6t{max-width:920px;margin:0 auto;width:100%;padding:24px;font-size:12px}@media(max-width:640px){header.svelte-46z6t{padding:12px 16px}main.svelte-46z6t{padding:20px 16px}footer.svelte-46z6t{padding:18px 16px}}
