
:root{--bg:#f5f6f2;--white:#fff;--ink:#20372f;--muted:#7b8580;--line:#e5e9e2;--green:#244f40;--lime:#d9edab;--soft:#edf3e7;--orange:#bd693e;--peach:#fbefe6;--red:#b84d41}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #9bbf77;outline-offset:3px}button{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,p{margin:0}button{border:0;background:none}aside{position:fixed;inset:0 auto 0 0;width:238px;background:#183e34;color:#e3eee7;padding:34px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:24px;letter-spacing:-1px;padding:0 13px}.brand-mark{display:grid;place-items:center;background:var(--lime);color:#244f40;border-radius:10px;width:32px;height:34px}.brand-mark svg{width:23px;height:23px}.brand small{color:var(--lime)}.workspace{margin:40px 0 26px;border:1px solid #ffffff26;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}.workspace svg{color:#bfd4c6}.workspace select{width:100%;background:transparent;color:#fff;border:0;font-size:13px;font-weight:600;outline:none}.workspace option{color:#20372f;background:#fff}.workspace small{font-size:10px;display:block;text-transform:uppercase;letter-spacing:1px;color:#a4beb0;margin-left:4px}nav{display:grid;gap:7px}nav button{padding:13px 14px;text-align:left;display:flex;align-items:center;gap:12px;color:#b5cbbf;border-radius:9px;font-weight:500}nav button:hover{background:#ffffff0b}nav button.active{background:#d9edab;color:#244332}nav .count{margin-left:auto;background:#ffffff19;border-radius:5px;font-size:11px;padding:0 6px}nav button.active .count{background:#24433213}.side-bottom{margin-top:auto}.privacy{margin:25px 10px;padding:18px 2px;border-top:1px solid #ffffff1a;color:#a9c5b5;font-size:12px;display:flex;gap:10px}.profile{display:flex;gap:10px;align-items:center;padding:0 10px}.avatar{background:#d7e2cb;color:#254b3c;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;font-size:12px;font-weight:700}.profile small{display:block;color:#9fbeab;font-size:11px}main{margin-left:238px;min-height:100vh}.topbar{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#ffffff70}.crumb{color:#838d86;font-size:12px;display:flex;gap:10px;align-items:center}.crumb span{color:var(--ink)}.top-actions{display:flex;gap:15px;align-items:center}.demo-badge{font-size:11px;background:#edeedc;border:1px solid #e1e3ca;padding:5px 10px;border-radius:30px;color:#6f7450}.content{max-width:1440px;margin:auto;padding:34px 42px 28px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px;gap:15px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#738174;text-transform:uppercase;margin-bottom:7px}h1{font-size:30px;font-weight:600;letter-spacing:-1.1px;line-height:1.25}.subtitle{color:var(--muted);margin-top:8px;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:8px;background:var(--green);color:#fff;font-size:12px;font-weight:600;white-space:nowrap}.btn:hover{filter:brightness(1.1)}.btn.light{background:white;border:1px solid var(--line);color:var(--ink)}.btn.small{padding:8px 12px;font-size:11px}.btn.text{color:var(--green);background:transparent;padding:4px 0}.btn svg{width:16px;height:16px}.month{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px 9px;font-size:12px;font-weight:600}.month button{padding:3px;display:flex;color:#899087}.month svg{width:15px;height:15px}.heading-actions{display:flex;gap:10px;align-items:center}.stat-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;margin-bottom:24px}.card{background:var(--white);border:1px solid var(--line);border-radius:13px;padding:23px;min-width:0}.stat{min-height:166px;position:relative;overflow:hidden}.stat.primary{background:var(--green);color:white;border-color:var(--green)}.stat.primary:after{content:"";position:absolute;width:180px;height:180px;border:1px solid #ffffff0c;border-radius:50%;right:-68px;top:-44px;box-shadow:0 0 0 27px #ffffff03,0 0 0 54px #ffffff03}.stat-label{display:flex;align-items:center;gap:8px;font-size:12px;color:#6a796f}.primary .stat-label{color:#d2e1d2}.stat-label svg{width:16px;height:16px}.stat-number{font-size:32px;letter-spacing:-1px;font-weight:600;margin:10px 0 9px;font-variant-numeric:tabular-nums}.stat-foot{font-size:11px;color:var(--muted)}.primary .stat-foot{color:#c3d7ba}.stat.primary .stat-number{color:#e5f3c7}.trend{color:#49704a;font-size:11px;background:#f0f5eb;padding:3px 7px;border-radius:4px;margin-right:5px}.two-col{display:grid;grid-template-columns:minmax(0,1.64fr) minmax(285px,1fr);gap:23px;align-items:start}.stack{display:grid;gap:23px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px}h2{font-size:16px;font-weight:600;letter-spacing:-.3px}h3{font-size:14px;font-weight:600}.card-sub{font-size:11px;color:var(--muted);margin-top:3px}.badge{font-size:10px;background:var(--soft);color:#567449;padding:4px 8px;border-radius:5px;white-space:nowrap}.badge.warn{background:#f9e7d9;color:#a7683e}.badge.overdue{background:#fae9e5;color:#ad5b48}.budget-item{margin:19px 0}.budget-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px}.category{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500}.category-icon{height:31px;width:31px;background:#f2f3ec;border-radius:8px;display:grid;place-items:center}.category-icon svg{width:16px;height:16px}.amounts{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.amounts span{color:#91998f;font-size:11px}.bar{height:6px;background:#f0f2ec;border-radius:8px;display:flex;overflow:hidden}.bar .paid{background:#87a079;display:block;border-radius:8px}.bar .reserved{display:block;background:repeating-linear-gradient(120deg,#dab38a,#dab38a 3px,#efddc8 3px,#efddc8 6px)}.budget-bottom{display:flex;justify-content:space-between;font-size:10px;color:#91988f;margin-top:7px}.legend{display:flex;gap:18px;font-size:10px;color:#8a958c;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8ba57c;margin-right:5px}.dot.amber{background:#dab38a}.open-card{background:#fffcf7;border-color:#eee5d6}.open-title{display:flex;align-items:center;gap:9px}.open-title svg{color:#b38550;width:18px;height:18px}.due-item{border:1px solid #eadfcf;border-radius:9px;padding:15px;background:#fff;margin-top:12px}.due-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.due-title{font-weight:600;font-size:12px}.due-meta{color:var(--muted);font-size:10px;margin-top:3px}.due-sum{font-size:23px;font-weight:600;letter-spacing:-.5px;margin:10px 0 7px}.due-sum small{font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}.payment-track{height:4px;background:#f0eae0;border-radius:5px;margin:10px 0}.payment-track span{display:block;height:4px;border-radius:5px;background:#bda174}.due-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:12px}.note{font-size:10px;color:#9a8a72;margin-top:14px;display:flex;align-items:flex-start;gap:7px}.note svg{width:14px;height:14px;flex-shrink:0;margin-top:1px}.debt-total{font-size:27px;font-weight:600;letter-spacing:-.8px;margin:0 0 15px}.debt-row{display:flex;align-items:center;gap:11px;padding:13px 0;border-top:1px solid var(--line)}.debt-row .value{margin-left:auto;font-size:12px;font-weight:600}.debt-row p{font-size:12px}.debt-row small{display:block;color:var(--muted);font-size:10px}.table{width:100%;border-collapse:collapse;text-align:left}.table th{font-size:10px;color:#899388;font-weight:500;padding:0 10px 12px;border-bottom:1px solid var(--line)}.table td{padding:13px 10px;border-bottom:1px solid #eef0e9;font-size:12px}.table td:first-child,.table th:first-child{padding-left:0}.table td:last-child,.table th:last-child{text-align:right;padding-right:0}.table tr:last-child td{border-bottom:0}.transaction-name{display:flex;align-items:center;gap:10px}.transaction-name small{font-size:10px;color:var(--muted);display:block}.positive{color:#5a8053}.empty{padding:26px 8px;text-align:center;color:var(--muted);font-size:12px}.footer{display:flex;justify-content:space-between;gap:20px;margin-top:26px;font-size:10px;color:#929b91}.footer span{display:flex;align-items:center;gap:6px}.footer svg{width:13px;height:13px}.info-banner{background:#eef2e6;border:1px solid #e1e8d5;border-radius:9px;padding:14px 16px;display:flex;gap:10px;font-size:12px;color:#657459;margin-bottom:23px}.info-banner svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}.filters{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.filters input,.filters select{border:1px solid var(--line);padding:10px 12px;border-radius:7px;background:#fff;color:var(--ink)}.filters input{flex:1;min-width:160px}.wide-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.wide-list .due-item{margin:0;padding:22px}.budget-input{width:95px;padding:7px 8px;border:1px solid var(--line);border-radius:6px;color:var(--ink);text-align:right;background:#fbfcf9}.summary-row{display:flex;gap:30px;flex-wrap:wrap;padding:18px 0 0;border-top:1px solid var(--line);margin-top:15px;font-size:11px;color:var(--muted)}.summary-row strong{display:block;font-size:19px;margin-top:3px;color:var(--ink)}.section-space{margin-top:24px}.debt-detail .debt-total{margin:18px 0}.debt-detail .details{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);font-size:12px}.debt-detail .details span{color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:#142c2466;backdrop-filter:blur(4px);display:grid;place-items:center;z-index:50;padding:20px}.modal{background:#fff;border-radius:16px;width:460px;max-width:100%;max-height:90vh;overflow:auto;box-shadow:0 20px 80px #142c2433;padding:28px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-head h2{font-size:20px}.close{padding:5px;color:#7c8b7d;display:flex}.field{margin-bottom:16px}.field label{font-size:11px;font-weight:600;display:block;margin-bottom:6px}.field input,.field select{display:block;width:100%;border:1px solid #dce3d8;border-radius:7px;padding:11px;color:var(--ink);background:#fcfdfb;outline:none}.field input:focus,.field select:focus{border-color:#87a374;box-shadow:0 0 0 3px #edf3e7}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.form-note{font-size:11px;color:var(--muted);line-height:1.6}.toast{position:fixed;bottom:26px;left:calc(50% + 119px);transform:translateX(-50%);z-index:80;background:#244f40;color:white;padding:13px 22px;border-radius:10px;box-shadow:0 6px 24px #183e3426;font-size:12px;max-width:90vw}.mobile-menu{display:none}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:38px;margin:25px 0}.donut{width:175px;height:175px;border-radius:50%;position:relative;display:grid;place-items:center}.donut:before{content:"";position:absolute;inset:24px;background:white;border-radius:50%}.donut-label{position:relative;text-align:center;font-size:20px;font-weight:600;letter-spacing:-.5px}.donut-label small{display:block;font-size:10px;color:var(--muted);font-weight:400;letter-spacing:0}.chart-legend{display:grid;gap:12px;font-size:12px}.chart-legend .dot{margin-right:8px}.chart-legend small{display:block;margin-left:15px;font-size:11px;color:var(--muted)}.safe-message{padding:20px;background:#f5f7ef;border-radius:9px;font-size:12px;color:#63725b;margin-top:15px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.settings-row:last-child{border:0}.settings-row p{font-weight:600}.settings-row small{color:var(--muted)}
@media(min-width:1450px){.content{padding-top:42px}.stat{min-height:180px}.stat-number{font-size:36px}.card{padding:26px}.budget-item{margin:22px 0}}
@media(max-width:1150px){aside{width:210px;padding:30px 14px}.brand{font-size:22px}main{margin-left:210px}.content{padding:28px}.topbar{padding:0 28px}.heading{align-items:flex-start}.heading-actions{flex-direction:column;align-items:flex-end}.two-col{grid-template-columns:1.4fr 1fr;gap:16px}.card{padding:18px}.stat-grid{gap:14px}.stat-number{font-size:28px}.toast{left:calc(50% + 105px)}}
@media(max-width:900px){.two-col{grid-template-columns:1fr}.right-stack{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1.2fr 1fr}.stat-grid .stat:last-child{grid-column:1/-1;min-height:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.stat-grid .stat:last-child .stat-number{margin:0}.stat-grid .stat:last-child .stat-foot{max-width:150px}.table .hide-small{display:none}.wide-list{grid-template-columns:1fr}.donut-wrap{gap:20px}}
@media(max-width:650px){aside{transform:translateX(-100%);transition:transform .2s;width:238px}body.menu-open aside{transform:translateX(0);box-shadow:0 0 0 100vmax #152d2660}.mobile-menu{display:flex;padding:4px}.topbar{height:65px;padding:0 18px}.crumb{gap:9px}.content{padding:24px 17px}main{margin-left:0}.heading{flex-direction:column;gap:18px}h1{font-size:28px}.heading-actions{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.month{gap:8px;font-size:11px}.btn{padding:10px 12px}.stat-grid{gap:10px;grid-template-columns:1fr 1fr}.stat{padding:16px;min-height:159px}.stat-number{font-size:25px}.stat-label{font-size:11px}.stat-foot{font-size:10px}.stat-grid .stat:last-child .stat-foot{display:none}.stat-grid .stat:last-child .stat-number{font-size:24px}.right-stack{grid-template-columns:1fr}.card{padding:19px}.footer{flex-direction:column;gap:8px}.toast{left:50%;width:max-content}.demo-badge{font-size:10px;padding:4px 8px}.top-actions{gap:8px}.top-actions .avatar{display:none}.table td{padding:13px 6px;font-size:11px}.table th{padding:0 6px 12px}.table .category-icon{display:none}.table .badge{font-size:9px}.budget-input{width:73px}.summary-row{gap:20px}.donut-wrap{flex-direction:column}.chart-legend{grid-template-columns:1fr 1fr;gap:16px}.settings-row{align-items:flex-start;flex-direction:column}}

aside{overflow-y:auto}.side-bottom{padding-top:20px}nav{gap:5px}nav button{padding:12px 14px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;color:#78907b;border:1px solid transparent;flex-shrink:0}.icon-button:hover{background:#edf3e7;border-color:#e1e8d5;color:var(--green)}.icon-button svg{width:16px;height:16px}.transaction-link{text-align:left;padding:0;font-size:12px;font-weight:500;line-height:1.4}.transaction-link:hover{text-decoration:underline;text-underline-offset:3px}.transaction-table .number-cell{text-align:right;font-weight:500;white-space:nowrap}.transaction-table td:last-child{width:35px;padding-left:6px}.transaction-table td{padding-top:12px;padding-bottom:12px}.transaction-name>div{min-width:0;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.delete-link{display:flex;align-items:center;gap:7px;color:#b25b4c;padding:9px 0;font-size:12px;margin-top:12px}.delete-link svg{width:15px;height:15px}.destructive{background:#ae5749!important}.danger:hover{color:#ae5749;background:#fae9e5;border-color:#edd8d2}.scheduled-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;border-top:1px solid var(--line)}.scheduled-info{display:flex;gap:10px;align-items:center;min-width:0}.scheduled-info h2,.scheduled-info h3{overflow-wrap:anywhere}.scheduled-right{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}.scheduled-right strong{font-size:14px;font-weight:600}.recurrence-amount{font-size:28px;letter-spacing:-.7px;font-weight:600;margin:22px 0 7px}.recurrence-amount small{font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}.rule-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:22px;padding-top:17px;border-top:1px solid var(--line)}.rule-actions .icon-button{margin-left:auto}.field select:disabled{background:#eff2eb;color:#64765f}.recurrence-card .due-top{align-items:flex-start}.recurrence-card .badge{margin-top:4px}
@media(max-width:650px){.transaction-link{font-size:11px}.transaction-table .number-cell{font-size:10px}.transaction-table td{padding-left:3px;padding-right:3px}.transaction-table td:last-child{padding-left:2px;width:29px}.transaction-table .icon-button{width:27px;height:30px}.scheduled-row{gap:10px;flex-wrap:wrap}.scheduled-info h3{font-size:12px}.scheduled-info .category-icon{display:none}.scheduled-right strong{font-size:13px}.scheduled-right .btn{font-size:10px}.recurrence-card .scheduled-info .category-icon{display:grid}.rule-actions .btn{padding:8px 10px}aside{padding-top:24px;padding-bottom:24px}.workspace{margin-top:26px;margin-bottom:18px}.privacy{margin-top:12px;margin-bottom:16px}}

.modal{max-width:calc(100vw - 40px);min-width:0}.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.field input,.field select{min-width:0}.modal-head h2{min-width:0}.modal-head .close{flex-shrink:0}
@media(max-width:650px){.modal{padding:22px}.modal-head h2{font-size:19px}.fields{gap:10px}.modal .field input,.modal .field select{font-size:14px;padding:10px 8px}}
@media(prefers-reduced-motion:reduce){aside{transition:none}}

.savings-explainer{display:flex;gap:10px;font-size:12px;align-items:flex-start;color:#78836e;border:1px solid #e0e7d7;border-radius:9px;padding:15px 18px;margin-bottom:27px;background:#f0f4e8}.savings-explainer svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}.savings-goals{display:grid;gap:18px}.featured-goal{background:linear-gradient(115deg,#f9fcf4,#fff);border-color:#dce7cf}.goal-icon{width:40px;height:40px;display:grid;place-items:center;background:#e9f1dc;color:#607d50;border-radius:11px;flex-shrink:0}.goal-icon svg{width:21px;height:21px}.goal-amount{display:flex;align-items:baseline;gap:8px;margin-top:23px;margin-bottom:15px;flex-wrap:wrap}.goal-amount strong{font-size:29px;font-weight:600;letter-spacing:-.8px}.goal-amount>span:not(.badge){font-size:11px;color:var(--muted)}.goal-amount .badge{margin-left:auto;align-self:center}.goal-bar{height:8px}.goal-bar .paid{background:#729367}.goal-numbers{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#88917f;margin-top:9px;flex-wrap:wrap}.goal-numbers strong{font-weight:500;color:#637859}.goal-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:23px;padding-top:18px;border-top:1px solid var(--line)}.goal-details small{font-size:10px;display:block;color:var(--muted);margin-bottom:3px}.goal-details strong{font-size:15px;font-weight:600}.goal-month{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#819078;margin:17px 0 0;background:#f2f5ec;padding:9px 11px;border-radius:6px}.goal-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:17px}.goal-actions .btn.text{margin-left:auto;font-size:11px}.savings-account{padding:20px 0;border-top:1px solid var(--line)}.savings-account:first-of-type{border-top:0}.savings-account .scheduled-info{gap:8px}.savings-account h3{font-size:12px}.account-amount{font-size:25px;font-weight:600;letter-spacing:-.6px;margin:12px 0}.account-breakdown{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.account-breakdown strong{display:block;margin-top:3px;font-size:12px;font-weight:500;color:#667b5c}.savings-guide{background:#f0f4e9}.movement-detail{display:block;font-size:10px;color:var(--muted);margin-top:2px}.savings-goal .due-top .icon-button{align-self:flex-start}nav button{padding-top:11px;padding-bottom:11px}
@media(max-width:650px){.savings-goal{padding:18px}.savings-goal h2{font-size:14px}.goal-icon{width:33px;height:36px}.savings-goal .scheduled-info{gap:8px}.savings-goal .scheduled-info .category-icon{display:grid}.goal-amount strong{font-size:26px}.goal-amount{gap:6px}.goal-amount .badge{font-size:9px}.goal-month{flex-wrap:wrap}.goal-actions{gap:7px}.goal-actions .btn{font-size:10px;padding:9px 10px}.goal-actions .btn.text{margin-left:0;padding-left:0}.goal-details{gap:12px}.goal-details strong{font-size:14px}.savings-explainer{padding:13px}.card-head>.btn.small{font-size:10px;padding:9px 10px}.card-head h2{font-size:15px}}
@media(max-width:380px){.heading-actions{flex-wrap:wrap}.heading-actions>.btn{margin-left:auto}.topbar{padding-left:12px;padding-right:12px}.crumb{font-size:10px;gap:6px}.demo-badge{font-size:9px}.card-head{flex-wrap:wrap}}

.cash-out-card .stat-number{margin-bottom:9px}.cash-out-detail{display:grid;gap:5px;font-size:10px;color:#7c8979}.cash-out-detail>span{display:flex;align-items:center;gap:5px;justify-content:space-between}.cash-out-detail strong{font-size:11px;font-weight:500;color:#536c4e;white-space:nowrap;margin-left:auto}.cash-out-detail svg{width:13px;height:13px}.saving-line{color:#678049}.cash-result{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#edf3e5;border-radius:8px;padding:15px;margin-top:16px;font-size:12px}.cash-result strong{font-size:20px;letter-spacing:-.5px;white-space:nowrap}.saving-ledger-row .category-icon{background:#eef3e4;color:#7c9256}.saving-budget-row{background:#f5f8ee}.saving-budget-row td:first-child{padding-left:9px}.saving-budget-row td:last-child{padding-right:9px}.savings-budget-item{border-top:1px solid var(--line);padding-top:18px}.savings-budget-item .budget-bottom{flex-wrap:wrap;gap:5px}.saving-budget-row .transaction-link{text-align:left}
@media(max-width:900px){.stat-grid .stat.cash-out-card:last-child{display:grid;grid-template-columns:1fr auto;gap:10px 20px}.stat-grid .stat.cash-out-card:last-child .stat-label{grid-column:1;grid-row:1}.stat-grid .stat.cash-out-card:last-child .stat-number{grid-column:2;grid-row:1}.cash-out-card .cash-out-detail{grid-column:1/-1;grid-row:2;padding-top:10px;border-top:1px solid var(--line);font-size:11px}.cash-out-detail strong{font-size:12px}}
@media(max-width:650px){.cash-out-card .stat-label{font-size:12px}.saving-budget-row .btn{font-size:10px;padding:0}.saving-budget-row td:first-child{padding-left:5px}.saving-budget-row td:last-child{padding-right:5px}.saving-budget-row .transaction-link{font-size:11px}.cash-out-detail>span{flex-wrap:wrap}.cash-result strong{font-size:18px}}

.booking-balance{display:flex;gap:9px;align-items:center;background:#f1f5e9;border:1px solid #e1e9d7;padding:12px;border-radius:8px;margin:-3px 0 17px;font-size:11px;color:#5d7252}.booking-balance svg{width:18px;height:18px;flex-shrink:0}.booking-balance strong{font-weight:600}.booking-balance small{display:block;font-size:10px;color:#7b8873;margin-top:3px}.booking-balance:empty{display:none}.booking-hint{display:flex;gap:8px;font-size:11px;line-height:1.6;color:#73836b;background:#f7f9f3;border-radius:8px;padding:12px}.booking-hint svg{width:15px;height:15px;margin-top:2px;flex-shrink:0}#booking-new-invoice{padding:13px 12px 0;border:1px solid var(--line);border-radius:8px;margin-bottom:17px}#booking-new-invoice .fields{gap:9px}#booking-new-invoice label{font-size:10px}

.live-progress>span{flex-shrink:0}.live-progress.progress-over>.paid{background:#bd785b}.live-progress[data-progress-kind="pocket"]>.paid{background:#729367}.live-progress[data-progress-kind="saving-plan"]>.paid{background:#b0b984}.live-progress.payment-track{height:4px}.live-progress.payment-track>.paid{background:#bda174}.pocket-progress-caption{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#7f8d74;margin-top:9px}.pocket-progress-caption strong{font-weight:600;color:#63814f}.pocket-status{display:flex;gap:7px;align-items:flex-start;font-size:10px;color:#7b896e;margin-top:12px}.pocket-status svg{width:13px;height:13px;flex-shrink:0;margin-top:1px}.table-progress{margin-top:9px;max-width:180px;min-width:45px}.table-progress .bar{height:4px}.progress-explanation{font-size:9px;color:#9aa18f;margin-top:7px}.goal-numbers{align-items:baseline}
@media(max-width:650px){.table-progress{max-width:120px}.goal-numbers{gap:7px}.pocket-progress-caption{flex-wrap:wrap}}

body:not(.authenticated)>aside,body:not(.authenticated)>main{display:none}#auth-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 80% 15%,#e4edcf,transparent 40%),#f5f6f2}#auth-screen[hidden],#save-error[hidden]{display:none}.auth-card{width:480px;max-width:100%;padding:36px;background:#fff;border:1px solid #e0e7d8;border-radius:16px;box-shadow:0 15px 60px #244f4010}.auth-brand{font-size:26px;font-weight:700;letter-spacing:-1px;margin-bottom:34px}.auth-brand span{color:#809b50}.auth-card h1{font-size:26px}.auth-card .field input{font-size:15px}.auth-error{font-size:12px;color:#b44e41;margin:12px 0}.team-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}#storage-status{font-size:10px;color:#67815a}.storage-error{color:#b44e41!important}#save-error{position:fixed;inset:0;background:#163b32aa;z-index:90;display:grid;place-items:center;padding:20px}.error-card{width:580px;max-width:100%;background:white;border-radius:14px;padding:28px}.error-card p{margin-top:15px;color:#74816e}.error-card .team-actions{margin-bottom:0}@media(max-width:650px){.auth-card{padding:25px}.top-actions{gap:7px}.top-actions>.demo-badge{display:none}#storage-status{max-width:85px;font-size:9px}.topbar{padding:0 12px}.topbar .crumb{font-size:10px;gap:6px}.top-actions .btn{font-size:10px;padding:7px}.auth-card h1{font-size:24px}.error-card{padding:22px}}