@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#18322b;background:#f4f2ec;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}header{height:76px;background:#fff;border-bottom:1px solid #e5e2d9;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:5}.brand{display:flex;gap:12px;align-items:center}.brand>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#12352d;color:#f1c36b;font-weight:800}.brand div{display:flex;flex-direction:column}.brand small{color:#849089;font-size:12px}nav{display:flex;gap:6px}nav button{border:0;background:transparent;color:#718078;border-radius:10px;padding:10px 14px;display:flex;align-items:center;gap:8px;font-weight:600}nav svg{width:18px}.active{color:#12352d!important;background:#edf1ee!important}main{max-width:1240px;margin:auto;padding:32px 24px 90px}.hero{border-radius:24px;padding:32px 36px;color:#fff;background:linear-gradient(125deg,#12352d,#28584b);box-shadow:0 18px 45px #153c3026}.hero p{text-transform:uppercase;letter-spacing:.13em;font-size:13px;margin:0 0 8px}.hero strong{font:800 clamp(42px,7vw,68px)/1 "Manrope";display:block}.hero small{opacity:.84}.hero.danger{background:linear-gradient(125deg,#7d322b,#b35243)}.progress{height:8px;background:#ffffff30;border-radius:99px;margin:24px 0 10px;overflow:hidden}.progress i{height:100%;display:block;background:#f1c36b;border-radius:99px}.quick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.quick button{border:0;border-radius:16px;padding:18px;color:#fff;font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;gap:8px}.quick svg,.quick span{width:24px;font-size:28px}.income{background:#287256}.expense{background:#bd5f49}.notice{padding:14px 18px;background:#fff2d3;border:1px solid #ead39d;border-radius:12px;margin:14px 0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpi,.fund,.panel{background:#fff;border:1px solid #e5e2d9;border-radius:16px;padding:20px}.kpi{display:flex;flex-direction:column;gap:8px}.kpi small,.fund small{color:#76847c}.kpi b{font:700 24px Manrope}.kpi.accent{background:#fcf4df;border-color:#ecd7a2}.funds{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px}.fund{display:flex;gap:12px}.fund>i{width:5px;border-radius:9px}.fund div{display:flex;flex-direction:column;gap:4px}.fund b{font:700 20px Manrope}.fund em{font-style:normal;color:#8a938e;font-size:11px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.panel h2{font:700 18px Manrope;margin:0 0 18px}.panel h2 em{font:500 11px DM Sans;text-transform:uppercase;background:#eeeae0;padding:4px 7px;border-radius:6px}.forecast{display:grid;gap:12px}.forecast span{display:flex;justify-content:space-between;border-bottom:1px solid #eeeae2;padding-bottom:10px}.row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #efede7}.row div,.trow span{display:flex;flex-direction:column}.row small,.trow small{color:#8a938e}.income{color:#267157}.expense{color:#b45443}.link{border:0;background:transparent;color:#245d4c;padding:14px 0 0;font-weight:700}.empty{color:#8a938e}.title{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.title p{font-size:12px;letter-spacing:.15em;color:#8b7560;margin:0}.title h1{font:800 40px Manrope;margin:4px 0 0}.exports{display:flex;gap:8px}.exports button,.primary{border:1px solid #d9d6ce;background:#fff;border-radius:10px;padding:10px 13px;display:flex;gap:6px;align-items:center}.exports svg{width:16px}.primary{background:#12352d;color:#fff;border:0}.filters{display:grid;grid-template-columns:1fr 180px;gap:10px;margin-bottom:14px}.filters input,.filters select,label input,label select{border:1px solid #d9d6ce;background:#fff;border-radius:10px;padding:12px;min-width:0}.table{background:#fff;border:1px solid #e5e2d9;border-radius:16px;overflow:hidden}.thead,.trow{display:grid;grid-template-columns:120px 1.4fr 1.4fr 150px 40px;gap:12px;align-items:center;padding:14px 18px}.thead{background:#f0eee7;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.trow{border-top:1px solid #efede7}.trow>strong{text-align:right}.trow button{border:0;background:transparent;color:#a2948c}.trow svg{width:18px}.settingsgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wide{grid-column:1/-1}.num{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0}.num input{width:130px;text-align:right}.computed{display:flex;justify-content:space-between;background:#f4f2ec;padding:12px;border-radius:9px}.tier{display:grid;grid-template-columns:1fr 80px 20px;align-items:center;margin:8px 0}.tier input{width:70px;padding:8px;border:1px solid #ddd;border-radius:8px}.chips{display:flex;flex-wrap:wrap;gap:7px}.chips span{padding:7px 10px;border-radius:99px;background:#edf1ee;font-size:13px}.hint{color:#879087}.modal{position:fixed;inset:0;background:#10251f99;z-index:10;display:grid;place-items:center;padding:18px}.modal form{width:min(620px,100%);background:#f8f7f3;border-radius:24px;padding:28px;position:relative;box-shadow:0 28px 80px #0005}.modal h2{font:800 28px Manrope;margin-top:0}.close{position:absolute;right:18px;top:18px;border:0;background:#ebe8e0;border-radius:99px;width:38px;height:38px;display:grid;place-items:center}.modal label{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-weight:600}.modal label>input,.modal label>select{font-weight:400}.modal>form>label:first-of-type input{font-size:32px;font-weight:700}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.suggest{color:#2d6d58;background:#e7f1eb;padding:8px;border-radius:8px}.save{width:100%;border:0;color:#fff;border-radius:12px;padding:15px;margin-top:12px;font-weight:800}.save.income{background:#287256}.save.expense{background:#bd5f49}.mobile-nav{display:none}.auth{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#e8ece7,#f4efe4)}.auth form{width:min(430px,100%);background:#fff;border:1px solid #e2ded4;border-radius:22px;padding:30px;box-shadow:0 25px 70px #243c3320}.auth h1{font:800 34px Manrope;margin:28px 0 4px}.auth p{color:#7e8983}.auth label{display:flex;flex-direction:column;gap:6px;margin:14px 0;font-weight:600}.auth-error{color:#9d3e32;background:#fae8e4;padding:10px;border-radius:8px;margin-bottom:10px}.auth .primary{width:100%;justify-content:center;padding:14px}@media(max-width:760px){header{height:64px;padding:0 16px}.brand small,nav{display:none}main{padding:16px 14px 94px}.hero{padding:24px;border-radius:20px}.hero p{font-size:11px}.hero strong{font-size:44px}.quick{position:sticky;top:72px;z-index:3}.quick button{padding:16px 8px}.kpis{grid-template-columns:1fr 1fr}.kpi b{font-size:19px}.funds{grid-template-columns:1fr 1fr}.fund{padding:14px}.fund b{font-size:17px}.grid2{grid-template-columns:1fr}.forecast span{font-size:14px}.mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #ddd;z-index:6;padding:6px 8px max(6px,env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;border-radius:10px;display:flex;flex-direction:column;align-items:center;padding:6px;font-size:11px;color:#718078}.mobile-nav svg{width:20px}.title{align-items:flex-start;gap:14px;flex-direction:column}.title h1{font-size:32px}.exports{flex-wrap:wrap}.filters{grid-template-columns:1fr}.thead{display:none}.trow{grid-template-columns:1fr auto;padding:14px}.trow>span:first-child{font-size:12px;color:#879087}.trow>span:nth-child(3){grid-column:1}.trow>strong{grid-column:2;grid-row:1/3}.trow>button{grid-column:2}.settingsgrid{grid-template-columns:1fr}.wide{grid-column:auto}.formgrid{grid-template-columns:1fr}.modal{align-items:end;padding:0}.modal form{border-radius:24px 24px 0 0;padding:24px;max-height:94vh;overflow:auto}}.filters{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(130px,auto))}.thead,.trow{grid-template-columns:110px 1.35fr 1.35fr 140px 120px}.trow>strong.income,.trow>strong.expense{background:transparent}.row-actions{display:flex;justify-content:flex-end;gap:2px}.row-actions button,.icon{border:0;background:transparent;color:#756d68;border-radius:8px;padding:7px}.row-actions button:hover,.icon:hover{background:#f0eee7}.row-actions svg,.icon svg{width:17px;height:17px}.table-empty{padding:22px}.panel h3{font:700 14px Manrope;margin:22px 0 10px}.tier-edit{display:grid;grid-template-columns:1fr 1fr 90px;gap:8px}.tier-edit label,.manager-row label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#69766f}.tier-edit input{width:100%}.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.panel-title h2{margin-bottom:4px}.panel-title p{margin:0}.panel-title>button{border:1px solid #d9d6ce;background:#fff;border-radius:10px;padding:9px 12px;display:flex;align-items:center;gap:6px;white-space:nowrap}.panel-title svg{width:17px}.manager-list{display:grid;gap:9px;margin-top:18px}.manager-row{display:grid;align-items:end;gap:9px;padding:12px;background:#f7f5ef;border-radius:12px}.category-editor{grid-template-columns:1fr 2fr auto 36px}.rule-editor{grid-template-columns:1fr 1fr 1fr 36px}.goal-editor{grid-template-columns:2fr 1fr 1fr 36px}.manager-row input,.manager-row select{width:100%}.manager-row .check{align-self:center;flex-direction:row;align-items:center;white-space:nowrap;font-size:13px}.manager-row .check input{width:auto}.danger-text{color:#a3473a}.sticky-save{display:flex;justify-content:flex-end;margin-top:16px}.goals-panel{margin-top:14px}.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.goal-card{padding:14px;border:1px solid #e4e0d7;border-radius:12px}.goal-card>div:first-child{display:flex;justify-content:space-between;gap:10px}.goal-progress{height:7px;background:#ece8de;border-radius:99px;margin:12px 0;overflow:hidden}.goal-progress i{display:block;height:100%;background:#8a7053}.goal-card small,.goal-card em{display:block;color:#77837d;font-size:12px}.goal-card em{font-style:normal;margin-top:5px}.suggest{display:block}.form-error{color:#9d3e32;background:#fae8e4;padding:10px;border-radius:8px}.modal form{display:flex;flex-direction:column;max-height:calc(100dvh - 36px);overflow:hidden}.modal form .form-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px}.modal form>.save{flex:0 0 auto;margin-top:12px}.modal form>.close{z-index:3}.hero{position:relative}.hero>em{display:block;font-style:normal;margin-top:9px;color:#ffe1a0}.calc-link{position:absolute;right:28px;top:26px;border:0;background:#ffffff18;color:#fff;border-radius:9px;padding:8px 10px;display:flex;align-items:center;gap:6px}.calc-link svg{width:16px}.notice.deficit{display:flex;justify-content:space-between;gap:18px;background:#fae7e1;border-color:#e5b8ab;color:#80382f}.kpis{grid-template-columns:repeat(5,1fr)}.commitment-card{text-align:left;border:1px solid #d9cab1;color:#18322b}.commitment-card small,.commitment-card em,.commitment-card span{display:block;font-style:normal}.commitment-card em{font-size:11px;color:#68776f}.commitment-card span{font-size:11px;color:#a24c3d}.commitment-card:hover{background:#fcf8ed}.upcoming-panel{margin-top:14px}.upcoming-panel .panel-title>svg{color:#8a7053}.due-list{display:grid;gap:8px}.due-item{display:grid;grid-template-columns:120px 1fr auto 130px;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e8e4dc;border-radius:10px}.due-item time,.due-item span{font-size:12px;color:#718078}.due-item span{text-align:right}.due-item.paid{opacity:.7;background:#f5f7f4}.due-item.scheduled span{color:#9b533e}.recurring-list{display:grid;gap:9px;margin-top:18px}.recurring-row{display:grid;grid-template-columns:minmax(200px,1fr) 130px 170px auto;align-items:center;gap:12px;padding:13px;background:#f7f5ef;border-radius:12px}.recurring-row>div:first-child{display:flex;flex-direction:column}.recurring-row small,.recurring-row>span{font-size:12px;color:#75817b}.recurring-row.disabled{opacity:.62}.recurring-editor{margin-top:18px;padding:18px;border:1px solid #dcd7cd;border-radius:14px;background:#fbfaf7}.editor-title{display:flex;align-items:center;justify-content:space-between}.editor-title h3{margin:0}.recurring-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 12px}.recurring-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600}.recurring-grid input,.recurring-grid select{width:100%;border:1px solid #d9d6ce;background:#fff;border-radius:9px;padding:10px}.recurring-checks{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0}.recurring-checks label,.apply-current{font-size:13px}.apply-current{display:block;margin:10px 0 16px}.recurring-editor>.primary{justify-content:center}.category-editor{grid-template-columns:1fr 1.6fr 1.1fr auto 36px}.match-suggestion{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#edf4ef;border:1px solid #c7daca;border-radius:10px;padding:10px 12px;font-size:13px}.match-suggestion button{border:0;background:#245d4c;color:#fff;border-radius:8px;padding:8px 10px;white-space:nowrap}.advanced{margin:12px 0;border-top:1px solid #e3dfd5;padding-top:10px}.advanced summary{cursor:pointer;color:#52645b;font-weight:600}.advanced-grid{display:grid;gap:8px;margin-top:8px}.advanced-grid .check{flex-direction:row;align-items:center}.advanced-grid .check input{width:auto}.advanced-grid small{color:#68776f}.payment-account-field{grid-column:1/-1}.account-panel{margin-top:14px}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.account-card{display:flex;flex-direction:column;gap:5px;padding:14px;border-radius:12px;background:#edf3ef;border:1px solid #d5e2da}.account-card small{color:#65776e}.account-card b{font:700 22px Manrope}.account-card.muted{background:#f1efe9;border-color:#dedbd2}.account-total{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid #e8e4db}.account-total b{font:700 20px Manrope}.info-modal>section{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:26px}.info-modal h2{font:800 25px Manrope;margin:0 46px 20px 0}.commitment-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}.commitment-summary span{display:flex;flex-direction:column;background:#f4f2ec;border-radius:10px;padding:11px;font-size:12px}.commitment-summary b{font-size:17px;margin-top:4px}.detail-line{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px 0;border-bottom:1px solid #ebe8e1}.detail-line em{grid-column:1/-1;font-size:12px;color:#6d7973}.calculation{display:grid}.calculation>span,.calculation>strong{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #ece9e2}.calculation>small{padding:7px 0;color:#8a654f}.calculation>strong{font-size:17px}.calculation p{font-size:13px;color:#66746d;line-height:1.45}@media(max-width:1000px){.kpis{grid-template-columns:repeat(3,1fr)}.filters{grid-template-columns:1fr 1fr 1fr}.filters input{grid-column:1/-1}.goal-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.modal form{max-height:94dvh;overflow:hidden}.calc-link{position:static;margin-top:13px;padding-left:0;background:transparent}.notice.deficit{flex-direction:column;gap:4px}.kpis{grid-template-columns:1fr 1fr}.commitment-card{grid-column:1/-1}.due-item{grid-template-columns:1fr auto}.due-item time{grid-column:1}.due-item b{grid-column:1}.due-item strong{grid-column:2;grid-row:1/3}.due-item span{grid-column:2;text-align:right}.recurring-row{grid-template-columns:1fr auto}.recurring-row>span{grid-column:1}.recurring-row .row-actions{grid-column:2;grid-row:2}.recurring-grid{grid-template-columns:1fr}.match-suggestion{align-items:flex-start;flex-direction:column}.match-suggestion button{width:100%}.info-modal{align-items:end;padding:0}.info-modal>section{width:100%;max-height:94vh;border-radius:24px 24px 0 0;padding:24px}.commitment-summary,.category-editor{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.filters input,.filters select:last-child{grid-column:1/-1}.trow>button{grid-column:auto}.row-actions{grid-column:2;justify-content:flex-end}.goal-grid{grid-template-columns:1fr}.tier-edit{grid-template-columns:1fr 1fr 80px}.category-editor,.rule-editor,.goal-editor{grid-template-columns:1fr}.manager-row .icon{justify-self:end}.panel-title{flex-direction:column}.account-grid{grid-template-columns:1fr 1fr}.account-card b{font-size:19px}}
