@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.CiTLva_className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.CiTLva_variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.0klc_mi0-5f4_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.2874ccu1_u7jf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.0klc_mi0-5f4_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.2874ccu1_u7jf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.0klc_mi0-5f4_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.2874ccu1_u7jf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.0klc_mi0-5f4_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.2874ccu1_u7jf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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.0%;size-adjust:102.74%}.aawwhG_className{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.aawwhG_variable{--font-body:"Instrument Sans", "Instrument Sans Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/606d931d1de1f041-s.05w992gizc866.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/93ce1fb4a74b790b-s.1m9k836wuo8c7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/3673b45bb7dd3324-s.2lz2vdkeqaz2g.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1317291d1835f011-s.1ocfy-u58n01e.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/4656623e11daf2b7-s.3r4--ze9tqti8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e1750518007a189a-s.p.29e6ydd6osd72.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.zYwGQa_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal;font-weight:500}.zYwGQa_variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#ecefea;--surface:#fff;--surface-2:#e2e6df;--surface-3:#d6dbd3;--line:#d3d8d0;--ink:#0e1311;--ink-2:#47504b;--ink-3:#737c77;--accent:#3b5200;--accent-fill:#d4ff3a;--on-accent:#0e1311;--accent-soft:#f2fbcc;--good:#17924f;--warn:#b57c00;--bad:#d93a27;--good-soft:#ddf3e5;--warn-soft:#fbefcf;--bad-soft:#fce1dc;--unrev:#2f7df6;--info-soft:#e1ecfe;--hero:#0e1311;--on-hero:#f3f6ef;--on-hero-2:#9ba59f;--hero-line:#2a322e;--hero-track:#232a27;--g-housing:#2f7df6;--g-food:#ff7a1a;--g-transport:#0fa899;--g-shopping:#e5458f;--g-health:#8e62ee;--g-bills:#5e7183;--g-unbudgeted:#9ba19d;--c-income:#0fa899;--c-spend:#0e1311;--card-bilt-a:#141414;--card-bilt-b:#4a4a48;--card-amex-a:#a9792a;--card-amex-b:#ebcb7e;--card-chase-a:#0a2756;--card-chase-b:#2464c9;--card-bank-a:#0b4a42;--card-bank-b:#14a08e;--card-ally-a:#3a1650;--card-ally-b:#8a3fb0;--on-card:#fff;--on-card-2:#ffffffb8;--on-card-amex:#2a1d04;--card-chip:#e9d9a6;--card-chip-line:#b79e5a;--shadow:0 1px 2px #0e131114, 0 8px 24px #0e131114;--shadow-lg:0 20px 60px #0e131140;--scrim:#0e131166;--focus:#2f7df6;--toast:#0e1311;--on-toast:#f3f6ef;--chip-dot-l:.68;--chip-dot-c:.17;--chip-mix:18%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#090b0a;--surface:#151917;--surface-2:#1f2421;--surface-3:#2a302d;--line:#2a302d;--ink:#f1f4ee;--ink-2:#b2bab4;--ink-3:#7f8882;--accent:#d4ff3a;--accent-fill:#d4ff3a;--on-accent:#0e1311;--accent-soft:#2b3417;--good:#3dd47f;--warn:#ffc233;--bad:#ff6a55;--good-soft:#12301f;--warn-soft:#33290a;--bad-soft:#3a1a15;--unrev:#5b9bff;--info-soft:#14243d;--hero:#1a201d;--on-hero:#f3f6ef;--on-hero-2:#97a19b;--hero-line:#323a36;--hero-track:#262d2a;--g-housing:#5b9bff;--g-food:#ff8e3d;--g-transport:#2ccbbb;--g-shopping:#ff66ae;--g-health:#a784ff;--g-bills:#8ea2b5;--g-unbudgeted:#7e8681;--c-income:#2ccbbb;--c-spend:#e4e9e2;--card-bilt-a:#0b0b0b;--card-bilt-b:#3c3c3a;--card-amex-a:#8f6420;--card-amex-b:#d9b565;--card-chase-a:#08214a;--card-chase-b:#1d56b3;--card-bank-a:#083a34;--card-bank-b:#11887a;--card-ally-a:#2c103d;--card-ally-b:#6e3290;--shadow:0 1px 2px #0006, 0 8px 24px #0005;--shadow-lg:0 20px 60px #000a;--scrim:#000a;--focus:#d4ff3a;--toast:#f1f4ee;--on-toast:#0e1311;--chip-dot-l:.74;--chip-dot-c:.16;--chip-mix:22%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#090b0a;--surface:#151917;--surface-2:#1f2421;--surface-3:#2a302d;--line:#2a302d;--ink:#f1f4ee;--ink-2:#b2bab4;--ink-3:#7f8882;--accent:#d4ff3a;--accent-fill:#d4ff3a;--on-accent:#0e1311;--accent-soft:#2b3417;--good:#3dd47f;--warn:#ffc233;--bad:#ff6a55;--good-soft:#12301f;--warn-soft:#33290a;--bad-soft:#3a1a15;--unrev:#5b9bff;--info-soft:#14243d;--hero:#1a201d;--on-hero:#f3f6ef;--on-hero-2:#97a19b;--hero-line:#323a36;--hero-track:#262d2a;--g-housing:#5b9bff;--g-food:#ff8e3d;--g-transport:#2ccbbb;--g-shopping:#ff66ae;--g-health:#a784ff;--g-bills:#8ea2b5;--g-unbudgeted:#7e8681;--c-income:#2ccbbb;--c-spend:#e4e9e2;--card-bilt-a:#0b0b0b;--card-bilt-b:#3c3c3a;--card-amex-a:#8f6420;--card-amex-b:#d9b565;--card-chase-a:#08214a;--card-chase-b:#1d56b3;--card-bank-a:#083a34;--card-bank-b:#11887a;--card-ally-a:#2c103d;--card-ally-b:#6e3290;--shadow:0 1px 2px #0006, 0 8px 24px #0005;--shadow-lg:0 20px 60px #000a;--scrim:#000a;--focus:#d4ff3a;--toast:#f1f4ee;--on-toast:#0e1311;--chip-dot-l:.74;--chip-dot-c:.16;--chip-mix:22%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--fg:var(--ink);--muted:var(--ink-3);--sunk:var(--surface-2);--good-bg:var(--good-soft);--warn-bg:var(--warn-soft);--bad-bg:var(--bad-soft);--r-card:20px;--r-input:12px;--topbar-h:64px;--dock:0px;--f-display:var(--font-display,"Bricolage Grotesque"), var(--font-body,"Instrument Sans"), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--f-body:var(--font-body,"Instrument Sans"), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-num:var(--font-mono,"JetBrains Mono"), ui-monospace, "SF Mono", Menlo, Consolas, monospace}@media (max-width:759.98px){:root{--topbar-h:56px;--dock:calc(64px + env(safe-area-inset-bottom,0px))}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.45;overflow-x:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.small{font-size:12.5px}.disp{font-family:var(--f-display);letter-spacing:-.02em}.mono{font-family:var(--f-num);font-size:.86em}.icon{flex:none;width:1em;height:1em}.shell{min-height:100vh}.topbar{z-index:30;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(14px);position:sticky;top:0}.topbar-in{max-width:1280px;min-height:var(--topbar-h);padding:10px 24px;padding-top:calc(10px + env(safe-area-inset-top,0px));align-items:center;gap:12px;margin:0 auto;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.brand-mark{background:var(--accent-fill);width:30px;height:30px;color:var(--on-accent);font-family:var(--f-display);border-radius:9px;place-items:center;font-size:15px;font-weight:800;display:grid}.nav{scrollbar-width:none;gap:4px;min-width:0;margin-left:16px;display:flex;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{color:var(--ink-2);border-radius:999px;flex:none;padding:10px 14px;font-size:15px;font-weight:600}.nav a:hover{background:var(--surface-2)}.nav a.on,.nav a.on:hover{background:var(--ink);color:var(--bg)}.side-foot{white-space:nowrap;align-items:center;gap:12px;margin-left:auto;display:flex}.side-member{color:var(--ink-2);font-size:13px;font-weight:600}.side-foot button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink-2);border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.side-foot button:hover{color:var(--fg);border-color:var(--ink-3)}.main{min-width:0;max-width:1280px;margin:0 auto;padding:8px 24px 64px}@media (min-width:1100px){.topbar-in{padding-left:32px;padding-right:32px}.main{padding:8px 32px 64px}}@media (min-width:760px) and (max-width:1099.98px){.side-member{display:none}.nav a{padding:9px 12px;font-size:14.5px}}.tabbar{display:none}@media (max-width:759.98px){.topbar-in{padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top,0px))}.nav,.side-member{display:none}.side-foot button{min-height:34px}.main{padding:4px 16px calc(var(--dock) + 40px)}.tabbar{z-index:40;padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-width:0;min-height:54px;color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:600;display:flex;overflow:hidden}.tabbar a.on{color:var(--ink)}.tab-ic{border-radius:999px;place-items:center;width:44px;height:28px;font-size:22px;display:grid}.tabbar a.on .tab-ic{background:var(--accent-fill);color:var(--on-accent)}}@media (max-width:359.98px){.tabbar a{font-size:10px}.tab-ic{width:38px}}.head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;margin:8px 0 16px;display:flex}.head h1{font-family:var(--f-display);letter-spacing:-.02em;margin:0;font-size:34px;font-weight:800;line-height:1.05}.sec-h{align-items:baseline;gap:8px;margin:28px 0 10px;display:flex}.sec-h h2{font-family:var(--f-display);letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700}.sec-h .act{margin-left:auto;font-size:14.5px}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:700}.stack{flex-direction:column;gap:12px;display:flex}.card{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);min-width:0;padding:18px}.card.flat{box-shadow:none;border:1px solid var(--line)}.hero{background:var(--hero);color:var(--on-hero);box-shadow:var(--shadow);border-radius:28px;min-width:0;padding:20px 18px 16px}.hero .muted,.hero-lbl,.hero-sub{color:var(--on-hero-2)}.hero-lbl{font-size:14px;font-weight:600}.hero-big{font-family:var(--f-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:8px 0 6px;font-size:56px;font-weight:800;line-height:1}.hero-big .cents{color:var(--on-hero-2);font-size:.5em}.hero-sub{font-size:14px}.hero-sub b{color:var(--on-hero)}.hero .ring-bg{stroke:var(--hero-track)}@media (min-width:1100px){.hero{border-radius:32px;padding:26px 30px 22px}.hero-big{font-size:76px}}.tile{--gc:var(--g-unbudgeted);text-align:left;background:color-mix(in srgb, var(--gc) 16%, var(--surface));min-height:150px;box-shadow:var(--shadow);color:var(--fg);border:0;border-radius:22px;flex-direction:column;padding:14px;display:flex;position:relative;overflow:hidden}a.tile:hover,button.tile:hover{background:color-mix(in srgb, var(--gc) 24%, var(--surface))}.tile .t-name{padding-right:46px;font-size:15px;font-weight:700;line-height:1.2}.tile .t-ring{position:absolute;top:10px;right:10px}.tile .t-left{font-family:var(--f-display);font-variant-numeric:tabular-nums;margin-top:auto;font-size:24px;font-weight:800;line-height:1.1}.tile .t-left.over{color:var(--bad)}.tile .t-of{color:var(--ink-2);font-size:12.5px}.tile.unb{background:var(--surface);border:2px dashed var(--line);box-shadow:none}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (min-width:760px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1100px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}.list{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);margin:0;padding:0;list-style:none;overflow:hidden}.list.flat{box-shadow:none;border:1px solid var(--line)}.list-row{border-bottom:1px solid var(--line);text-align:left;width:100%;min-height:56px;color:inherit;background:0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.list-row:last-child{border-bottom:0}a.list-row:hover,button.list-row:hover{background:var(--surface-2)}.list-row .r-main{flex:1;min-width:0}.list-row .r-title{font-weight:600}.list-row .r-sub{color:var(--muted);font-size:13px}.list-row .r-end{text-align:right;font-variant-numeric:tabular-nums;flex:none;font-weight:700}.chev{width:18px;height:18px;color:var(--muted);flex:none}.list-h{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:22px 4px 8px;font-size:13px;font-weight:700}.kv{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:56px;padding:10px 16px;display:flex}.kv:last-child{border-bottom:0}.kv .k{flex:1;min-width:0}.kv .k small{color:var(--muted);font-size:12.5px;display:block}.kv .v{font-weight:700}.note{background:var(--warn-soft);color:var(--fg);border-radius:14px;margin:10px 0;padding:10px 14px;font-size:14px}.avatar{background:var(--surface-2);width:44px;height:44px;font-weight:800;font-family:var(--f-display);border-radius:14px;flex:none;place-items:center;font-size:18px;display:grid}.dot{background:currentColor;border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.ring{flex:none;place-items:center;display:inline-grid;position:relative}.ring svg{display:block}.ring-bg{stroke:color-mix(in srgb, var(--ink) 12%, transparent)}.ring-in{font-variant-numeric:tabular-nums;place-items:center;font-weight:800;display:grid;position:absolute;inset:0}.meter{background:var(--surface-2);border-radius:999px;height:6px;margin-top:6px;overflow:hidden}.meter>i{background:var(--fg);border-radius:999px;height:100%;display:block}.page-grid,.page-split,.cols-3{align-items:start;gap:20px;min-width:0;display:grid}.page-grid>*,.page-split>*,.cols-3>*{min-width:0}@media (min-width:1100px){.page-grid{grid-template-columns:minmax(0,1fr) 360px;gap:36px}.page-split{grid-template-columns:380px minmax(0,1fr);gap:40px}.page-side{top:calc(var(--topbar-h) + 16px);max-height:calc(100vh - var(--topbar-h) - 32px);position:sticky;overflow-y:auto}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}}.chip-row{scrollbar-width:none;overscroll-behavior-x:contain;gap:8px;margin:0 -16px;padding:2px 16px 6px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip-row>*{flex:none}@media (min-width:760px){.chip-row{flex-wrap:wrap;margin:0;padding:0;overflow:visible}}.chipbtn{border:1px solid var(--line);background:var(--surface);white-space:nowrap;min-height:44px;color:var(--fg);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.chipbtn b{font-variant-numeric:tabular-nums;font-size:16px}.chipbtn:hover{border-color:var(--ink-3)}.chipbtn.on,.chipbtn[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.num{font-variant-numeric:tabular-nums;letter-spacing:-.005em}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.money-sym{vertical-align:.28em;margin-right:.04em;font-size:.72em}.money.in,.in{color:var(--good)}.btn,.btn-primary,.btn-secondary{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--fg);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled),.btn-secondary:hover:not(:disabled){border-color:var(--ink-3)}.btn-primary,.btn.primary,.btn-accent{background:var(--accent-fill);color:var(--on-accent);border-color:var(--accent-fill)}.btn-primary:hover:not(:disabled),.btn.primary:hover:not(:disabled),.btn-accent:hover:not(:disabled){filter:brightness(.96);border-color:var(--accent-fill)}.btn-primary,.btn-secondary{min-height:44px;padding:0 18px;font-size:15px}.btn.ink{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn.danger{background:var(--bad);color:#fff;border-color:var(--bad)}.btn.ghost{background:0 0}.btn.sm,.btn.small{min-height:34px;padding:0 12px;font-size:13px}.btn.lg{min-height:48px;padding:0 20px;font-size:15px}.btn.block{width:100%}.btn .icon,.btn-primary .icon,.btn-secondary .icon{font-size:18px}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.45;cursor:not-allowed}.lk,.linkish,.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.lk{font-size:13.5px}.linkish{font-size:13px}.lk:hover,.linkish:hover,.link:hover{text-decoration:underline}.lk:disabled,.linkish:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.iconbtn{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--fg);border-radius:999px;flex:none;place-items:center;font-size:20px;display:grid}.iconbtn:hover{background:var(--surface-2)}.pill,.badge{white-space:nowrap;background:var(--surface-2);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;font-weight:700;display:inline-flex}.pill{padding:4px 10px;font-size:12.5px}.badge{padding:2px 9px;font-size:11.5px;line-height:1.45}.pill.good,.b-rec,.b-good{background:var(--good-soft);color:var(--good)}.pill.warn,.b-unm,.b-split{background:var(--warn-soft);color:var(--warn)}.pill.bad,.b-exc,.b-bad{background:var(--bad-soft);color:var(--bad)}.pill.acc{background:var(--accent-fill);color:var(--on-accent)}.pill.info,.b-ref,.b-prog{background:var(--info-soft);color:var(--unrev)}.b-tag{background:var(--surface-2);color:var(--ink-2);margin-right:3px}.b-bad{margin-left:6px}.chip{background:var(--surface-2);color:var(--fg);border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 12px;font-size:13px;font-weight:600;display:inline-flex}.seg{scrollbar-width:none;background:var(--surface-2);border-radius:999px;align-items:center;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg>a,.seg>button,.seg>span{min-height:36px;color:var(--ink-2);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 14px;font-size:13.5px;font-weight:700;display:inline-flex}.seg>a:hover,.seg>button:hover{color:var(--fg)}.seg>.on,.seg>[aria-current=page],.seg>[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px #0e131126}.switch{background:var(--surface-3);border:0;border-radius:999px;flex:none;width:52px;height:32px;padding:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch[aria-checked=true]{background:var(--good)}.switch[aria-checked=true]:after{transform:translate(20px)}.switch:disabled{opacity:.5;cursor:not-allowed}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select,textarea){border:1px solid var(--line);border-radius:var(--r-input);background:var(--surface);min-width:0;padding:7px 11px}:where(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 25%, transparent);outline:none}:where(input[type=checkbox],input[type=radio]){accent-color:var(--fg)}.inp{border-radius:var(--r-input);border:2px solid var(--ink);background:var(--surface);text-align:right;font-variant-numeric:tabular-nums;width:120px;min-height:44px;padding:0 12px;font-weight:700}.inp.wide{text-align:left;width:100%}.field{color:var(--ink-2);flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.field input,.field select{color:var(--fg);border-radius:var(--r-input);border:1px solid var(--line);background:var(--surface);min-height:44px;padding:0 12px;font-weight:400}.error{background:var(--bad-soft);color:var(--bad);border-radius:12px;padding:10px 12px;font-size:13.5px}.tbl-wrap{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;overflow-x:auto}table.ledger{border-collapse:collapse;width:100%;min-width:620px;font-size:14px}.ledger th{background:var(--surface);text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 12px 10px;font-size:11.5px;font-weight:800;position:sticky;top:0}.ledger td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}.ledger tr:last-child td{border-bottom:0}.ledger tbody tr:hover td{background:color-mix(in srgb, var(--surface-2) 60%, transparent)}.ledger .right{text-align:right}.ledger select{background:0 0;border:1px solid #0000;border-radius:10px;max-width:190px;padding:3px 6px}.ledger select:hover{border-color:var(--line)}.ledger select.unc{color:var(--warn);border:1px dashed var(--warn)}.ledger select:disabled{opacity:.6}.ledger input[type=checkbox]{cursor:pointer;width:16px;height:16px}.srcmark{background:var(--surface-2);width:16px;height:16px;color:var(--muted);vertical-align:middle;cursor:help;border-radius:5px;place-items:center;margin-left:3px;font-size:10px;font-weight:700;display:inline-grid}.nowrap{white-space:nowrap}.bar-track{background:var(--surface-2);border-radius:999px;height:8px;position:relative}.bar-fill{background:var(--fg);border-radius:999px;height:100%}.bar-fill.pace-green{background:var(--good)}.bar-fill.pace-yellow{background:var(--warn)}.bar-fill.pace-red{background:var(--bad)}.bar-tick{background:var(--fg);border-radius:1px;width:2px;height:16px;position:absolute;top:-4px}.toast{left:50%;bottom:calc(var(--dock) + 20px);z-index:78;background:var(--toast);color:var(--on-toast);box-shadow:var(--shadow-lg);white-space:normal;border-radius:22px;flex-wrap:wrap;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:8px 8px 8px 18px;font-size:14px;font-weight:600;display:flex;position:fixed;transform:translate(-50%)}.toast .t-act{background:var(--accent-fill);color:var(--on-accent);cursor:pointer;border:0;border-radius:999px;min-height:36px;padding:0 14px;font-weight:800}.cat-chip{--h:250;--c:oklch(var(--chip-dot-l) var(--chip-dot-c) var(--h));background:color-mix(in srgb, var(--c) var(--chip-mix), var(--surface));max-width:100%;height:26px;color:var(--fg);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 9px;font-size:12.5px;font-weight:700;line-height:1;display:inline-flex}.cat-chip-dot{background:var(--c);border-radius:50%;flex:none;width:8px;height:8px}.cat-chip-name{text-overflow:ellipsis;overflow:hidden}.cat-chip-neutral{background:var(--surface-2);color:var(--ink-2);padding:0 10px}.cat-chip-uncategorized{color:var(--ink-2);border:1.5px dashed var(--ink-3);background:0 0;padding:0 10px}.skin-bilt{background:linear-gradient(135deg, var(--card-bilt-a), var(--card-bilt-b));color:var(--on-card)}.skin-amex{background:linear-gradient(135deg, var(--card-amex-a), var(--card-amex-b));color:var(--on-card-amex)}.skin-chase{background:linear-gradient(135deg, var(--card-chase-a), var(--card-chase-b));color:var(--on-card)}.skin-bank{background:linear-gradient(135deg, var(--card-bank-a), var(--card-bank-b));color:var(--on-card)}.skin-ally{background:linear-gradient(135deg, var(--card-ally-a), var(--card-ally-b));color:var(--on-card)}.ccard{aspect-ratio:1.586;text-align:left;width:100%;box-shadow:var(--shadow);border:0;border-radius:22px;flex-direction:column;padding:18px;display:flex;position:relative;overflow:hidden}.ccard .c-chip{background:var(--card-chip);border:1px solid var(--card-chip-line);border-radius:6px;width:36px;height:27px;margin-top:10px}dialog.drawer,dialog.modal{overscroll-behavior:contain;background:var(--surface);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--fg);box-shadow:var(--shadow-lg);border:0;border-radius:28px 0 0 28px;margin:0 0 0 auto;padding:22px 24px 32px;inset:0 0 0 auto;overflow:auto}dialog.drawer{width:min(420px,100vw)}dialog.modal{width:min(640px,100vw)}dialog.drawer[open],dialog.modal[open]{animation:.26s cubic-bezier(.2,.8,.2,1) slide-l}dialog.drawer::backdrop,dialog.modal::backdrop{background:var(--scrim)}.sheet-grab{background:var(--surface-3);border-radius:999px;width:44px;height:5px;margin:0 auto 10px;display:none}.sheet-h,.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.sheet-h h2,.modal-head h2{font-family:var(--f-display);letter-spacing:-.02em;margin:0;font-size:24px;font-weight:800}.modal-head button{background:var(--surface-2);border-radius:999px;place-items:center;width:40px;height:40px;font-size:20px;line-height:1;display:grid}@media (max-width:759.98px){dialog.drawer,dialog.modal{width:100vw;height:auto;max-height:92dvh;padding:10px 16px calc(24px + env(safe-area-inset-bottom,0px));border-radius:28px 28px 0 0;margin:auto 0 0;inset:auto 0 0}dialog.drawer[open],dialog.modal[open]{animation:.28s cubic-bezier(.2,.8,.2,1) sheet-up}dialog.drawer:before,dialog.modal:before{content:"";background:var(--surface-3);border-radius:999px;width:44px;height:5px;margin:0 auto 12px;display:block}.sheet-grab{display:block}}@keyframes slide-l{0%{opacity:.3;transform:translate(30%)}to{opacity:1;transform:none}}.signin{place-items:center;min-height:100%;padding:24px;display:grid}.signin form{flex-direction:column;gap:12px;width:min(100%,360px);display:flex}.signin h1{font-family:var(--f-display);letter-spacing:-.02em;margin:0 0 4px;font-size:30px;font-weight:800}.signin .or{text-align:center;margin:0}.signin .consent{flex-direction:column;gap:12px;width:min(100%,420px);display:flex}.consent p{margin:0}.consent-access{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.consent-access label{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:14px;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.consent-access input{margin-top:3px}.consent-buttons{justify-content:flex-end;gap:8px;display:flex}.connected-apps{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.connected-apps li{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.connect{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.merchant-row input{border:1px solid var(--line);border-radius:10px;min-width:0;padding:3px 6px}.mapping input[type=search]{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;padding:3px 6px}.mapping{flex-direction:column;display:flex}.mapping input[type=search]{margin-bottom:6px}.rule-apply{flex-direction:column;gap:10px;display:flex}.rule-apply .tbl-wrap{max-height:50vh;overflow:auto}.card.warn{background:var(--warn-soft);box-shadow:none}.cbx{vertical-align:middle;max-width:100%;display:inline-block;position:relative}.cbx-btn{border:1px solid var(--line);background:var(--surface);text-align:left;max-width:230px;font-weight:400;font-size:inherit;border-radius:10px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.cbx-btn:hover:not(:disabled){border-color:var(--ink-3)}.cbx-btn:disabled{opacity:.6;cursor:not-allowed}.cbx-btn .cbx-val{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbx-btn .cbx-caret{color:var(--muted);font-size:11px}.cbx-btn.cbx-empty{color:var(--muted)}.cbx-btn.unc{color:var(--warn);border:1px dashed var(--warn)}.ledger .cbx-btn:not(.unc){background:0 0;border-color:#0000}.ledger .cbx-btn:not(.unc):hover:not(:disabled),.ledger .cbx-btn[aria-expanded=true]{border-color:var(--line)}.cbx-pop{z-index:90;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);text-transform:none;letter-spacing:normal;border-radius:16px;flex-direction:column;font-size:14px;font-weight:400;display:flex;position:fixed}.cbx .cbx-pop input.cbx-search{border:0;border-bottom:1px solid var(--line);width:100%;max-width:none;box-shadow:none;background:0 0;border-radius:16px 16px 0 0;padding:11px 14px}.cbx .cbx-pop input.cbx-search:focus-visible{outline:none}.cbx-list{padding:4px 0;overflow:auto}.cbx-grp{padding:10px 14px 2px}.cbx-opt{cursor:pointer;align-items:center;gap:8px;padding:7px 14px;display:flex}.cbx-opt.in-grp{padding-left:18px}.cbx-opt.hl{background:var(--surface-2)}.cbx-opt.on{font-weight:600}.cbx-note{color:var(--muted);padding:10px 11px;font-size:12.5px}.cbx-dot{--h:250;background:oklch(var(--chip-dot-l) var(--chip-dot-c) var(--h));border-radius:50%;flex:none;width:9px;height:9px}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cbx-btn.cbx-custom,.cbx-btn.cbx-custom.unc{background:0 0;border:0;border-radius:999px;max-width:100%;padding:0}.cbx-btn.cbx-custom:hover:not(:disabled) .cat-chip{filter:brightness(1.12)}.acct-card{aspect-ratio:1.586;width:210px;box-shadow:var(--shadow);text-align:left;border-radius:16px;justify-content:space-between;align-items:flex-end;gap:8px;padding:12px 14px;font-size:14px;font-weight:700;display:flex;position:relative}.acct-card-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.acct-card-mask{font-family:var(--f-body);flex:none}@media (max-width:700px){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}.cbx-pop{padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 0 0 100vmax var(--scrim);border-width:0;border-radius:24px 24px 0 0;bottom:0;right:0;width:auto!important;max-height:70vh!important;top:auto!important;left:0!important}.cbx .cbx-pop input.cbx-search{padding:14px 16px;font-size:16px}.cbx-opt{padding:12px 16px;font-size:16px}.cbx-grp{padding:12px 16px 4px}.cbx-opt.in-grp{padding-left:22px}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(40px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){dialog.drawer,dialog.modal{animation:none!important}.switch,.switch:after{transition:none}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.over{color:var(--bad)}
