@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-var.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-500.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-sans:"IBM Plex Sans", "Segoe UI", Roboto, system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.375rem;--text-figure:clamp(1.125rem, 3.6vw, 1.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:3px;--radius:4px;--border:1px;--container:68rem;--row-height:36px;--paper:#f6f4ef;--surface:#fff;--surface-sunken:#efebe3;--surface-hover:#f2efe8;--rule:#ddd7cc;--rule-strong:#c2baa9;--ink:#221f1a;--ink-muted:#6b6559;--accent:#0e4f52;--accent-hover:#0a3b3e;--accent-contrast:#fff;--accent-wash:#e4eeed;--tone-ok-text:#1d5334;--tone-ok-background:#e2edde;--tone-ok-rule:#bcd3b4;--tone-warn-text:#6a4a05;--tone-warn-background:#f6e9cc;--tone-warn-rule:#ddc384;--tone-bad-text:#8b2420;--tone-bad-background:#f7e1dd;--tone-bad-rule:#e0b2aa;--tone-neutral-text:#4e483c;--tone-neutral-background:#eae5db;--tone-neutral-rule:#d0c9ba;--danger:#a02b22;--danger-hover:#86211a;--danger-contrast:#fff;--focus:#0e4f52;--transition:.16s cubic-bezier(.2, 0, .2, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#1a1815;--surface:#232019;--surface-sunken:#14120f;--surface-hover:#2b2720;--rule:#3a342b;--rule-strong:#564d40;--ink:#ede8de;--ink-muted:#a49b8a;--accent:#5fbfb9;--accent-hover:#7ed0ca;--accent-contrast:#08272a;--accent-wash:#12302f;--tone-ok-text:#9fd4ac;--tone-ok-background:#183324;--tone-ok-rule:#2d5238;--tone-warn-text:#e7c673;--tone-warn-background:#352808;--tone-warn-rule:#5b4718;--tone-bad-text:#eda79e;--tone-bad-background:#3b1b17;--tone-bad-rule:#60302a;--tone-neutral-text:#c2b9a7;--tone-neutral-background:#2b2721;--tone-neutral-rule:#453f35;--focus:#5fbfb9}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;touch-action:manipulation}body{min-height:100dvh;font-family:var(--font-sans);font-size:var(--text-base);color:var(--ink);background-color:var(--paper);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.55;display:flex}h1,h2,h3,p,ul,ol,dl,dd,table,fieldset{margin:0}ul{padding:0;list-style:none}.container{width:100%;max-width:var(--container);padding-inline:var(--space-4);margin-inline:auto}@media (width>=48em){.container{padding-inline:var(--space-5)}}@media (width>=75em){.container{padding-inline:var(--space-6)}}main{padding-block:var(--space-5) var(--space-7);flex:1 0 auto}.masthead{border-top:2px solid var(--accent);border-bottom:var(--border) solid var(--rule);background-color:var(--surface)}.masthead-inner{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);min-height:56px;padding-block:var(--space-2);flex-wrap:wrap;display:flex}.wordmark{font-size:var(--text-base);letter-spacing:-.01em;white-space:nowrap;align-items:baseline;gap:.4em;font-weight:600;display:flex}.wordmark-conjunction{font-size:var(--text-xs);font-variant:small-caps;letter-spacing:.08em;color:var(--ink-muted);font-weight:400}.nav-list{align-items:center;gap:var(--space-1) var(--space-4);flex-wrap:wrap;margin:0;display:flex}.nav-list a{padding-block:var(--space-1);font-size:var(--text-sm);color:var(--ink-muted);transition:color var(--transition), border-color var(--transition);border-bottom:2px solid transparent;font-weight:500;text-decoration:none;display:inline-block}.nav-list a:hover{color:var(--ink)}.nav-list a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.account-email{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:22ch;display:inline-block;overflow:hidden}.nav-list form{display:flex}.site-footer{border-top:var(--border) solid var(--rule);padding-block:var(--space-4);font-size:var(--text-xs);color:var(--ink-muted)}.skip-link{z-index:100;padding:var(--space-2) var(--space-4);background-color:var(--surface);color:var(--ink);border:var(--border) solid var(--accent);border-radius:var(--radius);position:absolute;top:0;left:-9999px}.skip-link:focus{left:var(--space-2);top:var(--space-2)}h1{font-size:var(--text-lg);letter-spacing:-.015em;margin-block-end:var(--space-4);font-weight:600;line-height:1.25}h2{font-size:var(--text-md);letter-spacing:-.01em;margin-block:var(--space-6) var(--space-3);font-weight:600;line-height:1.3}main>p,article>p,form>p{max-width:68ch;margin-block-end:var(--space-4)}small{font-size:var(--text-xs)}a{color:var(--accent);text-underline-offset:.2em;transition:color var(--transition);text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}button,a[role=button]{justify-content:center;align-items:center;gap:var(--space-2);min-height:36px;padding:var(--space-2) var(--space-4);font-family:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;border:var(--border) solid var(--accent);border-radius:var(--radius);background-color:var(--accent);color:var(--accent-contrast);transition:background-color var(--transition), border-color var(--transition), color var(--transition);font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}input[type=submit]{justify-content:center;align-items:center;gap:var(--space-2);min-height:36px;padding:var(--space-2) var(--space-4);font-family:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;border:var(--border) solid var(--accent);border-radius:var(--radius);background-color:var(--accent);color:var(--accent-contrast);transition:background-color var(--transition), border-color var(--transition), color var(--transition);font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}button:hover,a[role=button]:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-contrast)}input[type=submit]:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-contrast)}button:active,a[role=button]:active{background-color:var(--accent-hover)}input[type=submit]:active{background-color:var(--accent-hover)}button.secondary,a[role=button].secondary{background-color:var(--surface);border-color:var(--rule-strong);color:var(--ink)}button.secondary:hover,a[role=button].secondary:hover{background-color:var(--surface-hover);border-color:var(--ink-muted);color:var(--ink)}button.outline,a[role=button].outline{border-color:var(--accent);color:var(--accent);background-color:transparent}button.outline:hover,a[role=button].outline:hover{background-color:var(--accent-wash);color:var(--accent)}button.secondary.outline,a[role=button].secondary.outline{border-color:var(--rule-strong);color:var(--ink-muted);background-color:transparent}button.secondary.outline:hover,a[role=button].secondary.outline:hover{background-color:var(--surface-hover);color:var(--ink)}button.danger,a[role=button].danger{background-color:var(--danger);border-color:var(--danger);color:var(--danger-contrast)}button.danger:hover,a[role=button].danger:hover{background-color:var(--danger-hover);border-color:var(--danger-hover);color:var(--danger-contrast)}button.danger.outline,a[role=button].danger.outline{border-color:var(--tone-bad-rule);color:var(--tone-bad-text);background-color:transparent}button.danger.outline:hover,a[role=button].danger.outline:hover{background-color:var(--tone-bad-background);border-color:var(--tone-bad-text);color:var(--tone-bad-text)}button:disabled{cursor:not-allowed;opacity:.45}button:disabled:hover{background-color:var(--accent);border-color:var(--accent)}button.secondary:disabled:hover{background-color:var(--surface);border-color:var(--rule-strong)}button.secondary.outline:disabled:hover{border-color:var(--rule-strong);color:var(--ink-muted);background-color:transparent}@keyframes oas-spin{to{transform:rotate(360deg)}}[aria-busy=true]:before{content:"";vertical-align:-.1em;border:2px solid;border-top-color:transparent;border-radius:50%;flex:none;width:.85em;height:.85em;margin-inline-end:.5em;animation:.7s linear infinite oas-spin;display:inline-block}p[aria-busy=true]{padding-block:var(--space-5);color:var(--ink-muted);align-items:center;display:flex}label{font-size:var(--text-sm);color:var(--ink);margin-block-end:var(--space-3);font-weight:500;display:block}input{width:100%;padding:var(--space-2) var(--space-3);min-height:36px;font-family:inherit;font-size:var(--text-base);color:var(--ink);background-color:var(--surface);border:var(--border) solid var(--rule-strong);border-radius:var(--radius);transition:border-color var(--transition), background-color var(--transition);margin-block-start:var(--space-1);font-weight:400;display:block}input:hover{border-color:var(--ink-muted)}input:focus{border-color:var(--accent);outline:none}input:focus-visible{outline:2px solid var(--focus);outline-offset:1px}input[inputmode=numeric],input[inputmode=decimal]{font-family:var(--font-mono);font-variant-numeric:lining-nums tabular-nums}input[type=date]{font-family:var(--font-mono);font-variant-numeric:lining-nums tabular-nums}input[aria-invalid=true]{border-color:var(--tone-bad-text);background-color:var(--tone-bad-background)}.field-error{font-size:var(--text-xs);color:var(--tone-bad-text);margin-block-start:var(--space-1);font-weight:400;display:block}.grid{gap:0 var(--space-4);grid-template-columns:1fr;max-width:46rem;display:grid}@media (width>=48em){.grid{grid-template-columns:repeat(2,1fr)}}.form-actions{align-items:center;gap:var(--space-2);margin-block:var(--space-4);flex-wrap:wrap;display:flex}.table-scroll{border:var(--border) solid var(--rule);border-radius:var(--radius);background-color:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}thead th{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--text-xs);letter-spacing:.04em;color:var(--ink-muted);background-color:var(--surface-sunken);border-bottom:var(--border) solid var(--rule-strong);white-space:nowrap;font-weight:600}tbody td{padding:var(--space-2) var(--space-3);height:var(--row-height);border-bottom:var(--border) solid var(--rule);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background-color var(--transition)}tbody tr:hover{background-color:var(--surface-hover)}.num{text-align:right;white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}td.num{font-family:var(--font-mono)}td.num .money{font-size:1em}.date{font-family:var(--font-mono);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;color:var(--ink-muted);font-size:.95em}.order-table td:first-child{width:100%;min-width:12rem}.order-table th:not(:first-child),.order-table td:not(:first-child){white-space:nowrap}.order-table tbody tr[data-status=overdue] td:first-child{box-shadow:inset 3px 0 0 var(--tone-bad-text)}.item-editor td{padding:var(--space-1) var(--space-2);vertical-align:top}.item-editor input{margin-block-start:0}.item-editor{min-width:40rem}.item-editor th:first-child,.item-editor td:first-child{width:100%}.item-editor input[inputmode=numeric]{max-width:7rem}.item-editor input[inputmode=decimal]{max-width:9rem}.editor-total{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block:var(--space-4);flex-wrap:wrap;display:flex}.editor-total p{font-size:var(--text-sm);color:var(--ink-muted);margin:0}.editor-total .money{font-size:var(--text-md);color:var(--ink);font-weight:500}.money{font-family:var(--font-mono);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;font-size:.95em}.money-negative{color:var(--tone-bad-text)}.badge{font-size:var(--text-xs);white-space:nowrap;border-radius:var(--radius-sm);color:var(--tone-neutral-text);background-color:var(--tone-neutral-background);border:var(--border) solid var(--tone-neutral-rule);align-items:center;gap:.45em;padding:.1em .55em;font-weight:500;line-height:1.6;display:inline-flex}.badge:before{content:"";background-color:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.badge[data-tone=ok]{color:var(--tone-ok-text);background-color:var(--tone-ok-background);border-color:var(--tone-ok-rule)}.badge[data-tone=warn]{color:var(--tone-warn-text);background-color:var(--tone-warn-background);border-color:var(--tone-warn-rule)}.badge[data-tone=bad]{color:var(--tone-bad-text);background-color:var(--tone-bad-background);border-color:var(--tone-bad-rule)}.summary{gap:var(--border);background-color:var(--rule);border:var(--border) solid var(--rule);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));margin-block-end:var(--space-5);display:grid;overflow:hidden}.summary-cell{padding:var(--space-3) var(--space-4);background-color:var(--surface)}.summary-cell h2{font-size:var(--text-xs);letter-spacing:.04em;color:var(--ink-muted);margin:0;font-weight:500}.summary-figure{font-family:var(--font-mono);font-size:var(--text-figure);font-variant-numeric:lining-nums tabular-nums;margin-block-start:var(--space-1);font-weight:500;line-height:1.2}.summary-figure .money{font-size:1em}.summary-cell[data-emphasis=true]{background-color:var(--accent-wash)}.summary-cell[data-emphasis=true] .summary-figure{color:var(--accent);font-weight:600}.status-filter{gap:var(--space-2);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.filter-link{padding:var(--space-1) var(--space-3);min-height:30px;font-size:var(--text-sm);color:var(--ink-muted);background-color:var(--surface);border:var(--border) solid var(--rule);border-radius:var(--radius-sm);transition:background-color var(--transition), border-color var(--transition), color var(--transition);align-items:center;gap:.45em;text-decoration:none;display:inline-flex}.filter-link:hover{background-color:var(--surface-hover);border-color:var(--rule-strong);color:var(--ink)}.filter-link[aria-current=page]{background-color:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:500}.filter-count{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:lining-nums tabular-nums;opacity:.75}article{padding:var(--space-4);background-color:var(--surface);border:var(--border) solid var(--rule);border-radius:var(--radius);margin-block-end:var(--space-4)}article>header{margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) var(--space-4);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);background-color:var(--surface-sunken);border-bottom:var(--border) solid var(--rule);font-weight:600}article[role=status]{max-width:34rem}.empty-state{padding-block:var(--space-6);text-align:center;color:var(--ink-muted)}.empty-state p{max-width:none;margin-block-end:var(--space-3)}.notice{padding:var(--space-3) var(--space-4);margin-block:var(--space-4);max-width:68ch;font-size:var(--text-sm);color:var(--ink);background-color:var(--surface-sunken);border:var(--border) solid var(--rule);border-inline-start:3px solid var(--accent);border-radius:var(--radius)}.error-panel{color:var(--tone-bad-text);background-color:var(--tone-bad-background);border-color:var(--tone-bad-rule);border-inline-start:3px solid var(--tone-bad-text)}.error-panel>header{color:var(--tone-bad-text);border-bottom-color:var(--tone-bad-rule);background-color:transparent}.error-panel ul{margin:0;padding-inline-start:var(--space-4);list-style:outside}.record-header{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);border-bottom:var(--border) solid var(--rule);flex-wrap:wrap;margin-block-end:var(--space-4);padding-block-end:var(--space-3);display:flex}.record-header h1{margin:0}.record-meta{font-size:var(--text-sm);color:var(--ink-muted);margin-block-start:var(--space-1)}.totals{margin-block:var(--space-4);max-width:26rem;font-size:var(--text-sm);grid-template-columns:1fr auto;gap:0;display:grid}.totals>dt,.totals>dd{padding-block:var(--space-2);border-bottom:var(--border) dotted var(--rule-strong)}.totals>dt{color:var(--ink-muted);padding-inline-end:var(--space-5)}.totals>dd{text-align:right;margin:0}.totals .money{font-size:1em}.totals>dt:nth-last-of-type(2),.totals>dd:nth-last-of-type(2){border-bottom:none}.totals>dt:last-of-type,.totals>dd:last-of-type{color:var(--ink);border-top:2px solid var(--rule-strong);border-bottom:none;padding-block-start:var(--space-3);font-weight:600}.payment-history .table-scroll{max-width:26rem}.payment-history tfoot th,.payment-history tfoot td{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);text-align:left;background-color:var(--surface-sunken);border-top:2px solid var(--rule-strong);font-weight:600}.payment-history tfoot td{text-align:right}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (pointer:coarse){button,a[role=button],input,.filter-link{min-height:44px}input{font-size:1rem}tbody td{height:44px}.nav-list a{padding-block:var(--space-2)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[aria-busy=true]:before{opacity:.5;border-top-color:currentColor}}@media (forced-colors:active){.badge,.filter-link,.summary-cell,article{border:1px solid canvastext}.filter-link[aria-current=page]{forced-color-adjust:none;color:highlighttext;background-color:highlight}}@media print{.masthead,.site-footer,.skip-link,.status-filter,.form-actions,form{display:none!important}body{color:#000;background:#fff;font-size:10pt}main{padding:0}.table-scroll,article{border:1px solid #000;overflow:visible}thead th{color:#000;background:#fff;border-bottom:1px solid #000}}