@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--hf-bg:var(--lightningcss-light,#f7f7f7)var(--lightningcss-dark,#0d0d0d);--hf-paper:var(--lightningcss-light,#fff)var(--lightningcss-dark,#171717);--hf-ink:var(--lightningcss-light,#111)var(--lightningcss-dark,#f5f5f5);--hf-secondary:var(--lightningcss-light,#626262)var(--lightningcss-dark,#ababab);--hf-line:var(--lightningcss-light,#dedede)var(--lightningcss-dark,#343434);--hf-soft:var(--lightningcss-light,#ededed)var(--lightningcss-dark,#252525);--hf-accent:#e9f056;--hf-on-accent:#111;--hf-progress-track:var(--lightningcss-light,#202020)var(--lightningcss-dark,#3b3b3b);--hf-focus:var(--lightningcss-light,#111)var(--lightningcss-dark,#e9f056);--hf-income:var(--lightningcss-light,#111)var(--lightningcss-dark,#e9f056);--hf-out:var(--lightningcss-light,#757575)var(--lightningcss-dark,#a0a0a0);--hf-warn:var(--lightningcss-light,#905719)var(--lightningcss-dark,#edbb7b);--hf-warn-bg:var(--lightningcss-light,#fff1da)var(--lightningcss-dark,#3b3022);--hf-risk:var(--lightningcss-light,#a6382e)var(--lightningcss-dark,#f4a396);--hf-risk-bg:var(--lightningcss-light,#fcece8)var(--lightningcss-dark,#432923);--hf-font-body:"DM Sans", system-ui, sans-serif;--hf-font-display:"Manrope", system-ui, sans-serif;--hf-type-caption:.6875rem;--hf-type-small:.75rem;--hf-type-body:.875rem;--hf-type-input:1rem;--hf-type-title:1.875rem;--hf-type-title-phone:1.6875rem;--hf-type-kpi:2.875rem;--hf-type-kpi-phone:2.625rem;--hf-leading-body:1.5;--hf-leading-heading:1.2;--hf-weight-regular:400;--hf-weight-medium:500;--hf-weight-emphasis:600;--hf-weight-brand:700;--hf-space-1:4px;--hf-space-2:8px;--hf-space-3:12px;--hf-space-4:16px;--hf-space-5:20px;--hf-space-6:24px;--hf-space-8:32px;--hf-space-12:48px;--hf-radius-control:8px;--hf-radius:14px;--hf-radius-phone:26px;--hf-radius-pill:999px;--hf-border-width:1px;--hf-shadow-rest:none;--hf-shadow-overlay:0 12px 40px #0000001f;--hf-focus-width:2px;--hf-focus-offset:3px;--hf-target-touch:44px;--hf-sidebar-width:184px;--hf-page-inset-phone:20px;--hf-page-inset-laptop:30px;--hf-content-max:1160px;--hf-breakpoint-laptop:768px;--hf-motion-fast:.15s;--hf-motion-data:.25s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.hf-amount{font-variant-numeric:tabular-nums;white-space:nowrap}*{box-sizing:border-box}body{background:var(--hf-bg);color:var(--hf-ink);font:14px/1.5 var(--hf-font-body);margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--hf-focus);outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--hf-font-display);font-weight:600}h1{letter-spacing:-1px;font-size:30px;line-height:1.2}h2{letter-spacing:-.25px;font-size:16px;line-height:1.4}h3{font-size:14px}button{background:0 0;border:0}button,select{min-height:44px}input,select,textarea{background:var(--hf-paper);border:1px solid var(--hf-line);border-radius:8px;max-width:100%;min-height:44px;padding:10px 12px;font-size:16px}textarea{resize:vertical;min-height:90px}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--hf-on-accent)}label{gap:7px;font-size:12px;display:grid}strong{font-weight:600}small{font-size:11px}select{font-size:13px}summary{cursor:pointer;align-items:center;min-height:44px;display:flex}svg{flex-shrink:0}svg.lucide{stroke-width:1.6px}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.25px}.hero{font:500 46px/1.2 var(--hf-font-display);letter-spacing:-1.8px;margin:12px 0;display:block}.subhero{font:500 28px/1.3 var(--hf-font-display);letter-spacing:-.8px;margin:12px 0;display:block}.kicker{letter-spacing:1.2px;text-transform:uppercase;color:var(--hf-secondary);font-size:11px;font-weight:600}.small{font-size:12px}.muted{color:var(--hf-secondary)}.attention{color:var(--hf-warn)}.error{color:var(--hf-risk)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.nowrap{flex-wrap:nowrap}.between{justify-content:space-between}.grow{overflow-wrap:anywhere;flex:1;min-width:0}.stack{align-content:start;gap:18px;display:grid}.button{border:1px solid var(--hf-line);background:var(--hf-paper);border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 14px;display:inline-flex}.primary{background:var(--hf-accent);color:var(--hf-on-accent);border-color:var(--hf-accent)}.text-button{color:var(--hf-ink);text-align:left;min-height:44px;padding:8px 0}.icon-button{border-radius:8px;place-items:center;width:44px;min-width:44px;height:44px;padding:0;display:inline-grid}.icon-button:hover,.text-button:hover{background:var(--hf-soft)}.pill{background:var(--hf-soft);color:var(--hf-ink);overflow-wrap:anywhere;border-radius:100px;align-items:center;gap:5px;padding:4px 9px;font-size:11px;display:inline-flex}.suggested{border:1px dashed var(--hf-secondary);background:0 0}.source{color:var(--hf-secondary);align-items:center;gap:4px;font-size:11px;display:inline-flex}.space-top{margin-top:14px}.space-bottom{margin:9px 0 16px}.app-shell{grid-template-columns:184px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{background:var(--hf-paper);border-right:1px solid var(--hf-line);flex-direction:column;gap:32px;padding:30px 15px;display:flex}.brand{font:600 21px var(--hf-font-display);letter-spacing:-.8px;align-items:center;gap:9px;display:flex}.brand img{border-radius:9px}.sidebar nav{gap:5px;display:grid}.sidebar nav a{color:var(--hf-secondary);border-radius:8px;align-items:center;gap:11px;min-height:44px;padding:11px;font-size:13px;display:flex}.sidebar nav a[aria-current]{background:var(--hf-accent);color:var(--hf-on-accent);font-weight:600}.profile{align-items:center;gap:8px;margin-top:auto;padding-top:32px;font-size:12px;display:flex}.avatar{background:var(--hf-soft);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.main{min-width:0}.topbar{border-bottom:1px solid var(--hf-line);justify-content:space-between;align-items:center;gap:12px;min-height:80px;padding:18px 30px;display:flex}.mobile-brand{display:none}.account-button{background:var(--hf-paper);border:1px solid var(--hf-line);border-radius:100px;justify-content:center;align-items:center;gap:8px;max-width:240px;padding:6px 12px;font-size:12px;display:flex}.account-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.content{max-width:1160px;margin:0 auto;padding:30px}.pagehead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:26px;display:flex}.pagehead p{margin-top:8px}.period-label{margin-bottom:20px}.period-control{max-width:100%}.range-form{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.range-form label{flex:1;min-width:125px}.section{border-top:1px solid var(--hf-line);margin-top:26px;padding-top:24px}.section-head,.section-link{text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:16px;display:flex}.section-link{min-height:30px;padding:0}.columns{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.surface{background:var(--hf-paper);border:1px solid var(--hf-line);border-radius:var(--hf-radius);padding:22px}.tile{text-align:left;width:100%;color:var(--hf-ink);gap:10px;display:grid}.summary{border-bottom:1px solid var(--hf-line);grid-template-columns:1.4fr 1fr 1fr;align-items:end;gap:18px;margin-bottom:26px;padding-bottom:25px;display:grid}.summary>div{gap:6px;display:grid}.summary .amount{font-size:23px;font-weight:500}.summary .summary-lead .amount{letter-spacing:-1.5px;font-size:38px}.summary .income .amount{color:var(--hf-income)}.summary.compact .summary-lead .amount{letter-spacing:-.5px;font-size:24px}.summary.compact small{display:none}.summary.compact{margin-bottom:0}.progress{background:var(--hf-progress-track);border-radius:8px;height:5px;overflow:hidden}.progress-fill{background:var(--hf-accent);border-radius:8px;height:100%}.progress-fill.neutral{background:var(--hf-out)}.expense-track{background:var(--hf-soft);border-radius:8px;height:5px;overflow:hidden}.expense-track span{background:var(--hf-out);border-radius:8px;height:100%;display:block}.bar-list{gap:19px;display:grid}.bar-row{text-align:left;width:100%;padding:0}.bar-row .row{gap:7px;margin-bottom:7px}.bar-row .amount{font-size:13px;font-weight:500}.category{align-items:center;gap:8px;min-width:0;font-size:13px;display:flex}.share{text-align:right;width:28px;color:var(--hf-secondary);font-size:11px}.list-row{border-bottom:1px solid var(--hf-line);text-align:left;align-items:center;gap:12px;width:100%;min-width:0;padding:15px 0;display:flex}.list-row:last-child{border-bottom:0}.list-row p{margin-top:4px}.list-row small{margin-top:4px;display:block}.list-row .amount{font-size:14px;font-weight:500}.list-row:disabled{opacity:1}.check-badge{border:1px solid var(--hf-line);background:var(--hf-paper);border-radius:100px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:inline-flex}.check-badge span{background:var(--hf-accent);color:var(--hf-on-accent);border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.banner{background:var(--hf-soft);border-radius:8px;flex-wrap:wrap;align-items:flex-start;gap:10px;margin:18px 0;padding:13px 15px;font-size:12px;display:flex}.danger{background:var(--hf-risk-bg);color:var(--hf-risk)}.date-stamp{text-align:center;flex-shrink:0;width:36px;font-size:20px;line-height:1.2}.date-stamp small{text-transform:uppercase;color:var(--hf-secondary);margin-bottom:5px;font-size:10px;display:block}.history-chart{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.month{text-align:center;min-width:0;padding:0}.month small{white-space:nowrap;margin-top:7px;font-size:11px;display:block}.month-bars{border-bottom:1px solid var(--hf-line);justify-content:center;align-items:flex-end;gap:4px;height:100px;display:flex}.month-bars i{border-radius:3px 3px 0 0;width:10px;max-width:35%;display:block}.income-bar,.income-dot{background:var(--hf-income)}.out-bar,.out-dot{background:var(--hf-out)}.legend{color:var(--hf-secondary);flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;font-size:11px;display:flex}.legend i{border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.budget-row{border-bottom:1px solid var(--hf-line);padding:19px 0}.budget-numbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:10px 0;display:grid}.budget-numbers small{color:var(--hf-secondary);display:block}.budget-numbers .amount{font-size:13px}.inline-amount{text-align:left;text-underline-offset:4px;min-height:28px;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.transaction-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search-field{border:1px solid var(--hf-line);background:var(--hf-paper);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:180px;padding:0 12px;display:flex}.search-field input{background:0 0;border:0;width:100%;min-width:0;padding-left:0}.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.filters-grid input,.filters-grid select{width:100%}.source-row{gap:7px;margin-top:6px}.tile-icon{background:var(--hf-soft);width:34px;height:34px;color:var(--hf-secondary);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.transaction-row strong{overflow-wrap:anywhere}.net-chart{margin-top:24px}.net-chart svg{width:100%;height:150px;margin:10px 0;display:block}.tabs{border-bottom:1px solid var(--hf-line);gap:22px;margin-bottom:24px;display:flex}.tabs button{color:var(--hf-secondary);border-bottom:2px solid #0000;padding:8px 0}.tabs button[aria-pressed=true]{color:var(--hf-ink);border-color:var(--hf-accent)}.check-label{align-items:center;gap:10px;min-height:44px;display:flex}.empty{justify-items:start;gap:16px;max-width:500px;padding:30px 0;display:grid}.empty h2{font-size:23px}.data-note{border-top:1px solid var(--hf-line);color:var(--hf-secondary);flex-wrap:wrap;gap:12px;margin-top:30px;padding-top:20px;font-size:11px;display:flex}.initial,.signin{max-width:400px;margin:60px auto;padding:30px}.signin{gap:25px;display:grid}.signin h1{font-size:32px}.signin form input{width:100%}.dialog{background:var(--hf-paper);color:var(--hf-ink);border:1px solid var(--hf-line);width:440px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 40px);box-shadow:var(--hf-shadow-overlay);border-radius:14px;padding:24px}.dialog::backdrop{background:#00000080}.dialog form input:not([type=checkbox]),.dialog select,.dialog textarea{width:100%}.dialog .hero{font-size:34px}.account-choice{border-bottom:1px solid var(--hf-line);align-items:center;gap:10px;padding:13px 0;display:flex}.account-choice small{display:block}.actions{margin:20px 0}.actions>*{flex:1}.more-nav{gap:10px;display:grid}.toast{background:var(--hf-ink);color:var(--hf-bg);z-index:20;max-width:calc(100vw - 30px);box-shadow:var(--hf-shadow-overlay);border-radius:10px;padding:12px 18px;font-size:13px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.bottom-nav{display:none}.loading{color:var(--hf-secondary);padding:40px 0}@media (width<=768px){.app-shell{grid-template-columns:1fr}.sidebar,.desktop-only{display:none}.mobile-brand{font-size:18px;display:flex}.topbar{flex-wrap:wrap;gap:8px;padding:14px 20px}.topbar .row{gap:3px}.theme-button{display:none}.account-button{max-width:190px}.content{padding:24px 20px 100px}.columns,.two-columns{grid-template-columns:1fr}.pagehead{gap:16px}.pagehead h1{font-size:27px}.hero{font-size:39px}.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.summary .summary-lead{grid-column:1/-1}.summary .summary-lead .amount{font-size:40px}.summary .amount{font-size:24px}.summary.compact{grid-template-columns:1fr;gap:12px}.summary.compact>div{justify-content:space-between;align-items:center;display:flex}.summary.compact .amount,.summary.compact .summary-lead .amount{font-size:20px}.surface{padding:18px}.bottom-nav{background:var(--hf-paper);border-top:1px solid var(--hf-line);padding:7px 4px calc(10px + env(safe-area-inset-bottom));z-index:10;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a,.bottom-nav button{min-width:48px;min-height:44px;color:var(--hf-secondary);align-content:center;justify-items:center;gap:5px;padding:7px 4px;font-size:10px;display:grid}.bottom-nav [aria-current] svg{background:var(--hf-accent);color:var(--hf-on-accent);box-shadow:0 0 0 4px var(--hf-accent);border-radius:3px}.bottom-nav [aria-current]{color:var(--hf-ink)}.toast{bottom:90px}.transaction-row{gap:8px}.transaction-row .amount{font-size:13px}.tile-icon{width:29px;height:31px}.dialog{border-radius:18px;max-height:calc(100dvh - 24px);margin:auto auto 12px;padding:20px}.signin{margin:30px auto}.period-control{width:100%}.period-control>select{max-width:100%}.tabs{gap:18px}.source-row .pill{max-width:100%}}@media (width<=360px){.summary .amount{font-size:20px}.summary .summary-lead .amount,.hero{font-size:35px}.topbar{padding:12px 16px}.content{padding-left:16px;padding-right:16px}.mobile-brand{font-size:17px}.account-button{max-width:155px}.filters-grid{grid-template-columns:1fr}.budget-numbers{gap:8px}.budget-numbers .amount,.transaction-row .amount{font-size:12px}.subhero{font-size:25px}}@media (prefers-reduced-motion:no-preference){.progress-fill{transition:width .2s}.spin{animation:1s linear infinite rotate}@keyframes rotate{to{transform:rotate(360deg)}}}.receipt-actions{flex-wrap:wrap}.receipt-input{opacity:0;width:1px;height:1px;position:absolute}.receipt-actions label:focus-within{outline:2px solid var(--hf-focus);outline-offset:3px}.receipt-thumbnail{object-fit:cover;border:1px solid var(--hf-line);border-radius:8px;width:72px;height:96px}.receipts{margin-block:16px}.receipts progress{width:100%;display:block}.split-child{border-left:2px solid var(--hf-line);justify-content:space-between;gap:8px;margin:8px 0 0 12px;padding-left:8px;display:flex}fieldset{border:1px solid var(--hf-line);border-radius:8px;min-width:0}.enrolment{align-content:center;min-height:calc(100dvh - 120px)}.snooze-link{min-height:44px;color:var(--hf-secondary);justify-self:center;padding:10px 18px;font-size:13px;text-decoration:underline}
