@font-face{font-family:Onest;src:url(/fonts/Onest.woff) format("woff");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-latin-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-latin-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-latin-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-latin-700.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-cyrillic-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-cyrillic-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-cyrillic-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-cyrillic-700.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}:root{color-scheme:dark;--bg: #0b0b0c;--surface: #1c1c1e;--surface-2: #2c2c2e;--surface-3: #3a3a3c;--ink: #f5f5f7;--ink-2: #c7c7cc;--muted: #9a9aa1;--line: #2c2c2e;--line-strong: #3a3a3c;--accent: #34c46a;--accent-ink: #062010;--accent-text: #34c46a;--accent-tint: rgba(52, 196, 106, .16);--pos: #4cb8ea;--pos-tint: rgba(76, 184, 234, .16);--neg: #ff6e6e;--neg-tint: rgba(255, 110, 110, .15);--amber: #e8c36a;--amber-tint: rgba(232, 195, 106, .16);--blue: #4cb8ea;--blue-tint: rgba(76, 184, 234, .16);--violet: #b49cf5;--violet-tint: rgba(180, 156, 245, .16);--rose: var(--neg);--rose-tint: var(--neg-tint);--rose-ink: #ffa3a3;--sky: var(--blue);--sky-tint: var(--blue-tint);--sky-ink: #9ad6f3;--sage: var(--accent);--sage-tint: var(--accent-tint);--sage-ink: #8fe0ad;--amber-ink: #f1d793;--violet-ink: #d2c4fa;--debt: var(--violet);--debt-tint: var(--violet-tint);--debt-ink: var(--violet-ink);--focus: #4cb8ea;--press-bloom: rgba(255, 255, 255, .14);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-12: 48px;--r-s: 8px;--r-control: 12px;--r-card: 16px;--r-sheet: 20px;--r-pill: 999px;--shadow-pop: 0 24px 60px rgba(0, 0, 0, .55);--shadow-fab: 0 6px 18px rgba(0, 0, 0, .45);--font: "Onest", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "Roboto Mono", ui-monospace, "SF Mono", Menlo, monospace;--t-display: clamp(34px, 9.5vw, 44px);--t-mid: clamp(24px, 6.5vw, 28px);--t-day: 30px;--t-list: 16px;--sidebar: 232px;--tabbar: 76px;--keypad-h: 332px;--m-press: 80ms;--m-release: .52s;--m-hover: .2s;--m-state: .26s;--m-sheet: .38s;--m-keypad: .32s;--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--spring-pop: linear(0, .044, .155, .307, .475, .642, .794, .922, 1.023, 1.094, 1.139, 1.16, 1.162, 1.15, 1.129, 1.103, 1.075, 1.049, 1.025, 1.006, .991, .981, .976, .973, .974, .977, .981, .985, .989, .994, .997, 1, 1.002, 1.003, 1.004, 1.004, 1.004, 1.004, 1.003, 1.002, 1);--spring-snap: linear(0, .03, .105, .207, .32, .435, .545, .644, .732, .806, .867, .915, .953, .981, 1.001, 1.015, 1.023, 1.027, 1.028, 1.028, 1.026, 1.023, 1.02, 1.016, 1.013, 1.01, 1.008, 1.006, 1.004, 1.003, 1)}@media(prefers-color-scheme:light){:root{color-scheme:light;--bg: #f2f2f5;--surface: #ffffff;--surface-2: #efeff2;--surface-3: #e4e4e9;--ink: #111214;--ink-2: #3c3c43;--muted: #6c6c72;--line: #e5e5ea;--line-strong: #d1d1d6;--accent: #16853b;--accent-ink: #ffffff;--accent-text: #157a37;--accent-tint: rgba(22, 133, 59, .1);--pos: #0873a9;--pos-tint: rgba(8, 115, 169, .1);--neg: #c93131;--neg-tint: rgba(201, 49, 49, .09);--amber: #95640a;--amber-tint: rgba(149, 100, 10, .12);--blue: #0873a9;--blue-tint: rgba(8, 115, 169, .1);--violet: #6b4fc8;--violet-tint: rgba(107, 79, 200, .1);--rose-ink: #a32828;--sky-ink: #065e8a;--sage-ink: #126c30;--amber-ink: #7a5408;--violet-ink: #5640a6;--focus: #0873a9;--press-bloom: rgba(0, 0, 0, .08);--shadow-pop: 0 18px 50px rgba(20, 20, 30, .16);--shadow-fab: 0 6px 16px rgba(22, 133, 59, .32)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg);overscroll-behavior-y:none}body{overscroll-behavior-y:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.45 var(--font);font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.6rem;font-weight:700;letter-spacing:-.015em}h2{font-size:1rem;font-weight:600}h3{font-size:.95rem;font-weight:600;margin:1rem 0 .5rem}p{margin:0 0 .6rem}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}ul{list-style:none;margin:0;padding:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.muted{color:var(--muted)}.small{font-size:.82rem}.block{display:block}.grow{flex:1 1 auto}.center{display:flex;justify-content:center;padding:1rem}.pos{color:var(--pos)}.neg{color:var(--neg)}.mono,.money,.num{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.lead{font-size:1.1rem;font-weight:600}.row-gap{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.badge{display:inline-block;padding:.1rem .5rem;border-radius:6px;background:var(--accent-tint);color:var(--accent-text);font-size:.72rem;font-weight:600;white-space:nowrap}.badge-muted{background:var(--surface-3);color:var(--muted)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner{animation-duration:.7s!important;animation-iteration-count:infinite!important}[data-pressed]{transform:none!important}}.boot{min-height:100vh;display:grid;place-items:center}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem .9rem;background:var(--bg);border-right:1px solid var(--line)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:.25rem}.sidebar-foot .small{padding:0 .75rem;overflow:hidden;text-overflow:ellipsis}.brand{display:flex;align-items:center;gap:.6rem;padding:.25rem .75rem .5rem;font-weight:700;font-size:1.02rem}.brand-mark{display:grid;gap:3px;width:22px}.brand-mark i{display:block;height:4px;border-radius:2px}.brand-mark i:nth-child(1){background:var(--neg);width:100%}.brand-mark i:nth-child(2){background:var(--pos);width:70%}.brand-mark i:nth-child(3){background:var(--accent);width:40%}.nav-item{display:flex;align-items:center;gap:.7rem;width:100%;min-height:42px;padding:.5rem .75rem;border-radius:12px;border:0;background:none;color:var(--ink-2);text-decoration:none;font-weight:500;font-size:.93rem;cursor:pointer;text-align:left}.nav-item:hover{background:var(--surface-2);color:var(--ink);text-decoration:none}.nav-item.active{background:var(--surface-2);color:var(--ink)}.nav-item.active svg{color:var(--accent-text)}.nav-sub{padding-left:2.6rem;min-height:36px;font-size:.88rem}.nav-sub svg{display:none}.nav-sep{margin-top:var(--s-3);position:relative}.nav-sep:before{content:"";position:absolute;left:.75rem;right:.75rem;top:calc(-1 * var(--s-2));height:1px;background:var(--line)}.sidebar-add{width:100%}.sidebar-actions{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;gap:6px}.sidebar-actions .sidebar-add{width:auto;min-width:0;padding:0 var(--s-3);gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-actions .sidebar-add svg{flex:none}.sidebar-actions .icon-btn-framed{width:42px;height:42px}.main{margin-left:var(--sidebar);padding:1.75rem 2rem 3rem;max-width:calc(1240px + var(--sidebar))}.page{display:flex;flex-direction:column;gap:var(--s-5);max-width:1240px}.page-host{animation:page-in var(--m-state) var(--ease-out)}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap}.page-kicker{color:var(--muted);font-size:.82rem;margin-bottom:.15rem}.page-sub{color:var(--muted);margin:.25rem 0 0}.page-actions{display:flex;gap:.5rem;flex-wrap:wrap}.tabbar,.more-sheet,.app-header{display:none}@media(max-width:760px){.sidebar{display:none}.main{margin-left:0;padding:0 1rem calc(var(--tabbar) + 1rem + env(safe-area-inset-bottom))}h1{font-size:1.35rem}.input,.cell-input{font-size:16px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:calc(.75rem + env(safe-area-inset-top)) 0 .9rem}.app-header h1{font-size:1.2rem}.app-header-title{display:flex;align-items:center;gap:.6rem;min-width:0}.page-head>div>h1{display:none}.page-head{align-items:center}.hide-mobile{display:none!important}.tabbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:20;height:calc(var(--tabbar) + env(safe-area-inset-bottom));padding:var(--s-2) var(--s-2) calc(var(--s-2) + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;border-radius:var(--r-control);border:0;background:none;color:var(--muted);font-size:.68rem;font-weight:550;text-decoration:none;cursor:pointer;transition:color var(--m-hover) var(--ease-out)}.tab:hover{text-decoration:none}.tab.active{color:var(--accent-text)}.tab svg{transition:transform var(--m-release) var(--spring-snap)}.tab.active svg{transform:translateY(-1px)}.tab-add-cell{display:grid;place-items:center}.tab-add{width:56px;height:56px;border-radius:var(--r-pill);border:0;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow-fab)}.more-sheet{display:block;position:fixed;inset:0;z-index:19;background:#00000073;animation:fade-in var(--m-state) var(--ease-out)}.more-panel{position:absolute;left:var(--s-3);right:var(--s-3);top:calc(3.6rem + env(safe-area-inset-top));background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--s-2);box-shadow:var(--shadow-pop);transform-origin:top right;animation:pop-in var(--m-state) var(--spring-snap)}.more-panel .nav-item{padding:.8rem .9rem}}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.94) translateY(-6px)}}.main{translate:0 var(--pull, 0px);transition:translate var(--m-state) var(--ease-out)}.main.pulling{transition:none}.ptr{display:none}@media(max-width:760px){.ptr{display:grid;place-items:center;position:fixed;z-index:15;left:50%;top:calc(env(safe-area-inset-top) + 6px);width:36px;height:36px;margin-left:-18px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-2);opacity:0;transform:translateY(calc(var(--ptr-y, 0px) * .55 - 44px)) scale(calc(.6 + var(--ptr-p, 0) * .4));transition:opacity var(--m-hover) var(--ease-out),transform var(--m-state) var(--ease-out);pointer-events:none}.ptr-on{opacity:1}.ptr-mark svg{display:block;transition:transform var(--m-state) var(--spring-snap)}.ptr-ready{color:var(--accent-text);border-color:var(--accent)}.ptr-ready .ptr-mark svg{transform:rotate(180deg)}.ptr-busy{opacity:1;color:var(--accent-text)}.ptr-busy .spinner{width:16px;height:16px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:42px;padding:0 var(--s-4);border-radius:var(--r-control);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:550;cursor:pointer;text-decoration:none;white-space:nowrap}.btn-label{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);transition:opacity .18s var(--ease-out),transform var(--m-state) var(--spring-snap)}.btn.is-busy .btn-label{opacity:0;transform:translateY(-4px) scale(.96)}.btn-spinner{position:absolute;left:50%;top:50%;margin:-7px 0 0 -7px;animation:spin .7s linear infinite,fade-in .18s var(--ease-out)}.btn:hover:not(:disabled){border-color:var(--muted);text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn.is-busy:disabled{opacity:1}.btn-sm{min-height:34px;padding:0 var(--s-3);font-size:.87rem;border-radius:var(--r-s)}.btn-lg{min-height:52px;padding:0 var(--s-5);font-size:1rem}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){border-color:var(--accent)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);border-color:transparent}.btn-danger{background:var(--neg);border-color:var(--neg);color:#1a0a0a}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;flex:none;border:0;border-radius:var(--r-s);background:none;color:var(--muted);cursor:pointer}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn-framed{border:0;background:var(--surface);width:44px;height:44px;border-radius:var(--r-pill);color:var(--ink-2)}.spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:is(.btn,.icon-btn,.key,.tab,.tab-add,.chip-btn,.ai-ask,.qa-row,.qa-swap,a.ruler-day,.picker-row,button.tx,a.tx,.segmented>button,.nav-item,.plan-line-main,.cat-line-main,.wallet-card,.qa-amount,.plan-check,.hero-account,.debts-card,.wallet-switch,.range-tab,.foreign-row,.milestone){position:relative;isolation:isolate;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform var(--m-release) var(--spring-pop),background-color var(--m-hover) var(--ease-out),border-color var(--m-hover) var(--ease-out),color var(--m-hover) var(--ease-out),filter var(--m-hover) var(--ease-out),opacity var(--m-hover) var(--ease-out)}:is(.btn,.icon-btn,.key,.tab-add,.chip-btn,.ai-ask,.qa-row,.picker-row,button.tx,a.tx,.nav-item,.plan-line-main,.cat-line-main,.wallet-card,.hero-account,.debts-card,.wallet-switch,.foreign-row,.milestone):after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--press-x, 50%) var(--press-y, 50%),var(--press-bloom) 0%,transparent 70%);opacity:0;transition:opacity .6s var(--ease-out)}[data-pressed]:not(:disabled){transform:scale(var(--press-scale, .96));transition-duration:var(--m-press);transition-timing-function:var(--ease-out)}[data-pressed]:not(:disabled):after{opacity:1;transition-duration:90ms}.btn-primary[data-pressed],.tab-add[data-pressed],.key-ok[data-pressed]{filter:brightness(.92)}.btn-primary:after,.tab-add:after,.key-ok:after{--press-bloom: rgba(255, 255, 255, .3)}:is(.qa-row,.picker-row,button.tx,a.tx,.plan-line-main,.cat-line-main,.hero-account,.debts-card,.wallet-card)[data-pressed]{--press-scale: .985 !important}@media(hover:hover)and (pointer:fine){.btn-primary:hover:not(:disabled),.tab-add:hover{filter:brightness(1.06)}.plan-check:hover:not(:disabled){border-color:var(--accent)}.period-bar .menu>.icon-btn:hover,.period-step:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.link:hover,.budget-edit:hover{text-decoration:underline;text-underline-offset:3px}}.link,.budget-edit,.wallet-name,.goal-btn,.link-like{transition:opacity .32s var(--ease-out),color var(--m-hover) var(--ease-out),background-color var(--m-hover) var(--ease-out)}:is(.link,.budget-edit,.wallet-name,.goal-btn,.link-like)[data-pressed]{opacity:.55;transform:none;transition-duration:40ms}.plan-check[data-pressed]:not(:disabled){box-shadow:0 0 0 5px var(--accent-tint)}.link{font-size:.87rem;color:var(--accent-text);text-decoration:none}.link-like{background:none;border:0;padding:0;cursor:pointer;text-align:left}.input{width:100%;min-height:42px;padding:.45rem var(--s-3);border:1px solid var(--line-strong);border-radius:var(--r-control);background:var(--surface-2);color:var(--ink);font:inherit;transition:border-color var(--m-hover) var(--ease-out),box-shadow .16s var(--ease-out)}.input::placeholder{color:var(--muted)}.input:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 30%,transparent)}textarea.input{resize:vertical}select.input{padding-right:1.6rem}.input.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}.input[type=date]{-webkit-appearance:none;appearance:none;min-width:0;max-width:100%;text-align:left}.input[type=date]::-webkit-date-and-time-value{text-align:left}.field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.field-label{font-size:.8rem;font-weight:500;color:var(--muted)}.field-hint{font-size:.78rem;color:var(--muted)}.form{display:flex;flex-direction:column;gap:.85rem}.form>.btn{align-self:flex-start}.form-sep{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line)}.form-row{display:flex;gap:.75rem;flex-wrap:wrap}.form-row>.field{min-width:140px}.form-error{color:var(--neg);margin:0}.check{display:flex;align-items:center;gap:.5rem;font-size:.9rem;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--accent)}.shares,.shares-panel{display:flex;flex-direction:column;gap:var(--s-2)}.shares-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2)}.share-row{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center}.share-row .share-who,.share-row .share-name{flex:1 1 120px;min-width:0;width:auto}.share-row .num{flex:0 0 112px;width:112px}.share-row .icon-btn{flex:none}.share-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2)}.share-line{display:flex;align-items:center;gap:var(--s-2);min-height:40px}.share-line .grow{flex:1 1 auto;min-width:0}.share-actions{justify-content:flex-end}.share-add{align-self:flex-start}.inline-form{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:.75rem}.inline-form>.input{flex:1 1 120px;width:auto;min-width:0;max-width:100%}.segmented{position:relative;isolation:isolate;align-self:flex-start;display:inline-flex;flex:none;min-height:42px;padding:3px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);max-width:100%;overflow-x:auto;scrollbar-width:none}.seg-indicator{position:absolute;z-index:0;top:3px;bottom:3px;left:0;width:var(--seg-w, 0);border-radius:var(--r-pill);background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--line-strong);transform:translate(var(--seg-x, 0));pointer-events:none}.segmented.placed .seg-indicator{transition:transform .46s var(--spring-snap),width .46s var(--spring-snap)}.segmented button{z-index:1;border:0;background:none;padding:.4rem .9rem;border-radius:var(--r-pill);cursor:pointer;color:var(--muted);font-weight:550;white-space:nowrap;font-size:.88rem}.segmented button.on{color:var(--ink)}.segmented-wide{align-self:stretch;display:flex;overflow:hidden}.segmented-wide button{flex:1 1 0;min-width:0;padding:.4rem .3rem;overflow:hidden;text-overflow:ellipsis}.chips{display:flex;gap:var(--s-2);overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--s-4));padding:2px var(--s-4)}.chips::-webkit-scrollbar{display:none}.chip-btn{display:inline-flex;align-items:center;gap:var(--s-2);flex:none;min-height:38px;padding:0 var(--s-3);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);font-size:.88rem;font-weight:500;cursor:pointer;white-space:nowrap}.chip-btn.on{border-color:var(--accent);background:var(--accent-tint)}.progress{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.progress-fill{height:100%;border-radius:3px;background:var(--ink-2);transition:width .6s var(--ease-out)}.tone-rose .progress-fill{background:var(--neg)}.tone-sky .progress-fill{background:var(--blue)}.tone-sage .progress-fill{background:var(--accent)}.tone-debt .progress-fill{background:var(--debt)}.tone-amber .progress-fill{background:var(--amber)}.tone-accent .progress-fill{background:var(--accent)}.loading{display:flex;align-items:center;gap:.6rem;color:var(--muted);padding:2rem 0}.skeleton{display:block;border-radius:var(--r-card);background:var(--surface);background-image:linear-gradient(100deg,transparent 30%,color-mix(in srgb,var(--surface-3) 60%,transparent) 50%,transparent 70%);background-size:200% 100%;animation:sheen 1.4s linear infinite}@keyframes sheen{0%{background-position:150% 0}to{background-position:-50% 0}}.sk-bar{height:44px;border-radius:var(--r-control)}.sk-hero{height:320px}.sk-card{height:220px}.sk-rows{height:180px;border:0}.sk-line{height:18px;border-radius:6px;border:0}.offline-bar{display:grid;gap:.4rem;margin-bottom:1rem;padding:.7rem 1rem;border-radius:var(--r-control);background:var(--amber-tint);color:var(--amber-ink);font-size:.9rem}.offline-bar p{margin:0}.offline-row{display:flex;gap:.75rem;align-items:center;justify-content:space-between}.offline-row>span{min-width:0;overflow-wrap:anywhere}.offline-failed{color:var(--rose-ink)}.error-box{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-radius:var(--r-control);background:var(--neg-tint);color:var(--rose-ink)}.empty{padding:2rem 1rem;text-align:center;color:var(--muted)}.empty .btn{margin-top:.5rem}.tag{display:inline-block;margin-left:.5rem;padding:0 .4rem;border-radius:4px;background:var(--surface-3);color:var(--muted);font-size:.75rem;font-weight:500}.tag-ok{padding:.6rem .8rem;border-radius:var(--r-s);background:var(--accent-tint);color:var(--sage-ink)}.swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}.tile{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--r-pill);background:var(--tile-bg, var(--surface-3));color:var(--tile-fg, var(--ink-2))}.tile-sm{width:30px;height:30px}.tile-lg{width:48px;height:48px}.section{background:var(--surface);border-radius:var(--r-card);padding:var(--s-4);min-width:0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-1) var(--s-3);margin-bottom:var(--s-3);flex-wrap:wrap}.section-head h2{font-size:1.06rem;flex:1 1 10em;min-width:0}.section-aside{display:flex;align-items:center;gap:var(--s-2);white-space:nowrap;min-width:0}.section-aside>.muted{white-space:normal}.section-total{display:flex;gap:.6rem;align-items:baseline;font-family:var(--mono);font-variant-numeric:tabular-nums}.section-note{margin-top:-.4rem}.section-rose .section-head h2{color:var(--rose-ink)}.section-sky .section-head h2{color:var(--sky-ink)}.section-event .section-head h2{color:var(--amber-ink)}.section-debt .section-head h2{color:var(--debt-ink)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;align-items:start}.col{display:flex;flex-direction:column;gap:1.1rem;min-width:0}@media(max-width:1020px){.grid-2{grid-template-columns:minmax(0,1fr)}}.ledger-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--line)}.ledger-row:last-child{border-bottom:0}.ledger-main{display:flex;align-items:center;gap:.6rem;min-width:0}.ledger-amount{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}.event-date{display:inline-block;flex:none;white-space:nowrap;min-width:6.5em;padding:.1rem .45rem;border-radius:6px;background:var(--amber-tint);color:var(--amber-ink);font-size:.8rem;font-weight:600}.goals{display:flex;flex-direction:column;gap:.9rem}.goals li{display:flex;flex-direction:column;gap:.35rem}.goal-line{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.goal-btn{display:flex;flex-direction:column;gap:.35rem;width:100%;border:0;background:none;padding:.35rem;margin:-.35rem;border-radius:var(--r-s);text-align:left;cursor:pointer}.goal-btn:hover{background:var(--surface-2)}.tx-list{display:flex;flex-direction:column}.tx{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--s-4);align-items:center;width:100%;min-height:64px;padding:var(--s-3) var(--s-4);border:0;background:none;text-align:left;border-radius:0;background-image:linear-gradient(var(--line),var(--line));background-size:calc(100% - 72px) 1px;background-position:right bottom;background-repeat:no-repeat}.tx-list>li{animation:row-in var(--m-state) var(--ease-out)}@keyframes row-in{0%{opacity:0;transform:translateY(-4px)}}button.tx{cursor:pointer}button.tx:hover,a.tx:hover{background:var(--surface-2);text-decoration:none}a.tx{color:inherit;text-decoration:none}.tx-list li:last-child .tx{background-image:none}.tx-text{display:flex;flex-direction:column;min-width:0}.tx-title{font-size:var(--t-list);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-sub{color:var(--muted);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-right{display:flex;flex-direction:column;align-items:flex-end;font-weight:500}.tx-right .tx-sub{font-weight:400}.tx-excluded .tx-title{color:var(--ink-2)}.tx-excluded .tx-title:after{content:" \b7  \43d\435  \432  \43e\442\447\451\442\430\445";color:var(--muted);font-weight:400;font-size:.78rem}.tx-group{color:var(--muted);font-size:.8rem;padding:.75rem .25rem .1rem;display:flex;justify-content:space-between}.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.filters>.input{width:auto;flex:1 1 160px}.filters>input[type=search]{flex:2 1 260px}.filters>input[type=date]{flex:0 1 150px}.chips-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.chips-row .chip-btn{max-width:100%}.chips-row .chip-btn>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chips-row .input{flex:1 1 200px;width:auto}.range-options{display:flex;flex-direction:column;gap:.25rem}.range-options .picker-row{grid-template-columns:minmax(0,1fr) auto}.range-custom{display:flex;flex-direction:column;gap:.6rem;padding:.75rem .4rem 0;border-top:1px solid var(--line);margin-top:.5rem}.range-custom .form-row>.field{flex:1}.days{display:flex;flex-direction:column;gap:.9rem}.day{background:var(--surface);border-radius:var(--r-card);overflow:hidden}.day-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--s-4);align-items:center;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line)}.day-num{font-size:var(--t-day);font-weight:500;line-height:1;text-align:center;font-variant-numeric:tabular-nums}.day-when{display:flex;flex-direction:column;min-width:0;line-height:1.25}.day-when strong{font-weight:500;text-transform:capitalize}.day-when span{color:var(--muted);font-size:.82rem}.day-total{font-weight:500}.picker-search{position:sticky;top:0;z-index:1;background:var(--surface);padding-bottom:.6rem}.picker-group{color:var(--muted);font-size:.82rem;font-weight:600;padding:var(--s-3) var(--s-1) 0}.picker-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--s-3);align-items:center;width:100%;min-height:54px;padding:var(--s-2);border:0;border-radius:var(--r-control);background:none;text-align:left;cursor:pointer}.picker-row:hover{background-color:var(--surface-2)}.pick-group .picker-row:hover{background-color:var(--surface-3)}.picker-row.on{background-color:var(--accent-tint)}.pick-kind{display:flex;flex-direction:column;gap:var(--s-2)}.pick-kind+.pick-kind{margin-top:var(--s-2)}.pick-group{border-radius:var(--r-card);background:var(--surface-2);padding:var(--s-1)}.pick-group+.pick-group{margin-top:0}.pick-children{position:relative}.pick-children .picker-row{position:relative;padding-left:44px;grid-template-columns:36px minmax(0,1fr) auto}.pick-children .picker-row .tile{width:36px;height:36px}.pick-children:before{content:"";position:absolute;left:27px;top:-7px;bottom:26px;width:1.5px;background:var(--line-strong);border-radius:1px}.pick-children .picker-row:before{content:"";position:absolute;left:28px;top:50%;width:14px;height:1.5px;background:var(--line-strong)}.pick-children .picker-row:after{z-index:-1}.pick-children .picker-row{background-image:linear-gradient(var(--line),var(--line));background-size:calc(100% - 92px) 1px;background-position:right top;background-repeat:no-repeat}.picker-head{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-2) var(--s-5) var(--s-3)}.picker-head .picker-search{position:static;padding:0;background:none}.picker-body{display:flex;flex-direction:column;gap:var(--s-2)}.picker-dock{position:absolute;left:var(--s-4);right:var(--s-4);bottom:calc(var(--s-3) + env(safe-area-inset-bottom));z-index:3;display:flex;align-items:center;gap:var(--s-2);padding:0 var(--s-2) 0 var(--s-4);border-radius:var(--r-pill);background:color-mix(in srgb,var(--surface-3) 88%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);color:var(--muted)}.picker-dock .input{border:0;background:transparent;box-shadow:none;padding-left:0;min-height:50px}.picker-dock .input:focus{box-shadow:none}@media(max-width:760px){.modal-picker .picker-head{padding:var(--s-2) var(--s-4) var(--s-3)}.modal-picker .modal-body.picker-body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}}.picker-row-text{display:flex;flex-direction:column;min-width:0}.picker-row-text .muted{font-size:.78rem}.picker-row .money{font-size:.88rem;color:var(--ink-2)}.picker-empty{padding:1.5rem 0;text-align:center;color:var(--muted)}details.picker-hidden>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;padding:.75rem .4rem;color:var(--muted);font-size:.88rem}details.picker-hidden>summary::-webkit-details-marker{display:none}.wallets{display:flex;flex-direction:column}.wallet{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;gap:.85rem;align-items:center;padding:.65rem 0;border-bottom:1px solid var(--line)}.wallet:last-child{border-bottom:0}.wallet-name{color:inherit;text-decoration:none;font-weight:600;display:flex;flex-direction:column;min-width:0}.wallet-name:hover{text-decoration:underline}.wallet-name .small{font-weight:400}.wallet-balance{text-align:right;font-weight:600;font-size:1.02rem;display:flex;flex-direction:column;align-items:flex-end}.wallet-actions{display:flex;gap:.25rem;align-items:center}.archived{background:var(--surface);border-radius:var(--r-card);padding:.75rem var(--s-4)}.archived summary{cursor:pointer;font-weight:600;color:var(--ink-2)}.colors{display:flex;gap:.4rem;flex-wrap:wrap}.color{width:30px;height:30px;border-radius:9px;border:2px solid transparent;cursor:pointer}.color.on{border-color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.group-move{display:inline-flex;gap:0;margin-left:var(--s-1)}.group-move .icon-btn{width:30px;height:30px}.menu{position:relative}.menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:5;min-width:220px;padding:var(--s-1);border-radius:var(--r-control);background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;transform-origin:top right;animation:pop-in var(--m-state) var(--spring-snap)}.menu-list.menu-up{top:auto;bottom:calc(100% + 4px);transform-origin:bottom right}.menu-item{display:flex;align-items:center;gap:var(--s-2);width:100%;padding:.6rem var(--s-3);border:0;border-radius:var(--r-s);background:none;text-align:left;cursor:pointer;font-size:.92rem;transition:background-color var(--m-hover) var(--ease-out)}.menu-item:hover{background:var(--surface-2)}@media(max-width:760px){.wallet{grid-template-columns:36px minmax(0,1fr) auto 36px;gap:.6rem}.wallet .tile{width:36px;height:36px}.wallet-balance{font-size:.95rem}}.stat-row{display:flex;gap:.75rem;flex-wrap:wrap}.stat{flex:1 1 120px;display:flex;flex-direction:column;gap:.15rem;padding:.85rem 1rem;border-radius:var(--r-control);background:var(--surface)}.stat strong{font-family:var(--mono);font-size:1.3rem;font-weight:600;letter-spacing:-.01em}.debt-detail .stat{background:var(--surface-2)}.debt-table{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--r-card);overflow:hidden}.debt-tr{display:grid;grid-template-columns:minmax(0,2.2fr) 1fr 1fr 1.4fr .9fr;gap:.75rem;align-items:center;width:100%;padding:.75rem 1rem;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.debt-tr:last-child{border-bottom:0}button.debt-tr:hover{background:var(--surface-2)}.debt-th{cursor:default;color:var(--muted);font-size:.78rem;font-weight:600;background:var(--surface-2)}.debt-th span:not(:first-child){text-align:right}.debt-tr .num{text-align:right}.debt-title{font-weight:600}.debt-borrowed .debt-title{color:var(--debt-ink)}.debt-progress{display:grid;grid-template-columns:1fr 3.2em;gap:.5rem;align-items:center;text-align:right}.archived .debt-table{margin-top:.75rem}.pay-form{margin-top:1rem;padding:.9rem;border-radius:var(--r-control);border:1px solid var(--line-strong);display:flex;flex-direction:column;gap:.7rem}.pay-form h3{margin:0}.pay-form .btn{align-self:flex-start}@media(max-width:760px){.debt-th{display:none}.debt-tr{grid-template-columns:1fr 1fr;grid-template-areas:"title title" "paid total" "prog prog";gap:.3rem .75rem}.debt-tr>:nth-child(1){grid-area:title}.debt-tr>:nth-child(2){grid-area:paid;text-align:left}.debt-tr>:nth-child(3){grid-area:total}.debt-tr>:nth-child(4){grid-area:prog}.debt-tr>:nth-child(5){display:none}}.params{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem 1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.param{display:grid;grid-template-columns:minmax(0,1fr) 1.1em;grid-template-rows:auto auto;align-items:center;gap:.25rem .35rem}.param-label{grid-column:1 / -1;font-size:.78rem;font-weight:500;color:var(--muted)}.param .input{min-height:36px;padding:.25rem .55rem}.param-unit{color:var(--muted)}.params-foot{display:flex;gap:.5rem;align-items:flex-end;grid-column:1 / -1}.chart{margin:1rem 0 0}.chart figcaption{display:flex;flex-direction:column;gap:.1rem;margin-bottom:.5rem}.chart figcaption strong{font-family:var(--mono);font-size:1.7rem;font-weight:700;letter-spacing:-.02em}.chart svg{width:100%;height:auto;display:block;touch-action:pan-y}.chart .grid{stroke:var(--line)}.chart .axis{fill:var(--muted);font-size:11px;font-family:var(--mono)}.line-total{fill:none;stroke:var(--accent);stroke-width:2.5}.line-real{fill:none;stroke:var(--blue);stroke-width:2;stroke-dasharray:5 4}.dot-total{fill:var(--surface);stroke:var(--accent);stroke-width:2.5}.bar-inc{fill:var(--pos)}.bar-exp{fill:var(--neg)}.chart-legend{display:flex;gap:1.25rem;font-size:.8rem;color:var(--muted);margin-top:.35rem}.chart-legend i{display:inline-block;width:16px;height:3px;margin-right:.4rem;vertical-align:middle;border-radius:2px}.lg-total{background:var(--accent)}.lg-real{background:repeating-linear-gradient(90deg,var(--blue) 0 5px,transparent 5px 8px)}.lg-inc{background:var(--pos);height:8px!important}.lg-exp{background:var(--neg);height:8px!important}.table-scroll{overflow-x:auto;margin:0;padding:0;border-radius:10px;border:1px solid var(--line)}.year-table,.grid-table{border-collapse:separate;border-spacing:0;font-size:.82rem;font-family:var(--mono);font-variant-numeric:tabular-nums}.year-table th,.year-table td,.grid-table th,.grid-table td{padding:.32rem .55rem;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.year-table th[scope=row],.grid-table th[scope=row]{position:sticky;left:0;z-index:1;text-align:left;font-weight:500;background:var(--surface);font-family:var(--font);min-width:13em;box-shadow:1px 0 0 var(--line)}.year-table thead th,.grid-table thead th{background:var(--surface-2);font-weight:600}.year-table thead th[scope=col]:first-child,.grid-table thead th[scope=col]:first-child{position:sticky;left:0;z-index:2;text-align:left}.year-table .actual{color:var(--muted)}.year-table thead th.actual{background:var(--surface-3)}.row-year td{font-weight:600;color:var(--ink)}.row-total td,.row-total th{background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important;font-weight:700;color:var(--ink)!important}.row-passive td{font-weight:600}.row-edit th{background:color-mix(in srgb,var(--neg) 14%,var(--surface))!important}.grid-table tfoot th[scope=row]{background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.cell-input{width:92px;padding:.2rem .35rem;border:1px solid transparent;border-radius:6px;background:transparent;color:inherit;font:inherit;text-align:right}.cell-input{transition:border-color var(--m-hover) var(--ease-out),background-color var(--m-hover) var(--ease-out)}.cell-input:hover{border-color:var(--line-strong)}@media(hover:hover)and (pointer:fine){.link-like.ledger-main:hover{color:var(--accent-text)}}.cell-input::placeholder{color:var(--line-strong)}.row-edit td{background:color-mix(in srgb,var(--neg-tint) 45%,transparent)}.cell-input:focus{border-color:var(--focus);outline:none;background:var(--surface)}.grid-table tfoot td,.grid-table tfoot th{background:color-mix(in srgb,var(--accent) 14%,var(--surface));font-weight:700}@media(max-width:760px){.year-table th[scope=row],.grid-table th[scope=row]{min-width:0;max-width:34vw;white-space:normal;line-height:1.15;font-size:.76rem;padding:.3rem .45rem}.year-table thead th[scope=col]:first-child,.grid-table thead th[scope=col]:first-child{max-width:34vw;min-width:0}.year-table td,.grid-table td{padding:.3rem .45rem}}.grid-table td{padding:.25rem .5rem}.grid-table td.zero{color:var(--line-strong)}.grid-table td.neg{color:var(--neg)}.prio-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.prio-card{display:flex;flex-direction:column;padding:.7rem .85rem;border-radius:var(--r-control);font-size:.85rem}.prio-card strong{font-family:var(--mono);font-size:1.15rem}.prio-1{background:var(--neg-tint);color:var(--rose-ink)}.prio-2{background:var(--amber-tint);color:var(--amber-ink)}.prio-3{background:var(--blue-tint);color:var(--sky-ink)}.prio-4{background:var(--surface-2);color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line)}.prio-5{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}@media(max-width:760px){.prio-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.prio-chip{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600}.wish-group{display:flex;flex-direction:column;gap:.4rem}.wish-group-head{display:flex;gap:.75rem;align-items:center;font-size:.95rem}.wishes{background:var(--surface);border-radius:var(--r-card);overflow:hidden}.wish{display:grid;grid-template-columns:minmax(0,1fr) 36px auto;gap:.5rem;align-items:center;padding:.35rem .9rem .35rem .4rem;border-bottom:1px solid var(--line)}.wish:last-child{border-bottom:0}.wish-main{display:flex;flex-direction:column;gap:.1rem;border:0;background:none;text-align:left;padding:.4rem .5rem;border-radius:var(--r-s);cursor:pointer;min-width:0}.wish-main:hover{background:var(--surface-2)}.wish-name{font-weight:500}.wish-pc{display:flex;flex-direction:column;font-size:.8rem}.pro{color:var(--sage-ink)}.con{color:var(--rose-ink)}.wish-price{font-family:var(--mono);font-weight:600;text-align:right}.bars{display:flex;flex-direction:column;gap:.15rem}.bar-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:.2rem .65rem;align-items:center;padding:.4rem .35rem;border-radius:var(--r-s);color:inherit;text-decoration:none}.bar-row:hover{background:var(--surface-2);text-decoration:none}.bar-row .tile{grid-row:span 2}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-val{font-family:var(--mono);font-weight:600;white-space:nowrap}.bar-track{grid-column:2 / -1;height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.bar-fill{display:block;height:100%;border-radius:3px}.fill-exp{background:var(--neg)}.fill-inc{background:var(--pos)}.bar-child{padding-left:1.5rem}.bar-child .bar-label{color:var(--ink-2)}.cats{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-3)}.cat-group{position:relative;padding:var(--s-1) var(--s-2);border-radius:var(--r-control);background:var(--surface-2)}.cat{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:var(--s-3);align-items:center;min-height:44px}.cat.child{padding-left:36px;border-top:1px solid var(--line)}.cat.child:before{content:"";position:absolute;left:15px;top:-1px;bottom:50%;width:14px;border-left:1.5px solid var(--line-strong);border-bottom:1.5px solid var(--line-strong);border-bottom-left-radius:6px}.cat.child:not(:last-child):after{content:"";position:absolute;left:15px;top:50%;bottom:-1px;border-left:1.5px solid var(--line-strong)}.cat-actions{display:flex;gap:2px}.cat .badge{margin-left:.4rem}.cat-edit-head{display:flex;align-items:flex-end;gap:var(--s-3)}.cat-edit-head>.tile{margin-bottom:2px}.color-input{width:40px;height:40px;padding:2px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface)}.icon-grid{display:flex;flex-wrap:wrap;gap:.35rem}.icon-grid button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);display:grid;place-items:center;cursor:pointer}.icon-grid button.on{border-color:var(--accent);background:var(--accent-tint);color:var(--accent)}.import-result{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin:1rem 0 0}.import-result div{padding:.5rem .7rem;border-radius:var(--r-s);background:var(--surface-2)}.import-result dt{font-size:.78rem;color:var(--muted)}.import-result dd{margin:0;font-weight:700;font-size:1.1rem;font-family:var(--mono)}.import-result .warn{grid-column:1 / -1;background:var(--amber-tint)}.import-result .warn dd{font-weight:400;font-size:.85rem;font-family:var(--font)}input[type=file].input{padding:.4rem}.modal{width:min(560px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:1px solid var(--line-strong);border-radius:var(--r-card);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-pop)}.modal[open]{animation:modal-in var(--m-state) var(--spring-snap)}.modal.leaving{animation:modal-out .2s var(--ease-in) forwards}@keyframes modal-in{0%{opacity:0;transform:scale(.96) translateY(8px)}}@keyframes modal-out{to{opacity:0;transform:scale(.97) translateY(6px)}}.modal-wide{width:min(860px,calc(100vw - 2rem))}.modal::backdrop{background:#0000008c;animation:fade-in var(--m-state) var(--ease-out);opacity:calc(1 - var(--drag, 0))}.modal.leaving::backdrop{animation:fade-out .2s var(--ease-in) forwards}@keyframes fade-out{to{opacity:0}}.modal-inner{position:relative;display:flex;flex-direction:column;max-height:calc(100dvh - 2rem)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5) var(--s-3);border-bottom:1px solid var(--line)}.modal-head h2{font-size:1.1rem}.modal{overflow:hidden;overscroll-behavior:contain}.modal-inner{max-width:100%}.modal-body{padding:var(--s-4) var(--s-5) var(--s-5);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;min-height:0;-webkit-overflow-scrolling:touch}.modal-inner>*{flex:none}.modal-inner>.modal-body{flex:0 1 auto}.modal-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-5);border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap}.sheet-handle{display:none}@media(max-width:760px){.modal,.modal-wide{width:100vw;max-width:100vw;max-height:94dvh;margin:auto 0 0;border-radius:var(--r-sheet) var(--r-sheet) 0 0;border-bottom:0}.modal[open]{animation:sheet-in var(--m-sheet) var(--ease-out)}.modal.leaving{animation:sheet-out .22s var(--ease-in) forwards}.modal-inner{max-height:94dvh}.modal-foot{padding-bottom:calc(var(--s-3) + env(safe-area-inset-bottom))}.modal-body{padding:var(--s-4) var(--s-4) calc(var(--s-5) + env(safe-area-inset-bottom))}.modal-head{padding:var(--s-3) var(--s-4)}.sheet-handle{display:block;position:relative;width:136px;height:16px;margin:0 auto -4px;touch-action:none}.sheet-handle:before{content:"";position:absolute;left:50%;top:var(--s-2);width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--line-strong)}.modal:not(.modal-full) .modal-head{touch-action:none}.modal-sheet .modal-head{border-bottom:0;padding-top:var(--s-1);padding-bottom:0}.modal-full,.modal-full.modal-wide{max-height:100dvh;height:100dvh;border-radius:0;margin:0}.modal-full .modal-inner{max-height:100dvh;height:100dvh}.modal-full .modal-head{padding-top:calc(var(--s-3) + env(safe-area-inset-top))}.modal-full .sheet-handle{display:none}.modal-form,.modal-form .modal-inner{height:94dvh;max-height:94dvh}.modal-form .modal-inner>.modal-body{flex:1 1 auto}.modal{translate:0 var(--vv-shift, 0px)}.modal.kb-open,.modal.kb-open .modal-inner{max-height:calc(var(--vv-h, 100dvh) - var(--s-3))}.modal-form.kb-open,.modal-form.kb-open .modal-inner,.modal-qa.kb-open,.modal-qa.kb-open .modal-inner{height:calc(var(--vv-h, 100dvh) - var(--s-3))}.modal-full.kb-open,.modal-full.kb-open .modal-inner{height:var(--vv-h, 100dvh);max-height:var(--vv-h, 100dvh)}.modal.kb-open .modal-foot{padding-bottom:var(--s-3)}.modal-form.kb-open .modal-inner>.modal-body,.modal-qa.kb-open .modal-inner>.modal-body:not(.qa-pad-open){padding-bottom:var(--s-5)}.modal.kb-open{box-shadow:0 var(--kb, 0px) 0 0 var(--surface)}.modal.kb-open:has(>.modal-inner>.modal-foot){box-shadow:0 var(--kb, 0px) 0 0 var(--surface-2)}.modal.kb-anim,.modal.kb-anim .modal-inner{transition:translate .26s var(--ease-out),height .26s var(--ease-out),max-height .26s var(--ease-out)}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes sheet-out{to{transform:translateY(100%)}}.modal-qa{overflow:hidden}.qa-head{display:flex;flex-direction:column;gap:var(--s-2)}.qa{display:flex;flex-direction:column;gap:var(--s-3);padding-top:var(--s-2)}.qa>*{flex:none}.qa-amount{display:flex;flex-direction:column;align-items:center;width:100%;padding:var(--s-1) 0 var(--s-3);border:0;border-radius:var(--r-control);background:none;cursor:pointer;text-align:center}.qa-expr{height:20px;color:var(--muted);font-family:var(--mono);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.qa-amount-line{display:flex;align-items:baseline;justify-content:center;gap:var(--s-2);height:60px;max-width:100%}.qa-amount-value{font-family:var(--mono);font-size:3rem;font-weight:700;line-height:60px;letter-spacing:-.03em;white-space:nowrap;transition:color var(--m-state) var(--ease-out),font-size var(--m-state) var(--ease-out)}.qa-amount-value.sz-m{font-size:2.4rem}.qa-amount-value.sz-s{font-size:1.85rem}.qa-amount-value.placeholder{color:var(--muted)}.qa-amount-value.debt{color:var(--debt)}.qa-amount-cur{font-family:var(--mono);font-size:1.2rem;font-weight:600;color:var(--muted)}.qa-amount:before{content:"";position:absolute;left:50%;bottom:2px;width:28px;height:3px;margin-left:-14px;border-radius:2px;background:var(--accent);opacity:0;transform:scaleX(.4);transition:opacity var(--m-hover) var(--ease-out),transform var(--m-state) var(--spring-snap)}.qa-amount.on:before{opacity:1;transform:none}.qa-amount-desk{display:flex;flex-direction:column;align-items:center;gap:var(--s-1)}.qa-amount-input{width:100%;max-width:340px;text-align:center;font-family:var(--mono);font-size:2.2rem;font-weight:700;min-height:64px;border-radius:var(--r-card)}.qa-amount-input{caret-color:var(--accent)}.qa-amount-input:placeholder-shown{caret-color:transparent}.qa-amount-input:focus:placeholder-shown{background-image:linear-gradient(var(--accent),var(--accent));background-repeat:no-repeat;background-size:28px 3px;background-position:center calc(100% - 10px)}.qa-amount-input.neg{color:var(--neg)}.qa-amount-input.pos{color:var(--pos)}.qa-amount-input.debt{color:var(--debt)}.qa-expr-desk{min-height:20px;color:var(--muted);font-family:var(--mono);font-size:.9rem}.qa-hint{margin:0;min-height:20px;text-align:center;color:var(--muted);font-size:.82rem}.qa-hint .money{font-weight:600}.qa-lines{display:flex;flex-direction:column;gap:var(--s-2)}.qa-lines-label{color:var(--muted);font-size:.8rem}.qa-lines .chip-btn .money{font-size:.82rem}.qa-lines .chips{margin:0 calc(-1 * var(--s-5));padding:2px var(--s-5)}.phrase{display:flex;flex-direction:column;gap:var(--s-1)}.phrase-row{display:flex;align-items:stretch;gap:var(--s-2)}.phrase-field{position:relative;flex:1 1 auto;min-width:0;display:flex}.phrase-input{flex:1 1 auto;min-height:64px;resize:none;line-height:1.4;padding-right:calc(32px + var(--s-2))}.icon-btn.phrase-clear{position:absolute;top:var(--s-1);right:var(--s-1);width:32px;height:32px;border-radius:var(--r-pill);opacity:0;scale:.6;visibility:hidden;transition:transform var(--m-release) var(--spring-pop),background-color var(--m-hover) var(--ease-out),color var(--m-hover) var(--ease-out),opacity .14s var(--ease-out),scale .14s var(--ease-out),visibility 0s linear .14s}.icon-btn.phrase-clear.shown{opacity:1;scale:1;visibility:visible;transition:transform var(--m-release) var(--spring-pop),background-color var(--m-hover) var(--ease-out),color var(--m-hover) var(--ease-out),opacity var(--m-hover) var(--ease-out),scale var(--m-state) var(--spring-pop),visibility 0s}@media(prefers-reduced-motion:reduce){.icon-btn.phrase-clear,.icon-btn.phrase-clear.shown{scale:1}}.icon-btn.phrase-mic{width:44px;height:44px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2)}.icon-btn.phrase-mic.on,.icon-btn.phrase-mic.on:hover:not(:disabled){background:var(--accent);color:var(--accent-ink)}.phrase-actions{display:flex;flex-direction:column;gap:var(--s-2);flex:none}.icon-btn.phrase-again{width:44px;height:44px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2)}.icon-btn.phrase-again.busy svg{animation:phrase-again .7s var(--ease-out)}@keyframes phrase-again{0%{rotate:0deg}to{rotate:-360deg}}@media(prefers-reduced-motion:reduce){.icon-btn.phrase-again.busy svg{animation:none}}.phrase-status{margin:0;min-height:20px;color:var(--muted);font-size:.82rem}.phrase-status.neg{color:var(--neg)}.qa-rows{display:flex;flex-direction:column;border-radius:var(--r-card);overflow:hidden;background:var(--surface-2)}.qa-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--s-3);align-items:center;width:100%;min-height:58px;padding:var(--s-2) var(--s-4);border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.qa-row:last-child{border-bottom:0}.qa-rows{position:relative}.qa-rows>.qa-swap{position:absolute;left:calc(var(--s-4) + 4px);top:50%;z-index:2;width:32px;height:32px;margin-top:-16px;display:grid;place-items:center;padding:0;border:2px solid var(--surface-2);border-radius:var(--r-pill);background:var(--surface);color:var(--accent-text);cursor:pointer}.qa-swap:disabled{color:var(--muted);cursor:default}.qa-rows>.qa-swap+.qa-row{border-top:0}.qa-row:hover{background:var(--surface-3)}.qa-row-text{display:flex;flex-direction:column;min-width:0}.qa-row-label{color:var(--muted);font-size:.75rem}.qa-row-value{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qa-row-value.placeholder{color:var(--muted);font-weight:400}.qa-row-aside{display:flex;align-items:center;gap:var(--s-1);color:var(--muted);font-size:.85rem}.qa-date{display:flex;gap:var(--s-2);align-items:center}.qa-date .chip-btn{flex:0 0 auto}.qa-date input[type=date]{flex:1 1 0;width:0}.qa-dock{display:none}@media(max-width:760px){.modal-qa,.modal-qa .modal-inner{height:94dvh;max-height:94dvh}.modal-qa .qa-lines .chips{margin:0 calc(-1 * var(--s-4));padding:2px var(--s-4)}.modal-qa .modal-inner>.modal-body{flex:1 1 auto;padding-bottom:calc(var(--s-5) + env(safe-area-inset-bottom));transition:padding-bottom var(--m-keypad) var(--ease-out)}.modal-qa .modal-inner>.modal-body.qa-pad-open{padding-bottom:calc(var(--keypad-h) + var(--s-4) + env(safe-area-inset-bottom))}.qa-dock{display:block;position:absolute;left:0;right:0;bottom:0;z-index:3;pointer-events:none}.qa-dock>*{pointer-events:auto}.keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:44px repeat(4,56px);gap:var(--s-2);padding:var(--s-3) var(--s-4) calc(var(--s-3) + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);transition:transform var(--m-keypad) var(--spring-snap),opacity .2s var(--ease-out)}.keypad.away{transform:translateY(105%);opacity:0;transition:transform .24s var(--ease-in),opacity .2s var(--ease-in) 40ms;pointer-events:none}.qa-actions{display:flex;gap:var(--s-2);align-items:center;padding-top:var(--s-2)}}.key{min-height:0;padding:0;line-height:1;border:0;border-radius:var(--r-control);background:var(--surface-2);color:var(--ink);font-family:var(--mono);font-size:1.45rem;font-weight:500;cursor:pointer;display:grid;place-items:center;-webkit-appearance:none;appearance:none}.key:active{background:var(--surface-3)}.key-dim{background:transparent;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line)}.key-op{border-radius:var(--r-s);background:transparent;color:var(--accent-text);font-size:1.3rem;box-shadow:inset 0 0 0 1px var(--line)}.key-ok{grid-column:4;grid-row:4 / span 2;background:var(--accent);color:var(--accent-ink)}.key-ok:disabled{opacity:.45}.key-op:disabled{opacity:.4}.key-eq-op{font-size:1.5rem;font-weight:600}.key-ok .swap{display:grid;place-items:center}.key-ok .swap>*{animation:swap-in var(--m-state) var(--spring-pop)}.key-eq{font-family:var(--mono);font-size:1.9rem;font-weight:600}@keyframes swap-in{0%{opacity:0;transform:scale(.6) rotate(-20deg)}}.period-bar{display:flex;align-items:center;gap:var(--s-1)}.period-select{flex:0 1 260px;width:auto;min-width:0;text-align:center;font-weight:600}.period-step,.period-bar .menu>.icon-btn{width:42px;height:42px;border:0;background:var(--surface);color:var(--ink-2);border-radius:var(--r-pill)}.period-bar .menu{margin-left:auto}.period-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--s-5);align-items:start}@media(max-width:1020px){.period-grid{grid-template-columns:minmax(0,1fr)}}.period-grid>.col{gap:var(--s-5)}@media(max-width:760px){.period-bar .period-select{flex:1 1 0}.period-grid,.period-grid>.col,.page{gap:var(--s-4)}}.hero{display:flex;flex-direction:column;gap:var(--s-5);padding:var(--s-5) var(--s-4);border-radius:var(--r-card);background:var(--surface)}.hero-top{display:flex;flex-direction:column;gap:var(--s-1)}.hero-label{color:var(--muted);font-size:.85rem;font-weight:500}.hero-big{font-family:var(--mono);font-size:var(--t-display);font-weight:600;line-height:1;letter-spacing:-.04em}.hero-sub{color:var(--ink-2);font-size:.9rem}.hero-sub .money{font-weight:600;color:var(--ink)}.ruler{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px}.ruler-day{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;padding-bottom:2px;border-radius:var(--r-s);color:inherit;text-decoration:none}a.ruler-day:hover{text-decoration:none;background:var(--surface-2)}.ruler-bar{position:relative;width:100%;height:56px;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid var(--line-strong)}.ruler-bar i{display:block;width:62%;max-width:18px;min-height:0;border-radius:3px 3px 1px 1px;background:var(--neg);transform-origin:bottom;animation:grow .6s var(--ease-out) both}@keyframes grow{0%{transform:scaleY(0)}}.ruler-day.future .ruler-bar{background:repeating-linear-gradient(135deg,transparent 0 5px,var(--surface-3) 5px 6px)}.ruler-day.today .ruler-bar i{background:var(--accent)}.ruler-day.today .ruler-bar:after{content:"";position:absolute;bottom:-4px;left:50%;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:var(--accent)}.ruler-num{font-family:var(--mono);font-size:.72rem;font-weight:600;color:var(--ink-2)}.ruler-wd{font-size:.64rem;color:var(--muted)}.ruler-day.future .ruler-num{color:var(--muted);font-weight:500}.ruler-day.today .ruler-num{color:var(--accent-text)}@media(max-width:760px){.ruler{gap:1px}.ruler-bar{height:44px}.ruler-wd{display:none}.ruler-num{font-size:.66rem}}.split{display:flex;flex-direction:column;gap:var(--s-3)}.split-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--surface-3);gap:2px}.split-seg{display:block;height:100%;transition:width .7s var(--ease-out)}.seg-spent{background:var(--neg)}.seg-reserved{background:repeating-linear-gradient(135deg,var(--ink-2) 0 4px,color-mix(in srgb,var(--ink-2) 45%,transparent) 4px 7px)}.seg-free{background:var(--accent)}.split-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3);margin:0}.split-legend div{display:flex;flex-direction:column;gap:2px;min-width:0}.split-legend dt{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.78rem;white-space:nowrap}.split-legend dd{margin:0;font-weight:600;font-size:.98rem;min-width:0;overflow-wrap:anywhere}.dot{display:inline-block;width:8px;height:8px;border-radius:2px;flex:none}.dot-spent{background:var(--neg)}.dot-reserved,.dot-budget{background:var(--ink-2)}.split-legend dd.split-added{font-weight:500;font-size:.78rem}.budget-edit{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 6px;max-width:100%;color:var(--ink);font-weight:600;font-size:.98rem;overflow-wrap:anywhere}.budget-edit svg{color:var(--muted)}.hero-figures{display:flex;flex-direction:column;gap:var(--s-4)}.hero-account{display:flex;flex-direction:column;gap:var(--s-1);min-width:0;margin:calc(-1 * var(--s-2));padding:var(--s-2);border-radius:var(--r-control);color:var(--ink);text-decoration:none}.hero-account:hover{text-decoration:none}.hero-balance-label{display:flex;align-items:center;gap:var(--s-2);min-width:0}.hero-balance-label .tile{width:22px;height:22px}.hero-balance-label .tile svg{width:13px;height:13px}.hero-balance-label>svg{color:var(--muted);flex:none}.hero-balance-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-mid{font-family:var(--mono);font-size:var(--t-mid);font-weight:600;line-height:1.05;letter-spacing:-.03em}.hero-period{display:flex;flex-direction:column;gap:var(--s-1);padding-top:var(--s-4);border-top:1px solid var(--line)}@media(hover:hover)and (pointer:fine){.hero-account:hover .hero-balance-label>svg{color:var(--accent-text)}}.plan-lines{display:flex;flex-direction:column}.plan-line{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--s-2) var(--s-3);align-items:center;padding:var(--s-1) 0;border-bottom:1px solid var(--line)}.plan-line:last-child{border-bottom:0}.plan-check{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line-strong);background:transparent;padding:0;cursor:pointer;display:grid;place-items:center}.plan-check svg{width:15px;height:15px;fill:none;stroke:var(--accent-ink);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .12s var(--ease-out)}.plan-check[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.plan-check[aria-checked=true] svg{stroke-dashoffset:0;transition:stroke-dashoffset .26s var(--ease-out) 60ms}.plan-check:disabled{cursor:default}.plan-check.is-held{border-color:var(--accent);background:var(--accent-tint)}.plan-check.is-held svg{stroke:var(--accent-text);stroke-dasharray:none;stroke-dashoffset:0;stroke-width:2.2}.plan-held{color:var(--accent-text)}.plan-check.is-busy{border-color:var(--accent);animation:check-wait .9s var(--ease-out) infinite alternate}@keyframes check-wait{to{box-shadow:0 0 0 5px var(--accent-tint)}}.plan-line-main{display:flex;flex-direction:column;min-width:0;padding:var(--s-2) var(--s-1);margin:0 calc(-1 * var(--s-1));border:0;border-radius:var(--r-s);background:none;text-align:left;cursor:pointer}.plan-line-main:hover{background:var(--surface-2)}.plan-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.plan-meta{color:var(--muted);font-size:.78rem}.plan-meta:empty{display:none}.plan-amount{display:flex;flex-direction:column;align-items:flex-end;font-weight:600;transition:color var(--m-state) var(--ease-out)}.is-paid .plan-name,.is-paid .plan-amount{color:var(--muted)}.is-paid .plan-amount .money{text-decoration:line-through;text-decoration-thickness:1px}.is-off .plan-name,.is-off .plan-amount{color:var(--muted)}.is-debt .plan-name{color:var(--debt-ink)}.plan-empty{padding:var(--s-3) 0}.plan-line.tpl-line{grid-template-columns:minmax(0,1fr) auto}.tpl-section{margin-top:var(--s-5)}.add-line{margin-top:var(--s-2);align-self:flex-start;padding-left:var(--s-2)}.plan-tools{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2);margin-top:var(--s-2)}.plan-tools .add-line{margin-top:0}.plan-tools-end{justify-content:flex-end}.plan-line.reorder-line{grid-template-columns:28px minmax(0,1fr) auto auto;background:var(--surface)}.reorder-line.is-dragging{position:relative;z-index:2;border-radius:var(--r-s);box-shadow:var(--shadow-pop)}.reorder-handle{display:grid;place-items:center;width:28px;height:44px;color:var(--muted);cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.is-dragging .reorder-handle{cursor:grabbing;color:var(--ink)}.reorder-arrows{display:flex;gap:var(--s-1)}.cat-lines{display:flex;flex-direction:column}.cat-line{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-bottom:1px solid var(--line)}.cat-line:last-child{border-bottom:0}.cat-line-main{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--s-3);align-items:center;width:100%;padding:var(--s-2) var(--s-1);margin:0 calc(-1 * var(--s-1));border:0;border-radius:var(--r-s);background:none;color:inherit;text-align:left;text-decoration:none;cursor:pointer}.cat-line-main:hover{background:var(--surface-2);text-decoration:none}.cat-text{display:flex;flex-direction:column;min-width:0}.cat-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-meta{color:var(--muted);font-size:.78rem}.cat-amount{display:flex;flex-direction:column;align-items:flex-end;font-weight:600}.cat-amount .small{font-weight:400}.has-limit{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;padding-bottom:var(--s-3)}.limit-track{grid-column:1;margin-left:52px;height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.limit-track i{display:block;height:100%;border-radius:3px;background:var(--accent);transition:width .7s var(--ease-out)}.limit-track.over i{background:var(--neg)}.limit-add{grid-column:2;grid-row:1 / span 2;width:36px;margin-left:var(--s-2)}.is-off .cat-name{color:var(--muted);text-decoration:line-through}.line-form{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3);margin:var(--s-1) 0;border-radius:var(--r-control);background:var(--surface-2);border:1px solid var(--line-strong);animation:pop-in var(--m-state) var(--spring-snap);transform-origin:top center}.line-form-row{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center}.modal-body>.line-form{padding:0;margin:0;gap:var(--s-3);background:none;border:0;animation:none}.modal-body>.line-form .line-form-row>.input.num{flex:1 1 140px}.modal-body>.line-form .line-form-foot>.check{flex:1 0 100%}.line-form-note{margin:0}.line-form-row>.input{flex:1 1 140px;width:auto}.line-form-row>.input.num{flex:0 1 130px}.line-form-row>.cur{flex:0 0 90px}.line-form-foot{gap:var(--s-2)}.hold-block{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--line)}.hold-block .qa-rows{align-self:stretch}.hold-text{color:var(--ink-2);font-size:.85rem}.line-form>.segmented-wide{margin:0}.line-form>.segmented-wide button{padding-inline:.1rem;font-size:.85rem;text-overflow:clip}.line-form .qa-rows{background:var(--surface)}.line-form .qa-row{min-height:52px;padding:var(--s-2) var(--s-3)}.qa-row-select{position:relative}.qa-row-select>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px}.danger-zone{display:flex;justify-content:flex-end}.accounts-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--s-5)}@media(max-width:760px){.accounts-top{grid-template-columns:minmax(0,1fr);gap:var(--s-4)}}.worth{display:flex;flex-direction:column;gap:var(--s-2)}.worth-big{font-size:clamp(2rem,8vw,2.6rem);font-weight:700;letter-spacing:-.03em;line-height:1.05}.worth-primary{display:flex;align-items:center;gap:var(--s-2);color:var(--ink-2);margin-top:var(--s-1);min-width:0}.worth-primary-sum{margin-left:auto;font-weight:600;color:var(--ink)}.debts-card{display:flex;flex-direction:column;gap:var(--s-3);color:inherit;text-decoration:none}.debts-card:hover{text-decoration:none;border-color:var(--line-strong)}.debts-card-head{display:flex;justify-content:space-between;align-items:center;color:var(--muted)}.debts-card-nums{display:flex;gap:var(--s-6);margin:0;flex-wrap:wrap}.debts-card-nums div{display:flex;flex-direction:column}.debts-card-nums dt{color:var(--muted);font-size:.78rem}.debts-card-nums dd{margin:0;font-weight:600;font-size:1.08rem}.capital .hero-big{color:var(--ink)}.capital-goal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4);margin:0;padding-top:var(--s-4);border-top:1px solid var(--line)}.capital-goal div{display:flex;flex-direction:column;gap:2px;min-width:0}.capital-goal dt{color:var(--muted);font-size:.78rem}.capital-goal dd{margin:0;font-weight:600;font-size:1.05rem}@media(max-width:760px){.capital-goal{grid-template-columns:minmax(0,1fr);gap:var(--s-3)}.capital-goal div{flex-direction:row;justify-content:space-between;align-items:baseline;gap:var(--s-3)}}.section .tx-list{margin:0 calc(-1 * var(--s-4))}.modal-body .tx-list{margin:0 calc(-1 * var(--s-5))}@media(max-width:760px){.modal-body .tx-list{margin:0 calc(-1 * var(--s-4))}}.app-header-actions{display:flex;gap:var(--s-2)}.icon-btn .swap,.icon-btn-framed .swap{display:grid;place-items:center;animation:swap-in var(--m-state) var(--spring-pop)}.icon-btn-framed.on,.icon-btn-framed[aria-pressed=true],.icon-btn-framed[aria-current=page]{color:var(--accent-text)}.ledger-top{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s-3)}.ledger-wallet{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);min-width:0}.wallet-switch{display:inline-flex;align-items:center;gap:var(--s-2);max-width:100%;min-height:36px;padding:0 var(--s-3) 0 var(--s-1);border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-weight:500;cursor:pointer}.wallet-switch>span:not(.tile){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wallet-switch svg{color:var(--muted);flex:none}.ledger-balance{display:flex;flex-direction:column;gap:2px;min-width:0}.ledger-actions{display:flex;gap:var(--s-2);flex:none}.range-tabs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);border-bottom:1px solid var(--line)}.range-tab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-1);min-height:44px;padding:0 var(--s-1);border:0;background:none;color:var(--muted);font-size:.88rem;font-weight:500;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--m-hover) var(--ease-out)}.range-tab>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:420px){.range-tab{font-size:.8rem}}.range-tab:disabled{cursor:default}.range-tab.on{color:var(--ink);font-weight:600}.range-tab.on:after{content:"";position:absolute;left:12%;right:12%;bottom:-1px;height:2px;border-radius:1px;background:var(--accent)}.range-tab.on svg{color:var(--muted);flex:none}@media(hover:hover)and (pointer:fine){.range-tab:hover:not(:disabled){color:var(--ink)}}.period-view{margin-inline:calc(-1 * var(--s-2));padding-inline:var(--s-2);overflow-x:clip;min-width:0}.period-body{display:flex;flex-direction:column;gap:var(--s-5);min-width:0}.period-body.slide-next{animation:period-in-next .22s var(--ease-out)}.period-body.slide-prev{animation:period-in-prev .22s var(--ease-out)}@keyframes period-in-next{0%{opacity:0;transform:translate(28px)}}@keyframes period-in-prev{0%{opacity:0;transform:translate(-28px)}}.overview{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-4);border-radius:var(--r-card);background:var(--surface)}.overview-rows{display:flex;flex-direction:column;gap:var(--s-2);margin:0}.overview-rows>div{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3)}.overview-rows dt{color:var(--ink-2)}.overview-rows dd{margin:0}.overview-rows>.overview-net{justify-content:flex-end;padding-top:var(--s-2);border-top:1px solid var(--line);margin-left:auto;min-width:45%}.overview-net dd{font-weight:600}.overview-link{display:inline-flex;align-items:center;gap:var(--s-1);align-self:center;margin-top:var(--s-1)}.overview-note{margin:0;text-align:center}.cat-head .day-when strong{text-transform:none}.tx-date{display:grid;place-items:center;width:40px}.tx-date .day-num{font-size:1.35rem;color:var(--ink-2)}.modal-tx .modal-body{padding-top:var(--s-2)}.txd-head{display:grid;grid-template-columns:48px minmax(0,1fr);gap:var(--s-4);align-items:center;padding-bottom:var(--s-4)}.txd-title{display:flex;flex-direction:column;gap:2px;min-width:0}.txd-name{font-size:1.05rem;font-weight:500}.txd-amount{font-size:var(--t-mid);font-weight:600;line-height:1.1}.txd-rows{display:flex;flex-direction:column;border-top:1px solid var(--line)}.txd-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:var(--s-4);align-items:center;min-height:52px;padding:var(--s-2) 0;border-bottom:1px solid var(--line)}.txd-icon{display:grid;place-items:center;color:var(--muted)}.txd-text{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.txd-label{color:var(--muted);font-size:.78rem}.txd-related{margin-top:var(--s-4)}.txd-related h3{margin:0 0 var(--s-1);color:var(--muted);font-size:.85rem;font-weight:600}.note-field{display:flex;flex-direction:column;gap:var(--s-2)}.note-chips{margin:0;padding:2px 0}.note-chips .chip-btn{min-height:34px;animation:pop-in var(--m-state) var(--spring-snap)}.hero-forecast{color:var(--muted)}.hero-forecast .money{font-weight:600}.pay-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3);flex-wrap:wrap}.pay-head .money{color:var(--ink);font-weight:600}.report-top{display:flex;flex-direction:column;gap:var(--s-4)}.report-balances{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--s-3);margin:0}.report-balances>svg{color:var(--muted)}.report-balances div{display:flex;flex-direction:column;gap:2px;min-width:0}.report-balances div:last-child{text-align:right}.report-balances dt{color:var(--muted);font-size:.82rem}.report-balances dd{margin:0;font-size:1.1rem;font-weight:600}.report-net{display:flex;flex-direction:column;gap:var(--s-1);padding-top:var(--s-4);border-top:1px solid var(--line)}.report-net strong{font-size:var(--t-mid);font-weight:600}.net-bars{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-2)}.net-row{display:grid;grid-template-columns:5.5em minmax(0,1fr) auto;gap:var(--s-3);align-items:center;font-size:.88rem}.net-label{color:var(--ink-2)}.net-track{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.net-track i{display:block;height:100%;border-radius:4px;transition:width .7s var(--ease-out)}.report-nested{align-self:flex-start}.donut{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--s-4);align-items:center;margin:0 0 var(--s-4)}.donut svg{width:150px;height:150px;display:block}.donut path{transition:opacity var(--m-hover) var(--ease-out)}.donut-total{fill:var(--ink);font-family:var(--mono);font-size:15px;font-weight:600}.donut-legend{display:flex;flex-direction:column;gap:var(--s-1);font-size:.85rem;min-width:0}.donut-legend span{display:flex;align-items:center;gap:var(--s-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend i{width:10px;height:10px;border-radius:50%;flex:none}@media(max-width:420px){.donut{grid-template-columns:120px minmax(0,1fr)}.donut svg{width:120px;height:120px}}.upcoming{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-card);background:var(--amber-tint);color:var(--ink)}.upcoming-title{display:flex;align-items:center;gap:var(--s-2);margin:0;font-size:.95rem;font-weight:600;color:var(--amber-ink)}.upcoming-list{display:flex;flex-direction:column;gap:var(--s-2)}.upcoming-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3)}.upcoming-text{display:flex;flex-direction:column;min-width:0}.upcoming-text strong{font-weight:600;overflow:hidden;text-overflow:ellipsis}.upcoming-row>.money{font-weight:600;flex:none}.foreign-totals{display:flex;flex-direction:column;gap:var(--s-1);padding-bottom:var(--s-4);border-bottom:1px solid var(--line)}.foreign-sums{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-4)}.foreign-sums strong{font-size:var(--t-mid);font-weight:600}.foreign-list{display:flex;flex-direction:column;margin:0 calc(-1 * var(--s-4))}.foreign-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-3);width:100%;min-height:56px;padding:var(--s-3) var(--s-4);border:0;background:none;text-align:left;cursor:pointer;color:inherit;background-image:linear-gradient(var(--line),var(--line));background-size:calc(100% - 32px) 1px;background-position:center bottom;background-repeat:no-repeat}.foreign-list li:last-child .foreign-row{background-image:none}.foreign-text{display:flex;flex-direction:column;min-width:0}.foreign-name{font-size:var(--t-list);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.foreign-row>.money{font-weight:500;flex:none}@media(hover:hover)and (pointer:fine){.foreign-row:hover{background-color:var(--surface-2)}}.params-modal{grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:0;padding-bottom:0}.chart-box{width:100%;touch-action:pan-y}.chart-box svg{width:auto;max-width:100%;height:auto}.chart .axis{font-size:12px}.chart-cursor{stroke:var(--line-strong);stroke-width:1;stroke-dasharray:3 3}.milestones{margin-top:var(--s-3)}.milestone{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:none;min-width:84px;padding:var(--s-2) var(--s-3);border:0;border-radius:var(--r-control);background:var(--surface-2);color:var(--ink);cursor:pointer;text-align:left}.milestone-age{color:var(--muted);font-size:.78rem}.milestone .money{font-weight:600}.milestone.on{background:var(--accent-tint);box-shadow:inset 0 0 0 1px var(--accent)}.tile-image{overflow:hidden;background:var(--surface-3)}.tile-image img{width:100%;height:100%;object-fit:cover;display:block}.icon-drop{display:grid;grid-template-columns:48px minmax(0,1fr);gap:var(--s-2) var(--s-3);align-items:center;margin-top:var(--s-2);padding:var(--s-3);border-radius:var(--r-control);border:1.5px dashed var(--line-strong);background:var(--surface);transition:border-color var(--m-hover) var(--ease-out),background-color var(--m-hover) var(--ease-out)}.icon-drop.over{border-color:var(--accent);background:var(--accent-tint)}.icon-drop.reject{border-color:var(--neg);background:var(--neg-tint)}.icon-drop-text{display:flex;flex-direction:column;min-width:0}.icon-drop-actions{grid-column:1 / -1;display:flex;gap:var(--s-2)}.icon-picker,.icon-picker-search{display:flex;flex-direction:column;gap:var(--s-3);min-width:0}.icon-picker p{margin:0}.icon-picker-form{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2)}.icon-picker-form>input{flex:1 1 160px;min-width:0}.icon-picker-form>select{flex:1 1 144px;width:auto;min-width:0}.icon-search-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(88px,100%),1fr));gap:var(--s-2)}.icon-search-results:empty{display:none}.icon-search-result{display:flex;flex-direction:column;align-items:center;gap:var(--s-1);min-width:0;text-align:center;overflow-wrap:anywhere}.icon-search-choice{width:100%;min-height:112px;display:flex;flex-direction:column;align-items:center;gap:var(--s-2);padding:var(--s-2);border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);color:var(--ink-2);cursor:pointer}.icon-search-choice.on{border-color:var(--accent);background:var(--accent-tint)}.icon-search-choice:disabled{cursor:wait;opacity:.6}.icon-search-choice img{width:48px;height:48px;object-fit:contain;background:color-mix(in srgb,var(--ink) 50%,var(--bg));border-radius:var(--r-s)}.icon-search-choice>span{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.icon-credits{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-2);color:var(--muted);overflow-wrap:anywhere}.capital-year{display:flex;flex-direction:column;gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--line);touch-action:pan-y}.capital-year-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:var(--s-2)}.capital-year-title{text-align:center;font-size:.95rem;color:var(--ink-2)}.capital-year-title strong{color:var(--ink);font-family:var(--mono);font-size:1.05rem}.capital-year .capital-goal{padding-top:0;border-top:0;animation:fade-in var(--m-state) var(--ease-out)}.year-slider{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--s-3);align-items:center;margin-top:var(--s-3)}.year-slider input[type=range]{width:100%;accent-color:var(--accent);min-height:32px}.year-slider-value{font-size:.88rem;white-space:nowrap}.year-slider-value strong{font-family:var(--mono)}@media(max-width:420px){.year-slider{grid-template-columns:minmax(0,1fr) auto}.year-slider>.muted{display:none}}.year-table th.current,.year-table td.current{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.year-table thead th.current{color:var(--accent-text);box-shadow:inset 0 -2px 0 var(--accent)}.year-table .row-total td.current{background:color-mix(in srgb,var(--accent) 24%,var(--surface))!important}.toasts{position:fixed;right:1rem;bottom:1rem;z-index:100;display:flex;flex-direction:column;gap:var(--s-2);align-items:flex-end;pointer-events:none}.toast{padding:var(--s-3) var(--s-4);border-radius:var(--r-control);background:var(--ink);color:var(--bg);box-shadow:var(--shadow-pop);max-width:min(420px,calc(100vw - 2rem));animation:toast-in var(--m-state) var(--spring-snap);font-weight:500}.toast-error{background:var(--neg);color:#1a0a0a}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.97)}}@media(max-width:760px){.toasts{left:1rem;right:1rem;bottom:calc(var(--tabbar) + .75rem + env(safe-area-inset-bottom));align-items:stretch}}.login{min-height:100dvh;display:grid;place-items:center;padding:var(--s-4);background:var(--bg)}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-8) var(--s-6);border-radius:var(--r-sheet);background:var(--surface);animation:modal-in var(--m-sheet) var(--spring-snap)}.login-card .brand-mark{width:44px;gap:5px}.login-card .brand-mark i{height:6px;border-radius:3px}.login-card h1{font-size:1.5rem}.login-card .btn{margin-top:var(--s-1);min-height:52px}.login-note{margin:0;text-align:center}.ai-banner{display:flex;align-items:center;gap:var(--s-2);margin:0;padding:var(--s-3) var(--s-4);border-radius:var(--r-card);background:var(--amber-tint);color:var(--amber-ink)}.ai-banner svg{flex:none}.ai-ask{display:flex;align-items:center;gap:var(--s-3);width:100%;min-height:48px;padding:0 var(--s-4);border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--t-list);text-align:left;cursor:text}.ai-ask:hover{border-color:var(--focus)}.ai-ask svg{flex:none;color:var(--ink-2)}.ai-row-end{display:flex;align-items:center;gap:var(--s-2);color:var(--muted)}.ai-state{display:inline-flex;align-items:center;gap:var(--s-1);font-size:.82rem;white-space:nowrap}.ai-state .spinner{width:12px;height:12px}.ai-footnote{margin:0;text-align:center}.ai-head{padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--line)}.ai-range{margin:0 0 var(--s-4);color:var(--muted);font-size:.82rem}.ai-asked{margin:0 0 var(--s-4);font-size:var(--t-list);font-weight:500;overflow-wrap:anywhere}.ai-job-head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.ai-job-head>span:last-child{margin:0}.ai-intro{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);padding:var(--s-8) var(--s-4);text-align:center}.ai-intro p{margin:0;max-width:36ch;color:var(--ink-2)}.ai-question{min-height:104px;line-height:1.4}.ai-examples .chip-btn{min-height:34px}.ai-wait{display:flex;flex-direction:column;gap:var(--s-3)}.ai-steps{display:flex;flex-direction:column;gap:var(--s-2);margin:0;padding:0;list-style:none}.ai-steps li{display:flex;align-items:center;gap:var(--s-3);color:var(--muted);transition:color var(--m-state) var(--ease-out)}.ai-steps li.now{color:var(--ink);font-weight:500}.ai-steps li.done{color:var(--ink-2)}.ai-step-mark{display:inline-grid;place-items:center;flex:none;width:24px;height:24px;border-radius:var(--r-pill);border:1.5px solid var(--line-strong);transition:background-color var(--m-state) var(--ease-out),border-color var(--m-state) var(--ease-out)}.ai-steps li.now .ai-step-mark{border-color:var(--accent);color:var(--accent-text)}.ai-steps li.done .ai-step-mark{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.ai-step-mark .spinner{width:12px;height:12px}.ai-sk{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-2)}.ai-sk .sk-line{background-color:var(--surface-2)}.ai-sk-short{width:60%}.ai-fade{animation:ai-in var(--m-state) var(--ease-out)}@keyframes ai-in{0%{opacity:0}}.ai-report{display:flex;flex-direction:column;gap:var(--s-5)}.ai-summary{margin:0;font-size:var(--t-list);line-height:1.45}.ai-note{display:flex;gap:var(--s-2);align-items:flex-start;margin:0;padding:var(--s-2) var(--s-3);border-radius:var(--r-s);background:var(--amber-tint);color:var(--amber-ink);font-size:.82rem}.ai-note svg{flex:none;margin-top:1px}.ai-block h3,.ai-facts h3{margin:0 0 var(--s-2);font-size:1.06rem;font-weight:600}.ai-points,.ai-actions{display:flex;flex-direction:column;gap:var(--s-2)}.ai-points li{position:relative;padding-left:var(--s-4)}.ai-points li:before{content:"";position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:var(--r-pill);background:var(--muted)}.ai-actions li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:var(--s-2);align-items:start}.ai-actions li svg{margin-top:3px;color:var(--accent-text)}.ai-caveats{display:flex;flex-direction:column;gap:var(--s-1);margin:0;color:var(--muted);font-size:.82rem}.ai-clarify{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-3)}.ai-clarify p{margin:0}.ai-facts{border-top:1px solid var(--line);padding-top:var(--s-4)}.ai-facts .ledger-row,.ai-broker .ledger-row{padding:var(--s-2) 0}.ai-facts .ledger-main{color:var(--ink-2)}.ai-facts .ledger-amount,.ai-broker .ledger-amount{flex:none;white-space:nowrap}.ai-table{border-top:1px solid var(--line)}.ai-table summary{display:flex;gap:var(--s-2);align-items:baseline;padding:var(--s-3) 0;cursor:pointer;font-weight:500;list-style:none}.ai-table summary::-webkit-details-marker{display:none}.ai-table summary .muted{margin-left:auto}.ai-table summary:after{content:"\25be";color:var(--muted);transition:transform var(--m-state) var(--ease-out)}.ai-table[open] summary:after{transform:rotate(180deg)}.ai-row-text{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.ai-shots-picker{display:flex;flex-direction:column;gap:var(--s-3)}.ai-drop{margin-top:0}.ai-drop-icon{--tile-bg: var(--surface-2);--tile-fg: var(--ink-2)}.ai-shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-2)}.ai-shot{position:relative;aspect-ratio:9 / 16;border-radius:var(--r-control);overflow:hidden;background:var(--surface-2);animation:ai-in var(--m-state) var(--ease-out)}.ai-shot img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}.icon-btn.ai-shot-remove{position:absolute;top:var(--s-1);right:var(--s-1);width:32px;height:32px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--bg) 72%,transparent);color:var(--ink)}.ai-broker{display:flex;flex-direction:column;gap:var(--s-4)}.ai-broker>.btn{align-self:flex-start}@media(max-width:760px){.ai-head{padding:var(--s-2) var(--s-4) var(--s-3)}}.report-loading{display:grid;gap:var(--s-4)}.report-back{display:inline-flex;align-items:center;gap:var(--s-1);align-self:flex-start}.report-comparison{margin:var(--s-3) 0 0;display:flex;flex-direction:column;gap:var(--s-3)}.report-comparison>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-1) var(--s-3)}.report-comparison dt{color:var(--ink-2)}.report-comparison dd{margin:0;min-width:0;overflow-wrap:anywhere}.report-largest{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;background:transparent;color:var(--ink);border:0;border-radius:var(--r-s);text-align:left;cursor:pointer}.report-largest>span{display:flex;flex-direction:column;gap:var(--s-1);overflow-wrap:anywhere;min-width:0}.report-flow-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.report-flow-list>li+li{border-top:1px solid var(--line)}.report-flow-row{display:flex;align-items:center;gap:var(--s-3);min-height:44px;color:inherit;text-decoration:none;padding:var(--s-2) 0;border-radius:var(--r-s)}.report-flow-row>span:first-child{flex:1;min-width:0;overflow-wrap:anywhere}.report-flow-row>.money{margin-left:auto;white-space:nowrap}.report-flow-row>svg{flex:none}.report-flow-row.section{padding:var(--s-4)}.report-largest:hover,.report-flow-row:hover,.report-month-row:hover{background:var(--surface-2)}.report-trend{margin-top:var(--s-3)}.report-line{stroke:var(--neg);fill:var(--neg)}.report-line-income{stroke:var(--pos);fill:var(--pos)}.report-line-baseline{stroke:var(--muted);fill:var(--muted)}.report-line-forecast{stroke:var(--amber);fill:var(--amber)}.report-chart-select{display:flex;align-items:center;gap:var(--s-3);font-size:13px;color:var(--ink-2)}.report-chart-select>input{min-width:0;flex:1;accent-color:var(--accent)}.report-chart-select>span{flex:none}.chart .report-chart-legend{display:flex;flex-direction:column;gap:var(--s-2);margin:var(--s-3) 0 0;font-size:13px;color:var(--ink-2)}.chart .report-chart-legend>span{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-1) var(--s-2)}.chart .report-chart-legend strong{font-size:13px;font-weight:500;letter-spacing:normal}.report-swatch{width:16px;height:3px;flex:none;background:var(--neg)}.report-swatch-income{background:var(--pos)}.report-swatch-baseline{background:var(--muted)}.report-swatch-forecast{background:var(--amber)}.report-category-change{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--line)}.report-category-change p{margin:var(--s-1) 0}.report-months{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s-1)}.report-month-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(40px,1fr) auto;align-items:center;gap:var(--s-3);min-height:44px;padding:var(--s-2);border:0;border-radius:var(--r-s);background:transparent;color:var(--ink);cursor:pointer;text-align:left}.report-month-row.on{background:var(--surface-2);outline:1px solid var(--accent);outline-offset:-1px}.report-month-row>span:first-child{overflow-wrap:anywhere}.report-month-row>strong{font-size:13px;text-align:right}.report-month-track{height:8px;background:var(--surface-3);border-radius:var(--r-s);overflow:hidden}.report-month-track>i{height:100%;display:block;border-radius:inherit;transition:width var(--m-state) var(--ease-out)}@media(max-width:420px){.report-largest{grid-template-columns:minmax(0,1fr) 16px}.report-largest>.money{grid-row:2}.report-largest>svg{grid-column:2;grid-row:1 / 3}.report-month-row{grid-template-columns:minmax(0,1fr) auto;gap:var(--s-1) var(--s-2)}.report-month-track{grid-row:2;grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){.report-month-track>i{transition:none}}.report-month-track{position:relative}.report-month-average{position:absolute;top:0;bottom:0;width:2px;background:var(--ink);transform:translate(-1px)}.report-category-operations{margin-top:var(--s-4)}.bars .bar-label{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.bars .bar-label>.small{display:block}.report-chart-grid{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--s-1) var(--s-2)}.report-y-axis{display:flex;flex-direction:column;justify-content:space-between;text-align:right;color:var(--muted);font:500 12px var(--mono)}.report-x-axis{grid-column:2;display:flex;justify-content:space-between;gap:var(--s-2);color:var(--muted);font:500 12px var(--mono)}@media(max-width:420px){.report-balances{grid-template-columns:minmax(0,1fr);gap:var(--s-3)}.report-balances>svg{display:none}.report-balances div:last-child{text-align:left}.bar-row{grid-template-columns:30px minmax(0,1fr)}.bar-row .tile{grid-row:span 3}.bar-row .bar-val{grid-column:2}}.report-month-row:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
/*# sourceMappingURL=app-QATZ7NMV.css.map */
