/*! tailwindcss v4.2.1 | 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)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.contents{display:contents}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.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{color:#182e35;background:#f4f7f7;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.shell{min-height:100vh;display:flex}.sidebar{color:#eaf4f3;background:#0f3540;flex-direction:column;flex:none;width:235px;height:100dvh;padding:clamp(12px,2.6vh,27px) 16px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar>*{flex-shrink:0}.brand{letter-spacing:-.05em;white-space:nowrap;align-items:center;gap:11px;padding:0 12px;font-size:20px;font-weight:750;display:flex}.brand-mark{color:#0c5045;background:#c5f3e0;border-radius:11px;justify-content:center;align-items:center;width:35px;height:35px;font-size:25px;font-weight:700;display:inline-flex}.brand-light{color:#a5cbc7;font-weight:400}.sidebar nav{overscroll-behavior-y:contain;scrollbar-width:thin;flex:1;align-content:start;gap:5px;min-height:0;margin-top:24px;display:grid;overflow:hidden auto}.navitem{color:#b7ced0;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;padding:11px 16px;font-size:15px;display:flex}.navitem:hover,.navitem.active{color:#fff;background:#20515a}.navitem.active{font-weight:700;box-shadow:inset 3px 0 #a9eed3}.side-foot{color:#b7ced0;margin-top:0;padding:18px 12px 0;font-size:13px}.side-foot small{color:#7fa3a8;margin-top:6px;display:block}.side-rule{background:#38616a;height:1px;margin-bottom:12px;display:block}.main{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e5eeee;justify-content:space-between;align-items:center;gap:20px;height:82px;padding:0 42px;display:flex}.top-brand{display:none}.period-control{align-items:center;gap:16px;display:flex}.period-control button{color:#647c80;background:#fff;border:1px solid #dde8e7;border-radius:8px;place-items:center;width:31px;height:31px;display:grid}.period-control button:hover{background:#eaf4f0}.period-control div{text-align:center;min-width:170px}.period-control strong,.period-control small{display:block}.period-control strong{font-size:15px}.period-control small{color:#748a8e;margin-top:4px;font-size:12px}.primary{color:#fff;background:#146a60;border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:12px 17px;font-weight:700;display:inline-flex}.primary:hover{background:#0e554e}.primary:disabled{opacity:.6;cursor:wait}.content{max-width:1390px;margin:auto;padding:33px 42px 75px}.page-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:27px;display:flex}.eyebrow{letter-spacing:.15em;color:#4e9086;margin-bottom:7px;font-size:11px;font-weight:800}h1{letter-spacing:-.045em;margin:0;font-size:30px;line-height:1.2}h2{letter-spacing:-.02em;margin:0;font-size:18px}p{margin:0}.hero{color:#fff;background:#123e46;border-radius:19px;grid-template-columns:minmax(0,1.5fr) minmax(240px,.68fr);margin-bottom:20px;display:grid;overflow:hidden;box-shadow:0 12px 30px #153d4615}.hero-main{padding:32px 37px}.hero-label{color:#b6ded8;font-size:14px;font-weight:600}.hero-value{letter-spacing:-.055em;white-space:nowrap;margin:12px 0 4px;font-size:clamp(34px,4vw,51px);font-weight:750}.hero-note{color:#b2d0ce;font-size:13px}.hero-line{color:#a9c8c7;gap:31px;margin-top:36px;font-size:13px;display:flex}.hero-line strong{color:#fff;margin-top:6px;font-size:17px;display:block}.hero-side{background:#194b52;flex-direction:column;padding:28px 27px;display:flex}.mini-label{letter-spacing:.15em;color:#91bab7;margin-bottom:15px;font-size:11px;font-weight:800}.hero-stat{border-bottom:1px solid #497079;justify-content:space-between;gap:12px;padding:12px 0;font-size:14px;display:flex}.hero-stat span{color:#bfdbd8}.hero-stat strong{font-size:16px}.hero-stat.last{border:0}.positive{color:#289a75!important}.hero .positive{color:#9de5bf!important}.negative{color:#c85448!important}.two-columns{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.panel{background:#fff;border:1px solid #e3eceb;border-radius:16px;min-width:0;padding:24px;box-shadow:0 3px 15px #24454a07}.panel.wide{margin-bottom:20px}.panel-head{justify-content:space-between;align-items:start;gap:15px;margin-bottom:20px;display:flex}.panel-head p{color:#829396;margin-top:6px;font-size:13px}.panel-head>strong{color:#799092;font-size:13px}.text-button{color:#168176;white-space:nowrap;background:0 0;border:0;padding:3px 0;font-size:13px;font-weight:700}.text-button:hover{text-decoration:underline}.account-list{display:grid}.account-row,.tx-row{border-bottom:1px solid #edf2f1;align-items:center;gap:12px;min-width:0;padding:10px 0;display:flex}.account-row:last-child,.tx-row:last-child{border:0}.account-row>div:nth-child(2),.tx-row>div:nth-child(2){flex:1;min-width:0}.account-row strong,.tx-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.account-row small,.tx-row small{color:#84989a;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;display:block;overflow:hidden}.account-row b,.tx-row b{white-space:nowrap;font-size:15px}.account-icon,.tx-sign{color:#30867c;background:#e8f2f0;border-radius:11px;flex:none;place-items:center;width:39px;height:39px;font-size:20px;font-weight:800;display:grid}.account-icon.cash{color:#b98b3c;background:#fff2e1}.account-icon.savings{color:#737bb6;background:#e9ebfa}.tx-sign.expense{color:#c46e56;background:#f9ece8}.tx-sign.income{color:#419777;background:#e7f5ee}.tx-sign.transfer{color:#5e83a8;background:#eaf0f7}.icon-add{color:#167568;background:#eaf7f2;border:1px solid #d7eae5;border-radius:9px;place-items:center;width:32px;height:32px;display:grid}.tiny-button,.delete{color:#168176;white-space:nowrap;background:0 0;border:0;padding:7px;font-size:12px}.delete{color:#a5b2b4}.delete:hover{color:#c85448}.subtle-action{color:#197469;background:#eaf6f2;border:0;border-radius:8px;align-items:center;gap:6px;margin-top:17px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.empty{color:#7a9092;padding:19px 0;font-size:14px;line-height:1.5}.hint{color:#8b9c9d;margin-top:16px;font-size:12px;line-height:1.55}.budget-compact{margin:16px 0}.budget-compact>div:first-child{justify-content:space-between;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.budget-compact span{color:#73898b;white-space:nowrap}.track{background:#edf3f1;border-radius:10px;height:7px;overflow:hidden}.track i{background:#46ad91;border-radius:10px;height:100%;display:block}.summary-strip{background:#fff;border:1px solid #e3eceb;border-radius:16px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;padding:23px 26px;display:grid}.summary-strip>div{border-right:1px solid #e8efee;padding:0 26px}.summary-strip>div:first-child{padding-left:0}.summary-strip>div:last-child{border:0}.summary-strip span,.summary-strip strong{display:block}.summary-strip span{color:#7d9192;margin-bottom:10px;font-size:13px}.summary-strip strong{letter-spacing:-.04em;font-size:23px}.budget-grid{grid-template-columns:minmax(200px,2.3fr) repeat(3,minmax(100px,1fr));align-items:center;gap:20px;display:grid}.budget-header{color:#84999a;border-bottom:1px solid #e9f0ef;padding:8px 0 14px;font-size:12px}.budget-item{border-bottom:1px solid #eff3f2;padding:16px 0;font-size:14px}.budget-item:last-child{border:0}.budget-name strong{margin-bottom:10px;font-size:14px;display:block}.budget-item .track{height:5px}.editable{color:#182e35;text-align:left;background:0 0;border:0;padding:0}.editable span{color:#8aa9a3;margin-left:5px}.full{padding:15px 0}.analytics-control{color:#6a8183;align-items:center;gap:12px;margin-bottom:18px;font-size:14px;display:flex}.analytics-control select{background:#fff;border:1px solid #d9e6e3;border-radius:8px;padding:8px 12px}.analytics-row{grid-template-columns:125px 1fr 160px;align-items:center;gap:12px;margin:18px 0;font-size:12px;display:grid}.analytics-row strong{font-size:13px}.analytics-row span{text-align:right;color:#6a8183}.bar-pair{gap:3px;display:grid}.bar-pair>div{border-radius:8px;height:8px}.bar-income,.l-income{background:#4aae90}.bar-expense,.l-expense{background:#d69d80}.legend{color:#6c8284;gap:20px;margin-top:20px;font-size:12px;display:flex}.legend span{align-items:center;gap:5px;display:flex}.legend i{border-radius:50%;width:9px;height:9px}.forecast-main{background:#eaf6f1;border-radius:12px;margin-bottom:10px;padding:20px}.forecast-main small{color:#5a8177;display:block}.forecast-main strong{margin-top:8px;font-size:27px;display:block}.forecast-row{border-bottom:1px solid #e9efee;justify-content:space-between;padding:13px 0;font-size:14px;display:flex}.error{color:#9d4d37;background:#fff0e9;border-radius:10px;margin-bottom:20px;padding:13px 18px;font-size:14px}.error a{font-weight:700;text-decoration:underline}.loading{color:#758b8e;padding:40px}.mobile-nav{display:none}.modal-backdrop{z-index:10;background:#0b2d38a8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{color:#182e35;background:#fff;border-radius:18px;width:min(100%,510px);max-height:90vh;padding:26px;overflow:auto;box-shadow:0 22px 65px #092f3c4d}.modal-head{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.modal-head h2{font-size:21px}.modal-head button{color:#819496;background:0 0;border:0}.fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.fields label{color:#536c70;gap:7px;font-size:13px;font-weight:700;display:grid}.fields .span2{grid-column:span 2}.fields input,.fields select{color:#1a3338;background:#fff;border:1px solid #d5e4e1;border-radius:9px;width:100%;height:43px;padding:0 12px;font-size:15px}.fields input:focus,.fields select:focus{border-color:#278d78;outline:2px solid #8adac1}.type-tabs{background:#edf4f2;border-radius:10px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;padding:4px;display:grid}.type-tabs button{color:#6b8182;background:0 0;border:0;border-radius:8px;padding:10px 4px;font-size:13px}.type-tabs button.selected{color:#126e62;background:#fff;font-weight:700;box-shadow:0 2px 6px #173e3a17}.form-hint{color:#7b9191;margin-top:18px;font-size:12px;line-height:1.5}.submit{width:100%;margin-top:24px}@media (width<=1100px){.sidebar{width:192px}.topbar{padding:0 25px}.content{padding:28px 25px 85px}.hero-main{padding:27px}.hero-value{font-size:38px}.two-columns{gap:15px}.panel{padding:19px}}@media (width<=800px){.sidebar{display:none}.top-brand{align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.top-brand .brand-mark{width:29px;height:29px;font-size:21px}.topbar{height:71px}.two-columns,.hero{grid-template-columns:1fr}.hero-side{grid-template-columns:repeat(3,1fr);gap:14px;padding:15px 25px;display:grid}.mini-label{grid-column:1/-1;margin:0}.hero-stat{border:0;display:block}.hero-stat strong{margin-top:5px;display:block}.hero-line{margin-top:24px}.mobile-nav{z-index:5;height:69px;padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e0eae7;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#789092;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:10px;display:flex}.mobile-nav button.active{color:#116b5d;font-weight:700}.content{padding-bottom:100px}}@media (width<=570px){.topbar{flex-wrap:wrap;height:auto;min-height:68px;padding:10px 15px}.top-add{display:none}.period-control{gap:6px;margin-left:auto}.period-control div{min-width:130px}.period-control strong{font-size:13px}.period-control small{font-size:11px}.content{padding:23px 15px 105px}.page-head{margin-bottom:19px}h1{font-size:26px}.page-head .primary{padding:8px 10px;font-size:13px}.hero-main{padding:24px}.hero-value{font-size:36px}.hero-line{flex-wrap:wrap;gap:17px}.hero-side{gap:6px;padding:12px 20px}.hero-stat{font-size:12px}.hero-stat strong{font-size:13px}.panel{padding:18px}.summary-strip{gap:5px;padding:17px 11px}.summary-strip>div{padding:0 8px}.summary-strip span{min-height:28px;font-size:11px}.summary-strip strong{font-size:15px}.budget-grid{grid-template-columns:minmax(90px,2fr) repeat(3,minmax(60px,1fr));gap:5px;font-size:12px}.budget-item,.budget-name strong{font-size:12px}.budget-header{font-size:11px}.analytics-row{grid-template-columns:90px 1fr;gap:8px}.analytics-row span{text-align:left;grid-column:2}.account-row.full{flex-wrap:wrap}.account-row.full .tiny-button{text-align:right;width:100%}.tiny-button{font-size:11px}.tx-row b{font-size:13px}.fields{grid-template-columns:1fr}.fields .span2{grid-column:span 1}}.edit{color:#658d88;background:0 0;border:0;place-items:center;padding:8px;display:grid}.edit:hover{color:#146a60;background:#eaf6f2;border-radius:8px}.analytics-current-head{justify-content:space-between;align-items:start;gap:15px;margin-bottom:17px;display:flex}.analytics-current-head p{color:#829396;margin-top:5px;font-size:13px}.analytics-current-head>span{color:#7d9192;white-space:nowrap;font-size:13px}.analytics-current .summary-strip{margin-bottom:20px}.analytics-subline{color:#8b9c9d;margin-top:7px;font-size:12px;display:block}.analytics-history-title{margin:31px 0 18px}.summary-detail{color:#7d9192;margin-top:5px;font-size:11px;line-height:1.3;display:block}.hero-line{flex-wrap:wrap;row-gap:15px}.budget-uncovered-note{color:#6c8582;margin-top:5px;font-size:12px;line-height:1.35;display:block}.auth-screen{place-items:center;min-height:100vh;padding:20px;display:grid}.auth-form{width:min(100%,440px);padding:30px}.auth-form .brand{margin-bottom:25px;padding:0}.auth-form h1{margin-bottom:20px;font-size:25px}.auth-form p{color:#536c70;margin-bottom:20px;line-height:1.5}.auth-form .error{margin-top:20px}.local-tools{background:#fff;border-bottom:1px solid #e5eeee;justify-content:flex-end;gap:18px;padding:8px 20px;display:flex}.local-tools button{color:#146a60;background:0 0;border:0;padding:5px;font-size:14px}.import-file{gap:12px;margin:25px 0;font-weight:700;display:grid}.modal p{line-height:1.5}.modal a{text-decoration:none}.category-intro{color:#6b8284;margin-bottom:20px;font-size:14px;line-height:1.5}.category-row{border-bottom:1px solid #eaf0ee;align-items:center;gap:6px;padding:15px 0;display:flex}.category-row:last-child{border-bottom:0}.category-row>div{flex:1;min-width:0}.category-row strong{overflow-wrap:anywhere;font-size:14px;display:block}.category-row small{color:#809496;margin-top:5px;font-size:12px;line-height:1.4;display:block}.category-row button{flex:none}.local-tools{flex-wrap:wrap;align-items:center}.local-tools .current-user{color:#536c70;overflow-wrap:anywhere;margin-right:auto;font-size:13px}.user-settings{max-height:90vh;overflow-y:auto}.user-settings h3{margin:24px 0 14px;font-size:16px}.users-list{margin:16px 0;padding:0;list-style:none}.users-list li{overflow-wrap:anywhere;border-bottom:1px solid #eaf0ee;justify-content:space-between;gap:16px;padding:10px 0;display:flex}.users-list span{color:#809496;font-size:12px}.editable:disabled{cursor:default;opacity:1;color:inherit}.category-warning{color:#755832;background:#fff7e9;border:1px solid #edd4a6;border-radius:10px;margin-top:18px;padding:14px;font-size:14px;line-height:1.5}.category-confirm{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:18px;margin-top:24px;display:flex}.danger-button{color:#fff;background:#bb4e41;border:0;border-radius:9px;padding:12px 16px;font-size:14px;font-weight:700}.danger-button:disabled{opacity:.6}.transaction-filters{flex-wrap:wrap;align-items:end;gap:16px;margin:8px 0 20px;display:flex}.transaction-filters label{color:#536c70;flex:1;gap:7px;min-width:180px;font-size:13px;font-weight:700;display:grid}.transaction-filters select,.transaction-filters input{color:#1a3338;background:#fff;border:1px solid #d5e4e1;border-radius:9px;width:100%;height:43px;padding:0 12px}.transaction-filters select:disabled{color:#8a9b9c;background:#f1f5f4}.transaction-filters button{padding:12px 0}.transaction-filters button:disabled{opacity:.45;cursor:default}.filtered-totals{background:#f2f8f5;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:18px;display:grid}.filtered-totals span,.filtered-totals strong{display:block}.filtered-totals span{color:#6a8283;margin-bottom:7px;font-size:12px}.filtered-totals strong{overflow-wrap:anywhere;font-size:19px}.filter-summary-note{color:#7b9191;margin:12px 0 18px;font-size:12px;line-height:1.5}.expense-pie-panel{margin-bottom:20px}.expense-pie-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:32px;display:grid}.expense-pie-figure{text-align:center;margin:0}.expense-pie-figure svg{width:100%;max-width:240px;margin:auto;display:block}.expense-pie-figure figcaption span,.expense-pie-figure figcaption strong{display:block}.expense-pie-figure figcaption span{color:#7b9191;margin:10px 0 6px;font-size:12px}.expense-pie-figure figcaption strong{font-size:21px}.expense-pie-legend{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin:0;padding:0;list-style:none;display:grid}.expense-pie-legend li{border-bottom:1px solid #edf2f0;align-items:center;gap:9px;min-width:0;padding:10px 0;font-size:13px;display:flex}.expense-pie-legend i{border-radius:3px;flex:none;width:10px;height:10px}.expense-pie-legend li>span{overflow-wrap:anywhere;flex:1;min-width:0}.expense-pie-legend li>div{text-align:right;flex:none}.expense-pie-legend strong{font-size:12px}.expense-pie-legend small{color:#7b9191;margin-top:4px;display:block}@media (width<=1100px){.expense-pie-legend{grid-template-columns:1fr}}@media (width<=570px){.filtered-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.filtered-totals strong{font-size:17px}.transaction-filters label{min-width:100%}.expense-pie-layout{grid-template-columns:1fr;gap:18px}.expense-pie-figure svg{max-width:220px}}.account-amount{text-align:right;flex:none}.account-amount b{display:block}.account-row .account-amount small{color:#9a784b;white-space:normal;margin-top:5px;font-size:12px;line-height:1.4}.name-link,.count-link{color:inherit;font:inherit;text-align:left;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.name-link{font-weight:700}.name-link:hover,.count-link:hover{color:var(--accent,#427766)}.name-link:focus-visible,.count-link:focus-visible{outline-offset:3px;outline:2px solid #427766}.transaction-filters{flex-wrap:wrap}.total-filter{max-width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;padding:0;display:inline-flex}.total-filter:hover strong{text-underline-offset:4px;text-decoration:underline}.total-filter:focus-visible{outline-offset:4px;outline:2px solid #146a60}.total-filter svg{color:#146a60;flex:none}.loan-card{margin-top:20px}.loan-table-scroll{margin-top:16px;overflow-x:auto}.loan-table{border-collapse:collapse;white-space:nowrap;width:100%}.loan-table th,.loan-table td{text-align:left;border-bottom:1px solid #e0eae7;padding:12px}.loan-card summary{cursor:pointer;padding:12px 0;font-weight:600}.loan-table .text-button{margin-left:10px}@media (width<=800px){.mobile-nav{justify-content:flex-start;overflow-x:auto}.mobile-nav button{flex:1 0 64px;min-width:64px}}.fields textarea{box-sizing:border-box;width:100%;min-height:180px;font:inherit;resize:vertical;color:#182e35;background:#fff;border:1px solid #d7e3df;border-radius:10px;padding:12px}.loan-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;margin:16px 0;display:flex}.loan-actions .text-button{margin:0}.loan-category-select,.income-plan-select{flex-direction:column;gap:8px;max-width:100%;margin:16px 0;display:flex}.income-plan-row{border-bottom:1px solid #e0eae7;flex-wrap:wrap;align-items:center;gap:14px;padding:20px 0;display:flex}.income-plan-row>div:first-child{flex:1;min-width:180px}.income-plan-row small{color:#789092;margin-top:6px;display:block}.income-plan-row .loan-actions{width:100%;margin:0}.income-forecast{margin-bottom:20px}.bank-schedule-modal{width:min(100%,760px)}.bank-schedule-modal textarea{width:100%;font:inherit;resize:vertical;min-height:180px}.summary-strip.income-forecast{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-link{color:#146a60;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.forecast-link:hover{color:#0d4d44}.forecast-link:focus-visible{outline-offset:4px;border-radius:2px;outline:2px solid #146a60}.expense-schedule-row{border-bottom:1px solid #e0eae7;flex-wrap:wrap;align-items:center;gap:16px;padding:12px 0;display:flex}.expense-schedule-row b{margin-left:auto}.expense-schedule-row>span:last-of-type{color:#789092}.loan-recalculate{align-items:center;gap:10px;margin:18px 0;display:flex}.loan-recalculate input{width:auto}.budget-close{color:#536c70;cursor:pointer;align-items:center;gap:7px;width:fit-content;margin:0 0 10px;font-size:12px;display:flex}.budget-close input{accent-color:#289a75;width:16px;height:16px;margin:0}:is(.budget-close:has(input:checked),.budget-closed-note){color:#238366}.budget-close:has(input:disabled){cursor:default}.budget-closed-note{margin-top:7px;font-size:11px;display:block}.breadcrumbs{color:#536c70;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:18px;font-size:13px;display:flex}.breadcrumbs button{color:#146a60;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;display:flex}.breadcrumbs button:hover{text-decoration:underline}.breadcrumbs button:focus-visible{outline-offset:3px;outline:2px solid #427766}.breadcrumbs span{overflow-wrap:anywhere}@media (width>=801px) and (height<=700px){.sidebar{padding:12px 14px}.sidebar nav{gap:3px}.navitem{gap:10px;padding:9px 10px;font-size:14px}.side-foot{padding-top:12px}}@media (width>=801px) and (width<=1100px){.sidebar .brand{gap:8px;padding:0 6px;font-size:17px}.sidebar .brand-mark{flex-shrink:0;width:30px;height:30px;font-size:22px}.navitem{gap:10px;padding-left:10px;padding-right:10px}}.sidebar{transition:width .18s}.sidebar-toggle{border:0;flex-shrink:0;padding:0}.sidebar-toggle:hover{background:#a9eed3}.sidebar-toggle:focus-visible,.sidebar .navitem:focus-visible{outline-offset:2px;outline:2px solid #a9eed3}.sidebar.sidebar-collapsed{width:72px;padding-left:10px;padding-right:10px}.sidebar-collapsed .brand{justify-content:center;padding:0}.sidebar.sidebar-collapsed .brand-mark{width:35px;height:35px;font-size:25px}.sidebar-collapsed .brand-name,.sidebar-collapsed .navitem span,.sidebar-collapsed .side-foot>div{display:none}.sidebar-collapsed nav{margin-top:24px}.sidebar-collapsed .navitem{justify-content:center;gap:0;padding:11px 0}.sidebar .navitem svg{flex-shrink:0}.sidebar-collapsed .side-foot{text-align:center;padding:12px 0 0}.sidebar-collapsed .side-foot small{white-space:nowrap;font-size:10px}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.income-period{margin-top:32px}.main{position:relative}.topbar{padding-right:80px}.account-menu{z-index:6;position:absolute;top:12px;right:18px}.account-menu>summary{color:#146a60;cursor:pointer;background:#fff;border:1px solid #dde8e7;border-radius:9px;align-items:center;gap:4px;padding:9px;list-style:none;display:flex}.account-menu>summary::-webkit-details-marker{display:none}.account-menu>summary:hover,.account-menu[open]>summary{background:#eaf4f0}.account-menu>summary:focus-visible{outline-offset:2px;outline:2px solid #146a60}.account-menu .local-tools{background:#fff;border:1px solid #dde8e7;border-radius:12px;align-items:stretch;gap:4px;width:260px;max-width:calc(100vw - 24px);padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 28px #0f354025}.account-menu .local-tools .current-user{border-bottom:1px solid #e5eeee;margin:0;padding:6px 8px 10px}.account-menu .local-tools button{text-align:left;border-radius:7px;padding:10px 8px}.account-menu .local-tools button:hover{background:#eaf4f0}.breadcrumbs,.operations-list{scroll-margin-top:16px}.page-head{align-items:center}@media (width<=570px){.account-menu{top:10px;right:12px}.topbar{padding-right:72px}.page-head{flex-wrap:wrap}.income-period{margin-top:26px}.overview-head{flex-wrap:nowrap}.overview-head>div{min-width:0}.overview-head>.primary{flex-shrink:0;gap:6px;font-size:12px}}.analytics-filters{margin-bottom:24px}.analytics-switches{flex-wrap:wrap;gap:20px 32px;display:flex}.analytics-switches fieldset{border:0;margin:0;padding:0}.analytics-switches legend,.analytics-range label{color:#536c70;font-size:13px;font-weight:600}.analytics-switches legend{margin-bottom:8px}.segmented{background:#edf3f2;border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{color:#536c70;background:0 0;border:0;border-radius:8px;padding:9px 15px}.segmented button[aria-pressed=true]{color:#fff;background:#146a60}.segmented button:focus-visible{outline-offset:2px;outline:2px solid #427766}.analytics-range{flex-wrap:wrap;gap:16px;margin-top:20px;display:flex}.analytics-range label{gap:8px;min-width:170px;display:grid}.analytics-range select,.analytics-range input{color:#182e35;background:#fff;border:1px solid #dce7e4;border-radius:8px;min-width:0;padding:10px}.analytics-filters .form-hint{margin:16px 0 0}.analytics-graph-scroll{overflow-x:auto}.analytics-graph{width:100%;min-width:520px;display:block}.analytics-values{margin-top:12px}.analytics-values summary{cursor:pointer;color:#146a60;font-size:13px}.analytics-values table{border-collapse:collapse;width:100%;margin-top:12px;font-size:13px}.analytics-values th,.analytics-values td{text-align:left;border-bottom:1px solid #e0eae7;padding:10px}.analytics-values th:last-child,.analytics-values td:last-child{text-align:right}@media (width<=570px){.analytics-range label{width:100%}.analytics-switches{gap:16px}.expense-pie-panel .panel-head{flex-wrap:wrap}}.expense-pie-panel{scroll-margin-top:16px}.analytics-graph-legend{color:#536c70;flex-wrap:wrap;gap:10px 20px;margin:8px 0 20px;padding:0;font-size:13px;list-style:none;display:flex}.analytics-graph-legend li{align-items:center;gap:7px;display:flex}.analytics-graph-legend i,.analytics-category-choices i{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:block}.analytics-values-scroll{overflow-x:auto}.analytics-values table{white-space:nowrap}.analytics-category-picker{margin-top:18px}.analytics-category-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;display:grid}.analytics-category-choices label{cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:8px;font-size:13px;display:flex}.analytics-category-choices label:hover{background:#edf3f2}.analytics-category-choices input{accent-color:#146a60;flex-shrink:0;width:17px;height:17px}.analytics-category-choices span{overflow-wrap:anywhere;min-width:0}.analytics-category-choices small{white-space:nowrap;color:#536c70;margin-left:auto}@media (width<=800px){.analytics-category-choices{grid-template-columns:1fr}}.loan-rate-estimate{background:var(--surface-soft,#f5f7fa);border-radius:12px;margin:12px 0 20px;padding:12px 16px}.loan-rate-estimate>p{margin:0 0 6px}.loan-rate-estimate summary{cursor:pointer;font-size:13px}.loan-rate-estimate .form-hint{margin:8px 0 0}.loan-period-details h2{margin-bottom:12px}.loan-period-row{border-bottom:1px solid #e0eae7;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;display:flex}.loan-period-row:last-child{border-bottom:0}.loan-period-row strong{overflow-wrap:anywhere;min-width:0}.loan-period-row b{white-space:nowrap}.scheduled-budget-names{color:#789092;overflow-wrap:anywhere;margin-top:6px;display:block}.scheduled-budget-link{margin-top:6px;font-size:12px}.scheduled-budget-categories .panel-head p{max-width:800px}@media (width<=570px){.scheduled-budget-categories .budget-header{display:none}.scheduled-budget-categories .budget-item{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px}.scheduled-budget-categories .budget-name{grid-column:1/-1}.scheduled-budget-categories [data-label]{white-space:nowrap;font-size:12px}.scheduled-budget-categories [data-label]:before{content:attr(data-label);color:#789092;white-space:normal;margin-bottom:6px;font-size:11px;font-weight:400;display:block}}.type-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.tx-sign.refund{color:#6a65a7;background:#eef0fa}@media (width<=570px){.type-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}.budget-compact .analytics-category-amount{white-space:normal;overflow-wrap:anywhere;text-align:right;min-width:0}.overview-budget-row{flex-wrap:wrap;align-items:baseline}.overview-budget-row>strong{flex:120px;min-width:0}.overview-budget-amounts{text-align:right;gap:4px;margin-left:auto;display:grid}.payroll-modal{width:min(760px,100%)}.payroll-sources{gap:10px;margin:14px 0;display:grid}.payroll-sources>div{overflow-wrap:anywhere;background:#f4f7f7;border-radius:10px;gap:5px;padding:12px;display:grid}.payroll-sources span{color:#536c70;font-size:13px}.payroll-plan{border:1px solid #dce7e4;border-radius:12px;min-width:0;margin:20px 0;padding:16px}.payroll-plan legend{padding:0 8px;font-weight:700}.payroll-modal .fields select{width:100%;min-width:0}.account-exclude{color:#536c70;cursor:pointer;align-items:center;gap:7px;margin-top:9px;font-size:12px;display:flex}.account-exclude input{accent-color:#289a75;flex-shrink:0;width:16px;height:16px;margin:0}.account-exclude:has(input:disabled){cursor:default}.account-row.full>div:nth-child(2){min-width:0}.account-row.full .account-exclude span{white-space:normal}.account-actions{flex-direction:column;align-items:flex-start;gap:8px;min-width:140px;display:flex}.account-actions .text-button{font-size:12px}.account-actions button:disabled{opacity:.45;cursor:not-allowed}@media (width<=800px){.account-row.full .account-actions{flex-flow:wrap;flex-basis:100%;gap:12px;min-width:0}.account-row.full .account-actions .tiny-button{width:auto}}.analytics-category-link{color:#146a60;text-underline-offset:3px;overflow-wrap:anywhere;text-decoration:underline;text-decoration-thickness:1px}.analytics-category-link:hover{color:#0c4e45}.analytics-category-link:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid #146a60}.overview-accounts{grid-template-columns:1fr}.period-choice{background:#fffbf1;border:1px solid #e3c58b;border-radius:11px;margin-top:19px;padding:14px 15px}.period-choice legend{color:#70572b;padding:0 5px;font-size:14px;font-weight:700}.period-choice p{color:#735f3f;margin:4px 0 13px;font-size:13px;line-height:1.45}.period-choice label{color:#30474b;cursor:pointer;align-items:flex-start;gap:10px;padding:10px 0;display:flex}.period-choice input{accent-color:#146a60;flex:none;margin-top:3px}.period-choice strong,.period-choice small{display:block}.period-choice strong{font-size:14px}.period-choice small{color:#728486;margin-top:4px;font-size:12px}button.tx-sign.refund-shortcut{cursor:pointer;border:0;padding:0;font-family:inherit;transition:box-shadow .15s,filter .15s}button.tx-sign.refund-shortcut:hover{filter:brightness(.96);box-shadow:0 0 0 2px #c46e5640}button.tx-sign.refund-shortcut:focus-visible{outline-offset:3px;outline:2px solid #30867c}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@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}
