@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/adb45196eddef626-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d0ba92e140f0dc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Instrument Sans Fallback;src:local("Arial");ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.00%;size-adjust:102.74%}.__className_3d9088{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.__variable_3d9088{--font-sans:"Instrument Sans","Instrument Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_595324{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_595324{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--canvas:#f5f6f3;--surface:#ffffff;--hairline:#dde1d7;--border-strong:#d3d8cd;--ledger:#1e5945;--ledgerwash:#cfe0d4;--ledger-tint:#e7f0e9;--ink:#14161b;--text-2:#4b5049;--text-3:#6b7068;--text-4:#8a8f87;--warning:#e0b23c;--warning-bg:#fbf1dc;--warning-text:#6e5411;--negative-bg:#fbedef;--negative-text:#7a2e38}@media (prefers-color-scheme:dark){:root{--canvas:#14161b;--surface:#1d2026;--hairline:#262b33;--border-strong:#2c3038;--ledger:#4e9c7f;--ledgerwash:#27352e;--ledger-tint:#222b26;--ink:#f5f6f3;--text-2:#c4c9c0;--text-3:#a7ada4;--text-4:#7e837b;--warning-bg:#342b15;--warning-text:#e8c56a;--negative-bg:#33222a;--negative-text:#e8a2ac}}*{box-sizing:border-box;margin:0}body{background:var(--canvas);color:var(--ink);font-family:var(--font-sans),system-ui,sans-serif;font-size:15px;line-height:1.5}.line-no,.mono,td.money{font-family:var(--font-mono),monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shell{display:flex;min-height:100vh}.sidebar{width:200px;padding:22px 14px;border-right:1px solid var(--hairline);display:flex;flex-direction:column;gap:22px;flex-shrink:0}.wordmark{font-weight:700;font-size:21px}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{color:var(--text-2);text-decoration:none;padding:8px 10px;border-radius:8px;font-weight:500}.sidebar nav a:hover{background:var(--ledger-tint);color:var(--ledger)}.sidebar-foot{margin-top:auto;font-size:13px;color:var(--text-3);padding:8px 10px;border:1px solid var(--border-strong);border-radius:18px;text-align:center}.content{flex:1 1;padding:26px;max-width:1100px}h1{font-size:25px;letter-spacing:-.02em;margin-bottom:18px}h2{font-size:17px;margin:22px 0 10px}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:15px;padding:18px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.stat-label{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.stat-label,.stat-value{font-family:var(--font-mono)}.stat-value{font-size:32px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:4px}.perforation{border:none;border-top:2px dashed var(--border-strong);margin:14px -18px;position:relative}table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:12px;overflow:hidden}td,th{text-align:left;padding:9px 12px;border-bottom:1px solid var(--hairline)}th{font-size:12px;color:var(--text-3);font-weight:500;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}td.money,th.money{text-align:right}tr.selected{background:var(--ledger-tint);outline:2px solid var(--ledger);outline-offset:-2px}tr[data-flagged] td:first-child{box-shadow:inset 3px 0 var(--warning)}.tag{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:500;white-space:nowrap}.tag.needs_review{background:var(--warning-bg);color:var(--warning-text)}.tag.ready{background:var(--ledger-tint);color:var(--ledger)}.tag.draft{background:var(--canvas);color:var(--text-3)}.btn{display:inline-block;background:var(--ledger);color:#fff;border:none;padding:9px 16px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;text-decoration:none}.btn.secondary{background:var(--surface);color:var(--ink)}.btn.secondary,.kbd{border:1px solid var(--border-strong)}.kbd{font-family:var(--font-mono);font-size:11px;background:var(--canvas);border-radius:5px;padding:1px 6px}.muted{color:var(--text-3);font-size:13px}.bar{height:8px;border-radius:4px;background:var(--ledgerwash);overflow:hidden}.bar>div{height:100%;background:var(--ledger)}:root{--negative:#c97c86}@media (prefers-color-scheme:dark){:root{--negative:#b06872}}.bar>div.watch{background:var(--warning)}.bar>div.over{background:var(--negative)}.tag.watch{background:var(--warning-bg);color:var(--warning-text)}.tag.over{background:var(--negative-bg);color:var(--negative-text)}.tag.ontrack{background:var(--ledger-tint);color:var(--ledger)}.budget-row{display:grid;grid-template-columns:180px 1fr 116px 132px 124px;grid-gap:16px;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--hairline)}.budget-row:last-child{border-bottom:none}.budget-row a{color:inherit;text-decoration:none}.budget-row a:hover{color:var(--ledger)}@media (max-width:900px){.budget-row{grid-template-columns:1fr 1fr}}.plot{background:var(--surface);border-radius:10px;display:block;width:100%;height:auto}.rule-row{display:grid;grid-template-columns:28px 1fr auto auto;grid-gap:12px;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--hairline)}.rule-row:last-child{border-bottom:none}.rule-row[data-disabled]{opacity:.55}.rule-order{font-size:12px;color:var(--text-3);text-align:center;border:1px solid var(--border-strong);border-radius:6px;padding:1px 0}.rule-controls{display:flex;gap:6px}.icon-btn{background:var(--surface);color:var(--text-2);border:1px solid var(--border-strong);border-radius:8px;padding:4px 9px;font-size:12px;font-family:inherit;cursor:pointer}.icon-btn:hover:not(:disabled){border-color:var(--ledger);color:var(--ledger)}.icon-btn:disabled{opacity:.4;cursor:default}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12px;color:var(--text-3);font-weight:500}.field input,.field select{padding:8px 10px;font-size:14px;font-family:inherit;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:9px}.field input.mono{font-family:var(--font-mono),monospace;text-align:right}.form-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.error-note{background:var(--negative-bg);color:var(--negative-text);padding:9px 12px;border-radius:9px;font-size:13px;margin-top:12px}.export-grid{display:flex;flex-wrap:wrap;gap:10px;align-items:center}