@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-vietnamese-400-normal-CkBxLiRJ.woff2)format("woff2"),url(/assets/anton-vietnamese-400-normal-2FfR1wHA.woff)format("woff");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:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-latin-ext-400-normal-SyiqE2Jt.woff2)format("woff2"),url(/assets/anton-latin-ext-400-normal-BMODBQc6.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-latin-400-normal-Byf51wtH.woff2)format("woff2"),url(/assets/anton-latin-400-normal-AUNGEG_V.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,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-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");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}:root{--cream:#faf5ec;--paper:#fffdf8;--blush:#faeae2;--ink:#121212;--ink-2:#525868;--ink-3:#888e9c;--mango:#ffab4b;--mango-soft:#ffe9cc;--forest:#2d5a3a;--forest-soft:#e3eee5;--teal:#108474;--sun:#fbcd0a;--red:#b8341e;--red-soft:#f6dcd6;--line:#1212121a;--font-display:"Anton", "Impact", "Haettenschweiler", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", monospace;--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--gutter:18px;--tabbar-height:66px;--ease-out:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}*,:before,:after{box-sizing:border-box}html,body{background:var(--cream);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.4}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.35}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}h1,h2,p{margin:0}.display{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.005em;font-size:52px;font-weight:400;line-height:.92}.display--xl{font-size:64px}.display--md{font-size:30px}.display--sm{font-size:22px;line-height:1}.display--xs{font-size:18px;line-height:1}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-size:11px;font-weight:500}.muted{color:var(--ink-2);font-size:14px}.mono{font-family:var(--font-mono)}.money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.money.is-negative{color:var(--red)}.money.is-credit{color:var(--forest)}.app{max-width:520px;padding:calc(var(--safe-top) + 14px) var(--gutter) calc(var(--safe-bottom) + var(--tabbar-height) + 48px);margin:0 auto;overflow-x:clip}.screen{animation:screen-in .35s var(--ease-out);flex-direction:column;display:flex}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.screen>.eyebrow{margin-top:22px;margin-bottom:10px}.page-header{justify-content:space-between;align-items:flex-end;gap:12px;margin:8px 0 22px;display:flex}.page-header .eyebrow{margin-bottom:8px}.topline{justify-content:space-between;align-items:center;margin:4px 0 14px;display:flex}.signal{white-space:nowrap;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);background:var(--paper);border-radius:999px;flex-shrink:0;align-items:center;gap:7px;padding:6px 10px;font-size:11px;display:inline-flex}.signal__dot{background:var(--forest);border-radius:50%;width:7px;height:7px;animation:2.4s infinite pulse;box-shadow:0 0 #2d5a3a80}.signal.is-off .signal__dot{background:var(--red);animation:none}@keyframes pulse{70%{box-shadow:0 0 0 7px #2d5a3a00}to{box-shadow:0 0 #2d5a3a00}}.hero{background:radial-gradient(120% 90% at 100% 0%, #ffc684 0%, transparent 55%), radial-gradient(80% 80% at 0% 100%, #ff9a3c 0%, transparent 60%), var(--mango);border-radius:32px;padding:22px 22px 24px;position:relative;overflow:hidden}.hero .eyebrow{color:#121212b8}.hero__number{font-family:var(--font-display);letter-spacing:-.005em;margin:44px 0 10px;font-size:clamp(72px,24vw,96px);font-weight:400;line-height:.88;display:block}.hero__meta{font-family:var(--font-mono);color:#121212c7;font-size:12.5px}.hero__meta .money{font-weight:500}.hero__meta .money.is-negative{color:var(--red)}.sticker{text-align:center;background:var(--ink);width:68px;height:68px;color:var(--cream);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;box-shadow:0 0 0 4px var(--mango), 0 0 0 5px #121212e6;border-radius:50%;place-content:center;font-size:9px;display:grid;position:absolute;top:14px;right:14px;transform:rotate(9deg)}.sticker strong{font-family:var(--font-display);letter-spacing:0;margin:1px 0;font-size:26px;font-weight:400;line-height:1}.marquee{margin:22px calc(var(--gutter) * -1) 6px;background:var(--ink);color:var(--cream);padding:11px 0;overflow:hidden;transform:rotate(-1.4deg)}.marquee__track{width:max-content;animation:32s linear infinite marquee;display:flex}.marquee__group{flex-shrink:0;display:flex}.marquee__item{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-size:12px;font-weight:500}.marquee__star{color:var(--mango);margin:0 16px}@keyframes marquee{to{transform:translate(-50%)}}.card{background:var(--paper);border:1px solid var(--line);border-radius:24px}.list>*+*{border-top:1px solid var(--line)}.banner{text-align:left;background:var(--blush);border:1px solid #b8341e24;border-radius:22px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin-top:18px;padding:16px 18px;display:flex}.banner>span{gap:5px;display:grid}.banner__sub{color:var(--ink-2);font-size:13px}.group{margin-top:28px}.group__header{justify-content:space-between;align-items:baseline;margin:0 4px 10px;display:flex}.group__header h2{align-items:center;gap:9px;display:inline-flex}.group__dot{background:var(--tone,var(--ink));border-radius:50%;width:10px;height:10px;transform:translateY(-1px)}.group__total{color:var(--ink-2);font-size:13px}.tone--mango{--tone:var(--mango)}.tone--forest{--tone:var(--forest)}.tone--blush{--tone:#e8907a}.tone--teal{--tone:var(--teal)}.tone--sun{--tone:var(--sun)}.tone--ink{--tone:var(--ink)}.bucket-row{text-align:left;gap:7px;width:100%;padding:15px 18px;transition:background .15s;display:grid}.bucket-row:active,.plan-row:active,.timeline__card:active{background:#12121209}.list>:first-child{border-top-left-radius:23px;border-top-right-radius:23px}.list>:last-child{border-bottom-right-radius:23px;border-bottom-left-radius:23px}.bucket-row__top,.bucket-row__bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.bucket-row__name{font-size:16px;font-weight:500}.bucket-row__amount{font-size:16px}.bucket-row__detail{font-family:var(--font-mono);color:var(--ink-3);font-size:11.5px}.bucket-row .bar{margin-top:3px}.pill{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:10.5px;font-weight:500}.pill--good{background:var(--forest-soft);color:var(--forest)}.pill--warn{background:var(--mango-soft);color:#8a4b00}.pill--bad{background:var(--red-soft);color:var(--red)}.pill--calm{border:1px solid var(--line);color:var(--ink-2);padding:3px 8px}.bar{background:#12121212;border-radius:999px;height:5px;overflow:hidden}.bar__fill{border-radius:inherit;height:100%;transition:width .5s var(--ease-out)}.bar__fill--good{background:var(--forest)}.bar__fill--warn{background:var(--mango)}.bar__fill--bad{background:var(--red)}.bar__fill--calm{background:var(--ink)}.activity,.plan-row{text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:14px 18px;display:flex}.activity__main{gap:3px;min-width:0;display:grid}.activity__merchant{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:500;overflow:hidden}.activity__meta{font-family:var(--font-mono);color:var(--ink-3);font-size:11.5px;display:block}.activity .money{font-size:15px}.activity .money.is-negative{color:var(--ink)}.empty-line{color:var(--ink-3);padding:16px 18px;font-size:14px}.tabbar{z-index:20;left:50%;bottom:calc(var(--safe-bottom) + 10px);width:min(100% - 24px,496px);height:var(--tabbar-height);-webkit-backdrop-filter:blur(20px)saturate(1.4);background:#121212e6;border-radius:999px;grid-template-columns:repeat(5,1fr);gap:2px;padding:6px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #12121238}.tabbar__item{color:#faf5ec94;transition:background .25s var(--ease-out), color .25s var(--ease-out);border-radius:999px;align-content:center;place-items:center;gap:3px;display:grid;position:relative}.tabbar__item svg{width:21px;height:21px}.tabbar__item span{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:500}.tabbar__item.is-active{background:var(--mango);color:var(--ink)}.tabbar__badge{background:var(--red);min-width:17px;height:17px;color:var(--cream);border-radius:999px;place-items:center;padding:0 4px;display:grid;position:absolute;top:3px;right:calc(50% - 22px);letter-spacing:0!important;font-size:9.5px!important}.fab{z-index:19;right:max(16px,50% - 248px);bottom:calc(var(--safe-bottom) + var(--tabbar-height) + 22px);background:var(--ink);width:56px;height:56px;color:var(--mango);transition:transform .2s var(--ease-out);border-radius:50%;place-items:center;display:grid;position:fixed;box-shadow:0 10px 24px #12121240}.fab:active{transform:scale(.93)}.button{height:50px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:transform .15s var(--ease-out), opacity .15s;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:12.5px;font-weight:500;display:inline-flex}.button:active:not(:disabled){transform:scale(.97)}.button--ink{background:var(--ink);color:var(--cream)}.button--accent{background:var(--mango);color:var(--ink)}.button--ghost{border:1.5px solid var(--ink)}.button--danger{border:1.5px solid var(--red);color:var(--red);margin-top:26px}.button--block{width:100%}.button--small{height:36px;padding:0 14px;font-size:11px}.button-row{flex-wrap:wrap;gap:10px;display:flex}.button-row:empty{display:none}.link{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-underline-offset:3px;color:var(--ink-2);padding:6px 2px;font-size:11.5px;text-decoration:underline}.icon-button{background:#1212120f;border-radius:50%;place-items:center;width:36px;height:36px;font-size:14px;display:grid}.back{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-self:flex-start;align-items:center;gap:6px;margin:2px 0 18px;font-size:12px;display:inline-flex}.back svg{width:18px;height:18px}.text-input{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:16px;outline:none;padding:14px 16px;font-size:16px;transition:border-color .15s}.text-input:focus{border-color:var(--ink)}.sms-input{font-family:var(--font-mono);resize:vertical;font-size:16px;line-height:1.5}.field{gap:8px;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.money-input{align-items:baseline;gap:4px;display:flex}.money-input input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none}.money-input--lg{border-bottom:2px solid var(--ink);padding-bottom:6px}.money-input--lg .money-input__symbol{font-family:var(--font-display);font-size:34px}.money-input--lg input{font-family:var(--font-display);font-size:56px;line-height:1}.money-input--md{background:var(--cream);border:1px solid var(--line);width:124px;font-family:var(--font-mono);border-radius:14px;flex-shrink:0;padding:9px 12px}.money-input--md:focus-within{border-color:var(--ink)}.money-input--md .money-input__symbol{color:var(--ink-3);font-size:14px}.money-input--md input{font-family:var(--font-mono);text-align:right;font-size:16px;font-weight:500}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips--scroll{scrollbar-width:none;flex-wrap:nowrap;margin:0 -18px;padding:2px 18px;overflow-x:auto}.chips--scroll::-webkit-scrollbar{display:none}.chip{background:var(--paper);border:1px solid var(--line);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:9px 15px;font-size:14px;transition:background .15s,color .15s}.chip:active{transform:scale(.97)}.chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--cream)}.chip.is-current:disabled{opacity:1;color:var(--ink-2);border-style:dashed;border-color:#12121259}.chip.is-suggested{background:var(--mango);border-color:var(--mango);font-weight:600}.segmented{background:#1212120f;border-radius:16px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented__option{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);border-radius:12px;padding:10px 8px;font-size:11px;transition:background .2s}.segmented__option.is-active{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px #1212121f}.toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle__track{background:#12121226;border-radius:999px;flex-shrink:0;width:50px;height:30px;transition:background .2s;position:relative}.toggle__thumb{width:26px;height:26px;transition:transform .25s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #12121233}.toggle input:checked+.toggle__track{background:var(--forest)}.toggle input:checked+.toggle__track .toggle__thumb{transform:translate(20px)}.toggle input:focus-visible+.toggle__track{outline:2px solid var(--ink);outline-offset:2px}.check{color:var(--ink-2);align-items:center;gap:8px;min-width:0;font-size:13px;display:inline-flex}.check input{width:18px;height:18px;accent-color:var(--ink);margin:0}.check span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sheet-backdrop{z-index:50;background:#12121261;animation:.2s ease-out fade-in;position:fixed;inset:0}.sheet{width:100%;max-width:520px;max-height:calc(100dvh - var(--safe-top) - 24px);overscroll-behavior:contain;padding:6px 20px calc(var(--safe-bottom) + 24px);background:var(--cream);animation:sheet-up .38s var(--ease-out);border-radius:30px 30px 0 0;position:absolute;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%)}.sheet__handle{background:#1212122e;border-radius:999px;width:40px;height:5px;margin:4px auto 12px}.sheet__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.sheet__header .display{font-size:30px}.sheet__body{gap:14px;display:grid}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-up{0%{transform:translate(-50%,100%)}}.detail-hero{background:var(--paper);border:1px solid var(--line);border-radius:24px;gap:10px;padding:18px;display:grid}.detail-hero__number{font-family:var(--font-display);font-size:60px;font-weight:400;line-height:.95}.detail-hero__row{font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.detail-hero__row .muted{font-size:12px}.callout{border-radius:22px;gap:12px;padding:16px;font-size:14px;display:grid}.callout--bad{background:var(--red-soft);color:#6f1f12}.callout--owed{background:var(--mango-soft);color:#5c3a06}.callout__actions{flex-wrap:wrap;gap:8px;display:flex}.inbox-card{grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:14px;padding:18px;display:grid;overflow:hidden}.inbox-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.inbox-card__header>div{gap:5px;min-width:0;display:grid}.inbox-card__merchant{overflow-wrap:anywhere;font-size:18px;font-weight:600}.inbox-card__amount{font-size:18px}.inbox-card .money.is-negative{color:var(--ink)}.sms{font-family:var(--font-mono);color:var(--ink-2);background:var(--blush);overflow-wrap:anywhere;border-radius:14px;padding:12px 14px;font-size:12px;line-height:1.6}.suggestion{font-size:14px}.suggestion span{font-family:var(--font-mono);color:var(--ink-3);font-size:12px}.inbox-card__footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.inbox-card__footer .check{flex:1}.inbox-card__links{flex-shrink:0;gap:12px;display:flex}.empty{gap:14px;padding:36px 4px;display:grid}.timeline{gap:12px;margin:0;padding:0;list-style:none;display:grid}.timeline__item{grid-template-columns:64px 1fr;align-items:center;gap:12px;display:grid}.timeline__item.is-past{opacity:.55}.timeline__date{gap:4px;display:grid}.timeline__date .eyebrow{letter-spacing:.1em;font-size:9.5px}.timeline__card{text-align:left;gap:8px;width:100%;padding:15px 16px;display:grid}.timeline__name{font-weight:500}.timeline__row{justify-content:space-between;align-items:center;gap:10px;display:flex}.timeline__today{align-items:center;gap:10px;margin:2px 0;display:flex}.timeline__today:after{content:"";border-top:1.5px dashed var(--ink);flex:1}.timeline__today span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:var(--mango);border-radius:999px;padding:5px 10px;font-size:10.5px;font-weight:500}.cta{text-align:left;background:var(--ink);width:100%;color:var(--cream);border-radius:28px;justify-content:space-between;align-items:center;padding:22px;display:flex}.cta>span{gap:8px;display:grid}.cta .eyebrow{color:var(--mango)}.cta svg{width:28px;height:28px;color:var(--mango)}.stat-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-radius:22px;gap:8px;padding:16px;display:grid}.stat__value{font-family:var(--font-display);font-size:28px;font-weight:400;line-height:1}.income{gap:12px;margin-top:20px;padding:18px;display:grid}.screen--allocate h1{margin-top:8px}.screen--allocate .group:last-of-type{margin-bottom:110px}.alloc-row{justify-content:space-between;align-items:center;gap:12px;padding:11px 12px 11px 18px;display:flex}.alloc-row.is-ended{opacity:.45}.allocate-bar{z-index:20;left:50%;bottom:calc(var(--safe-bottom) + 10px);background:var(--ink);width:min(100% - 24px,496px);color:var(--cream);border-radius:28px;justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 22px;transition:background .3s;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #12121240}.allocate-bar .eyebrow{color:#faf5eca6}.allocate-bar__value{font-family:var(--font-display);margin-top:4px;font-size:32px;font-weight:400;line-height:1;display:block}.allocate-bar .money.is-negative{color:var(--cream)}.allocate-bar.is-zero{background:var(--forest)}.allocate-bar.is-over{background:var(--red)}.allocate-bar .button--ink{background:var(--cream);color:var(--ink)}.allocate-bar .button--ghost{border-color:var(--cream);color:var(--cream)}.settings-block{margin-bottom:4px;padding:4px 18px 18px;display:grid}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.settings-row>span:first-child{gap:3px;display:grid}.settings-row--stack{gap:12px;display:grid}.settings-row:last-of-type{margin-bottom:14px}.settings-row__title{font-weight:500;display:block}.stepper{align-items:center;gap:14px;display:flex}.stepper button{border:1.5px solid var(--ink);border-radius:50%;width:36px;height:36px;font-size:18px;line-height:1}.fineprint{text-align:center;font-family:var(--font-mono);color:var(--ink-3);margin-top:14px;font-size:11px}.salary-landed{justify-items:center;gap:10px;margin-bottom:18px;display:grid}.setup{gap:6px;margin-bottom:18px;padding:20px 6px 8px;display:grid}.setup>.eyebrow,.setup>h2{margin:0;padding:0 14px}.setup .link-row{border-top:1px solid var(--line);margin-top:0;padding:14px}.setup .link-row:first-of-type{margin-top:8px}.setup .link-row .activity__meta{white-space:normal}.welcome{padding-top:calc(var(--safe-top) + 12vh)}.welcome .card{padding:20px}.welcome form{gap:16px;display:grid}.fineprint--left{text-align:left;margin:0 0 16px;line-height:1.5}.check--wrap{align-items:flex-start;margin:2px 0 12px}.check--wrap span{white-space:normal}.break-all{word-break:break-all}.topline__actions{align-items:center;gap:8px;display:inline-flex}.icon-button--line{background:var(--paper);border:1px solid var(--line)}.icon-button svg{width:19px;height:19px}.round-button{background:var(--ink);width:48px;height:48px;color:var(--mango);transition:transform .15s var(--ease-out);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.round-button:active{transform:scale(.94)}.page-header--flush{margin-top:0}.page-title{margin:8px 0 18px}.screen>.eyebrow+.page-title{margin-top:0}.link--inline{color:var(--ink);flex-shrink:0}.link-row{text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;margin-top:12px;padding:16px 18px;display:flex}.link-row svg{flex-shrink:0;width:20px;height:20px}.link-row .activity__meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity--tap{transition:background .15s}.activity--tap:active,.link-row:active,.action:active{background:#12121209}.list--flat>:first-child,.list--flat>:last-child{border-radius:0}.field__hint{color:var(--ink-3);font-size:12.5px}.button--danger-fill{background:var(--red);color:var(--cream)}.detail-hero__number--plain.is-negative{color:var(--ink)}.edit-card{gap:14px;padding:18px;display:grid}.field__hint--warn{color:var(--red)}.button--flush{margin-top:0}.plan-actions{justify-content:space-between;align-items:center;gap:12px;padding:8px 12px 8px 10px;display:flex}.plan-actions__add{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:8px 10px;font-size:11.5px;display:inline-flex}.plan-actions__add svg{background:var(--tone,var(--ink));width:18px;height:18px;color:var(--paper);border-radius:50%;padding:2px}.plan-actions__add:active{background:#1212120d}.add-tile--spaced{margin-top:22px}.kind-list{gap:8px;display:grid}.kind{text-align:left;background:var(--paper);border:1.5px solid var(--line);border-radius:18px;gap:2px;width:100%;padding:13px 16px;transition:border-color .15s,background .15s;display:grid}.kind.is-active{border-color:var(--ink);background:var(--mango-soft)}.kind__title{font-weight:600}.kind__hint{color:var(--ink-2);font-size:13px}.swatches{gap:12px;display:flex}.swatch{background:var(--tone);border-radius:50%;width:40px;height:40px;transition:box-shadow .15s;box-shadow:inset 0 0 0 1px #1212121f}.swatch.is-active{box-shadow:0 0 0 3px var(--cream), 0 0 0 5px var(--ink)}.group__toggle{text-align:left;align-items:center;width:calc(100% - 8px)}.group__side{align-items:center;gap:10px;display:inline-flex}.group__summary{font-family:var(--font-mono);color:var(--ink-3);align-items:center;gap:6px;font-size:11px;animation:.25s ease-out fade-in;display:inline-flex}.group__flag{border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;display:inline-grid}.group__flag--bad{background:var(--red);color:var(--cream)}.group__flag--warn{background:var(--mango);color:var(--ink)}.chevron{width:26px;height:26px;transition:transform .3s var(--ease-out);background:#1212120f;border-radius:50%;place-items:center;display:grid}.chevron:before{content:"";border-right:1.6px solid var(--ink);border-bottom:1.6px solid var(--ink);width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.is-collapsed .chevron{transform:rotate(-90deg)}.collapsible{transition:grid-template-rows .35s var(--ease-out);grid-template-rows:1fr;display:grid}.collapsible__inner{min-height:0;transition:opacity .25s;overflow:hidden}.is-collapsed .collapsible{grid-template-rows:0fr}.is-collapsed .collapsible__inner{opacity:0}.is-collapsed .group__header{margin-bottom:0}.action-list{margin-top:4px}.action{text-align:left;gap:3px;width:100%;padding:15px 18px;font-weight:500;display:grid}.action__hint{font-family:var(--font-mono);color:var(--ink-3);font-size:11.5px;font-weight:400}.action--danger{color:var(--red)}.action--confirm{background:var(--red-soft);color:#6f1f12;gap:12px;font-size:14px}.cycle-chips{margin-bottom:14px}.search{appearance:none;margin-bottom:10px}.activity-filter{margin-bottom:6px}.day-group{margin-top:20px}.day-group__header{justify-content:space-between;align-items:baseline;margin:0 4px 8px;display:flex}.day-group__total,.day-group__total.is-negative{color:var(--ink-2);font-size:12px}.account-section{gap:10px;margin-bottom:22px;display:grid}.account-grid{gap:12px;display:grid}.account-tile{text-align:left;background:var(--paper);border:1px solid var(--line);width:100%;min-height:168px;transition:transform .2s var(--ease-out);border-radius:22px;gap:18px;padding:18px 20px;display:grid;position:relative;overflow:hidden}.account-tile:active{transform:scale(.98)}.account-tile:after{content:"";pointer-events:none;background:#ffffff14;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-60px;right:-40px}.account-tile--card{background:radial-gradient(110% 120% at 100% 0%, #2b2b2b 0%, transparent 60%), var(--ink);color:var(--cream);border-color:var(--ink);aspect-ratio:1.586;min-height:0}.account-tile--bank{background:radial-gradient(100% 120% at 100% 0%, #3c7a4e 0%, transparent 60%), var(--forest);color:var(--cream);border-color:var(--forest)}.account-tile--wallet{background:radial-gradient(100% 120% at 100% 0%, #ffc684 0%, transparent 60%), var(--mango)}.account-tile--cash{background:var(--blush)}.account-tile__top,.account-tile__bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-tile__bottom{align-self:end;align-items:flex-end}.account-tile__kind{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;opacity:.72;font-size:10.5px}.account-tile__chip{background:linear-gradient(90deg,#0000 45%,#00000040 45% 55%,#0000 55%),linear-gradient(#0000 45%,#00000040 45% 55%,#0000 55%),linear-gradient(135deg,#f4d58a,#c9a24a);border-radius:6px;width:38px;height:28px}.account-tile__name{font-family:var(--font-display);text-transform:uppercase;font-size:30px;line-height:.95}.account-tile__digits{font-family:var(--font-mono);letter-spacing:.12em;font-size:15px}.account-tile__stat{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;opacity:.9;justify-items:end;gap:2px;font-size:10px;display:grid}.account-tile__stat .money{letter-spacing:0;font-size:16px}.account-tile--card .money.is-negative,.account-tile--bank .money.is-negative{color:var(--cream)}.add-tile{width:100%;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);border:1.5px dashed #1212124d;border-radius:22px;justify-content:center;align-items:center;gap:10px;margin-bottom:22px;padding:22px;font-size:12px;display:flex}.add-tile svg{width:20px;height:20px}.seg--committed{background:var(--forest)}.seg--bills{background:var(--teal)}.seg--everyday{background:var(--mango)}.seg--sinking{background:var(--sun)}.seg--left{background:repeating-linear-gradient(135deg, #12121224 0 2px, transparent 2px 6px), var(--paper);box-shadow:inset 0 0 0 1px #1212122e}.pace-card{background:var(--ink);color:var(--cream);border-radius:32px;gap:10px;padding:22px 20px 18px;display:grid}.pace-card .eyebrow{color:var(--mango)}.pace-card__numbers{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:8px;display:flex}.pace-card__big{font-family:var(--font-display);font-size:clamp(52px,16vw,64px);font-weight:400;line-height:.9}.pace-card__of{font-family:var(--font-mono);color:#faf5eca8;font-size:12px}.pace-card__delta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;place-self:start;padding:5px 10px;font-size:11px}.pace-card__delta.is-ahead{background:var(--red)}.pace-card__delta.is-behind{background:var(--forest)}.pace{margin-top:8px}.pace__plot{height:130px;position:relative}.pace__plot svg{width:100%;height:100%;overflow:visible}.pace__plan{fill:none;stroke:#faf5ec73;stroke-width:1.5px;stroke-dasharray:4 5}.pace__actual{fill:none;stroke:var(--mango);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.pace__dot{background:var(--mango);border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;box-shadow:0 0 0 4px #ffab4b40}.pace__today{color:var(--mango);position:absolute;transform:translate(-50%)}.pace__axis{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#faf5ec80;justify-content:space-between;margin-top:8px;font-size:9.5px;display:flex;position:relative}.legend{flex-wrap:wrap;gap:8px 14px;margin-top:14px;display:flex}.legend__item{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:6px;font-size:10.5px;display:inline-flex}.legend--dark{margin-top:4px}.legend--dark .legend__item{color:#faf5eca8}.legend__swatch{border-radius:3px;flex-shrink:0;width:10px;height:10px}.legend__swatch--line{background:var(--mango);width:16px;height:3px}.legend__swatch--dash{border-top:1.5px dashed #faf5ec99;border-radius:0;width:16px;height:0}.notes{gap:10px;margin:0;padding:0;list-style:none;display:grid}.note{background:var(--paper);border:1px solid var(--line);border-radius:22px;grid-template-columns:44px 1fr;gap:4px;padding:16px 18px 16px 14px;display:grid}.note__index{font-family:var(--font-display);color:var(--tone,var(--ink-3));font-size:28px;line-height:1}.note__body{color:var(--ink-2);gap:5px;font-size:14px;display:grid}.note__body strong{color:var(--ink);font-size:16px;font-weight:600}.note--bad{--tone:var(--red);background:var(--blush);border-color:#b8341e24}.note--warn{--tone:#e08a1e}.note--good{--tone:var(--forest)}.note--calm{--tone:var(--ink)}.range-bar{z-index:5;top:calc(var(--safe-top) + 6px);margin:22px calc(var(--gutter) * -1) -6px;padding:8px var(--gutter);-webkit-backdrop-filter:blur(14px);background:#faf5ece6;position:sticky}.chart-card{padding:18px}.stacks{gap:6px;height:200px;display:flex}.stacks__col{border-radius:14px;flex:1;grid-template-rows:1fr auto auto;gap:6px;min-width:0;padding:6px 2px 4px;transition:background .2s;display:grid}.stacks__col.is-selected{background:#1212120f}.stacks__bar{flex-direction:column-reverse;justify-content:flex-start;justify-self:center;gap:2px;width:min(100%,30px);display:flex}.stacks__seg{min-height:2px;animation:grow .6s var(--ease-out) both;transform-origin:bottom;border-radius:4px;display:block}.stacks__col.is-progress .stacks__seg{opacity:.55}@keyframes grow{0%{transform:scaleY(0)}}.stacks__label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);text-align:center;font-size:10.5px}.stacks__caption{font-family:var(--font-mono);color:var(--ink-3);text-align:center;font-size:10px}.stacks__col.is-selected .stacks__label{color:var(--ink);font-weight:600}.cycle-detail{gap:16px;margin-top:12px;padding:18px 0 4px;display:grid}.cycle-detail__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:0 18px;display:flex}.cycle-detail__header .display{margin-top:6px}.stat-grid{background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.stat-grid__item{background:var(--paper);gap:6px;padding:14px 18px;display:grid}.stat-grid__value{font-family:var(--font-display);font-size:26px;font-weight:400;line-height:1}.detail-row{gap:7px;padding:12px 18px;display:grid}.detail-row__top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.detail-row__name{font-size:14.5px;font-weight:500}.detail-row__amount{align-items:baseline;font-size:14px;display:inline-flex}.detail-row__amount .money.is-negative{color:var(--ink)}.share{gap:3px;height:18px;margin-bottom:8px;display:flex}.share__seg{border-radius:5px}.share-row{grid-template-columns:12px 1fr auto 92px;align-items:center;gap:10px;padding:11px 0;font-size:14.5px;display:grid}.share-row .legend__swatch{width:12px;height:12px}.share-row__pct{font-family:var(--font-mono);color:var(--ink-3);font-size:12px}.share-row .money{text-align:right}.chart-card .list--flat>*+*{border-top:1px solid var(--line)}.pva{gap:8px;padding:15px 18px;display:grid}.pva__top,.pva__bottom{justify-content:space-between;align-items:center;gap:12px;display:flex}.pva__name{font-weight:500}.pva__tip{color:#8a4b00;font-size:13px}.pva__tip:before{content:"→ "}.spark{flex-shrink:0;align-items:flex-end;gap:3px;width:104px;height:30px;display:flex;position:relative}.spark__bar{background:#12121238;border-radius:2px;flex:1}.spark__bar.is-over{background:var(--red)}.spark__plan{border-top:1.5px dashed var(--ink);position:absolute;left:-3px;right:-3px}.merchant{grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 18px;display:grid}.merchant__rank{font-family:var(--font-display);color:var(--ink-3);font-size:24px;line-height:1}.merchant:first-child .merchant__rank{color:var(--mango)}.merchant__main{gap:5px;min-width:0;display:grid}.merchant__main .bar{height:4px}.merchant__side{justify-items:end;gap:3px;display:grid}.weekdays{grid-template-columns:repeat(7,1fr);gap:8px;height:170px;display:grid}.weekdays__col{grid-template-rows:auto 1fr auto;justify-items:center;gap:6px;display:grid}.weekdays__value{min-height:14px;font-family:var(--font-mono);white-space:nowrap;font-size:10px;font-weight:600}.weekdays__track{background:#1212120d;border-radius:8px;align-items:flex-end;width:100%;max-width:30px;display:flex}.weekdays__bar{width:100%;animation:grow .6s var(--ease-out) both;transform-origin:bottom;background:#12121233;border-radius:8px}.weekdays__col.is-peak .weekdays__bar{background:var(--mango)}.weekdays__label{font-family:var(--font-mono);text-transform:uppercase;color:var(--ink-2);font-size:10.5px}.commit-grid{padding:16px 18px}.commit-grid__row{grid-template-columns:minmax(0, 1fr) repeat(var(--cols,7), 22px);align-items:center;gap:6px;padding:9px 0;display:grid}.commit-grid__row+.commit-grid__row{border-top:1px solid var(--line)}.commit-grid__head{padding-top:0}.commit-grid__month{font-family:var(--font-mono);text-transform:uppercase;color:var(--ink-3);text-align:center;font-size:9.5px}.commit-grid__name{gap:2px;min-width:0;font-size:14.5px;font-weight:500;display:grid}.dot{border-radius:50%;justify-self:center;width:14px;height:14px}.dot--on_time{background:var(--forest)}.dot--late{background:var(--mango)}.dot--missed{background:var(--red)}.dot--pending{border:1.5px dashed var(--ink-3)}.dot--none{background:#1212120f;width:6px;height:6px}.legend__item .dot{width:10px;height:10px}.toast{z-index:60;top:calc(var(--safe-top) + 12px);background:var(--ink);width:max-content;max-width:calc(100% - 32px);color:var(--cream);font-family:var(--font-mono);animation:toast-in .35s var(--ease-out);border-radius:18px;padding:12px 18px;font-size:12.5px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 24px #12121240}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
