.ga-home{color:#14211c;--home-muted:#53665b;background:#f5f7ef;overflow:clip}.ga-home ::selection{color:#063f2c;background:#b7e34a}.ga-home a{color:inherit;text-underline-offset:5px;text-decoration:none}.ga-home a:focus-visible,.ga-home button:focus-visible,.ga-home summary:focus-visible{outline-offset:5px;outline:3px solid #78a524}.ga-home h1,.ga-home h2,.ga-home h3{font-family:var(--font-display);text-wrap:balance}.ga-home h2{letter-spacing:-.035em;font-size:clamp(2.2rem,4.4vw,3.9rem);line-height:1.04}.ga-home h3{letter-spacing:-.02em;margin:0 0 16px;font-size:1.5rem;line-height:1.2}.ga-home p{line-height:1.7}.ga-home figure{margin:0}.ga-home img{max-width:100%;display:block}.home-container{width:min(1200px,100% - 80px);margin-inline:auto}.home-skip{z-index:20;background:#b7e34a;padding:14px;position:fixed;top:-100px;left:16px}.home-skip:focus{top:12px}.home-header{color:#f5f7ef;background:#063f2c;border-bottom:1px solid #315c49}.home-nav{justify-content:space-between;align-items:center;gap:28px;min-height:92px;display:flex}.home-nav nav{gap:28px;font-size:.875rem;display:flex}.home-nav nav a{padding-block:14px}.home-nav nav a:hover{color:#b7e34a}.ga-home .home-button{border-radius:10px;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:18px 25px;font-size:.9375rem;font-weight:700;line-height:1.3;transition:background .2s,transform .2s;display:inline-flex}.ga-home .home-button-lime{color:#063f2c;background:#b7e34a}.ga-home .home-button-lime:hover{background:#c9ef6f;transform:translateY(-2px)}.ga-home .home-button-dark{color:#fff;background:#063f2c}.ga-home .home-button-dark:hover{background:#0b513a;transform:translateY(-2px)}.ga-home .home-access{white-space:nowrap;padding:13px 20px}.home-hero{color:#f5f7ef;background:#063f2c}.home-hero-grid{grid-template-columns:1.18fr 1fr;align-items:center;gap:65px;padding-block:58px 70px;display:grid}.home-hero-copy h1{letter-spacing:-.04em;font-size:clamp(3.1rem,5.4vw,4.7rem);font-weight:750;line-height:1.02}.home-hero-copy h1 em{color:#b7e34a;font-style:normal}.home-hero-copy>p{color:#d8e4d9;max-width:500px;margin-top:28px;font-size:1.08rem}.home-actions{flex-direction:column;align-items:flex-start;gap:24px;margin-top:32px;display:flex}.ga-home .home-text-link{align-items:center;gap:12px;min-height:44px;font-weight:600;display:inline-flex}.ga-home .home-text-link:hover{text-decoration:underline}.home-hero-facts{color:#d8e4d9;flex-wrap:wrap;gap:16px;margin-top:36px;font-size:.75rem;display:flex}.home-hero-facts span{align-items:center;gap:6px;display:flex}.home-hero-visual{background:#e8eedc;border-radius:160px 160px 24px 24px;justify-self:end;width:100%;max-width:460px;padding:26px 34px 18px;position:relative}.home-visual-note{color:#063f2c;text-align:center;font-family:var(--font-display);margin-bottom:18px;font-size:1.13rem;line-height:1.4}.home-hero-visual img{mix-blend-mode:multiply;width:270px;height:auto;margin:auto}.home-hero-visual figcaption{color:#455747;text-align:center;margin-top:12px;font-size:.65rem}.home-method{padding-block:105px}.home-method h2{max-width:850px}.home-method h2 span,.home-showcase h2 span{color:#49711c}.home-steps{grid-template-columns:repeat(3,1fr);gap:44px;margin-top:55px;display:grid}.home-steps article{border-top:1px solid #c8d2c0;padding-top:24px}.home-step-number{font-family:var(--font-display);color:#53665b;margin-bottom:24px;font-size:1rem;display:block}.home-steps p{color:var(--home-muted);max-width:340px;font-size:.9375rem}.home-inline-cta{border-top:1px solid #c8d2c0;justify-content:space-between;align-items:center;gap:24px;margin-top:54px;padding-top:25px;display:flex}.home-inline-cta p{color:#31443a;font-family:var(--font-display);margin:0;font-size:1.18rem;line-height:1.3}.home-entry{background:#e5ebd9;padding-block:65px}.home-entry-grid{grid-template-columns:1fr 1fr;align-items:center;gap:90px;display:grid}.home-entry h2{font-size:clamp(2.2rem,3.8vw,3.25rem)}.home-entry-grid>div>p{max-width:400px;color:var(--home-muted);margin-top:20px}.home-entry-example{background:#f5f7ef;border-radius:16px;padding:30px}.home-entry-example>span{color:var(--home-muted);font-size:.8125rem}.home-entry-example>div{border-bottom:1px solid #c8d2c0;justify-content:space-between;align-items:center;gap:20px;padding-block:26px;display:flex}.home-entry-example strong{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.4rem);font-weight:600}.home-entry-example svg{color:#063f2c;flex-shrink:0}.home-entry-example p{align-items:center;gap:8px;font-size:.8125rem;display:flex}.home-showcase{padding-block:100px}.home-showcase-heading{grid-template-columns:1.05fr .95fr;align-items:end;gap:80px;margin-bottom:46px;display:grid}.home-showcase-heading p{max-width:470px;color:var(--home-muted);margin:0 0 5px;font-size:1rem}.home-showcase-stage{background:#e5ebd9;border-radius:28px;grid-template-columns:minmax(310px,1fr) minmax(290px,390px);align-items:center;gap:86px;padding:48px 70px;display:grid}.home-screen-options{flex-wrap:wrap;gap:8px;margin-bottom:42px;display:flex}.home-screen-options button{color:#31443a;font:inherit;cursor:pointer;background:#f5f7ef99;border:1px solid #afbea8;border-radius:999px;min-height:42px;padding:11px 16px;font-size:.78rem;font-weight:700}.home-screen-options button:hover{background:#f5f7ef;border-color:#063f2c}.home-screen-options button[aria-pressed=true]{color:#fff;background:#063f2c;border-color:#063f2c}.home-screen-count{color:#53665b;font-family:var(--font-display);letter-spacing:.08em;margin-bottom:22px;font-size:.8rem;font-weight:700;display:block}.home-showcase-copy h3{max-width:440px;font-size:clamp(1.7rem,2.6vw,2.3rem)}.home-showcase-copy p{color:var(--home-muted);max-width:440px;font-size:.9375rem}.home-showcase-copy>.home-text-link{color:#063f2c;margin-top:26px}.home-screen-figure{background:#f5f7ef;border-radius:24px;padding:24px 32px 18px;box-shadow:0 20px 50px #063f2c1c}.home-screen-figure figcaption{color:var(--home-muted);text-align:center;margin-top:13px;font-size:.6875rem}.home-desktop{color:#f5f7ef;background:#063f2c;padding-block:85px}.home-desktop-grid{grid-template-columns:1.05fr 1fr;align-items:center;gap:80px;display:grid}.home-desktop h2 span{color:#b7e34a}.home-desktop p{color:#d8e4d9;max-width:440px;margin-top:24px}.home-desktop ul{gap:18px;margin:28px 0 34px;padding:0;font-size:.9375rem;list-style:none;display:grid}.home-desktop li{align-items:center;gap:12px;display:flex}.home-desktop li svg{color:#b7e34a;flex-shrink:0}.home-desktop-photo{border-radius:16px;overflow:hidden}.home-desktop-photo img{aspect-ratio:1;object-fit:cover;object-position:50% 55%;width:100%;height:auto}.home-desktop-photo figcaption{color:#d8e4d9;background:#043523;padding:18px 20px;font-size:.75rem}.home-faq{grid-template-columns:1fr 1.3fr;gap:80px;padding-block:100px;display:grid}.home-faq h2{font-size:clamp(2.2rem,3.5vw,3rem)}.home-faq>div>p{color:var(--home-muted);margin-top:24px}.home-faq details{border-bottom:1px solid #c8d2c0;padding:22px 0}.home-faq details:first-child{border-top:1px solid #c8d2c0}.home-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;font-weight:600;line-height:1.5;list-style:none;display:flex}.home-faq summary::-webkit-details-marker{display:none}.home-faq summary svg{flex-shrink:0}.home-faq details[open] summary svg{transform:rotate(180deg)}.home-faq details p{color:var(--home-muted);padding-top:18px;font-size:.9375rem}.home-closing{text-align:center;background:#e5ebd9;padding:80px 20px 88px}.home-closing h2 span{color:#49711c}.home-closing p{font-family:var(--font-display);margin:24px 0;font-size:1.2rem}.home-footer{justify-content:space-between;align-items:center;gap:24px;padding-block:35px;font-size:.75rem;display:flex}.home-footer>a{align-items:center;gap:8px;min-height:44px;display:inline-flex}.home-footer p{color:var(--home-muted)}.home-footer .brand-wordmark-text{font-size:1.5rem}.home-mobile-cta{display:none}@media (width>=1500px){.home-hero-grid{padding-block:75px 85px}}@media (width<=1050px){.home-container{width:calc(100% - 48px)}.home-nav nav{gap:14px;font-size:.76rem}.home-hero-grid{gap:32px}.home-hero-copy h1{font-size:clamp(2.8rem,5.6vw,4rem)}.home-hero-visual{padding-inline:20px}.home-showcase-heading{gap:45px}.home-showcase-stage{grid-template-columns:1fr minmax(280px,340px);gap:42px;padding-inline:42px}.home-screen-options{margin-bottom:34px}.home-desktop-grid{gap:45px}.home-entry-grid,.home-faq{gap:40px}.home-footer{flex-wrap:wrap}.home-footer p{display:none}}@media (width<=760px){.home-container{width:calc(100% - 40px)}.home-nav{gap:12px;min-height:78px}.home-nav nav{display:none}.ga-home .home-access{padding:12px 14px;font-size:.8125rem}.home-nav .brand-wordmark-text{font-size:1.45rem}.home-hero-grid{grid-template-columns:1fr;gap:40px;padding-block:45px 36px}.home-hero-copy h1{font-size:clamp(2.7rem,9.5vw,4.5rem)}.home-hero-copy>p{max-width:500px;margin-top:22px;font-size:1rem}.home-actions{gap:16px;margin-top:26px}.home-hero-facts{gap:12px;margin-top:22px;font-size:.6875rem}.home-hero-visual{justify-self:center;max-width:400px;padding-top:25px}.home-hero-visual img{width:245px}.home-method{padding-block:65px}.home-steps{grid-template-columns:1fr;gap:28px;margin-top:32px}.home-steps article{grid-template-columns:28px 1fr;column-gap:14px;padding-top:20px;display:grid}.home-step-number{grid-row:1/3;margin-top:4px}.home-steps h3{margin-bottom:10px}.home-steps p{grid-column:2;max-width:100%}.home-inline-cta{margin-top:38px;padding-top:22px;display:block}.home-inline-cta p{margin-bottom:18px;font-size:1.05rem}.home-entry{padding-block:50px}.home-entry-grid{grid-template-columns:1fr;gap:30px}.home-entry-example{padding:24px}.home-showcase{padding-block:65px}.home-showcase-heading{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.home-showcase-stage{grid-template-columns:1fr;gap:28px;padding:26px 22px}.home-showcase-copy{max-width:500px}.home-screen-options{gap:7px;margin-bottom:30px}.home-screen-options button{padding:10px 13px;font-size:.74rem}.home-screen-figure{justify-self:center;width:100%;max-width:390px;padding-inline:28px}.home-desktop{padding-block:60px}.home-desktop-grid{grid-template-columns:1fr;gap:35px}.home-desktop-grid>div{grid-row:1}.home-desktop-photo{justify-self:center;width:100%;max-width:500px}.home-faq{grid-template-columns:1fr;gap:32px;padding-block:65px}.home-closing{padding:60px 0 92px}.home-footer{gap:12px;padding-block:25px 90px}.home-footer>a:first-child{width:100%}.home-footer>a:last-child{margin-left:auto}.home-mobile-cta{z-index:15;left:16px;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));color:#063f2c;background:#b7e34a;border-radius:10px;justify-content:center;align-items:center;gap:12px;min-height:52px;font-weight:700;display:flex;position:fixed;box-shadow:0 12px 28px #063f2c33}}@media (prefers-reduced-motion:reduce){.ga-home *{scroll-behavior:auto!important;transition:none!important}}.home-hero-copy>.home-start-note{color:#d8e4d9;margin-top:16px;font-size:.8125rem}.home-method-intro{grid-template-columns:1.1fr .9fr;align-items:center;gap:80px;display:grid}.home-method-intro>div>p{color:var(--home-muted);margin-top:20px}.home-method .home-entry-example{background:#e5ebd9}.home-method .home-entry-example p{margin:18px 0 0}.home-actions{flex-flow:wrap;align-items:center;gap:20px}.home-steps{margin-top:42px}@media (width<=760px){.home-method-intro{grid-template-columns:1fr;gap:28px}.home-hero-grid{gap:28px;padding-top:32px}.home-hero-copy h1{font-size:clamp(2.55rem,9vw,4.5rem)}.home-hero-visual{max-width:350px}.home-footer{padding-bottom:90px}.home-actions{gap:16px}.home-actions>.home-text-link{gap:8px;font-size:.875rem}.home-hero-copy>.home-start-note,.home-hero .home-visual-note{display:none}.home-hero-facts{margin-top:18px}.home-hero .home-hero-visual{padding-top:20px}.home-hero-grid{gap:24px}}.home-screen-figure{box-shadow:none;background:0 0;padding:16px 20px 18px}.home-device{aspect-ratio:1/2;width:100%;max-width:350px;margin-inline:auto;position:relative}.home-device-display{background:#063f2c;border-radius:13%/6%;width:79.84%;height:90.16%;position:absolute;top:4.52%;left:10.16%;overflow:hidden}.home-device-status{background:#063f2c;height:4%}.ga-home .home-device .home-device-capture{object-fit:contain;mix-blend-mode:normal;border-radius:0;width:100%;max-width:none;height:94.4%;margin:0}.home-device-bottom{background:#fff;height:1.6%;position:relative}.home-device-bottom:after{content:"";background:#14211c;border-radius:3px;width:30%;height:3px;position:absolute;bottom:3px;left:35%}.ga-home .home-device .home-device-frame{mix-blend-mode:normal;pointer-events:none;width:100%;max-width:none;height:100%;margin:0;position:absolute;inset:0}@media (width<=760px){.home-screen-figure{padding:0}.home-device{width:100%}}.home-showcase-stage>*{min-width:0}.expense-timing{border:0;min-width:0;margin:8px 0 16px;padding:0}.expense-timing legend{margin-bottom:8px;font-size:.8125rem;font-weight:650}.expense-timing-options{background:var(--bg);border-radius:12px;gap:4px;padding:4px;display:flex}.expense-timing-options button{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:8px 5px;font-size:.8125rem}.expense-timing-options button.selected{background:var(--green);color:#fff;font-weight:650}.expense-timing-options button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.expense-timing p{color:var(--muted);margin:8px 0;font-size:.8125rem;line-height:1.5}.installment-fields{gap:8px;padding:12px 0 0;display:grid}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-text:"Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Bricolage Grotesque Variable", var(--font-text);font-family:var(--font-text);color:#14211c;text-rendering:optimizelegibility;--fs-display:clamp(2rem, 11vw, 3rem);--fs-title:1.75rem;--fs-section:1.25rem;--fs-strong:1rem;--fs-body:.9375rem;--fs-caption:.8125rem;--fs-micro:.75rem;--faint:#8a9a92;--lh-tight:1.05;--lh-title:1.2;--lh-snug:1.35;--lh-body:1.5;--sp-xs:4px;--sp-sm:8px;--sp-md:12px;--sp-lg:16px;--sp-xl:20px;--sp-2xl:24px;--sp-3xl:32px;--bg:#f1f5f1;--surface:#fff;--ink:#14211c;--muted:#56665e;--green:#063f2c;--green-dark:#043523;--brand-deep:#063f2c;--brand-lime:#b7e34a;--brand-cream:#f5f7ef;--topbar-overlay-edge:max(76px, calc(52px + env(safe-area-inset-top)));--mint:#e6f2eb;--mint-strong:#d4eadf;--line:#dce5e0;--line-strong:#c6d4cd;--danger:#bd2028;--danger-soft:#fff0f0;--warn:#a4680b;--warn-soft:#fdf4e4;--positive:#063f2c;--radius-lg:16px;--radius-md:13px;--radius-sm:10px;background:#f6f8f7}@media (width>=900px){:root{--fs-title:2rem;--fs-section:1.375rem;--fs-strong:1.0625rem;--fs-body:1rem;--fs-caption:.875rem}}*{box-sizing:border-box}html{background:var(--bg);touch-action:pan-x pan-y;min-width:320px}body{line-height:var(--lh-snug);background:var(--bg);touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}#root{touch-action:pan-x pan-y;min-height:100vh}button,input,select{font:inherit}button{color:inherit}button,select,input{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #063f2c38}::selection{color:#fff;background:var(--green)}*{scrollbar-width:thin;scrollbar-color:#9db6aa transparent}h1,h2,p{margin:0}h1{font-family:var(--font-display);font-size:clamp(1.75rem,5vw,2.25rem);line-height:var(--lh-tight);letter-spacing:-.035em}h2{font-family:var(--font-display);font-size:var(--fs-section);line-height:var(--lh-title);letter-spacing:-.018em}.expense-value,.transaction-value,.pending-value,.budget-numbers,.allocation-value,.allocation-percent,.phrase-amount,.quotes-bar,.recurring-amount,.asset-values strong,.asset-values small,.installment-debt-row>strong,.month-compare strong,.capital-summary strong,.overview-primary strong,.overview-secondary strong,.dashboard-facts strong,.month-headline>strong,.net-worth-hero strong,.leftover-head strong,.budget-status small,.amount-field input,.summary-strip strong{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1}.app-shell{min-height:100vh}.landscape-guard{display:none}@media (display-mode:standalone) and (orientation:landscape) and (height<=600px) and (pointer:coarse){.landscape-guard{z-index:300;place-content:center;justify-items:center;gap:var(--sp-md);padding:max(var(--sp-2xl), env(safe-area-inset-top)) max(var(--sp-3xl), env(safe-area-inset-right)) max(var(--sp-2xl), env(safe-area-inset-bottom)) max(var(--sp-3xl), env(safe-area-inset-left));color:var(--brand-cream);background:var(--brand-deep);text-align:center;display:grid;position:fixed;inset:0}.landscape-guard>span{width:56px;height:56px;color:var(--brand-deep);background:var(--brand-lime);border-radius:16px;place-items:center;display:grid;transform:rotate(-90deg)}.landscape-guard strong{font-size:var(--fs-section)}.landscape-guard p{color:#d9e8df;max-width:34ch;line-height:var(--lh-body)}}.app-column,.screen-stack>*,.summary-strip>div,.category-shortcuts button,.demo-banner>div{min-width:0}.topbar{z-index:20;min-height:76px;padding:calc(var(--sp-md) + env(safe-area-inset-top)) var(--sp-xl) var(--sp-md);background:var(--brand-deep);justify-content:center;align-items:center;display:flex;position:sticky;top:0;box-shadow:0 8px 24px #063f2c29}.brand-topbar:after{content:"";pointer-events:none;background:#b7e34ab8;height:2px;position:absolute;bottom:0;left:18px;right:18px}.brand-wordmark{min-width:0;color:var(--green-dark);display:inline-flex}.brand-wordmark-text{font-family:var(--font-display);font-variation-settings:"opsz" 48, "wdth" 96, "wght" 720;letter-spacing:-.035em;white-space:nowrap;align-items:baseline;gap:.18em;font-size:1.5rem;line-height:.92;display:inline-flex}.brand-wordmark-gastei{font-variation-settings:"opsz" 48, "wdth" 96, "wght" 780}.brand-wordmark-aqui{color:var(--ink);font-variation-settings:"opsz" 48, "wdth" 96, "wght" 560}.brand-wordmark-dot{color:var(--brand-lime);font-variation-settings:"opsz" 48, "wdth" 96, "wght" 800;margin-left:-.16em}.brand-wordmark-inverse{z-index:1;color:var(--brand-cream);position:relative}.brand-wordmark-inverse .brand-wordmark-text{font-size:1.65rem}.brand-wordmark-inverse .brand-wordmark-aqui{color:var(--brand-lime)}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;min-width:44px;min-height:44px;transition:border-color .17s,background .17s,color .17s;display:inline-flex}.icon-button:hover{border-color:var(--line-strong);background:#f9fbfa}.danger-button{color:var(--danger)}.danger-button:hover{background:var(--danger-soft);border-color:#f0bcbc}.main-content{width:min(100%,820px);padding:var(--sp-2xl) var(--sp-xl) calc(102px + env(safe-area-inset-bottom));margin:0 auto;position:relative}.screen-stack{gap:var(--sp-2xl);animation:.36s cubic-bezier(.16,1,.3,1) both screen-settle;display:grid}.screen-intro{justify-content:space-between;align-items:flex-start;gap:var(--sp-xl);display:flex}.screen-intro>div:first-child{gap:var(--sp-sm);display:grid}.screen-intro p{max-width:540px;color:var(--muted);line-height:var(--lh-body)}.section-meta{color:var(--muted);font-size:var(--fs-caption)}.month-control{align-items:center;gap:var(--sp-sm);min-height:44px;padding:0 var(--sp-md);border:1px solid var(--line);color:var(--green-dark);background:var(--surface);font-size:var(--fs-caption);cursor:pointer;border-radius:11px;flex:none;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.month-control span{white-space:nowrap}.month-control:focus-within{outline-offset:2px;outline:3px solid #063f2c38}.demo-banner{justify-content:space-between;align-items:center;gap:var(--sp-lg);padding:var(--sp-md) var(--sp-md);color:#285641;font-size:var(--fs-caption);background:#edf7f1;border:1px solid #c6ded1;border-radius:12px;display:flex}.demo-banner>div,.demo-banner button{align-items:center;gap:var(--sp-sm);display:inline-flex}.demo-banner button{min-width:44px;min-height:44px;padding:0 var(--sp-sm);color:var(--green-dark);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;font-weight:600}.negative{color:var(--danger)!important}.positive{color:var(--positive)!important}.quick-entry,.inline-form,.capital-summary{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface)}.quick-entry{gap:var(--sp-xl);padding:var(--sp-xl);display:grid;position:relative;overflow:hidden}.quick-entry:before{background:var(--brand-lime);content:"";border-radius:0 0 4px 4px;width:66px;height:3px;position:absolute;top:0;left:20px}.inline-form{gap:var(--sp-lg);padding:var(--sp-xl);display:grid}.section-heading{justify-content:space-between;align-items:flex-start;gap:var(--sp-lg);display:flex}.section-heading>div:first-child,.amount-field{gap:var(--sp-xs);display:grid}.amount-field>span,.text-field>span,.category-shortcuts legend{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.amount-field input{font-family:var(--font-display);width:100%;padding:var(--sp-xs) 0 var(--sp-md);border:0;border-bottom:1px solid var(--line-strong);color:var(--ink);caret-color:var(--green);letter-spacing:-.04em;background:0 0;border-radius:0;font-size:clamp(2rem,11vw,3rem);font-weight:700}.amount-field input::placeholder{color:var(--muted)}.amount-field input:focus{border-color:var(--green)}.amount-field input:focus-visible{border-bottom-width:2px;border-bottom-color:var(--green);outline:0;box-shadow:0 2px 0 -1px #063f2c2e}.category-shortcuts{gap:var(--sp-sm);border:0;grid-template-columns:repeat(3,1fr);margin:0;padding:0;display:grid}.category-shortcuts legend{margin-bottom:var(--sp-sm)}.category-shortcuts button{place-items:center;gap:var(--sp-sm);min-height:78px;padding:var(--sp-md) var(--sp-xs);border:1px solid var(--line);color:#496158;font-size:var(--fs-caption);cursor:pointer;background:#fbfcfb;border-radius:12px;font-weight:600;transition:background .17s,border-color .17s,color .17s;display:grid;position:relative}.category-shortcuts button:hover,.category-shortcuts button.selected{color:var(--green-dark);background:var(--mint);border-color:#91bea6}.shortcut-check{position:absolute;top:6px;right:6px}.text-field{gap:var(--sp-sm);min-width:0;display:grid}.text-field small{color:var(--muted);font-size:var(--fs-caption);font-weight:500}.text-field input,.text-field select,.search-field,.filter-bar>select{width:100%;min-height:45px;padding:0 var(--sp-md);border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:11px}.text-field input::placeholder,.search-field input::placeholder{color:var(--muted)}.compact-field input{background:#f9fbfa}.primary-button,.secondary-button,.text-button{justify-content:center;align-items:center;gap:var(--sp-sm);min-height:45px;padding:0 var(--sp-lg);font-size:var(--fs-body);white-space:nowrap;cursor:pointer;border-radius:11px;font-weight:700;transition:background .17s,border-color .17s,transform .17s;display:inline-flex}.primary-button{border:1px solid var(--green);color:#fff;background:var(--green)}.primary-button:hover{border-color:var(--green-dark);background:var(--green-dark)}.primary-button:active,.secondary-button:active{transform:translateY(1px)}.secondary-button{border:1px solid var(--line-strong);color:var(--green-dark);background:var(--surface)}.secondary-button:hover{background:var(--mint);border-color:#91bea6}.secondary-button:disabled{opacity:.55;cursor:default;transform:none}.text-button{min-height:44px;color:var(--green);font-size:var(--fs-caption);background:0 0;border:0;padding:0}.full-width{width:100%}.compact-button{min-height:44px;padding:0 var(--sp-md);font-size:var(--fs-caption)}.form-notice,.page-notice{color:var(--danger);font-size:var(--fs-body)}.form-notice.success,.page-notice{color:var(--green-dark)}.page-notice{padding:var(--sp-md) var(--sp-md);background:var(--mint);border:1px solid #bedccb;border-radius:10px}.content-section{gap:var(--sp-lg);padding-top:2px;display:grid}.recent-section{padding-bottom:var(--sp-md)}.category-breakdown{gap:var(--sp-md);display:grid}.category-row{align-items:center;gap:var(--sp-md);display:flex}.icon-well,.empty-icon,.asset-icon{width:40px;height:40px;color:var(--green-dark);background:var(--mint);border-radius:50%;flex:none;place-items:center;display:grid}.category-data{gap:var(--sp-sm);flex:1;min-width:0;display:grid}.category-data>div:first-child{justify-content:space-between;align-items:center;gap:var(--sp-md);font-size:var(--fs-caption);display:flex}.category-data span{color:var(--muted);white-space:nowrap}.progress-track{background:#e9eeeb;border-radius:10px;height:5px;overflow:hidden}.progress-track span{border-radius:inherit;transform-origin:0;min-width:3px;height:100%;animation:.56s cubic-bezier(.16,1,.3,1) both progress-reveal;display:block}.transaction-list{border-top:1px solid var(--line)}.transaction-row{align-items:center;gap:var(--sp-md);min-height:68px;padding:var(--sp-md) 0;border-bottom:1px solid var(--line);display:flex}.transaction-copy{gap:var(--sp-xs);flex:1;min-width:0;display:grid}.transaction-copy strong,.asset-copy strong{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.transaction-copy span,.asset-copy span,.asset-copy small{color:var(--muted);font-size:var(--fs-caption)}.transaction-value{font-size:var(--fs-body);white-space:nowrap}.empty-state{justify-items:center;gap:var(--sp-sm);padding:var(--sp-3xl) var(--sp-xl);border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;display:grid}.empty-state strong{font-size:var(--fs-body)}.empty-state p{max-width:360px;color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.segmented-control{gap:var(--sp-xs);padding:var(--sp-xs);background:#edf1ef;border-radius:12px;grid-template-columns:1fr 1fr;display:grid}.segmented-control button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:700}.segmented-control button.active{color:var(--green-dark);background:#fff}.form-grid{gap:var(--sp-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.filter-bar{align-items:center;gap:var(--sp-sm);grid-template-columns:auto 1fr auto;display:grid}.search-field{align-items:center;gap:var(--sp-sm);min-height:44px;color:var(--muted);display:flex}.search-field input{background:0 0;border:0;min-width:0}.search-field:focus-within{outline-offset:2px;outline:3px solid #063f2c38}.search-field input:focus-visible{outline-offset:0;outline:2px solid #063f2c4d}.filter-bar>select{width:auto}.recurring-list,.asset-list{border-top:1px solid var(--line);display:grid}.asset-row{align-items:center;gap:var(--sp-md);padding:var(--sp-lg) 0;border-bottom:1px solid var(--line);display:flex;position:relative}.recurring-row{align-items:start;gap:var(--sp-md);padding:var(--sp-lg) 0;border-bottom:1px solid var(--line);grid-template-columns:36px minmax(0,1fr) auto;display:grid;position:relative}.recurring-row .icon-well{width:36px;height:36px;margin-top:2px}.recurring-copy{align-content:start;gap:var(--sp-xs);min-width:0;display:grid}.recurring-copy>strong{min-width:0;color:var(--ink);font-size:var(--fs-body);font-weight:600;line-height:var(--lh-snug);overflow-wrap:anywhere}.recurring-schedule{align-items:baseline;gap:var(--sp-xs);color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-snug);flex-wrap:wrap;display:flex}.recurring-schedule b{color:var(--ink);font-weight:600}.recurring-context{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-snug);overflow-wrap:anywhere}.recurring-copy .recurring-reminder-meta{align-items:center;gap:var(--sp-xs);color:var(--green-dark);font-size:var(--fs-caption);font-weight:600;display:inline-flex}.recurring-copy .recurring-balance{align-items:baseline;gap:var(--sp-xs);color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-snug);flex-wrap:wrap;display:flex}.recurring-balance strong{color:var(--ink);font-variant-numeric:tabular-nums lining-nums;font-weight:600}.recurring-copy .recurring-paused{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.recurring-side{align-content:start;justify-items:end;gap:var(--sp-sm);min-width:max-content;display:grid}.recurring-amount{font-size:var(--fs-body);white-space:nowrap}.recurring-row.inactive .recurring-copy>strong,.recurring-row.inactive .recurring-amount{color:var(--muted)}.row-actions{align-items:center;gap:var(--sp-xs);display:flex}.recurring-more{position:relative}.recurring-more>summary{width:44px;min-height:44px;color:var(--green-dark);background:var(--mint);cursor:pointer;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;list-style:none;display:inline-flex}.recurring-more>summary::-webkit-details-marker{display:none}.recurring-more>summary:hover,.recurring-more[open]>summary{border-color:var(--line-strong);background:var(--mint-strong)}.recurring-more>summary:focus-visible{outline-offset:2px;outline:3px solid #063f2c47}.recurring-more-menu{z-index:12;gap:var(--sp-sm);width:min(280px,100vw - 36px);padding:var(--sp-sm);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 16px 40px #0c261a3d}.recurring-more.open-up .recurring-more-menu{top:auto;bottom:calc(100% + 7px)}.recurring-more-menu .secondary-button{justify-content:flex-start;width:100%}.capital-summary{padding:var(--sp-xl);background:#fdfefd;grid-template-columns:1.25fr repeat(3,1fr);display:grid}.capital-summary.pair{grid-template-columns:repeat(2,1fr)}.capital-summary>div{gap:var(--sp-xs);padding:0 var(--sp-lg);border-right:1px solid var(--line);display:grid}.capital-summary>div:first-child{padding-left:0}.capital-summary>div:last-child{border-right:0;padding-right:0}.capital-summary span{color:var(--muted);font-size:var(--fs-caption)}.capital-summary strong{font-size:var(--fs-strong);white-space:nowrap}.asset-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-item{border-bottom:1px solid var(--line)}.asset-item .asset-row{border-bottom:0}.asset-update-form{align-items:end;gap:var(--sp-sm);padding:0 0 var(--sp-lg) 51px;grid-template-columns:1fr 1fr auto auto;display:grid}.asset-copy{gap:var(--sp-xs);flex:1;min-width:0;display:grid}.asset-values{justify-items:end;gap:3px;display:grid}.asset-values strong{font-size:var(--fs-body);white-space:nowrap}.asset-values span{font-size:var(--fs-caption);font-weight:600}.asset-action{gap:var(--sp-xs);padding:0 var(--sp-md)}.asset-action>span{font-size:var(--fs-caption);font-weight:600;display:none}.installment-debts{margin-top:var(--sp-xl);border-top:1px solid var(--line);display:grid}.installment-debts-heading{justify-content:space-between;align-items:center;gap:var(--sp-md);padding:var(--sp-lg) 0 var(--sp-sm);display:flex}.installment-debts-heading h3{font-size:var(--fs-body)}.installment-debts-heading strong{font-size:var(--fs-caption);white-space:nowrap}.installment-debt-row{align-items:center;gap:var(--sp-md);min-height:64px;padding:var(--sp-md) 0;border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.installment-debt-row>div{gap:var(--sp-xs);min-width:0;display:grid}.installment-debt-row>div strong{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.installment-debt-row>div span{color:var(--muted);font-size:var(--fs-caption)}.installment-debt-row>strong{font-size:var(--fs-body);white-space:nowrap}.side-nav{display:none}.mobile-nav{z-index:30;padding:0 var(--sp-sm) calc(var(--sp-xs) + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);position:fixed;bottom:0;left:0;right:0}.mobile-nav-items{grid-template-columns:repeat(4,1fr);display:grid}.mobile-nav button,.side-nav-items button{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;display:flex;position:relative}.mobile-nav button{justify-content:center;gap:var(--sp-xs);min-height:66px;padding:var(--sp-sm) 2px 3px;color:var(--muted);font-size:var(--fs-micro);font-weight:600;line-height:var(--lh-tight);flex-direction:column;transition:color .17s,transform .17s}.mobile-nav button:hover{color:var(--green-dark)}.mobile-nav button:active{transform:translateY(1px)}.mobile-nav button.active{color:var(--green-dark);font-weight:700}.mobile-nav button.active svg{stroke-width:2.5px}.mobile-nav button.active:before{display:none}@media (width<=640px){.screen-stack{gap:var(--sp-lg)}.quick-entry{gap:var(--sp-md);padding:var(--sp-lg)}.category-shortcuts{gap:var(--sp-sm)}.category-shortcuts button{min-height:68px;padding:var(--sp-sm) var(--sp-xs)}.screen-intro{grid-template-columns:minmax(0,1fr);display:grid}.home-intro{display:flex}.screen-intro>.primary-button,.screen-intro>.secondary-button{width:100%}.secure-local{display:none}.demo-banner,.demo-banner>div{align-items:flex-start}.demo-banner button span{display:none}.filter-bar{grid-template-columns:1fr auto}.filter-bar .search-field{grid-area:2/1/auto/-1}.form-grid,.asset-form-grid{grid-template-columns:1fr}.recurring-row{grid-template-columns:36px minmax(0,1fr) auto}.capital-summary{gap:var(--sp-lg) 0;grid-template-columns:repeat(2,1fr)}.capital-summary>div{border-right:1px solid var(--line)}.capital-summary>div:nth-child(2){border-right:0;padding-right:0}.capital-summary>div:nth-child(3){padding-left:0}.asset-row{grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.asset-row .asset-copy{grid-column:2}.asset-row .asset-values{grid-column:2;justify-items:start}.asset-row>.row-actions{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.asset-row .asset-action{width:100%;min-width:0}.asset-action>span{display:inline}.asset-update-form{grid-template-columns:1fr 1fr;padding-left:0}}@media (width<=410px){.main-content,.topbar{padding-right:var(--sp-lg);padding-left:var(--sp-lg)}.home-intro h1{max-width:215px}.summary-strip>div{padding-right:var(--sp-sm);padding-left:var(--sp-sm)}.summary-strip span{font-size:var(--fs-caption)}.quick-entry{padding:var(--sp-lg)}.category-shortcuts button{min-height:72px;font-size:var(--fs-caption)}.transaction-row .icon-well{width:36px;height:36px}}@media (pointer:coarse){.subcategory-tags button,.subcategory-admin form button,.reminder-days button,.install-platform-tabs button,.install-later-button{min-width:44px;min-height:44px}}@media (width>=900px){.app-shell{grid-template-columns:252px minmax(0,1fr);display:grid}.side-nav{gap:var(--sp-xl);height:100vh;padding:var(--sp-xl) var(--sp-lg) var(--sp-2xl);background:var(--brand-deep);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.side-nav-brand{padding:0 var(--sp-sm)}.side-nav-brand .brand-wordmark-text{font-size:1.62rem}.side-nav-items{gap:2px;display:grid}.side-nav-items button{gap:var(--sp-md);min-height:46px;padding:0 var(--sp-md);color:#f5f7efb8;font-size:var(--fs-caption);border-radius:11px;font-weight:600;transition:color .16s,background .16s}.side-nav-items button:hover{color:var(--brand-cream);background:#f5f7ef17}.side-nav-items button.active{color:#fff;background:#f5f7ef24}.side-nav-items button.active:before{background:var(--brand-lime);content:"";border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.local-note{margin:auto var(--sp-sm) 0;color:#f5f7ef80;font-size:var(--fs-caption);line-height:var(--lh-body)}.mobile-nav{display:none}.topbar{min-height:64px;padding:0 var(--sp-3xl)}.topbar .brand-wordmark{display:none}.brand-topbar:after{left:30px;right:30px}.topbar-settings{right:30px}.sync-dot{right:82px}.month-compare{grid-template-columns:repeat(2,1fr)}.main-content{padding:var(--sp-3xl) var(--sp-3xl) 60px}.screen-stack{gap:var(--sp-2xl)}.quick-entry{padding:var(--sp-2xl)}}.dashboard-main,.dashboard-rail{display:contents}@media (width>=1300px){.dashboard-stack{grid-template-columns:minmax(0,1fr) 352px;align-items:start}.dashboard-main,.dashboard-rail{gap:var(--sp-2xl);align-content:start;display:grid}.dashboard-main{grid-area:1/1}.dashboard-rail{top:calc(64px + var(--sp-xl));grid-area:1/2;position:sticky}.dashboard-rail .phrase-field input{font-size:var(--fs-strong)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.screen-stack,.progress-track span,.confirm-backdrop,.confirm-dialog,.install-guide-backdrop,.install-guide,.spin{animation:none}button,input,select,textarea,summary,.leftover-track>span,.budget-bar span{transition:none}}@keyframes screen-settle{0%{opacity:.84;filter:blur(2px);transform:translateY(8px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes progress-reveal{0%{transform:scaleX(.12)}to{transform:scaleX(1)}}button,input,select,textarea{font:inherit}input,select,textarea{font-size:var(--fs-strong)}textarea{resize:vertical}textarea:focus-visible{outline-offset:2px;outline:3px solid #063f2c38}.phrase-entry{gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow:hidden}.phrase-entry:before{background:var(--brand-lime);content:"";border-radius:0 0 4px 4px;width:66px;height:3px;position:absolute;top:0;left:20px}.phrase-heading{justify-content:space-between;align-items:center;gap:var(--sp-md);display:flex}.phrase-heading>span{color:var(--muted);font-size:var(--fs-caption);white-space:nowrap;flex:none;font-weight:600}.phrase-title{font-family:var(--font-text);color:var(--muted);font-size:var(--fs-caption);font-weight:600;line-height:var(--lh-title);letter-spacing:0}.phrase-field{align-items:center;gap:var(--sp-md);display:flex}.phrase-field input{border:0;border-bottom:1px solid var(--line-strong);min-width:0;min-height:46px;color:var(--ink);font-size:var(--fs-section);letter-spacing:-.02em;background:0 0;border-radius:0;flex:1;font-weight:600}.phrase-field input::placeholder{color:var(--muted);font-weight:500}.phrase-field input:focus{border-bottom-color:var(--green);outline:0}.phrase-field button{width:50px;height:50px;color:var(--brand-cream);background:var(--green);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;transition:background .17s,opacity .17s,transform .12s;display:inline-flex}.phrase-field button:hover:not(:disabled){background:var(--green-dark)}.phrase-field button:active:not(:disabled){transform:scale(.95)}.phrase-field button:disabled{opacity:.28;cursor:default}.phrase-field .phrase-mic{color:var(--green-dark);background:var(--brand-lime);position:relative;box-shadow:0 7px 18px #aeda3c3d}.phrase-field .phrase-mic:hover:not(:disabled){background:#b9e64b}.phrase-field .phrase-mic.listening{color:#fff;background:#d94c52;animation:1.35s ease-in-out infinite microphone-pulse;box-shadow:0 0 0 7px #d94c521f}.phrase-field .phrase-submit{color:var(--brand-cream);background:var(--green)}.phrase-voice-error{color:var(--danger);font-size:var(--fs-caption);line-height:var(--lh-body);margin:-2px 0 0}.phrase-reading{align-items:center;gap:var(--sp-sm);min-height:21px;color:var(--ink);font-size:var(--fs-body);flex-wrap:wrap;font-weight:600;display:flex}.phrase-reading.hint{color:var(--muted);font-size:var(--fs-caption);font-weight:400;line-height:var(--lh-snug);display:block}.phrase-reading.hint b{color:var(--ink);font-weight:600}.phrase-reading.success{color:var(--green);flex-wrap:nowrap;align-items:flex-start;font-weight:700}.phrase-reading.success>svg{flex:none;margin-top:2px}.phrase-amount{font-size:var(--fs-body);letter-spacing:-.02em}.phrase-dot{border-radius:50%;width:8px;height:8px}.phrase-dot.income-dot{background:var(--green)}.phrase-reading.income .phrase-amount{color:var(--green)}.phrase-reading.listening{color:var(--green-dark)}.voice-pulse{align-items:center;gap:3px;height:18px;display:inline-flex}.voice-pulse>span{background:var(--green);border-radius:99px;width:3px;height:7px;animation:.85s ease-in-out infinite voice-bar}.voice-pulse>span:nth-child(2){height:15px;animation-delay:.12s}.voice-pulse>span:nth-child(3){height:10px;animation-delay:.24s}.phrase-reading button{min-height:34px;margin-left:var(--sp-sm);padding:0 var(--sp-md);border:1px solid var(--line-strong);color:var(--green-dark);background:var(--surface);font-size:var(--fs-caption);vertical-align:middle;cursor:pointer;border-radius:9px;font-weight:600}.phrase-reading button:hover{background:var(--mint)}@keyframes microphone-pulse{0%,to{box-shadow:0 0 0 5px #d94c521a}50%{box-shadow:0 0 0 10px #d94c5205}}@keyframes voice-bar{0%,to{opacity:.58;transform:scaleY(.55)}50%{opacity:1;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.phrase-field .phrase-mic.listening,.voice-pulse>span{animation:none}}.expense-overview{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow:hidden}.expense-overview:before{z-index:1;background:var(--brand-lime);content:"";border-radius:0 0 4px 4px;width:66px;height:3px;position:absolute;top:0;left:20px}.overview-primary{gap:var(--sp-xs);padding:var(--sp-2xl) var(--sp-xl) var(--sp-xl);border-bottom:1px solid var(--line);display:grid}.overview-primary span,.overview-secondary span,.dashboard-facts span,.dashboard-facts small{color:var(--muted);font-size:var(--fs-caption)}.overview-primary strong{font-family:var(--font-display);font-size:clamp(2rem,11vw,3rem);line-height:var(--lh-tight);letter-spacing:-.04em}.overview-primary small{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.overview-secondary{grid-template-columns:repeat(3,1fr);align-items:center;display:grid}.overview-secondary>div{gap:var(--sp-xs);padding:var(--sp-xl) var(--sp-lg);border-right:1px solid var(--line);display:grid}.overview-secondary>div:first-child{padding-left:var(--sp-xl)}.overview-secondary>div:last-child{border-right:0}.overview-secondary strong{font-size:var(--fs-body);white-space:nowrap}.dashboard-facts{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;overflow:hidden}.dashboard-facts button{gap:var(--sp-xs);min-height:94px;padding:var(--sp-lg) var(--sp-3xl) var(--sp-lg) var(--sp-xl);border:0;border-right:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;border-bottom:0;display:grid;position:relative}.dashboard-facts button:not(:first-child){padding-left:var(--sp-lg)}.dashboard-facts button:last-child{border-right:0}.dashboard-facts button:hover{background:#e6f2eb73}.dashboard-facts button>svg{color:var(--muted);position:absolute;top:50%;right:10px;transform:translateY(-50%)}.dashboard-facts strong{font-size:var(--fs-body)}.dashboard-facts.without-assets button{padding-left:var(--sp-xl)}.sheet-backdrop{z-index:80;padding:var(--sp-xl);background:0 0;align-items:end;display:grid;position:fixed;inset:0}.sheet-backdrop:before{inset:var(--topbar-overlay-edge) 0 0;z-index:0;content:"";background:#14211c7a;animation:.18s ease-out both backdrop-in;position:absolute}.quick-sheet{z-index:1;background:var(--surface);border-radius:20px 20px 14px 14px;width:min(100%,620px);max-height:calc(100dvh - 24px);margin:0 auto;animation:.21s cubic-bezier(.2,.8,.2,1) both sheet-in;position:relative;overflow:auto;box-shadow:0 24px 70px #0c261a3d}.sheet-heading{z-index:2;justify-content:space-between;align-items:flex-start;gap:var(--sp-lg);padding:var(--sp-xl) var(--sp-xl) var(--sp-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;display:flex;position:sticky;top:0}.sheet-heading>div{gap:var(--sp-xs);display:grid}.sheet-heading p{color:var(--muted);font-size:var(--fs-body)}.quick-sheet .quick-entry{padding:var(--sp-md) var(--sp-xl) calc(var(--sp-xl) + env(safe-area-inset-bottom));border:0}.quick-sheet .quick-entry:before{left:18px}@keyframes backdrop-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:.7;transform:translateY(32px)}}.category-picker{gap:var(--sp-md);display:grid}.field-label{color:var(--muted);font-size:var(--fs-caption);justify-content:space-between;font-weight:600;display:flex}.field-label strong{color:var(--muted);font-size:var(--fs-caption);letter-spacing:.01em;opacity:.85;font-weight:400}.mini-icon{place-items:center;display:grid}.category-expand{align-items:center;gap:var(--sp-sm);min-height:45px;padding:0 var(--sp-md);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;font-weight:700;display:flex}.category-expand>svg:last-child{color:var(--muted);margin-left:auto}.category-browser{gap:var(--sp-md);padding:var(--sp-md);border:1px solid var(--line);background:#f9fbfa;border-radius:13px;display:grid}.category-search{background:#fff}.category-search-results,.all-categories{max-height:244px;display:grid;overflow:auto}.category-search-results button,.all-categories button{align-items:center;gap:var(--sp-sm);min-height:44px;padding:var(--sp-sm) var(--sp-sm);border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;display:flex}.category-search-results button:hover,.all-categories button:hover,.all-categories button.selected{background:var(--mint)}.all-categories button>svg{color:var(--green);margin-left:auto}.picker-empty{padding:var(--sp-lg);color:var(--muted);font-size:var(--fs-caption);text-align:center}.subcategory-choice{gap:var(--sp-sm);display:grid}.subcategory-choice>span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.subcategory-choice small{font-weight:500}.subcategory-choice>div{gap:var(--sp-sm);padding-bottom:3px;display:flex;overflow-x:auto}.subcategory-choice button{min-height:40px;padding:0 var(--sp-md);border:1px solid var(--line);font-size:var(--fs-caption);cursor:pointer;background:#fff;border-radius:999px;flex:none;font-weight:600}.subcategory-choice button.selected{color:var(--green-dark);background:var(--mint);border-color:#91bea6}.form-notice.success{align-items:center;gap:var(--sp-xs);display:flex}.quick-date-field{justify-content:space-between;align-items:center;gap:var(--sp-md);display:flex}.quick-date-field>span{align-items:center;gap:var(--sp-xs);color:var(--muted);font-size:var(--fs-caption);font-weight:600;display:inline-flex}.quick-date-field input{min-width:145px;min-height:44px;padding:0 var(--sp-md);border:1px solid var(--line);color:var(--ink);background:var(--surface);font-size:var(--fs-strong);border-radius:11px;font-weight:600}.intro-actions,.form-actions{align-items:center;gap:var(--sp-sm);display:flex}.expense-form textarea,.inline-form textarea{min-height:82px;padding:var(--sp-md) var(--sp-md);border:1px solid var(--line);color:var(--ink);line-height:var(--lh-body);background:#fff;border-radius:11px}.form-span{grid-column:1/-1}.file-field,.check-field{align-items:center;gap:var(--sp-sm);min-height:45px;padding:0 var(--sp-md);border:1px solid var(--line);color:var(--muted);font-size:var(--fs-caption);cursor:pointer;background:#fff;border-radius:11px;display:flex}.file-field{position:relative;overflow:hidden}.file-field input{opacity:0;cursor:pointer;position:absolute;inset:0}.check-field input{width:18px;height:18px;accent-color:var(--green)}.debt-choice{align-items:center;gap:var(--sp-md);min-height:68px;padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:12px;grid-template-columns:auto minmax(0,1fr);display:grid}.debt-choice:has(input:checked){background:var(--mint);border-color:#91bea6}.debt-choice.disabled{opacity:.58;cursor:not-allowed}.debt-choice input{width:19px;height:19px;accent-color:var(--green)}.debt-choice>span{gap:3px;display:grid}.debt-choice strong{font-size:var(--fs-caption)}.debt-choice small{color:var(--muted);font-size:var(--fs-caption);font-weight:500;line-height:var(--lh-snug)}.reminder-choice{justify-content:space-between;align-items:center;gap:var(--sp-lg);min-height:72px;padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:12px;transition:border-color .17s,background .17s;display:flex}.reminder-choice:has(input:checked){background:var(--mint);border-color:#91bea6}.reminder-choice:has(input:checked) .reminder-choice-copy small{color:var(--green-dark)}.reminder-choice-copy{align-items:center;gap:var(--sp-md);min-width:0;display:flex}.reminder-choice-copy>span:last-child{gap:3px;display:grid}.reminder-choice-copy strong{color:var(--ink);font-size:var(--fs-caption)}.reminder-choice-copy small{color:var(--muted);font-size:var(--fs-caption);font-weight:500;line-height:var(--lh-snug)}.reminder-choice-icon{width:38px;height:38px;color:var(--green);background:var(--mint-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.expense-toolbar{align-items:center;gap:var(--sp-sm);grid-template-columns:minmax(180px,1fr) auto auto;display:grid}.period-tabs{gap:var(--sp-xs);padding:var(--sp-xs);background:#eaf0ed;border-radius:12px;display:flex}.period-tabs button,.filter-button{min-height:44px;padding:0 var(--sp-md);color:var(--muted);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:600}.period-tabs button.active{color:var(--green-dark);background:#fff}.filter-button{align-items:center;gap:var(--sp-xs);border:1px solid var(--line);background:#fff;min-height:45px;display:inline-flex}.advanced-filters{gap:var(--sp-md);padding:var(--sp-lg);border:1px solid var(--line);background:#fbfcfb;border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.expense-groups{gap:var(--sp-2xl);display:grid}.expense-day{gap:var(--sp-sm);display:grid}.expense-day h3{color:var(--muted);font-size:var(--fs-caption);margin:0;font-weight:600}.expense-list{border-top:1px solid var(--line)}.expense-row{align-items:center;gap:var(--sp-xs);border-bottom:1px solid var(--line);min-height:68px;display:flex}.expense-row-main{align-items:center;gap:var(--sp-md);min-width:0;min-height:67px;padding:var(--sp-sm) var(--sp-xs) var(--sp-sm) 0;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex}.expense-row-main:hover{background:#e6f2eb59}.expense-copy{gap:var(--sp-xs);flex:1;min-width:0;display:grid}.expense-copy strong,.expense-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.expense-copy strong{font-size:var(--fs-body)}.expense-copy span{color:var(--muted);font-size:var(--fs-caption)}.expense-value{color:var(--ink);font-size:var(--fs-body);font-variant-numeric:tabular-nums;white-space:nowrap}.expense-row-main>svg{color:var(--muted)}.category-manager{gap:var(--sp-lg);padding:var(--sp-xl);border:1px solid var(--line-strong);background:#fff;border-radius:16px;display:grid}.category-create{align-items:end;gap:var(--sp-sm);grid-template-columns:minmax(180px,1fr) 150px 82px auto;display:grid}.color-field input{padding:var(--sp-xs)}.category-admin-list{border-top:1px solid var(--line);display:grid}.category-admin-row{gap:var(--sp-md);padding:var(--sp-md) 0;border-bottom:1px solid var(--line);display:grid}.category-admin-row.inactive{opacity:.6}.category-admin-heading{align-items:center;gap:var(--sp-md);display:flex}.category-admin-heading>div{flex:1;gap:3px;min-width:0;display:grid}.category-admin-heading strong{font-size:var(--fs-body)}.category-admin-heading span{color:var(--muted);font-size:var(--fs-caption)}.category-edit-row{gap:var(--sp-sm);grid-template-columns:1fr 150px 52px auto auto;display:grid}.category-edit-row input,.category-edit-row select{min-height:42px;padding:0 var(--sp-sm);border:1px solid var(--line);background:#fff;border-radius:9px}.subcategory-details{margin-left:50px}.subcategory-details summary{width:max-content;min-height:44px;color:var(--green-dark);font-size:var(--fs-caption);cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.subcategory-admin{justify-content:space-between;align-items:center;gap:var(--sp-md);padding-left:0;display:flex}.subcategory-tags{gap:var(--sp-xs);flex-wrap:wrap;display:flex}.subcategory-tags>span{min-height:38px;padding:0 var(--sp-xs) 0 var(--sp-md);color:#496158;background:var(--mint);font-size:var(--fs-caption);border-radius:999px;align-items:center;gap:3px;display:inline-flex}.subcategory-tags>span.editing{max-width:100%;padding-left:var(--sp-sm);border-radius:11px}.subcategory-tags>span.inactive{opacity:.5;text-decoration:line-through}.subcategory-tags button,.subcategory-admin form button{width:36px;height:36px;color:var(--green-dark);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.subcategory-inline-input{width:min(170px,42vw);min-height:36px;padding:0 var(--sp-sm);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface)}.subcategory-admin form{border:1px solid var(--line);background:#fff;border-radius:9px;flex:0 0 220px;align-items:center;display:flex}.subcategory-admin form input{min-width:0;min-height:44px;padding:0 var(--sp-sm);background:0 0;border:0}.recurring-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.35fr 1fr 1fr;display:grid}.recurring-summary>div{gap:var(--sp-xs);padding:var(--sp-lg);border-right:1px solid var(--line);display:grid}.recurring-summary>div:first-child{padding-left:0}.recurring-summary>div:last-child{border-right:0}.recurring-summary span{color:var(--muted);font-size:var(--fs-caption)}.recurring-summary strong{font-size:var(--fs-body)}.recurring-outlook{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.recurring-outlook>div,.recurring-outlook>button{gap:var(--sp-xs);min-width:0;padding:var(--sp-md) var(--sp-lg);display:grid}.recurring-outlook>div:first-child{padding-left:0}.recurring-outlook>div+div{border-left:1px solid var(--line)}.recurring-outlook span{color:var(--muted);font-size:var(--fs-caption);text-transform:capitalize}.recurring-outlook strong{min-width:0;font-size:var(--fs-body);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}.input-suffix{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;display:flex}.input-suffix input{border:0;min-width:0}.input-suffix span{padding-right:var(--sp-md);color:var(--muted);font-size:var(--fs-caption)}.mobile-nav-items{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}.mobile-nav .nav-quick{color:var(--green-dark)}.mobile-nav .nav-quick>span{border:4px solid var(--surface);color:#fff;background:var(--brand-lime);border-radius:50%;place-items:center;width:52px;height:52px;margin-top:-22px;display:grid}.mobile-nav .nav-quick:hover>span{background:var(--brand-lime);filter:brightness(.94)}.mobile-nav .nav-quick small{font-size:var(--fs-micro);font-weight:600}.mobile-nav .nav-quick:before{display:none}@media (width<=760px){.phrase-entry{gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg)}.phrase-field input{min-height:44px;font-size:var(--fs-section)}.phrase-field button{width:46px;height:46px}.overview-primary{padding:var(--sp-xl) var(--sp-xl) var(--sp-lg)}.overview-secondary>div{padding:var(--sp-md) var(--sp-lg)}.overview-secondary>div:first-child{padding-left:var(--sp-xl)}.dashboard-facts button,.dashboard-facts button:not(:first-child){min-height:80px;padding:var(--sp-md) var(--sp-3xl) var(--sp-md) var(--sp-lg);border-right:1px solid var(--line);border-bottom:0}.dashboard-facts button:last-child{border-right:0}.month-report{grid-template-columns:auto minmax(0,1fr)}.report-download{grid-column:1/-1;width:100%}.sheet-backdrop{padding:0}.quick-sheet{border-radius:20px 20px 0 0;max-height:calc(100dvh - 8px)}.intro-actions{justify-content:flex-end;width:100%}}@media (width<=640px){.intro-actions{grid-template-columns:1fr 1fr;display:grid}.expense-toolbar{grid-template-columns:1fr auto}.expense-toolbar .search-field{grid-column:1/-1}.period-tabs{order:3;grid-column:1/-1;overflow-x:auto}.period-tabs button{flex:1 0 auto}.advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.category-create{grid-template-columns:1fr 1fr}.category-create .text-field:first-child,.category-create .primary-button{grid-column:1/-1}.category-edit-row{grid-template-columns:1fr 1fr}.category-edit-row>input:first-child{grid-column:1/-1}.subcategory-details{margin-left:0}.subcategory-admin{padding-left:0;display:grid}.subcategory-admin form{width:100%}.recurring-summary{grid-template-columns:1.4fr 1fr 1fr}}@media (width<=470px){.main-content{padding-top:var(--sp-xl)}.screen-stack{gap:var(--sp-md)}.phrase-entry{gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg)}.overview-primary{gap:var(--sp-xs);padding:var(--sp-md) var(--sp-lg) var(--sp-md)}.overview-primary span{font-size:var(--fs-caption)}.overview-primary strong{font-size:clamp(1.55rem,7.5vw,1.9rem)}.overview-primary small{font-size:var(--fs-caption)}.overview-secondary{grid-template-columns:1fr 1fr 1fr}.overview-secondary>div{gap:var(--sp-xs);padding:var(--sp-sm) var(--sp-md)}.overview-secondary>div:first-child{padding-left:var(--sp-lg)}.overview-secondary span,.overview-secondary strong{font-size:var(--fs-caption)}.dashboard-facts button,.dashboard-facts button:not(:first-child){min-height:56px;padding:var(--sp-xs) var(--sp-3xl) var(--sp-xs) var(--sp-md);gap:2px}.dashboard-facts strong{font-size:var(--fs-body)}.dashboard-facts span,.dashboard-facts small{font-size:var(--fs-caption);line-height:var(--lh-title)}.content-section,.category-breakdown{gap:var(--sp-md)}.category-row{gap:var(--sp-sm)}.category-breakdown .icon-well{width:36px;height:36px}.category-data{gap:var(--sp-xs)}.advanced-filters{grid-template-columns:1fr}.form-actions{grid-template-columns:1fr;display:grid}.form-actions button{width:100%}.category-manager{padding:var(--sp-lg)}.category-create{grid-template-columns:1fr}.category-create>*{grid-column:1!important}.category-admin-heading{flex-wrap:wrap;align-items:flex-start}.category-admin-heading>div{flex-basis:calc(100% - 52px)}.category-admin-heading .secondary-button{flex:1}.recurring-summary>div{padding:var(--sp-md) var(--sp-sm)}.recurring-summary>div:first-child{padding-left:0}.recurring-summary span{font-size:var(--fs-caption)}.recurring-summary strong{font-size:var(--fs-body)}.recurring-outlook>div{padding:var(--sp-md) var(--sp-sm)}.recurring-outlook>div:first-child{padding-left:0}.recurring-outlook strong{font-size:var(--fs-caption)}.expense-row{gap:3px}.expense-row .icon-button{width:40px;min-width:40px}.expense-row-main>svg{display:none}}@media (width>=900px){:root{--topbar-overlay-edge:64px}.main-content{width:min(100%,1280px)}.side-nav-items .nav-quick{justify-content:flex-start;gap:var(--sp-sm);min-height:46px;margin:0 0 var(--sp-sm);padding:0 var(--sp-md);color:var(--green-dark);background:var(--brand-lime);font-size:var(--fs-caption);border:0;border-radius:11px;font-weight:700}.side-nav-items .nav-quick:hover{color:var(--green-dark);background:#c3ea60}.side-nav-items .nav-quick>span{place-items:center;display:grid}.side-nav-items .nav-quick small{display:none}}.auth-loading{place-content:center;justify-items:center;gap:var(--sp-md);min-height:100dvh;color:var(--muted);background:var(--bg);font-size:var(--fs-caption);font-weight:600;display:grid}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-screen{min-height:100dvh;padding:calc(var(--sp-2xl) + env(safe-area-inset-top)) var(--sp-lg) calc(var(--sp-2xl) + env(safe-area-inset-bottom));background:var(--bg);place-items:center;display:grid}.auth-panel{gap:var(--sp-2xl);width:min(100%,470px);padding:var(--sp-2xl);border:1px solid var(--line-strong);background:var(--surface);border-radius:20px;display:grid}.auth-brand{gap:var(--sp-sm);display:grid}.auth-brand .brand-wordmark-text{font-size:1.75rem}.auth-brand small{color:var(--muted);font-size:var(--fs-caption)}.auth-copy{gap:var(--sp-sm);display:grid}.auth-copy h1{font-size:clamp(1.75rem,7vw,2.25rem)}.auth-copy p{color:var(--muted);line-height:var(--lh-body)}.auth-cloud{align-items:center;gap:var(--sp-sm);width:max-content;color:var(--green-dark);font-size:var(--fs-caption);font-weight:600;display:inline-flex}.auth-form{gap:var(--sp-md);display:grid}.auth-form>label{gap:var(--sp-sm);color:var(--muted);font-size:var(--fs-caption);font-weight:600;display:grid}.auth-form>label>div{align-items:center;gap:var(--sp-sm);min-height:48px;padding:0 var(--sp-md);border:1px solid var(--line);background:#fff;border-radius:11px;display:flex}.auth-form>label>div:focus-within{border-color:#91bea6;outline:3px solid #063f2c1f}.auth-form>label svg{color:var(--muted);flex:none}.auth-form input{width:100%;min-width:0;min-height:44px;color:var(--ink);background:0 0;border:0;outline:0;padding:0}.auth-notice{align-items:flex-start;gap:var(--sp-sm);padding:var(--sp-md) var(--sp-md);color:var(--danger);background:var(--danger-soft);font-size:var(--fs-body);line-height:var(--lh-body);border-radius:10px;display:flex}.auth-notice.success{color:var(--green-dark);background:var(--mint)}.auth-new-account{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body);text-align:center}.auth-new-account button{min-height:40px;color:var(--green-dark);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin:-8px -8px -8px 0;padding:8px;font-weight:700;text-decoration:underline}.auth-new-account button:hover{color:var(--green)}.auth-new-account button:focus-visible{border-radius:var(--radius-sm);outline-offset:2px;outline:3px solid #063f2c38}.auth-switches{justify-content:center;display:flex}.auth-switch{min-height:40px;color:var(--green-dark);font-size:var(--fs-caption);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-self:center;font-weight:600;text-decoration:underline}.auth-switch:hover{color:var(--green)}.auth-switch:focus-visible{outline-offset:3px;outline:3px solid #063f2c38}.auth-complete{gap:var(--sp-lg);display:grid}.auth-session-note{justify-content:center;align-items:center;gap:var(--sp-sm);color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body);text-align:center;display:flex}.auth-session-note svg{color:var(--green);flex:none}.auth-footnote{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body);text-align:center}@media (width<=470px){.auth-screen{padding-right:var(--sp-md);padding-left:var(--sp-md)}.auth-panel{gap:var(--sp-xl);padding:var(--sp-xl) var(--sp-lg);border-radius:16px}}.month-title{text-transform:capitalize}.month-headline{gap:var(--sp-xs);padding:var(--sp-2xl) var(--sp-2xl) var(--sp-2xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);display:grid;position:relative;overflow:hidden}.month-headline:before{background:var(--brand-lime);content:"";border-radius:0 0 4px 4px;width:66px;height:3px;position:absolute;top:0;left:22px}.month-headline>span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.month-headline>strong{font-family:var(--font-display);font-size:clamp(2.1rem,11vw,3rem);line-height:var(--lh-tight);letter-spacing:-.04em}.month-headline>p{color:var(--muted);font-size:var(--fs-body);margin-top:3px}.month-audit-launch{justify-content:space-between;align-items:center;gap:var(--sp-lg);width:100%;padding:var(--sp-lg) var(--sp-xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;display:flex}.month-audit-launch>span{gap:var(--sp-xs);display:grid}.month-audit-launch strong{font-family:var(--font-display);font-size:var(--fs-section);letter-spacing:-.02em}.month-audit-launch small{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.month-audit-launch>svg{color:var(--green-dark);flex:none}.month-audit-launch:hover{background:var(--mint)}.month-audit-launch:focus-visible,.month-audit-back:focus-visible,.month-audit-action:focus-visible{outline:3px solid var(--green);outline-offset:2px}.month-audit-back{margin-bottom:var(--sp-sm);color:var(--green-dark);font:inherit;font-size:var(--fs-body);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:3px 0;font-weight:700;display:inline-flex}.month-audit-hero{gap:var(--sp-xs);padding:var(--sp-xl) var(--sp-2xl);border-radius:var(--radius-lg);background:var(--green-dark);color:#fff;display:grid}.month-audit-hero>span{text-transform:capitalize;font-size:var(--fs-caption);opacity:.8}.month-audit-hero>strong{font-family:var(--font-display);font-size:clamp(2rem,9vw,3rem);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.month-audit-hero>p{font-size:var(--fs-body);opacity:.88}.month-audit-totals{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.month-audit-totals>div{gap:var(--sp-xs);min-width:0;padding:var(--sp-lg);display:grid}.month-audit-totals>div+div{border-left:1px solid var(--line)}.month-audit-totals span{color:var(--muted);font-size:var(--fs-caption)}.month-audit-totals strong{font-size:var(--fs-strong);font-variant-numeric:tabular-nums}.month-audit-warning{align-items:flex-start;gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg);border-radius:var(--radius-md);color:#62430a;font-size:var(--fs-body);line-height:var(--lh-body);background:#fff4d6;margin:0;display:flex}.month-audit-warning svg{flex:none;margin-top:2px}.month-audit-warning strong{display:block}.month-audit-ledger{min-width:0}.month-audit-list{border:1px solid var(--line-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);overflow:hidden}.month-audit-row{align-items:center;gap:var(--sp-md);min-width:0;padding:var(--sp-md) var(--sp-lg);grid-template-columns:36px minmax(0,1fr) auto 32px;display:grid}.month-audit-row+.month-audit-row{border-top:1px solid var(--line)}.month-audit-date{justify-self:start}.month-audit-row-copy{gap:2px;min-width:0;display:grid}.month-audit-row-copy strong{overflow-wrap:anywhere;font-size:var(--fs-body)}.month-audit-row-copy span{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.month-audit-row-copy em{color:#765016;font-size:var(--fs-caption);font-style:normal;font-weight:700}.month-audit-value{white-space:nowrap;font-size:var(--fs-body);font-variant-numeric:tabular-nums}.month-audit-action{border-radius:var(--radius-sm);background:var(--mint);width:32px;height:32px;color:var(--green-dark);cursor:pointer;border:0;place-items:center;display:grid}.month-audit-action:hover{background:var(--brand-lime)}.month-audit-empty{padding:var(--sp-xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;color:var(--muted);margin:0}.month-audit-footer{justify-content:space-between;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line-strong);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--mint);font-size:var(--fs-body);border-top:0;font-weight:700;display:flex}.month-audit-footer strong{font-variant-numeric:tabular-nums}.month-audit-edit{margin-bottom:var(--sp-lg)}.month-audit-edit h3{margin-bottom:var(--sp-md);font-size:var(--fs-section)}@media (width<=470px){.month-audit-hero{padding:var(--sp-lg)}.month-audit-row{gap:var(--sp-sm);padding:var(--sp-md);grid-template-columns:36px minmax(0,1fr) auto}.month-audit-date{grid-area:1/1/3;align-self:start}.month-audit-row-copy{grid-area:1/2/3}.month-audit-value{grid-area:1/3;align-self:start}.month-audit-action{grid-area:2/3;justify-self:end}}.month-recurring-disclosure{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.month-recurring-summary{align-items:center;gap:var(--sp-md);min-height:60px;padding:var(--sp-md) var(--sp-lg);cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;list-style:none;display:grid}.month-recurring-summary::-webkit-details-marker{display:none}.month-recurring-summary:focus-visible{outline:3px solid var(--green);outline-offset:-3px}.month-recurring-summary h2{min-width:0;font-size:var(--fs-section);line-height:var(--lh-title)}.month-recurring-summary>strong{font-size:var(--fs-strong);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}.month-recurring-summary>svg{color:var(--green-dark);transition:transform .18s ease-out}.month-recurring-disclosure[open] .month-recurring-summary>svg{transform:rotate(90deg)}.month-recurring-list{border-top:1px solid var(--line)}.month-recurring-row{align-items:center;gap:var(--sp-md);min-width:0;padding:var(--sp-md) var(--sp-lg);grid-template-columns:36px minmax(0,1fr) auto;display:grid}.month-recurring-row+.month-recurring-row{border-top:1px solid var(--line)}.month-recurring-day{border-radius:var(--radius-sm);background:var(--mint);width:36px;height:36px;color:var(--green-dark);font-size:var(--fs-body);font-variant-numeric:tabular-nums;place-items:center;font-weight:700;display:grid}.month-recurring-copy{gap:var(--sp-xs);min-width:0;display:grid}.month-recurring-copy strong{overflow-wrap:anywhere;font-size:var(--fs-body)}.month-recurring-copy span{color:var(--muted);font-size:var(--fs-caption)}.month-recurring-amount{font-size:var(--fs-body);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}.month-recurring-empty{padding:var(--sp-lg);color:var(--muted);font-size:var(--fs-body)}@media (width<=470px){.month-recurring-summary,.month-recurring-row{gap:var(--sp-sm);padding:var(--sp-md)}}.month-compare{border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:repeat(2,1fr);display:grid;overflow:hidden}.month-compare>div{gap:var(--sp-xs);padding:var(--sp-xl) var(--sp-lg);border-right:1px solid var(--line);display:grid}.month-compare>div:last-child{border-right:0}.month-compare span{color:var(--muted);font-size:var(--fs-caption)}.month-compare strong{font-size:var(--fs-strong);letter-spacing:-.02em;white-space:nowrap}.month-report{align-items:center;gap:var(--sp-lg);padding:var(--sp-lg) var(--sp-xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.report-icon{width:42px;height:42px;color:var(--green-dark);background:var(--mint);border-radius:50%;place-items:center;display:grid}.report-copy{gap:var(--sp-xs);min-width:0;display:grid}.report-copy h2{font-size:var(--fs-strong);letter-spacing:-.018em}.report-copy p{max-width:48ch;color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.report-download{min-width:166px}.income-well{color:var(--green);background:var(--mint)}.more-popover-layer{z-index:29;pointer-events:none;position:fixed;inset:0}.more-popover{right:10px;bottom:calc(74px + env(safe-area-inset-bottom));width:min(224px,100vw - 20px);padding:var(--sp-sm);border-radius:var(--radius-lg);background:var(--surface);pointer-events:auto;transform-origin:100% 100%;animation:.18s cubic-bezier(.16,1,.3,1) both more-popover-in;display:grid;position:absolute;overflow:hidden;box-shadow:0 16px 42px #0c261a33}.more-popover button{align-items:center;gap:var(--sp-sm);min-height:49px;padding:0 var(--sp-md);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--fs-caption);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) 18px;font-weight:600;transition:color .16s,background .16s,transform .14s;display:grid}.more-popover button:hover{background:#f0f4f2}.more-popover button.active{color:var(--green-dark);background:var(--mint)}.more-popover button:active{transform:scale(.985)}.more-popover button:focus-visible{outline:0;box-shadow:inset 0 0 0 2px #063f2c4d}.more-popover button>svg:first-child{color:var(--green)}.more-popover button>svg:last-child{color:var(--green-dark)}.more-popover button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@keyframes more-popover-in{0%{opacity:.7;clip-path:inset(42% 0 0 42% round 16px);transform:translateY(7px)scale(.96)}to{opacity:1;clip-path:inset(0 round 16px);transform:translateY(0)scale(1)}}.pending-list{gap:var(--sp-md);display:grid}.pending-row{align-items:center;gap:var(--sp-md);padding:var(--sp-lg) var(--sp-lg);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:auto 1fr auto;display:grid}.pending-row.inactive{opacity:.58}.pending-copy{gap:var(--sp-xs);min-width:0;display:grid}.pending-copy strong{font-size:var(--fs-body);line-height:var(--lh-snug);letter-spacing:-.005em}.pending-copy span{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body);letter-spacing:0}.pending-copy small{color:var(--faint);font-size:var(--fs-caption);line-height:var(--lh-body)}.pending-value{font-size:var(--fs-body);letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}.pending-meta{align-items:baseline;gap:var(--sp-xs) var(--sp-sm);flex-wrap:wrap;display:flex}.pending-meta .due{color:var(--ink-soft,var(--ink));font-weight:600}.pending-meta .due.late{color:var(--danger)}.pending-meta .due.soon{color:var(--warn)}.pending-row .row-actions{gap:var(--sp-sm);flex-wrap:wrap;grid-column:1/-1;margin-top:3px;display:flex}.expense-row-main.static{cursor:default;background:0 0}.expense-row.projected .expense-value{color:var(--muted)}.expense-row.projected .expense-copy span{color:var(--green-dark)}.entry-mode{gap:var(--sp-xs);margin:0 var(--sp-xl) var(--sp-xs);padding:var(--sp-xs);border-radius:var(--radius-md);background:var(--mint);grid-template-columns:1fr 1fr;display:grid}.entry-mode button{min-height:42px;color:var(--muted);font-size:var(--fs-body);cursor:pointer;background:0 0;border:0;border-radius:10px;font-weight:700;transition:color .16s,background .16s,box-shadow .16s}.entry-mode button.active{background:var(--surface);box-shadow:0 1px 3px #0c261a1f}.entry-mode button.active.expense{color:var(--danger)}.entry-mode button.active.income{color:var(--green)}.quick-sheet .quick-entry:before{display:none}.leftover{gap:var(--sp-md);padding:var(--sp-xl) var(--sp-xl) var(--sp-xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);display:grid}.leftover-head{justify-content:space-between;align-items:baseline;gap:var(--sp-md);display:flex}.leftover-head span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.leftover-head strong{font-size:var(--fs-title);letter-spacing:-.03em;white-space:nowrap}.leftover-track{background:var(--mint-strong);border-radius:999px;height:7px;overflow:hidden}.leftover-track>span{background:var(--green);border-radius:999px;height:100%;display:block}.leftover-track>span.over{background:var(--danger)}.leftover p{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.settings-field{gap:var(--sp-xs);display:grid}.settings-field>span{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.settings-field input{width:100%;min-height:50px;padding:0 var(--sp-md);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-size:var(--fs-strong);letter-spacing:-.02em;font-weight:700}.settings-field input:focus-visible{outline-offset:2px;outline:3px solid #063f2c38}.settings-hint{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.sync-dot{z-index:2;width:34px;height:34px;margin-top:calc(env(safe-area-inset-top) / 2);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;animation:.26s ease-out sync-enter;display:inline-flex;position:absolute;top:50%;right:68px;transform:translateY(-50%)}@keyframes sync-enter{0%{opacity:0;transform:translateY(-50%)scale(.7)}}@media (prefers-reduced-motion:reduce){.sync-dot{animation:none}}.sync-dot>span{background:var(--brand-lime);border-radius:50%;width:9px;height:9px;transition:background .2s,transform .2s}.sync-dot.offline>span{background:#f5f7ef52}.sync-dot.connecting>span,.sync-dot.syncing>span{background:#f5f7ef;animation:1.1s ease-in-out infinite sync-pulse}.sync-dot.error>span{background:#ff8a8a;width:11px;height:11px;box-shadow:0 0 0 4px #ff8a8a38}.sync-dot:focus-visible{outline-offset:2px;outline:3px solid #b7e34a80}@keyframes sync-pulse{50%{opacity:.35;transform:scale(.8)}}.sync-row{align-items:flex-start;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfc;display:flex}.sync-row>div{gap:3px;min-width:0;display:grid}.sync-row strong{font-size:var(--fs-body)}.sync-row span:not(.sync-mark){color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.sync-row small{color:var(--danger);font-size:var(--fs-caption);line-height:var(--lh-body);word-break:break-word;margin-top:3px}.sync-mark{width:9px;height:9px;margin-top:var(--sp-xs);background:var(--green);border-radius:50%;flex:none}.sync-row.offline .sync-mark{background:var(--line-strong)}.sync-row.connecting .sync-mark,.sync-row.syncing .sync-mark{background:#c9a227}.sync-row.error{background:var(--danger-soft);border-color:#f0bcbc}.sync-row.error .sync-mark{background:var(--danger)}.topbar-settings{z-index:2;width:44px;height:44px;margin-top:calc(env(safe-area-inset-top) / 2);color:#f5f7ef94;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .17s,transform .15s;display:inline-flex;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.topbar-settings:hover{color:var(--brand-lime)}.topbar-settings:active{transform:translateY(-50%)scale(.94)}.topbar-settings:focus-visible{outline-offset:2px;outline:3px solid #b7e34a80}.settings-sheet{z-index:1;gap:var(--sp-xs);background:var(--surface);border-radius:20px 20px 14px 14px;width:min(100%,480px);max-height:calc(100dvh - 24px);margin:0 auto;animation:.21s cubic-bezier(.2,.8,.2,1) both sheet-in;display:grid;position:relative;overflow:auto;box-shadow:0 24px 70px #0c261a3d}.settings-group{gap:var(--sp-md);padding:var(--sp-xs) var(--sp-xl) var(--sp-xl);display:grid}.settings-label{color:var(--muted);font-size:var(--fs-micro);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.settings-account{align-items:center;gap:var(--sp-md);padding:var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--mint);display:flex}.settings-account>div{gap:3px;min-width:0;display:grid}.settings-account strong{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-account span{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-snug)}.settings-avatar{width:38px;height:38px;color:var(--brand-cream);background:var(--green);border-radius:11px;flex:none;justify-content:center;align-items:center;display:inline-flex}.settings-password-form{gap:var(--sp-md);padding:var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfc;display:grid}.settings-password-actions{align-items:center;gap:var(--sp-sm);flex-wrap:wrap;display:flex}.settings-password-actions .primary-button{flex:1}.classification-hint{color:var(--green);font-size:var(--fs-caption)}.reminder-settings{border-top:1px solid var(--line);padding-top:2px}.reminder-card{border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfc;transition:border-color .18s,box-shadow .18s;overflow:hidden}.reminder-card.enabled{border-color:#063f2c59;box-shadow:0 10px 28px #063f2c12}.reminder-card-head{align-items:center;gap:var(--sp-md);padding:var(--sp-lg);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.reminder-card-head>div{gap:3px;display:grid}.reminder-card-head strong{font-size:var(--fs-body);line-height:var(--lh-title)}.reminder-card-head>div>span{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.reminder-icon{width:40px;height:40px;color:var(--green);background:var(--mint-strong);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.toggle-control{cursor:pointer;flex:none;display:inline-flex;position:relative}.toggle-control input{opacity:0;width:1px;height:1px;position:absolute}.toggle-control>span{background:#cbd6d0;border-radius:999px;width:44px;height:26px;transition:background .17s;display:block;position:relative}.toggle-control>span:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .17s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #0c261a33}.toggle-control input:checked+span{background:var(--green)}.toggle-control input:checked+span:after{transform:translate(18px)}.toggle-control input:focus-visible+span{outline-offset:2px;outline:3px solid #063f2c38}.reminder-details{gap:var(--sp-lg);padding:var(--sp-lg);border-top:1px solid var(--line);background:var(--mint);display:grid}.reminder-time-field{justify-content:space-between;align-items:center;gap:var(--sp-lg);display:flex}.reminder-time-field>span{align-items:center;gap:var(--sp-xs);color:var(--muted);font-size:var(--fs-caption);font-weight:600;display:inline-flex}.reminder-time-field input{min-height:43px;padding:0 var(--sp-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:var(--fs-strong);border-radius:11px;font-weight:700}.reminder-days{gap:var(--sp-sm);border:0;min-width:0;padding:0;display:grid}.reminder-days legend{color:var(--muted);font-size:var(--fs-caption);font-weight:600}.reminder-days>div{gap:var(--sp-xs);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.reminder-days button{border:1px solid var(--line-strong);min-width:0;min-height:38px;color:var(--muted);background:var(--surface);font-size:var(--fs-caption);cursor:pointer;border-radius:10px;padding:0 2px;font-weight:600}.reminder-days button.selected{border-color:var(--green);color:var(--brand-cream);background:var(--green)}.reminder-days button:focus-visible{outline-offset:2px;outline:3px solid #063f2c38}.reminder-rule{align-items:flex-start;gap:var(--sp-sm);cursor:pointer;display:flex}.reminder-rule input{width:18px;height:18px;accent-color:var(--green);flex:none;margin:1px 0 0}.reminder-rule>span{gap:2px;display:grid}.reminder-rule strong{font-size:var(--fs-caption);line-height:var(--lh-snug)}.reminder-rule small{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.reminder-destination{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body);overflow-wrap:anywhere}.reminder-destination strong{color:var(--ink)}.settings-message{align-items:center;gap:var(--sp-xs);padding:var(--sp-sm) var(--sp-md);font-size:var(--fs-caption);border-radius:10px;font-weight:600;display:flex}.settings-message.success{color:var(--green);background:var(--mint)}.settings-message.error{color:var(--danger);background:var(--danger-soft)}.amount-mode{margin-top:var(--sp-xs);color:var(--green);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;align-self:start;padding:0;font-weight:600;text-decoration:underline}.installment-preview{margin-top:var(--sp-xs);color:var(--muted);font-size:var(--fs-caption)}.inline-edit{align-items:end;gap:var(--sp-md);margin:-4px 0 var(--sp-md);padding:var(--sp-lg) var(--sp-lg);border:1px solid var(--line-strong);border-radius:0 0 var(--radius-md) var(--radius-md);background:#fbfdfc;border-top:0;grid-template-columns:1.4fr 1fr 1fr;display:grid}.inline-edit-actions{gap:var(--sp-sm);flex-wrap:wrap;grid-column:1/-1;display:flex}@media (width<=560px){.inline-edit{gap:var(--sp-md);grid-template-columns:1fr}}.crash{justify-items:start;gap:var(--sp-md);padding:var(--sp-2xl) var(--sp-2xl);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);display:grid}.crash-icon{width:44px;height:44px;color:var(--danger);background:var(--danger-soft);border-radius:13px;justify-content:center;align-items:center;display:inline-flex}.crash h2{font-size:var(--fs-section);letter-spacing:-.022em}.crash p{max-width:46ch;color:var(--muted);line-height:var(--lh-body)}.crash-actions{gap:var(--sp-sm);margin-top:var(--sp-xs);flex-wrap:wrap;display:flex}.crash details{width:100%;margin-top:var(--sp-xs)}.crash summary{color:var(--muted);font-size:var(--fs-caption);cursor:pointer}.crash code{margin-top:var(--sp-sm);padding:var(--sp-md) var(--sp-md);border-radius:var(--radius-sm);background:var(--mint);color:var(--green-dark);font-size:var(--fs-body);line-height:var(--lh-body);display:block;overflow-x:auto}.confirm-backdrop{z-index:130;padding:max(var(--sp-lg), env(safe-area-inset-top)) var(--sp-lg) max(var(--sp-lg), env(safe-area-inset-bottom));background:#14211c7a;place-items:center;animation:.18s ease-out both backdrop-in;display:grid;position:fixed;inset:0;overflow-y:auto}.confirm-dialog{gap:var(--sp-md);width:min(100%,390px);max-height:100%;padding:var(--sp-2xl);overscroll-behavior:contain;border-radius:var(--radius-lg);background:var(--surface);animation:.24s cubic-bezier(.16,1,.3,1) both install-guide-in;display:grid;overflow-y:auto;box-shadow:0 26px 72px #0623184d}.confirm-icon{width:42px;height:42px;color:var(--danger);background:var(--danger-soft);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.confirm-dialog h2{font-size:var(--fs-section);line-height:var(--lh-title);letter-spacing:-.022em;text-wrap:balance}.confirm-dialog p{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.confirm-option{align-items:center;gap:var(--sp-md);margin-top:var(--sp-xs);padding:var(--sp-md) var(--sp-md);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);font-size:var(--fs-body);line-height:var(--lh-snug);cursor:pointer;background:#fbfdfc;display:flex}.confirm-option input{width:18px;height:18px;accent-color:var(--danger);flex:none;margin:0}.confirm-actions{gap:var(--sp-sm);margin-top:var(--sp-xs);padding-top:var(--sp-xs);background:var(--surface);grid-template-columns:1fr 1fr;display:grid;position:sticky;bottom:0}.confirm-actions button{border-radius:13px;min-height:48px;font-weight:700}.confirm-destructive{border:1px solid var(--danger);color:#fff;background:var(--danger);cursor:pointer;justify-content:center;align-items:center;transition:background .17s,transform .12s;display:inline-flex}.confirm-destructive:hover{background:#a51b22}.confirm-destructive:active{transform:translateY(1px)}.install-guide-backdrop{z-index:120;padding:max(var(--sp-xl), env(safe-area-inset-top)) var(--sp-lg) max(var(--sp-xl), env(safe-area-inset-bottom));background:#14211c7a;place-items:center;animation:.18s ease-out both backdrop-in;display:grid;position:fixed;inset:0}.install-guide{border-radius:var(--radius-lg);width:min(100%,460px);max-height:calc(100dvh - 32px);color:var(--ink);background:var(--surface);text-align:left;animation:.26s cubic-bezier(.16,1,.3,1) both install-guide-in;display:grid;overflow-y:auto;box-shadow:0 26px 72px #0623184d}.install-guide-hero{gap:var(--sp-lg);padding:var(--sp-xl) var(--sp-2xl) var(--sp-2xl);color:var(--brand-cream);background:var(--brand-deep);display:grid}.install-guide-head{justify-content:space-between;align-items:center;display:flex}.install-guide-icon{width:46px;height:46px;color:var(--green-dark);background:var(--brand-lime);border-radius:50%;place-items:center;display:grid}.install-guide-head .icon-button{color:var(--brand-cream);background:#f5f7ef14;border-color:#f5f7ef40}.install-guide-head .icon-button:hover{background:#f5f7ef24;border-color:#f5f7ef6b}.install-guide-copy{gap:var(--sp-sm);display:grid}.install-guide-copy h2{max-width:350px;color:var(--brand-cream);font-size:var(--fs-title);line-height:var(--lh-tight);letter-spacing:-.03em;text-wrap:balance}.install-guide-copy p{color:#c8d8cf;max-width:42ch;font-size:var(--fs-body);line-height:var(--lh-body)}.install-guide-body{gap:var(--sp-lg);padding:var(--sp-xl) var(--sp-2xl) var(--sp-2xl);display:grid}.install-platform-tabs{gap:var(--sp-xs);padding:var(--sp-xs);background:var(--mint);border-radius:12px;grid-template-columns:1fr 1fr;display:grid}.install-platform-tabs button{color:#496158;min-height:42px;font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:600}.install-platform-tabs button.active{color:var(--green-dark);background:var(--surface)}.install-platform-tabs button:focus-visible{outline-offset:2px;outline:3px solid #063f2c3d}.install-steps{margin:0;padding:0;list-style:none;display:grid}.install-steps li{align-items:center;gap:var(--sp-sm);padding:var(--sp-md) 0;border-bottom:1px solid var(--line);grid-template-columns:22px 38px minmax(0,1fr);display:grid}.install-steps li:first-child{padding-top:2px}.install-steps li:last-child{border-bottom:0;padding-bottom:2px}.install-step-number{color:var(--muted);font-size:var(--fs-micro);text-align:center;font-weight:600}.install-step-icon{width:38px;height:38px;color:var(--green-dark);background:var(--mint);border-radius:50%;place-items:center;display:grid}.install-steps li>div{gap:3px;min-width:0;display:grid}.install-steps strong{color:var(--ink);font-size:var(--fs-body)}.install-steps p{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body)}.install-guide-preference{align-items:center;gap:var(--sp-md);color:#496158;min-height:44px;font-size:var(--fs-caption);cursor:pointer;font-weight:600;display:flex}.install-guide-preference input{width:19px;height:19px;accent-color:var(--green);margin:0}.install-guide-actions{gap:var(--sp-sm);display:grid}.install-guide-actions .primary-button{width:100%}.install-later-button{min-height:42px;color:var(--green-dark);font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;font-weight:600}@keyframes install-guide-in{0%{opacity:.82;filter:blur(2px);transform:translateY(22px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@media (width<=520px){.install-guide-backdrop{padding:max(var(--sp-lg), env(safe-area-inset-top)) var(--sp-md) max(var(--sp-lg), env(safe-area-inset-bottom))}.install-guide{max-height:100%;padding:var(--sp-xl) var(--sp-xl)}}.activation-onboarding{place-content:center;justify-items:center;gap:var(--sp-lg);min-height:100dvh;padding:var(--sp-2xl);color:var(--brand-cream);background:var(--brand-deep);text-align:center;display:grid}.activation-onboarding>p{color:#d5e2da;max-width:34ch;font-size:1rem;line-height:var(--lh-body)}.activation-gate{min-height:100dvh;padding:max(28px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));color:var(--brand-cream);background:radial-gradient(circle at 82% 12%, #b7e34a29, transparent 29%), var(--brand-deep);place-items:center;display:grid}.activation-card{width:min(100%,640px);color:var(--ink);background:#f7f9f3;border:1px solid #f5f7ef33;border-radius:22px;overflow:hidden;box-shadow:0 32px 90px #021d1461}.activation-brand{justify-content:space-between;align-items:center;gap:var(--sp-lg);min-height:76px;padding:var(--sp-lg) var(--sp-2xl);color:var(--brand-cream);background:var(--brand-deep);display:flex}.activation-brand>span{align-items:center;gap:var(--sp-sm);color:#d8e5dd;font-size:.875rem;font-weight:650;display:inline-flex}.activation-back{align-items:center;gap:var(--sp-xs);color:#d8e5dd;min-height:44px;font-size:var(--fs-caption);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;display:inline-flex}.activation-back:hover{color:var(--brand-cream)}.activation-back:focus-visible{outline-offset:3px;outline:3px solid #b7e34a73}.activation-copy{gap:var(--sp-lg);padding:34px var(--sp-3xl) var(--sp-xl);display:grid}.activation-kicker{color:var(--green);font-size:.875rem;font-weight:700}.activation-copy h1{letter-spacing:-.045em;text-wrap:balance;max-width:520px;font-size:clamp(2.15rem,7vw,3.35rem);line-height:.98}.activation-copy>p:last-child{max-width:52ch;color:var(--muted);font-size:1rem;line-height:1.6}.activation-offer{align-items:center;gap:var(--sp-xl);margin:0 var(--sp-3xl);padding:var(--sp-xl) var(--sp-2xl);background:var(--brand-lime);color:var(--green-dark);border:1px solid #a7cc48;border-radius:16px;grid-template-columns:1fr auto;display:grid}.activation-offer>div{gap:2px;display:grid}.activation-offer span{font-size:.875rem;font-weight:650}.activation-offer strong{font-family:var(--font-display);letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(2rem,7vw,3rem);line-height:1}.activation-offer p{padding-left:var(--sp-xl);border-left:1px solid #04352342;font-size:.875rem;font-weight:650;line-height:1.5}.activation-benefits{gap:var(--sp-md);padding:var(--sp-2xl) var(--sp-3xl);margin:0;list-style:none;display:grid}.activation-benefits li{align-items:start;gap:var(--sp-md);color:#34483e;grid-template-columns:22px 1fr;font-size:1rem;line-height:1.5;display:grid}.activation-benefits svg{color:var(--green);margin-top:3px}.activation-actions{gap:var(--sp-md);padding:0 var(--sp-3xl) var(--sp-3xl);display:grid}.activation-primary{justify-content:center;align-items:center;gap:var(--sp-md);min-height:56px;padding:var(--sp-lg) var(--sp-xl);color:var(--brand-cream);background:var(--green);border-radius:14px;font-size:1rem;font-weight:750;text-decoration:none;display:inline-flex;box-shadow:0 12px 26px #063f2c33}.activation-primary:hover{background:#075239}.activation-primary:focus-visible{outline-offset:3px;outline:3px solid #063f2c42}.activation-email{color:var(--muted);text-align:center;font-size:.875rem;line-height:1.5}.activation-email strong{color:var(--ink);overflow-wrap:anywhere}.activation-refresh,.activation-signout{min-height:44px;color:var(--green);cursor:pointer;background:0 0;border:0;font-size:.875rem;font-weight:650}.activation-refresh{justify-content:center;align-items:center;gap:var(--sp-sm);display:inline-flex}.activation-refresh:hover,.activation-signout:hover{text-underline-offset:4px;text-decoration:underline}.activation-refresh:disabled{opacity:.62;cursor:wait;text-decoration:none}.activation-error{padding:var(--sp-md);color:var(--danger);background:var(--danger-soft);border-radius:10px;font-size:.875rem;line-height:1.5}.activation-footer{justify-content:space-between;align-items:center;gap:var(--sp-xl);padding:var(--sp-lg) var(--sp-3xl);border-top:1px solid var(--border);color:var(--muted);background:#eef2e9;font-size:.8125rem;line-height:1.45;display:flex}.activation-footer span{max-width:42ch}.activation-footer .activation-signout{flex:none}.activation-status{place-content:center;justify-items:start;gap:var(--sp-lg);width:min(100% - 40px,480px);min-height:100dvh;margin:auto;display:grid}.activation-status h1{max-width:420px}.activation-status p{color:var(--muted);font-size:1rem;line-height:var(--lh-body)}.activation-status .primary-button{min-width:210px}.locked-account-shell{min-height:100dvh}.locked-dashboard-main{gap:var(--sp-xl);display:grid}.dashboard-activation{align-items:center;gap:var(--sp-lg);padding:var(--sp-lg) var(--sp-xl);border-radius:var(--radius-lg);color:var(--green-dark);background:#eff8d9;border:1px solid #9fbe55;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.dashboard-activation-icon{width:42px;height:42px;color:var(--brand-cream);background:var(--green);border-radius:50%;place-items:center;display:grid}.dashboard-activation>div{gap:3px;min-width:0;display:grid}.dashboard-activation strong{font-family:var(--font-display);font-size:var(--fs-strong);line-height:var(--lh-title)}.dashboard-activation>div>span{color:#486053;font-size:var(--fs-caption);line-height:var(--lh-body)}.dashboard-activation button{justify-content:center;align-items:center;gap:var(--sp-sm);min-height:46px;padding:0 var(--sp-lg);border:1px solid var(--green);border-radius:var(--radius-md);color:var(--brand-cream);background:var(--green);font-size:var(--fs-body);white-space:nowrap;cursor:pointer;font-weight:700;display:inline-flex}.dashboard-activation button:hover{border-color:var(--green-dark);background:var(--green-dark)}.dashboard-activation button:active{transform:translateY(1px)}.dashboard-activation button:focus-visible{outline-offset:3px;outline:3px solid #063f2c40}.locked-dashboard-preview{opacity:.76;filter:saturate(.72);position:relative}.locked-dashboard-preview:after{z-index:4;border-radius:var(--radius-lg);content:"";position:absolute;inset:0}@media (width>=900px){.locked-account-shell{display:block}.locked-account-shell .topbar .brand-wordmark{display:inline-flex}}@media (width<=560px){.activation-gate{background:#f7f9f3;place-items:stretch stretch;padding:0}.activation-card{min-height:100dvh;box-shadow:none;border:0;border-radius:0}.activation-brand{padding-inline:var(--sp-xl)}.activation-brand>span{font-size:.8125rem}.activation-copy{padding:30px var(--sp-xl) var(--sp-xl)}.activation-offer{margin-inline:var(--sp-xl);padding:var(--sp-xl)}.activation-benefits{padding-inline:var(--sp-xl)}.activation-actions{padding-inline:var(--sp-xl);padding-bottom:max(var(--sp-3xl), env(safe-area-inset-bottom))}.activation-footer{align-items:flex-start;gap:var(--sp-sm);padding-inline:var(--sp-xl);flex-direction:column}.activation-footer .activation-signout{padding-inline:0}.dashboard-activation{padding:var(--sp-lg);grid-template-columns:auto minmax(0,1fr)}.dashboard-activation button{grid-column:1/-1;width:100%}}@media (width<=390px){.activation-brand>span{max-width:100px}.activation-offer{grid-template-columns:1fr}.activation-offer p{padding:var(--sp-md) 0 0;border-top:1px solid #04352342;border-left:0}}.metas-week-summary{gap:var(--sp-md);margin-bottom:var(--sp-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metas-week-card{gap:var(--sp-xxs);padding:var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);display:grid;position:relative}.metas-week-card:first-child{border-color:var(--green);color:var(--brand-cream);background:var(--green);overflow:hidden}.metas-week-card:first-child:before{top:0;left:var(--sp-lg);background:var(--brand-lime);content:"";border-radius:0 0 4px 4px;width:66px;height:3px;position:absolute}.metas-week-card:first-child span,.metas-week-card:first-child small{color:var(--brand-cream)}.metas-week-card span{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.05em}.metas-week-card strong{font-size:var(--fs-strong);white-space:nowrap;text-wrap:balance;line-height:1.15;display:block}.metas-week-card small{color:var(--muted);font-size:var(--fs-caption)}.metas-week-compare{gap:var(--sp-xs);margin:var(--sp-md) 0;padding:var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fbfdfc;display:grid}.metas-week-compare div{justify-content:space-between;align-items:baseline;gap:var(--sp-md);display:flex}.metas-week-compare div span{color:var(--muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.05em}.metas-week-compare div strong{text-align:right;font-size:var(--fs-strong)}.metas-week-compare small{color:var(--muted);font-size:var(--fs-caption);line-height:var(--lh-body)}.metas-week-average{padding-top:var(--sp-sm);border-top:1px solid var(--line)}.metas-week-average strong{color:var(--ink);font-variant-numeric:tabular-nums lining-nums}@media (width<=400px){.metas-week-card{padding:var(--sp-md)}.metas-week-card strong{font-size:var(--fs-body)}}.metas-week-list{gap:var(--sp-sm);margin-top:var(--sp-md);display:grid}.metas-week-list h3{margin:0 0 var(--sp-sm);font-size:var(--fs-body)}.metas-week-row{justify-content:space-between;align-items:center;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:flex}.metas-week-row div{min-width:0}.metas-week-row strong{white-space:nowrap}.metas-week-row small{color:var(--muted);font-size:var(--fs-caption);margin-top:2px;display:block}.metas-week-compare-categories{gap:var(--sp-sm);display:grid}.metas-week-category{align-items:center;gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:auto 1fr auto;display:grid}.metas-week-category div{min-width:0}.metas-category-badge{background:#ffffff8c;border:1px solid;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.metas-category-badge span{border-radius:50%;width:10px;height:10px}.metas-category-badge+*{min-width:0}.metas-week-category strong{white-space:nowrap}.metas-week-category small{font-size:var(--fs-caption);margin-top:2px;display:block}.budget-list{gap:var(--sp-md);display:grid}.metas-overview{gap:var(--sp-sm);padding:var(--sp-xl);border-radius:var(--radius-lg);color:var(--brand-cream);background:linear-gradient(145deg, var(--green-dark), var(--green));display:grid;box-shadow:0 14px 30px #063f2c29}.metas-overview-heading,.metas-overview-foot{justify-content:space-between;align-items:center;gap:var(--sp-md);display:flex}.metas-overview-heading span{font-weight:700}.metas-overview-heading small,.metas-overview p,.metas-overview-foot{color:#ffffffc2;font-size:var(--fs-caption)}.metas-overview-value{font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,6vw,2.6rem);line-height:1.1}.metas-overview p{margin:0}.metas-overview-track{background:#ffffff38;border-radius:999px;height:9px;overflow:hidden}.metas-overview-track span{border-radius:inherit;background:var(--brand-lime);height:100%;display:block}.metas-overview-foot b{color:var(--brand-cream);font-variant-numeric:tabular-nums}@media (width<=520px){.metas-overview{padding:var(--sp-lg)}.metas-overview-heading{align-items:flex-start}.metas-overview-heading small{text-align:right}}.budget-row{gap:var(--sp-md);padding:var(--sp-lg) var(--sp-lg) var(--sp-lg);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);display:grid}.budget-row.near{background:var(--warn-soft);border-color:#e8d3a8}.budget-row.over{background:var(--danger-soft);border-color:#f0c9c9}.budget-head{align-items:baseline;gap:var(--sp-sm);display:flex}.budget-head strong{font-size:var(--fs-body)}.budget-dot{border-radius:50%;flex:none;width:9px;height:9px;transform:translateY(-1px)}.budget-numbers{font-weight:600;font-size:var(--fs-body);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto}.budget-numbers small{margin-left:var(--sp-xs);color:var(--muted);font-weight:500;font-size:var(--fs-caption)}.budget-bar{background:var(--mint-strong);border-radius:999px;height:7px;overflow:hidden}.budget-bar span{background:var(--green);border-radius:999px;height:100%;display:block}.budget-row.near .budget-bar{background:#f2e3c6}.budget-row.near .budget-bar span{background:var(--warn)}.budget-row.over .budget-bar{background:#f4d6d6}.budget-row.over .budget-bar span{background:var(--danger)}.budget-foot{justify-content:space-between;align-items:center;gap:var(--sp-md);flex-wrap:wrap;display:flex}.budget-status{align-items:baseline;gap:var(--sp-sm);font-size:var(--fs-caption);font-weight:600;display:flex}.budget-status small{color:var(--muted);font-weight:500;font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.budget-row.near .budget-status{color:var(--warn)}.budget-row.over .budget-status{color:var(--danger)}.budget-form{gap:var(--sp-md);padding:var(--sp-lg) var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfdfc;margin-top:2px;display:grid}.budget-suggestion{align-items:baseline;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);border:1px dashed var(--line-strong);color:var(--green);font:inherit;font-size:var(--fs-caption);cursor:pointer;background:0 0;border-radius:999px;justify-self:start;font-weight:600;display:flex}.budget-suggestion:hover{border-color:var(--green);background:var(--mint)}.budget-suggestion small{color:var(--muted);font-weight:500;font-size:var(--fs-caption)}.budget-alert{align-items:center;gap:var(--sp-md);width:100%;padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;display:flex}.budget-alert.near{background:var(--warn-soft);color:var(--warn);border-color:#e8d3a8}.budget-alert.over{background:var(--danger-soft);color:var(--danger);border-color:#f0c9c9}.budget-alert-icon{background:#ffffffb3;border-radius:11px;flex:none;place-items:center;width:34px;height:34px;display:grid}.budget-alert-copy{gap:2px;min-width:0;display:grid}.budget-alert-copy strong{font-size:var(--fs-body)}.budget-alert-copy small{color:var(--muted);font-size:var(--fs-caption)}.budget-alert>svg{opacity:.6;flex:none;margin-left:auto}@media (width<=520px){.budget-head{flex-wrap:wrap}.budget-numbers{width:100%;margin-left:0}.budget-foot .row-actions{margin-left:auto}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty-note{margin:var(--sp-sm) 0 0;color:var(--muted);font-size:var(--fs-body)}.form-hint{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body);margin:0}.net-worth-hero{gap:var(--sp-xs);padding:var(--sp-xl) var(--sp-2xl) var(--sp-2xl);border-radius:var(--radius-lg);background:var(--green);color:var(--brand-cream);display:grid}.net-worth-hero span{color:#f5f7efb8;font-size:var(--fs-caption);letter-spacing:.02em}.net-worth-hero strong{font-family:var(--font-display);font-size:clamp(1.7rem,7vw,2.3rem);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.net-worth-hero p{margin:var(--sp-xs) 0 0;color:#f5f7efb8;font-size:var(--fs-body);line-height:var(--lh-body)}.capital-summary.metrics{gap:var(--sp-lg);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.capital-summary.metrics>div{border-right:0;padding:0}.quotes-bar{justify-content:space-between;align-items:center;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--muted);font-size:var(--fs-caption);background:#fbfdfc;flex-wrap:wrap;display:flex}.quotes-bar.error{background:var(--danger-soft);color:var(--danger);border-color:#f0c9c9}.allocation{align-items:center;gap:var(--sp-2xl);margin-top:var(--sp-xl);flex-wrap:wrap;display:flex}.allocation-donut{flex:none;width:150px;height:150px;transform:rotate(-90deg)}.allocation-donut circle{fill:none;stroke-width:16px}.allocation-donut .allocation-track{stroke:var(--mint)}.allocation-legend{gap:var(--sp-sm);flex:320px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.allocation-legend li{align-items:baseline;gap:var(--sp-sm);font-size:var(--fs-body);grid-template-columns:10px 1fr auto auto;display:grid}.allocation-dot{border-radius:3px;width:10px;height:10px;transform:translateY(1px)}.allocation-name{overflow-wrap:break-word}.allocation-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.allocation-percent{text-align:right;min-width:46px;color:var(--muted);font-variant-numeric:tabular-nums}@media (width<=399px){.allocation-legend li,.legend-button{grid-template-columns:10px minmax(0,1fr) auto;row-gap:2px}.allocation-name{grid-column:2/-1}.allocation-value{grid-area:2/2}.allocation-percent{grid-area:2/3}}.allocation-note{margin:var(--sp-lg) 0 0;padding:var(--sp-md) var(--sp-lg);border-radius:var(--radius-md);background:var(--mint);color:var(--green);font-size:var(--fs-body);line-height:var(--lh-body)}.filter-chips{gap:var(--sp-sm);margin-top:var(--sp-md);scrollbar-width:none;padding-bottom:3px;display:flex;overflow-x:auto}.filter-chips::-webkit-scrollbar{display:none}.chip{min-height:40px;padding:var(--sp-sm) var(--sp-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-caption);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;font-weight:500}.chip:hover{border-color:var(--green)}.chip.active{border-color:var(--green);background:var(--green);color:var(--brand-cream);font-weight:600}.sort-field select{min-height:44px;padding:var(--sp-sm) var(--sp-md);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-strong)}.asset-search{margin-top:var(--sp-md)}.ticker-field{gap:var(--sp-sm);display:flex}.ticker-field input{text-transform:uppercase;flex:auto;min-width:0}.ticker-field button{flex:none}.asset-warning{color:var(--warn)}.asset-values small{font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.asset-values .positive{color:var(--green)}@media (width<=520px){.allocation{gap:var(--sp-lg);justify-content:center}.allocation-donut{width:128px;height:128px}.quotes-bar{font-size:var(--fs-caption)}}.expense-toolbar{align-items:center;gap:var(--sp-sm);flex-wrap:wrap;display:flex}.toolbar-button{align-items:center;gap:var(--sp-sm);min-height:40px;padding:var(--sp-sm) var(--sp-lg);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-caption);cursor:pointer;border-radius:999px;font-weight:600;display:inline-flex}.toolbar-button:hover{border-color:var(--green)}.toolbar-button.active{border-color:var(--green);background:var(--mint);color:var(--green)}.toolbar-button em{min-width:18px;height:18px;padding:0 var(--sp-xs);background:var(--green);color:var(--brand-cream);font-size:var(--fs-caption);border-radius:999px;place-items:center;font-style:normal;font-weight:600;display:grid}.toolbar-period{margin-left:auto}.toolbar-period select{min-height:44px;padding:var(--sp-sm) var(--sp-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-strong);border-radius:999px;font-weight:600}.expense-toolbar+.search-field{margin-top:var(--sp-md)}@media (width<=430px){.toolbar-period{flex:100%;margin-left:0}.toolbar-period select{width:100%}}.allocation-donut.selectable circle{cursor:pointer;transition:opacity .16s}.allocation-legend.interactive li{display:block}.legend-button{align-items:baseline;gap:var(--sp-sm);width:100%;min-height:38px;padding:var(--sp-sm);border-radius:var(--radius-sm);color:var(--ink);font:inherit;font-size:var(--fs-body);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:10px 1fr auto auto;display:grid}.legend-button:hover{background:var(--mint)}.legend-button.active{border-color:var(--green);background:var(--mint);font-weight:600}.clear-category{margin-top:var(--sp-lg)}.subcategory-breakdown{gap:var(--sp-xl);margin-top:var(--sp-xl);padding-top:var(--sp-xl);border-top:1px solid var(--line);grid-template-columns:minmax(150px,.55fr) minmax(240px,1.45fr);display:grid}.subcategory-breakdown-heading{align-items:flex-start;gap:var(--sp-md);display:flex}.subcategory-breakdown-heading>div{gap:2px;display:grid}.subcategory-breakdown-heading>div>span{color:var(--muted);font-size:var(--fs-caption)}.subcategory-breakdown-heading strong{font-size:var(--fs-body)}.subcategory-breakdown-heading small{color:var(--muted);font-size:var(--fs-caption)}.subcategory-segments{gap:var(--sp-xs);display:grid}.subcategory-segment{align-items:center;gap:var(--sp-md);min-height:52px;padding:var(--sp-sm) var(--sp-md);border-radius:var(--radius-sm);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.subcategory-segment:hover{background:var(--mint)}.subcategory-segment.active{background:var(--mint);border-color:#91bea6}.subcategory-segment>span{gap:1px;min-width:0;display:grid}.subcategory-segment strong{font-size:var(--fs-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.subcategory-segment small{color:var(--muted);font-size:var(--fs-caption)}.subcategory-segment>b{font-size:var(--fs-strong);white-space:nowrap;font-variant-numeric:tabular-nums}.subcategory-segment>i{right:var(--sp-md);bottom:3px;left:var(--sp-md);background:var(--line);border-radius:999px;height:3px;position:absolute;overflow:hidden}.subcategory-segment>i>span{border-radius:inherit;height:100%;display:block}@media (width<=620px){.subcategory-breakdown{gap:var(--sp-md);grid-template-columns:1fr}}.category-row{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0}.category-row:hover .category-data strong{color:var(--green)}.category-chevron{color:var(--faint);opacity:.7;flex:none}.topbar-bell{z-index:2;width:44px;height:44px;margin-top:calc(env(safe-area-inset-top) / 2);color:#f5f7ef94;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .17s,transform .15s;display:inline-flex;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.topbar-bell:hover{color:var(--brand-lime)}.topbar-bell:active{transform:translateY(-50%)scale(.94)}.topbar-bell:focus-visible{outline-offset:2px;outline:3px solid #b7e34a80}.topbar-bell-dot{border:2px solid var(--brand-deep);background:var(--brand-lime);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;right:9px}@media (width>=641px){.topbar-bell{left:30px}}@media (width>=900px){.topbar-bell{left:auto;right:116px}.sync-dot{right:74px}.topbar-settings{right:26px}}.agenda-alert{align-items:center;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border-radius:var(--radius-lg);background:var(--warn-soft);color:var(--warn);border:1px solid #e8d3a8;display:flex}.agenda-day+.agenda-day{margin-top:var(--sp-xs)}.section-meta.overdue{color:var(--danger);font-weight:600}.agenda-row{align-items:start}.agenda-row.income .pending-value{color:var(--green)}.agenda-row.resolved{opacity:.62}.agenda-row.resolved .pending-copy strong{text-decoration:line-through}.agenda-actions{flex-wrap:wrap;justify-content:flex-end}.notification-list{gap:var(--sp-sm);display:grid}.notification-row{align-items:center;gap:var(--sp-md);padding:var(--sp-md) var(--sp-md);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:auto minmax(0,1fr);display:grid}.notification-row.muted{background:#fbfdfc}.notification-row strong{font-size:var(--fs-body);display:block}.notification-row span{color:var(--muted);font-size:var(--fs-caption)}@media (width<=520px){.agenda-row{grid-template-columns:auto minmax(0,1fr)}.agenda-row .pending-value{grid-column:2}.agenda-actions{margin-top:var(--sp-sm);grid-column:1/-1}}.agenda-calendar{padding:var(--sp-lg) var(--sp-lg) var(--sp-xl);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.calendar-head{justify-content:space-between;align-items:center;gap:var(--sp-md);margin-bottom:var(--sp-lg);display:flex}.calendar-head strong{font-size:var(--fs-strong);line-height:var(--lh-snug)}.calendar-head strong:first-letter{text-transform:uppercase}.calendar-grid{gap:var(--sp-xs);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekday{padding-bottom:var(--sp-xs);color:var(--faint);font-size:var(--fs-micro);letter-spacing:.06em;text-align:center;text-transform:uppercase;font-weight:600}.calendar-blank{aspect-ratio:1}.calendar-day{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--mint);color:var(--ink);font:inherit;font-size:var(--fs-caption);font-variant-numeric:tabular-nums;cursor:pointer;border:1px solid #0000;align-content:center;justify-items:center;gap:3px;padding:0;font-weight:600;transition:background .14s,border-color .14s;display:grid}.calendar-day.empty{color:var(--faint);background:0 0;font-weight:500}.calendar-day:hover{border-color:var(--green)}.calendar-day.today{border-color:var(--green);color:var(--green)}.calendar-day.selected{background:var(--green);border-color:var(--green);color:var(--brand-cream)}.calendar-day.selected .calendar-dots i{background:var(--brand-lime)}.calendar-day:focus-visible{outline-offset:1px;outline:3px solid #b7e34a80}.calendar-dots{gap:2px;height:5px;display:flex}.calendar-dots i{border-radius:50%;width:5px;height:5px}.calendar-dots i.bill{background:var(--green)}.calendar-dots i.income{background:#6f9f3f}.calendar-dots i.reminder{background:var(--warn)}.calendar-clear{margin-top:var(--sp-lg)}@media (width<=380px){.calendar-grid{gap:3px}.calendar-day{font-size:var(--fs-caption)}}.recurring-month-controls{align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-lg);flex-wrap:wrap;display:flex}.recurring-month-controls .month-control{text-transform:none}.recurring-month-controls .month-control span:first-letter{text-transform:uppercase}.recurring-month-controls [aria-pressed=true]{background:var(--mint);color:var(--green)}.recurring-progress{color:var(--green);font-size:var(--fs-caption);font-weight:600;line-height:1.35}.recurring-outlook-month{appearance:none;text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:60px}.recurring-outlook-month:hover,.recurring-outlook-month[aria-pressed=true]{background:var(--mint)}@media (width<=600px){.recurring-outlook>button{padding:var(--sp-md) var(--sp-sm)}}
