/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.rounded{border-radius:.25rem}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--bg:#f8f8f5;--surface:#fff;--surface-2:#f2f3f0;--ink:#192a29;--muted:#74807d;--line:#e5e9e5;--teal:#0e514b;--teal-light:#e2f0eb;--amber:#a56b23;--amber-light:#fff3dc;--red:#b04e47;--red-light:#fce9e7;--shadow:0 14px 45px #16312b14}@media (prefers-color-scheme:dark){:root{--bg:#101b1b;--surface:#1b2928;--surface-2:#243433;--ink:#edf4ef;--muted:#a6b8b3;--line:#334642;--teal:#9ed4c2;--teal-light:#24443b;--amber:#e5bb77;--amber-light:#493b25;--red:#f0a49c;--red-light:#4a2b2a;--shadow:0 14px 45px #0003}}*{box-sizing:border-box}html{font-size:16px}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #69b9a9}button:active{transform:scale(.985)}a{color:inherit}strong{font-variant-numeric:tabular-nums;font-weight:700}small{font-size:.8rem}.app-shell{max-width:920px;min-height:100dvh;margin:0 auto;padding:0 24px 120px}.topbar{height:calc(78px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);justify-content:space-between}.brand,.topbar{align-items:center;display:flex}.brand{letter-spacing:-.025em;gap:10px;font-size:.96rem;font-weight:730}.brand-mark{background:var(--teal);border-radius:9px;place-items:center;width:26px;height:26px;display:grid;position:relative}.brand-mark span,.brand-mark:after,.brand-mark:before{content:"";background:var(--surface);border-radius:2px;width:12px;height:2px;display:block;position:absolute;left:7px}.brand-mark:before{top:8px}.brand-mark span{width:9px;top:12px}.brand-mark:after{top:16px}.icon-button,.month-arrows button,.quiet-icon{color:var(--ink);background:0 0;border:0;border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.icon-button:hover,.month-arrows button:hover,.quiet-icon:hover{background:var(--surface-2)}.month-row{justify-content:space-between;margin:4px 0 19px}.month-row,.month-title{align-items:center;display:flex}.month-title{color:var(--ink);letter-spacing:-.055em;background:0 0;border:0;gap:9px;padding:4px 0;font-size:1.65rem;font-weight:750}.month-title svg{color:var(--muted)}.month-arrows{gap:1px;display:flex}.main-content{animation:enter .2s}.eyebrow{letter-spacing:.15em;color:var(--muted);font-size:.67rem;font-weight:780}h1,h2,h3,p{margin:0}h1{letter-spacing:-.05em;font-size:1.7rem;line-height:1.1}h2{letter-spacing:-.035em;font-size:1.18rem}h3{letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:22px 0 5px;font-size:.73rem}.page-heading{margin:7px 0 22px}.page-heading h1{margin-top:5px}.section-heading{justify-content:space-between;align-items:end;gap:12px;margin:27px 0 15px;display:flex}.section-heading h2{margin-top:3px}.quiet-add{color:var(--teal);white-space:nowrap;background:0 0;border:0;align-items:center;gap:3px;min-height:44px;padding:0 2px;font-weight:690;display:flex}.summary-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.summary-card{background:var(--surface);border:1px solid var(--line);border-radius:19px;flex-direction:column;justify-content:center;min-height:127px;padding:17px 18px;display:flex;box-shadow:0 2px 9px #0a1e1405}.summary-card.accent{background:var(--teal);border-color:var(--teal);color:var(--bg)}.summary-card>span{opacity:.75;font-size:.79rem;font-weight:620}.summary-card strong{letter-spacing:-.065em;margin:5px 0 2px;font-size:1.79rem;line-height:1.17}.summary-card small{opacity:.64}.allowance-grid{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px;display:grid}.allowance-tile{border:1px solid var(--line);background:var(--surface);text-align:left;min-height:96px;color:var(--ink);border-radius:15px;flex-direction:column;gap:4px;padding:12px 13px;display:flex}.allowance-tile>span:first-child{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;font-weight:650;overflow:hidden}.allowance-tile strong{letter-spacing:-.04em;white-space:nowrap;font-size:1.01rem}.negative{color:var(--red)!important}.mini-track,.progress-track{background:var(--surface-2);border-radius:10px;width:100%;height:5px;margin-top:auto;display:block;overflow:hidden}.mini-track span,.progress-track span{background:var(--teal);border-radius:10px;height:100%;display:block}.attention-line{color:var(--amber);flex-wrap:wrap;gap:12px;margin-top:15px;font-size:.83rem;font-weight:630;display:flex}.attention-line span{align-items:center;gap:6px;display:flex}.chip-row{scrollbar-width:none;gap:7px;margin:0 -24px 12px;padding:0 24px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);white-space:nowrap;border-radius:999px;min-height:36px;padding:8px 14px;font-size:.83rem;font-weight:650}.chip.active{color:var(--bg);background:var(--ink);border-color:var(--ink)}.expense-list,.paid-section{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.bill-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;min-height:76px;padding:8px 7px 8px 14px;display:flex}.bill-row:last-child{border-bottom:0}.bill-row.done{opacity:.55}.check-button{width:22px;height:22px;color:var(--surface);background:0 0;border:1.5px solid #8da5a0;border-radius:7px;flex:0 0 22px;place-items:center;padding:0;display:grid}.check-button.checked{background:var(--teal);border-color:var(--teal)}.bill-main{text-align:left;min-width:0;color:var(--ink);background:0 0;border:0;flex-direction:column;flex:1;gap:3px;padding:4px 0;display:flex}.bill-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:.89rem;overflow:hidden}.bill-main>span{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:.75rem;display:flex}.latest{color:var(--muted);font-size:.7rem;font-style:normal;font-weight:640}.latest.warning{color:var(--amber)}.latest.severe{color:var(--red)}.bill-right{text-align:right;white-space:nowrap;flex-direction:column;display:flex}.bill-right strong{font-size:.9rem}.bill-right small{color:var(--muted);font-size:.68rem}.pencil-button{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;flex:0 0 44px;place-items:center;display:grid}.pencil-button:hover{color:var(--teal);background:var(--surface-2)}.paid-section{margin-top:10px}.paid-toggle{width:100%;color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;padding:14px 17px;font-size:.85rem;font-weight:650;display:flex}.paid-toggle svg:last-child{margin-left:auto;transition:transform .2s}.rotate{transform:rotate(180deg)}.empty-state{color:var(--muted);text-align:center;padding:27px 18px;font-size:.9rem}.bottom-nav{z-index:9;background:var(--surface);position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab,red,red)){.bottom-nav{background:color-mix(in srgb,var(--surface) 93%,transparent)}}.bottom-nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--line);padding:6px max(16px,calc((100vw - 920px)/2 + 16px)) calc(6px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr 72px 1fr 1fr;place-items:center;display:grid}.nav-item{color:var(--muted);background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;max-width:170px;min-height:53px;font-size:.69rem;font-weight:620;display:flex}.nav-add{z-index:2;border:5px solid var(--surface);background:var(--teal);width:68px;height:68px;color:var(--bg);cursor:pointer;border-radius:24px;align-self:start;place-items:center;margin-top:-25px;transition:transform .16s,box-shadow .16s;display:grid;position:relative;box-shadow:0 8px 23px #0c3e374d}.nav-add:hover{transform:translateY(-2px);box-shadow:0 11px 26px #0c3e3759}.nav-add:active{transform:translateY(0)scale(.97)}.nav-add:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.nav-item.active{color:var(--teal)}.nav-item span{white-space:nowrap}.page-heading+.spending-card-grid{margin-top:8px}.spending-card-grid{grid-template-columns:repeat(2,1fr);gap:11px;display:grid}.spending-card{border:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:left;border-radius:18px;flex-direction:column;gap:3px;min-height:128px;padding:17px;display:flex}.spending-card>span:first-child{color:var(--muted);font-size:.78rem;font-weight:650}.spending-card strong{letter-spacing:-.055em;font-size:1.5rem}.spending-card small{color:var(--muted)}.spending-card .progress-track{margin-top:12px}.transaction{border:0;border-bottom:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;align-items:center;gap:12px;min-height:68px;padding:14px;display:flex}.transaction:last-child{border-bottom:0}.transactions{border:1px solid var(--line);background:var(--surface);border-radius:18px;overflow:hidden}.transaction-date{color:var(--muted);flex-shrink:0;width:40px;font-size:.74rem}.transaction-main{flex-direction:column;flex:1;min-width:0;display:flex}.transaction-main strong{font-size:.83rem}.transaction-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.transaction-amount{font-size:.88rem}.transaction>svg{color:var(--muted);margin-left:6px}.report-hero{background:var(--teal);color:var(--bg);border-radius:21px;flex-direction:column;gap:4px;padding:21px 23px;display:flex}.report-hero>span{opacity:.74;font-size:.79rem;font-weight:650}.report-hero strong{letter-spacing:-.065em;font-size:2.4rem}.report-hero small{opacity:.65}.metric-list{border:1px solid var(--line);background:var(--surface);border-radius:17px;margin-top:12px;overflow:hidden}.metric-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:13px 17px;font-size:.87rem;display:flex}.metric-row:last-child{border:0}.metric-row span{color:var(--muted)}.metric-row strong{text-align:right}.report-section{margin-top:28px}.report-category{background:var(--surface);border-bottom:1px solid var(--line);padding:12px 17px}.report-category:first-of-type{border-radius:16px 16px 0 0}.report-category:last-of-type{border-bottom:0;border-radius:0 0 16px 16px}.report-category>div{justify-content:space-between;gap:8px;font-size:.83rem;display:flex}.report-category strong small{color:var(--muted);font-weight:450}.report-category .progress-track{margin-top:9px}.debt-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-bottom:11px;padding:16px 18px}.debt-top{justify-content:space-between;align-items:start;display:flex}.debt-top>div{flex-direction:column;display:flex}.debt-top strong{font-size:.95rem}.debt-top small,.estimate-note{color:var(--muted)}.debt-balance{letter-spacing:-.055em;margin:8px 0;font-size:1.72rem;display:block}.debt-detail{color:var(--muted);justify-content:space-between;gap:8px;font-size:.78rem;display:flex}.debt-chart{align-items:end;gap:4px;height:62px;margin:13px 0 8px;display:flex}.debt-chart span{background:var(--teal);opacity:.7;border-radius:4px 4px 1px 1px;flex:1}.budget-panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;margin-bottom:14px;padding:0 17px 6px}.budget-panel .section-heading{margin:17px 0 5px}.edit-row{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;align-items:center;gap:10px;width:100%;min-height:53px;padding:5px 0;font-size:.86rem;display:flex}.edit-row:last-child{border-bottom:0}.edit-row span{flex:1}.edit-row strong{white-space:nowrap}.edit-row svg{color:var(--muted);margin-left:7px}.budget-group h3{margin-top:22px}.budget-group:first-of-type h3{margin-top:12px}.budget-group:last-child{padding-bottom:4px}.loading-state{text-align:center;color:var(--muted);padding:80px 0}.banner{border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 13px;font-size:.83rem;display:flex}.error-banner{background:var(--red-light);color:var(--red)}.banner button{color:inherit;background:0 0;border:0}.toast{z-index:40;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));background:var(--ink);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow);border-radius:13px;gap:22px;padding:12px 17px;font-size:.86rem;display:flex;position:fixed;transform:translate(-50%)}.toast button{color:#92dfc4;background:0 0;border:0;font-weight:700}.modal-backdrop{z-index:50;background:#0e1d1b75;justify-content:center;align-items:end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:min(100%,520px);max-height:min(91dvh,900px);padding:7px 22px calc(22px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;overflow:auto;box-shadow:0 -16px 45px #00000026}.sheet-grabber{background:var(--line);border-radius:10px;width:40px;height:5px;margin:3px auto 15px}.sheet-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.sheet-header h2{font-size:1.34rem}.editor-form{gap:14px}.editor-form,.form-field{flex-direction:column;display:flex}.form-field{color:var(--ink);gap:6px}.form-field>span:first-child{font-size:.78rem;font-weight:680}.currency-input,.form-field>input,.form-field>select{border:1px solid var(--line);background:var(--surface-2);width:100%;height:49px;color:var(--ink);border-radius:12px;outline:0;padding:0 13px}.currency-input:focus-within,.form-field>input:focus,.form-field>select:focus{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-light)}.currency-input{align-items:center;gap:5px;display:flex}.currency-input span{color:var(--muted);font-size:.9rem}.currency-input input{color:var(--ink);background:0 0;border:0;outline:0;width:100%;font-size:1.05rem}.form-pair{grid-template-columns:1fr 1fr;gap:11px;display:grid}.primary-button{background:var(--teal);color:var(--bg);border:0;border-radius:13px;width:100%;min-height:51px;margin-top:4px;font-weight:700}.destination-note{background:var(--amber-light);color:var(--amber);border-radius:10px;padding:10px 12px;font-size:.79rem}.form-error{color:var(--red);font-size:.82rem}.payment-context{color:var(--muted);justify-content:space-between;align-items:center;font-size:.86rem;display:flex}.payment-context strong{color:var(--ink)}.prior-payments{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:14px;display:flex}.prior-payments>div{justify-content:space-between;align-items:center;font-size:.84rem;display:flex}.inline-confirm button,.prior-payments button,.secondary-actions button{color:var(--teal);background:0 0;border:0;min-height:36px;font-weight:680}.secondary-actions{border-top:1px solid var(--line);padding-top:8px}.inline-confirm,.secondary-actions{justify-content:space-between;display:flex}.inline-confirm{background:var(--amber-light);color:var(--amber);border-radius:10px;align-items:center;padding:12px;font-size:.82rem}.live-projection{background:var(--teal-light);border-radius:13px;flex-direction:column;gap:2px;padding:14px;display:flex}.live-projection small,.live-projection span{opacity:.75;font-size:.75rem}.live-projection strong{font-size:1.13rem}.month-picker,.settings-list{flex-direction:column;display:flex}.month-picker button,.settings-list a,.settings-list button{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;justify-content:space-between;align-items:center;min-height:53px;padding:10px 2px;text-decoration:none;display:flex}.month-picker button.current-month-button{color:var(--teal);font-weight:700}.settings-list small{color:var(--muted);padding-top:15px}.login-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);width:min(100%,400px);box-shadow:var(--shadow);border-radius:24px;padding:34px}.login-mark{background:var(--teal);width:44px;height:44px;color:var(--bg);border-radius:14px;place-items:center;margin-bottom:27px;display:grid}.login-kicker{letter-spacing:.16em;color:var(--muted);font-size:.7rem;font-weight:730}.login-card h1{margin:6px 0;font-size:2rem}.login-card p{color:var(--muted);margin-bottom:28px;font-size:.9rem}.login-card label{font-size:.79rem;font-weight:690}.password-wrap{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;align-items:center;margin:7px 0 14px;display:flex}.password-wrap input{min-width:0;height:49px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:0 14px}.password-wrap button{color:var(--muted);background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid}@media (max-width:600px){.app-shell{padding:0 16px 112px}.topbar{height:calc(72px + env(safe-area-inset-top))}.month-title{font-size:1.5rem}.summary-card{min-height:118px;padding:15px}.summary-card strong{font-size:1.47rem}.allowance-grid{grid-template-columns:1fr 1fr;gap:9px}.allowance-tile{min-height:83px}.chip-row{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.bill-row{gap:7px;padding-left:12px}.bill-main strong,.bill-right strong{font-size:.85rem}.pencil-button{flex-basis:38px;width:38px}.bottom-nav{grid-template-columns:1fr 1fr 68px 1fr 1fr}.nav-add{width:66px;height:66px;margin-top:-24px}.sheet{padding-left:18px;padding-right:18px}.debt-detail{flex-direction:column;gap:0}}@media (max-width:365px){.summary-card strong{font-size:1.31rem}.bill-row{gap:5px}.bill-main>span{font-size:.68rem}.latest{font-size:.66rem}.bill-right strong{font-size:.77rem}.nav-item{font-size:.6rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@keyframes enter{0%{opacity:.7;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.destructive-text-button{min-height:44px;color:var(--red);background:0 0;border:0;margin:2px auto 0;padding:0 16px;font-weight:650;display:block}.payment-date-edit{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.payment-date-edit span{color:var(--muted);font-size:.8rem}.payment-date-edit input{background:var(--surface-2);width:100%;max-width:165px;min-height:40px;color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:4px 8px}.login-page{justify-content:center;align-items:center;display:flex}.login-card{width:100%;max-width:400px}.debt-progress{flex-direction:column;gap:6px;margin:10px 0;display:flex}.debt-progress>span:first-child{color:var(--muted);font-size:.75rem}.latest.today{background:var(--red-light);color:var(--red);font-weight:750}.month-picker>div button{width:100%}.month-year{color:var(--muted);letter-spacing:.12em;margin:18px 0 5px;font-size:.72rem;font-weight:750;display:block}.filter-selects{grid-template-columns:1fr 1fr;gap:9px;margin:2px 0 12px;display:grid}.filter-select{appearance:none;border:1px solid var(--line);background-image:none;background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;border-radius:12px;outline:0;padding:0 10px;font-size:.84rem;font-weight:650}.filter-select:focus-visible{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-light)}.activity-filter{text-align:center;text-align-last:center;width:148px;max-width:148px;min-height:40px;font-size:.79rem}.section-heading>label{align-items:center;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.spending-card.low-balance{background:var(--amber-light);border-color:var(--amber);color:var(--amber)}.spending-card.low-balance small,.spending-card.low-balance>span:first-child{color:var(--amber)}.spending-card.low-balance .progress-track{background:#925b112e}.spending-card.low-balance .progress-track span{background:var(--amber)}.spending-card.over-budget{background:var(--red-light);border-color:var(--red);color:var(--red)}.spending-card.over-budget small,.spending-card.over-budget>span:first-child{color:var(--red)}.spending-card.over-budget .progress-track{background:#ae3e3a2e}.spending-card.over-budget .progress-track span{background:var(--red)}.bill-row.skipped{opacity:.62}.check-button:disabled{cursor:not-allowed;border-style:dashed}.metric-row.danger span,.metric-row.danger strong{color:var(--red)}.report-category.low-balance{background:var(--amber-light)}.report-category.low-balance strong small,.report-category.low-balance>div{color:var(--amber)}.report-category.low-balance .progress-track{background:#925b112e}.report-category.low-balance .progress-track span{background:var(--amber)}.report-category.over-budget{background:var(--red-light)}.report-category.over-budget strong small,.report-category.over-budget>div{color:var(--red)}.report-category.over-budget .progress-track{background:#ae3e3a2e}.report-category.over-budget .progress-track span{background:var(--red)}.over-budget-banner{border:1px solid var(--red);background:var(--red-light);color:var(--red);border-radius:14px;align-items:center;gap:10px;margin:-4px 0 15px;padding:13px 15px;font-size:.95rem;animation:enter .18s ease-out;display:flex}.over-budget-banner strong{font-weight:750}.emergency-strip{border:1px solid var(--line);background:var(--surface);min-height:52px;color:var(--red);text-align:left;border-radius:14px;grid-column:1/-1;align-items:center;gap:10px;padding:10px 14px;transition:border-color .16s;display:flex}.emergency-strip:hover{border-color:var(--red)}.emergency-strip>span{color:var(--red);font-size:.84rem;font-weight:680}.emergency-strip>strong{color:var(--red);font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.05rem}.emergency-strip>small{color:var(--red);font-size:.73rem}.mode-panel:not([hidden]){animation:mode-enter .28s ease-out}.mode-panel[hidden]{display:none}.mode-switch{cursor:pointer;background:0 0;border:0;min-height:44px;padding:0}.taxes-theme{--teal:#5750a2;--teal-dark:#413b80;--teal-light:#eeecfa;--bg:#f7f6fa;--surface:#fff;--surface-2:#f4f3f8;background:var(--bg);min-height:100dvh;transition:background-color .25s}.tax-content{animation:enter .2s ease-out}.tax-period{justify-content:space-between;align-items:center;gap:12px;display:flex}.tax-year{appearance:none;color:var(--ink);font:inherit;letter-spacing:-.04em;background:0 0;border:0;min-height:44px;padding:6px 0;font-size:1.55rem;font-weight:750}.tax-hero{text-align:left;border:1px solid var(--teal-light);background:linear-gradient(125deg,var(--teal-light),var(--surface));width:100%;color:var(--ink);border-radius:22px;flex-direction:column;margin:12px 0;padding:24px;display:flex}.tax-hero>span:first-child{color:var(--teal);font-size:.83rem;font-weight:650}.tax-hero>strong{letter-spacing:-.065em;font-variant-numeric:tabular-nums;margin:9px 0 18px;font-size:2.8rem}.tax-hero-bottom{color:var(--muted);justify-content:space-between;align-items:center;font-size:.76rem;display:flex}.tax-metrics{border:1px solid var(--line);background:var(--surface);border-radius:17px;grid-template-columns:1fr 1fr;margin-bottom:16px;display:grid;overflow:hidden}.tax-metric{color:var(--ink);text-align:left;background:0 0;border:0;flex-direction:column;gap:7px;min-height:89px;padding:15px;display:flex}.tax-metric:nth-child(odd){border-right:1px solid var(--line)}.tax-metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.tax-metric>span{color:var(--muted);font-size:.74rem}.tax-metric>strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:1.25rem}.tax-attention{border:1px solid var(--line);background:var(--amber-light);width:100%;min-height:48px;color:var(--amber);text-align:left;border-radius:12px;align-items:center;gap:9px;margin:8px 0 26px;padding:11px 13px;font-size:.81rem;display:flex}.tax-attention>span{flex:1}.tax-detail-link,.text-button{min-height:44px;color:var(--teal);font:inherit;background:0 0;border:0;align-items:center;gap:5px;font-size:.83rem;font-weight:650;display:flex}.tax-expense-list{border:1px solid var(--line);background:var(--surface);border-radius:17px;overflow:hidden}.tax-expense-row{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;min-height:91px;color:var(--ink);background:0 0;align-items:center;gap:10px;padding:14px 12px;display:flex}.tax-expense-row:last-child{border-bottom:0}.tax-expense-icon{background:var(--surface-2);width:34px;height:34px;color:var(--teal);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.tax-expense-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.tax-expense-main>strong{overflow-wrap:anywhere;font-size:.88rem}.tax-expense-main>small{color:var(--muted);font-size:.7rem}.tax-status{color:var(--muted);width:fit-content;font-size:.62rem;font-weight:650;line-height:1.2}.tax-status.provisional{color:var(--amber)}.tax-status.reviewed{color:var(--teal)}.tax-expense-amount{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.tax-expense-amount>strong{font-variant-numeric:tabular-nums;font-size:.91rem}.tax-expense-amount>small{color:var(--muted);font-size:.66rem}.tax-expense-row>svg{color:var(--muted);flex-shrink:0}.tax-notice{background:var(--amber-light);color:var(--amber);border-radius:12px;align-items:center;gap:8px;margin:12px 0;padding:11px 13px;font-size:.8rem;display:flex}.tax-report-toolbar{align-items:center;gap:12px;margin-bottom:15px;display:flex}.tax-report-toolbar select{flex:1}.tax-accent>strong{color:var(--teal)}.tax-detail-link{border-bottom:1px solid var(--line);justify-content:space-between;width:100%;margin:10px 0}.tax-category{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;min-height:56px}.tax-row-hint{color:var(--muted);margin-top:4px;font-size:.69rem;font-weight:400;display:block}.tax-setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:62px;font-size:.83rem;display:flex}.tax-setting-row>span{flex-direction:column;gap:5px;display:flex}.tax-setting-row small{color:var(--muted);font-size:.69rem}.tax-setting-row>strong{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.9rem}.tax-setting-actions{flex-wrap:wrap;gap:12px;padding-top:8px;display:flex}.tax-form{flex-direction:column;gap:16px;display:flex}.tax-form input:not([type=checkbox]),.tax-form select,.tax-form textarea{background:var(--surface-2);border:1px solid var(--line);width:100%;min-width:0;min-height:46px;color:var(--ink);font:inherit;border-radius:11px;padding:10px 12px;font-size:1rem}.tax-form textarea{resize:vertical}.tax-form .amount-input{font-variant-numeric:tabular-nums;font-size:1.65rem;font-weight:650}.tax-form input:focus-visible,.tax-form select:focus-visible,.tax-form textarea:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.tax-form .form-field{flex-direction:column;gap:7px;display:flex}.tax-form .form-field>span{color:var(--muted);font-size:.76rem;font-weight:650}.form-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tax-check{align-items:center;gap:10px;min-height:44px;font-size:.81rem;line-height:1.5;display:flex}.tax-check input{width:20px;height:20px;accent-color:var(--teal);flex-shrink:0}.tax-disclosure{border-top:1px solid var(--line);color:var(--muted);padding:12px 0;font-size:.8rem}.tax-disclosure summary{cursor:pointer;min-height:32px;color:var(--ink);font-weight:650}.tax-disclosure[open]{flex-direction:column;gap:12px;display:flex}.tax-disclosure .form-field{margin:14px 0}.tax-disclosure p{line-height:1.65}.tax-disclosure a,.tax-source-links a{color:var(--teal);align-items:center;min-height:44px;display:flex}.tax-help{color:var(--muted);font-size:.75rem;line-height:1.6}.tax-live{background:var(--teal-light);color:var(--teal);border-radius:14px;flex-direction:column;gap:6px;padding:17px;display:flex}.tax-live>span{font-size:.76rem}.tax-live>strong{letter-spacing:-.04em;font-size:1.55rem}.tax-live>small{font-size:.74rem}.tax-warning{color:var(--amber);font-size:.75rem;line-height:1.5}.tax-receipt{color:var(--teal);align-items:center;gap:8px;min-height:44px;font-size:.82rem;display:flex}.tax-sheet{overscroll-behavior:contain;max-height:calc(100dvh - 32px);overflow:auto}.tax-link-row{align-items:center;gap:12px;display:flex}.tax-link-row>span{flex:1;font-size:.84rem}.tax-link-row>select{width:155px;min-height:44px;font-size:.8rem}.tax-export-menu small{line-height:1.6}.tax-history details{border-bottom:1px solid var(--line);padding:15px 0}.tax-history summary{cursor:pointer;justify-content:space-between;gap:10px;font-size:.8rem;display:flex}.tax-history summary small{color:var(--muted);font-size:.7rem}.tax-history pre{background:var(--surface-2);border-radius:10px;max-height:250px;padding:12px;font-size:.65rem;overflow:auto}.tax-history p{color:var(--muted);font-size:.78rem}.tax-calculation{flex-direction:column;gap:8px;display:flex}.tax-shell button:disabled{opacity:.5;cursor:not-allowed}@keyframes mode-enter{0%{opacity:0;transform:translate(9px)}to{opacity:1;transform:translate(0)}}@media (prefers-color-scheme:dark){.taxes-theme{--bg:#191820;--surface:#22212b;--surface-2:#2b2936;--teal:#b3a9ff;--teal-dark:#d0c8ff;--teal-light:#302a4b}.tax-hero{background:linear-gradient(125deg,var(--teal-light),var(--surface))}}@media (max-width:365px){.tax-hero>strong{font-size:2.45rem}.tax-metric>strong{font-size:1.12rem}.tax-expense-icon{display:none}.tax-link-row>select{width:140px}}.business-strip,.business-strip small,.business-strip span,.business-strip strong{color:var(--teal)!important}.report-section .emergency-strip{margin-top:10px}.tax-form .form-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.tax-metrics{position:relative}.tax-metric-link{border:1px solid var(--line);background:var(--surface);width:24px;height:24px;color:var(--teal);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:75%;left:50%;transform:translate(-50%,-50%)}.tax-report-toolbar{justify-content:flex-end}.tax-form .form-field{min-width:0}.tax-date-fields{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.tax-form input[type=date],.tax-form input[type=month]{appearance:none;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:46px;display:block;overflow:hidden}.tax-form input::-webkit-date-and-time-value{text-align:left;min-height:24px}.tax-form input::-webkit-datetime-edit{padding:0}.tax-date-fields select{height:46px}.tax-report-heading{align-items:center;margin:12px 0 18px}.tax-report-heading h1{letter-spacing:-.04em;margin:0;font-size:1.55rem}.tax-writeoffs-breakdown{border:1px solid var(--line);background:var(--surface);border-radius:18px;overflow:hidden}.tax-breakdown-total{background:var(--teal-light);color:var(--teal);flex-direction:column;gap:7px;padding:20px;display:flex}.tax-breakdown-total>span{font-size:.83rem;font-weight:650}.tax-breakdown-total>strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:2rem}.tax-benefit-group{border-top:1px solid var(--line)}.tax-benefit-group>summary{cursor:pointer;align-items:center;gap:10px;min-height:56px;padding:13px 16px;font-size:.84rem;list-style:none;display:flex}.tax-benefit-group>summary::-webkit-details-marker{display:none}.tax-benefit-group>summary>span{flex:1;font-weight:650}.tax-benefit-group>summary>strong{font-variant-numeric:tabular-nums;white-space:nowrap}.tax-benefit-group>summary>svg{color:var(--muted);flex-shrink:0;transition:transform .15s}.tax-benefit-group[open]>summary>svg{transform:rotate(180deg)}.tax-benefit-rows{padding:0 16px 9px}.tax-benefit-row{border:0;border-top:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);text-align:left;font:inherit;background:0 0;align-items:center;gap:9px;padding:10px 0;font-size:.78rem;display:flex}.tax-benefit-row>span{overflow-wrap:anywhere;min-width:0;color:var(--muted);flex:1}.tax-benefit-row>strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.84rem}.tax-benefit-row>svg{color:var(--muted);flex-shrink:0}.tax-benefit-row:not(button){padding-right:23px}.tax-benefit-empty{color:var(--muted);padding:12px 0;font-size:.78rem}.tax-breakdown-help{border-top:1px solid var(--line);color:var(--muted);padding:0 16px;font-size:.75rem}.tax-breakdown-help>summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.tax-breakdown-help p{margin:0 0 12px;line-height:1.6}.tax-benefit-group>summary:focus-visible,.tax-benefit-row:focus-visible,.tax-breakdown-help>summary:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.tax-benefit-group>summary>svg{transition:none}}.tax-calculation{gap:12px}.tax-calculation-result{background:var(--teal-light);border:1px solid var(--line);color:var(--teal);border-radius:17px;flex-direction:column;gap:7px;margin-bottom:6px;padding:20px;display:flex}.tax-calculation-result>span{font-size:.75rem}.tax-calculation-result h3{margin:0;font-size:.87rem;font-weight:600}.tax-calculation-result>strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:2.15rem;line-height:1.2}.tax-calculation-result>small{font-size:.73rem;line-height:1.5}.tax-math-flow{flex-direction:column;gap:12px;display:flex}.tax-math-step{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden}.tax-math-step h3{border-bottom:1px solid var(--line);align-items:center;gap:9px;margin:0;padding:15px 14px;font-size:.89rem;font-weight:650;display:flex}.tax-math-step h3>span{background:var(--teal-light);width:25px;height:25px;color:var(--teal);border-radius:50%;flex-shrink:0;place-items:center;font-size:.74rem;display:grid}.tax-math-rows{padding:3px 12px 8px}.tax-math-row{min-height:45px;color:var(--muted);grid-template-columns:16px minmax(0,1fr) auto;align-items:baseline;gap:7px;padding:13px 0;font-size:.78rem;line-height:1.5;display:grid}.tax-math-operation{color:var(--teal);text-align:center;font-size:1rem;font-weight:600}.tax-math-label{overflow-wrap:anywhere}.tax-math-row>strong{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.83rem}.tax-math-total{border-top:1px solid var(--line);background:var(--teal-light);color:var(--ink);border-radius:9px;margin:3px 0;padding:12px 8px;font-weight:650}.tax-math-total>strong{color:var(--teal)}.tax-math-connector{color:var(--teal);justify-content:center;height:18px;display:flex}.tax-bracket-conversion{color:var(--muted);align-items:center;gap:7px;padding:9px 0;font-size:.71rem;line-height:1.5;display:flex}.tax-math-note{color:var(--muted);margin:10px 0;font-size:.73rem;line-height:1.6}.tax-math-detail{border-top:1px solid var(--line);padding:4px 0}.tax-math-detail>summary{cursor:pointer;min-height:48px;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;font-size:.79rem;font-weight:600;list-style:none;display:flex}.tax-math-detail>summary::-webkit-details-marker{display:none}.tax-math-detail>summary>svg{color:var(--muted);flex-shrink:0}.tax-math-detail[open]>summary>svg{transform:rotate(180deg)}.tax-math-detail>summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:5px}.tax-annual-walkthrough>.tax-math-flow{padding-top:10px}@media (max-width:380px){.tax-math-row{gap:5px;font-size:.75rem}.tax-math-row>strong{font-size:.79rem}.tax-math-step h3{padding:13px 12px}}.taxes-theme{--tax-benefit:#236f50;--tax-benefit-light:#e6f3eb;--tax-owed:#a63832;--tax-owed-light:#fbeae7}.tax-calculation-result h3,.tax-math-step h3{text-transform:none;letter-spacing:-.015em}.tax-math-total.tax-tone-neutral>strong{color:var(--ink)}.metric-row.tax-tone-benefit>span,.metric-row.tax-tone-benefit>strong,.tax-benefit-group.tax-tone-benefit>summary,.tax-benefit-row.tax-tone-benefit>span,.tax-benefit-row.tax-tone-benefit>strong,.tax-breakdown-total.tax-tone-benefit,.tax-math-row.tax-tone-benefit,.tax-math-row.tax-tone-benefit>.tax-math-operation,.tax-math-row.tax-tone-benefit>strong{color:var(--tax-benefit)}.metric-row.tax-tone-owed>span,.metric-row.tax-tone-owed>strong,.tax-benefit-group.tax-tone-owed>summary,.tax-benefit-row.tax-tone-owed>span,.tax-benefit-row.tax-tone-owed>strong,.tax-breakdown-total.tax-tone-owed,.tax-math-row.tax-tone-owed,.tax-math-row.tax-tone-owed>.tax-math-operation,.tax-math-row.tax-tone-owed>strong{color:var(--tax-owed)}.tax-breakdown-total.tax-tone-benefit,.tax-calculation-result.tax-tone-benefit,.tax-math-total.tax-tone-benefit{background:var(--tax-benefit-light)}.tax-calculation-result.tax-tone-owed,.tax-math-total.tax-tone-owed{background:var(--tax-owed-light)}.tax-calculation-result.tax-tone-owed h3,.tax-calculation-result.tax-tone-owed>strong{color:var(--tax-owed)}.tax-calculation-result.tax-tone-benefit h3,.tax-calculation-result.tax-tone-benefit>strong{color:var(--tax-benefit)}.tax-calculation-result>small,.tax-calculation-result>span{color:var(--muted)}@media (prefers-color-scheme:dark){.taxes-theme{--tax-benefit:#9ed4b6;--tax-benefit-light:#203b30;--tax-owed:#f0a49c;--tax-owed-light:#40282d}}.tax-category-bars .report-category>div{color:var(--tax-benefit)}.tax-category-bars .progress-track>span{background:var(--tax-benefit)}.tax-qbi-detail{border-top:0;padding:0}.tax-qbi-detail>summary{color:var(--tax-benefit);grid-template-columns:16px minmax(0,1fr) auto 15px;gap:7px;padding:13px 0;font-size:.78rem;font-weight:400;line-height:1.5;display:grid}.tax-qbi-detail>summary>strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.83rem}.tax-qbi-detail>summary>.tax-math-operation,.tax-qbi-detail>summary>svg{color:var(--tax-benefit)}.tax-qbi-explanation{flex-direction:column;gap:8px;padding:6px 0 12px;display:flex}.tax-qbi-part{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;padding:10px}.tax-qbi-part h4{letter-spacing:0;text-transform:none;color:var(--ink);margin:0 0 5px;font-size:.77rem;font-weight:650;line-height:1.5}.tax-qbi-part .tax-math-row{grid-template-columns:13px minmax(0,1fr) auto;gap:5px;font-size:.74rem}.tax-qbi-part .tax-math-row>strong{font-size:.78rem}.tax-qbi-part .tax-math-total{padding:10px 4px}.tax-qbi-source{min-height:44px;color:var(--teal);align-items:center;font-size:.73rem;display:inline-flex}.tax-metric{text-align:center;align-items:center;min-width:0}.tax-metric>span.tax-metric-label-compact{white-space:nowrap;letter-spacing:-.015em;font-size:clamp(.65rem,2.9vw,.74rem)}.household-report-heading{align-items:center;gap:8px;margin:18px 0 12px;display:flex}.household-report-heading h1{letter-spacing:-.05em;margin:0;font-size:1.9rem}.household-report-heading select{width:auto;max-width:142px}.household-report-heading a{color:var(--ink);text-decoration:none}.report-range{color:var(--muted);justify-content:space-between;gap:12px;margin:8px 0 16px;font-size:.77rem;display:flex}.report-coverage{color:var(--muted);margin:10px 0 16px;font-size:.75rem}.report-coverage summary{cursor:pointer;align-items:center;gap:6px;min-height:32px;display:flex}.report-coverage summary:before{content:"›";font-size:18px}.report-coverage[open] summary:before{transform:rotate(90deg)}.report-coverage>div{flex-wrap:wrap;gap:8px 18px;padding:8px 0;display:flex}.budget-flow-entry{background:var(--surface);border:1px solid var(--line);width:100%;min-height:60px;color:var(--ink);font:inherit;cursor:pointer;border-radius:15px;align-items:center;gap:12px;margin:12px 0 20px;padding:10px 14px;font-size:.88rem;font-weight:650;display:flex}.budget-flow-entry>span:nth-child(2){text-align:left;flex:1}.flow-entry-icon{width:36px;height:36px;color:var(--teal);background:linear-gradient(135deg,#508bd228,#9381cc28,#c99b4528);border-radius:11px;place-items:center;display:grid}.report-category-note{margin-top:8px;font-size:.68rem;display:block}.report-section>h2{margin:24px 0 18px;font-size:1.1rem}.danger{color:var(--red)!important}.flow-backdrop{z-index:100;background:#0a181b80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.flow-dialog{background:var(--bg);color:var(--ink);outline:none;flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.flow-header{border-bottom:1px solid var(--line);padding:calc(env(safe-area-inset-top) + 10px) 12px 12px;background:var(--surface);flex-shrink:0;align-items:center;gap:10px;display:flex}.flow-header>div{flex:1;min-width:0}.flow-header h2{margin:0 0 3px;font-size:1rem}.flow-header span{color:var(--muted);font-size:.72rem}.flow-toolbar{border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;align-items:center;gap:10px;padding:12px 18px;display:flex}.flow-toolbar select{width:auto;min-width:90px}.flow-basis-caption{color:var(--muted);flex:1;font-size:.68rem}.flow-menu{position:relative}.flow-menu-item{z-index:3;white-space:nowrap;border:1px solid var(--line);background:var(--surface);min-height:48px;color:var(--ink);font:inherit;cursor:pointer;border-radius:12px;padding:0 22px;font-size:.86rem;position:absolute;top:44px;right:0;box-shadow:0 8px 25px #0002}.flow-scroll{overscroll-behavior:contain;min-height:0;padding:16px 18px calc(env(safe-area-inset-bottom) + 28px);flex:1;overflow:auto}.flow-stage-heading{outline:none;flex-direction:column;gap:7px;padding:8px 0 6px;display:flex}.flow-stage-heading>span{color:var(--muted);font-size:.78rem}.flow-stage-heading>strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:2rem}.flow-stage-heading>small{color:var(--muted);font-size:.72rem}.flow-chart{width:100%;margin:8px 0 18px;position:relative}.flow-chart>svg{display:block;overflow:visible}.flow-node-label{text-align:left;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:58px;padding:4px 0 4px 6px;transition:background .16s;position:absolute;right:0}.flow-node-label:focus-visible,.flow-node-label:hover{background:var(--surface-2)}.flow-node-label>span{overflow-wrap:anywhere;align-items:center;gap:5px;font-size:.75rem;line-height:1.2;display:flex}.flow-node-label i{background:var(--flow-color);border-radius:50%;flex-shrink:0;width:5px;height:5px}.flow-node-label>strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:4px 0 0 10px;font-size:.92rem;display:block}.flow-node-label small{color:var(--amber);margin-left:10px;font-size:.62rem;display:block}.flow-node-label:disabled{opacity:1;cursor:default}.flow-source{overflow-wrap:anywhere;font-size:.68rem;line-height:1.2;position:absolute;left:0}.flow-source span{color:var(--muted);margin-bottom:6px;display:block}.flow-source strong{letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:.78rem;display:block}.flow-source.danger span{color:var(--red)}.flow-shortfall{color:var(--red);background:var(--red-light);justify-content:space-between;gap:10px;margin-bottom:14px;display:flex}.flow-notice,.flow-shortfall{border-radius:11px;padding:12px 14px;font-size:.8rem}.flow-notice{background:var(--amber-light);color:var(--amber);margin:0 0 12px}.flow-breadcrumb{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px;margin:6px 0 16px;font-size:.69rem;display:flex}.flow-breadcrumb>span{align-items:center;gap:4px;display:flex}.flow-breadcrumb button{color:var(--teal);font:inherit;background:0 0;border:0;min-height:32px;padding:4px}.flow-income{border-top:1px solid var(--line);padding-top:10px;font-size:.83rem}.flow-income summary{cursor:pointer;min-height:44px}.flow-leaf-metrics{border:1px solid var(--line);background:var(--surface);border-radius:16px;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0;padding:20px 16px;display:grid}.flow-leaf-metrics>div{flex-direction:column;gap:9px;display:flex}.flow-leaf-metrics span{color:var(--muted);font-size:.73rem}.flow-leaf-metrics strong{font-variant-numeric:tabular-nums;font-size:1.1rem}.flow-records-title{margin:24px 0 12px;font-size:.95rem}.flow-records{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:0 14px}.flow-record{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 0;font-size:.86rem;display:flex}.flow-record:last-child{border:0}.flow-record>div{overflow-wrap:anywhere;flex-direction:column;gap:6px;min-width:0;display:flex}.flow-record small,.flow-record span{color:var(--muted);font-size:.71rem}.flow-record>strong{white-space:nowrap;font-variant-numeric:tabular-nums}.flow-pagination{justify-content:space-between;align-items:center;gap:10px;margin:15px 0;font-size:.78rem;display:flex}.flow-pagination button{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:10px;min-height:44px;padding:0 16px}.flow-pagination button:disabled{opacity:.4}.flow-editor-note{color:var(--muted);margin:0 0 24px;font-size:.74rem}.flow-group-editor h3{margin:24px 0 14px;font-size:.93rem}.flow-edit-group{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:10px 0;padding:12px}.flow-edit-group-name{align-items:center;gap:4px;display:flex}.flow-edit-group-name input[type=color]{cursor:pointer;background:0 0;border:0;flex-shrink:0;width:32px;height:44px;padding:0}.flow-edit-group-name input:not([type=color]){width:100%;min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;height:44px;padding:8px 4px;font-size:.85rem}.flow-edit-parent{align-items:center;gap:10px;padding-top:6px;display:flex}.flow-group-editor select{border:1px solid var(--line);background:var(--surface-2);min-width:0;min-height:44px;color:var(--ink);font:inherit;border-radius:9px;width:100%;padding:8px;font-size:.75rem}.flow-item-placement{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;font-size:.8rem;display:flex}.flow-item-placement>span{overflow-wrap:anywhere;flex:1;min-width:0}.flow-item-placement>select{width:55%}.flow-save-bar{bottom:calc(-28px - env(safe-area-inset-bottom));background:var(--bg);padding:16px 0 calc(12px + env(safe-area-inset-bottom));margin-top:20px;position:sticky}.flow-save-bar button{width:100%;min-height:48px}.flow-dialog button:focus-visible,.flow-dialog input:focus-visible,.flow-dialog select:focus-visible,.flow-dialog summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media (min-width:700px){.flow-dialog{border-radius:24px;max-width:720px;height:850px;max-height:90dvh;box-shadow:0 25px 90px #0003}.flow-scroll{padding-left:28px;padding-right:28px}.flow-node-label>span{font-size:.86rem}.flow-node-label>strong{font-size:1.03rem}.flow-source strong{font-size:.88rem}}@media (prefers-reduced-motion:reduce){.flow-node-label{transition:none}}.flow-offline{color:var(--muted);padding:8px 0 12px;font-size:.75rem}.flow-edit-group-name .icon-button{width:44px;min-width:44px}.flow-node-label>span{min-width:0}.flow-node-label>span>svg{flex-shrink:0}.flow-zero-bills{border-top:1px solid var(--line);padding:10px 0;font-size:.83rem}.flow-zero-bills summary{cursor:pointer;min-height:44px}.flow-zero-bills button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;background:0 0;align-items:center;gap:10px;font-size:.8rem;display:flex}.flow-zero-bills button span{flex:1}.flow-remainder>strong{color:var(--flow-color)}.flow-node-label>span>svg{margin-left:auto}.flow-source strong{white-space:nowrap}.flow-chart{animation:flow-arrive .18s ease-out}@keyframes flow-arrive{0%{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.flow-chart{animation:none}}.flow-dialog{isolation:isolate}.flow-header{z-index:6;position:relative}.flow-header>.icon-button{touch-action:manipulation;flex-shrink:0}.flow-toolbar{z-index:5;position:relative}.flow-scroll{z-index:1;position:relative}.flow-menu-popover{z-index:7;border:1px solid var(--line);background:var(--surface);border-radius:13px;min-width:218px;padding:5px;position:absolute;top:44px;right:0;box-shadow:0 8px 25px #0002}.flow-menu-popover>button{text-align:left;width:100%;min-height:48px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px 12px;font-size:.8rem;display:block}.flow-menu-popover>button:hover{background:var(--surface-2)}.vertical-flow{padding:8px 0 20px;animation:flow-arrive .18s ease-out}.vertical-income{text-align:center;flex-direction:column;gap:8px;margin:0 0 4px;display:flex}.vertical-income>span{color:var(--muted);font-size:.76rem}.vertical-income>strong{letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:1.9rem}.vertical-sankey{width:100%;position:relative}.vertical-sankey>svg{pointer-events:none;position:absolute;inset:0}.vertical-sankey-label{min-height:46px;color:var(--ink);font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:flex;position:absolute;right:0}.vertical-sankey-name{overflow-wrap:anywhere;flex:1;min-width:0;font-size:.74rem;line-height:1.3}.vertical-sankey-name small{color:var(--amber);font-size:.65rem;display:block}.vertical-sankey-label>strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem;font-weight:600}.vertical-sankey-label.major .vertical-sankey-name{font-size:.86rem;font-weight:650}.vertical-sankey-label.major>strong{font-size:.85rem}.vertical-sankey-label>svg{color:var(--muted);flex-shrink:0}button.vertical-sankey-label{cursor:pointer}button.vertical-sankey-label:hover{color:var(--branch-color)}@media (min-width:600px){.vertical-sankey{max-width:560px;margin:auto}.vertical-sankey-label .vertical-sankey-name,.vertical-sankey-label>strong{font-size:.92rem}}@media (prefers-reduced-motion:reduce){.vertical-flow{animation:none}}.month-period-field{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.month-choice-end{color:var(--muted);align-items:center;gap:8px;display:flex}.month-choice-end small{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.month-arrows button:disabled{opacity:.3;cursor:default}.household-report-heading h1{flex:1}.flow-header>.flow-menu{flex:none}.flow-header .flow-menu-popover{top:48px}.flow-range-menu{position:relative}.flow-range-button{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin:-8px 0 -12px;padding:0;font-size:.72rem;display:flex}.flow-range-popover{z-index:8;border:1px solid var(--line);background:var(--surface);border-radius:13px;width:240px;max-width:calc(100vw - 86px);padding:10px 12px;position:absolute;top:40px;left:0;box-shadow:0 8px 25px #0002}.flow-range-popover label{justify-content:space-between;align-items:center;gap:12px;font-size:.76rem;display:flex}.flow-range-popover select{background:var(--surface-2);max-width:155px;min-height:44px;color:var(--ink);font:inherit;border:0;border-radius:8px;padding:5px 8px}.editor-form .form-field{min-width:0}.editor-form input[type=date],.editor-form input[type=month]{appearance:none;box-sizing:border-box;width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;max-inline-size:100%;height:49px;padding-block:0;line-height:47px;display:block;overflow:hidden}.editor-form input::-webkit-date-and-time-value{text-align:left;min-width:0;min-height:47px;line-height:47px}.editor-form input::-webkit-datetime-edit{min-width:0;padding:0;line-height:47px}.shared-preview{background:var(--teal-light);color:var(--teal);font-variant-numeric:tabular-nums;border-radius:12px;justify-content:space-between;gap:12px;padding:12px 14px;font-size:.84rem;display:flex}.carryover-row .transaction-amount{color:var(--red)}.sheet-title-toggle{color:inherit;min-height:44px;font:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:9px;padding:0;display:inline-flex}.simulator-context{color:var(--muted)}.simulator-result{background:var(--teal-light);color:var(--teal);border-radius:18px;flex-direction:column;gap:8px;padding:22px;display:flex}.simulator-result strong{font-size:2.25rem}.tax-simulator .tax-disclosure small{margin-top:12px;display:block}.tax-simulator .metric-row{padding-inline:0}.tax-simulator{animation:mode-in .18s ease-out}@keyframes mode-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tax-simulator{animation:none}}.simulator-result{background:var(--tax-benefit-light);color:var(--tax-benefit)}.simulator-result.simulator-negative{background:var(--tax-owed-light);color:var(--tax-owed)}.simulator-result.simulator-neutral{background:var(--surface-2);color:var(--muted)}.tax-sheet.tax-expense-sheet{height:calc(100dvh - 32px)}.flow-node-label>strong{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.flow-node-label .flow-share,.flow-source .flow-share,.flow-zero-bills .flow-share,.vertical-sankey-label .flow-share{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-size:.68rem;font-weight:500;line-height:1.35}.vertical-sankey-label .flow-share{text-align:right;display:block}.flow-source .flow-share{margin-top:4px;display:block}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}