@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#202128;background:#f5f4ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#15171d;color:#aaaeb8;padding:27px 18px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:12px;color:#fff;font-size:23px;font-weight:700;padding:0 9px 34px}.brandMark{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#efc770,#a87528);display:grid;place-items:center;color:#171717;font-family:serif}.close{display:none}.sidebar nav{display:grid;gap:5px}.sidebar button{border:0;background:none;color:inherit;display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:10px;cursor:pointer;text-align:left}.sidebar nav button.active{color:#fff;background:#2a2d35}.sidebar nav button:hover{color:#fff}.sideBottom{margin-top:auto}.profile{border-top:1px solid #2b2d33;padding:20px 8px 0;display:flex;align-items:center;gap:10px}.profile>div{width:36px;height:36px;border-radius:50%;background:#d6b66c;color:#222;display:grid;place-items:center;font-weight:700}.profile span{display:grid;flex:1;color:#fff;font-size:13px}.profile small{color:#9296a1;margin-top:2px}main{margin-left:248px;min-height:100vh}header{height:106px;padding:27px 40px;display:flex;align-items:center;border-bottom:1px solid #e7e5df;background:#faf9f5}header h1{font-size:25px;margin:0 0 4px}header p{margin:0;color:#777b84;font-size:13px}.headerActions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon{width:40px;height:40px;border:1px solid #deddd8;border-radius:10px;background:#fff;display:grid;place-items:center;color:#555}.icon svg{width:18px}.notification{position:relative}.notification i{position:absolute;width:6px;height:6px;border-radius:50%;background:#df675f;right:9px;top:8px}.primary,.save{border:0;background:#1c1f25;color:#fff;border-radius:10px;padding:12px 18px;display:flex;align-items:center;gap:8px;cursor:pointer}.primary svg{width:18px}.menu{display:none}.content{padding:28px 40px 50px;max-width:1450px;margin:auto}.hero{background:linear-gradient(125deg,#20232a,#111318);color:#fff;border-radius:18px;padding:30px 34px;display:flex;align-items:center;box-shadow:0 14px 35px #2225}.hero>div:first-child{display:grid;gap:8px}.hero span{color:#aeb2bc;font-size:13px}.hero strong{font-size:38px;letter-spacing:-1px}.hero em{font-size:12px;font-style:normal;color:#69d2b4;display:flex;align-items:center}.heroStats{margin-left:auto;display:flex;gap:55px}.heroStats>div{display:flex;gap:12px;align-items:center}.heroStats i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.heroStats svg{width:19px}.heroStats .income{background:#39a98722;color:#64cfaf}.heroStats .expense{background:#e2746922;color:#ef8a7d}.heroStats span{display:grid;gap:5px}.heroStats b{font-size:18px;color:#fff}.metrics,.annualTop{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}.metrics article,.annualTop article{background:#fff;border:1px solid #e7e5df;border-radius:14px;padding:19px 21px;display:grid;gap:5px}.metrics span,.annualTop span{color:#777b84;font-size:12px}.metrics b,.annualTop b{font-size:22px}.metrics small{color:#999}.progress{height:5px;background:#e9e8e3;border-radius:5px;margin-top:9px}.progress i{display:block;height:100%;background:#42ae91;border-radius:5px}.progress.warning i{background:#e9a63d}.grid{display:grid;grid-template-columns:1.55fr 1fr;gap:20px}.panel{background:#fff;border:1px solid #e6e4de;border-radius:15px;padding:23px}.panelHead{display:flex;align-items:flex-start;margin-bottom:20px}.panelHead h2{font-size:16px;margin:0 0 4px}.panelHead p{font-size:12px;color:#8b8e95;margin:0}.panelHead button{margin-left:auto;border:1px solid #deddd8;background:#fff;border-radius:8px;padding:7px 10px;color:#666;display:flex;align-items:center}.cat{display:grid;grid-template-columns:1fr auto;gap:6px;margin:15px 0;font-size:12px}.cat span{display:flex;align-items:center;gap:8px}.cat span i{width:8px;height:8px;border-radius:50%}.cat>div{grid-column:1/3;background:#efeee9;height:5px;border-radius:5px}.cat>div i{display:block;height:100%;border-radius:5px}.movements{margin-top:20px}.movement{display:flex;align-items:center;padding:12px 0;border-top:1px solid #efeee9;gap:13px}.movement:first-of-type{border-top:0}.movementIcon{width:39px;height:39px;border-radius:11px;display:grid;place-items:center}.movementIcon svg{width:18px}.movementName{display:grid;flex:1;font-size:13px}.movementName small{color:#8b8e95;margin-top:3px}.movementDate{font-size:12px;color:#8b8e95;width:90px}.movement strong{font-size:13px}.fab{display:none}.annualTop article:first-child b{color:#249c7c}.annualTop article:nth-child(2) b{color:#d86558}.annual .legend{margin-left:auto;font-size:12px;color:#777;display:flex;align-items:center;gap:7px}.legend i{width:8px;height:8px;border-radius:50%;margin-left:12px}.green{background:#43af91}.red{background:#ed8b79}.placeholder{text-align:center;padding:80px 30px}.emptyIcon{width:60px;height:60px;border-radius:18px;background:#eeeaf9;color:#6d55cf;display:grid;place-items:center;margin:auto}.placeholder h2{margin:20px 0 8px}.placeholder p{color:#777;max-width:480px;margin:0 auto 22px}.placeholder .primary{margin:auto}.overlay{position:fixed;inset:0;background:#1118;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;display:grid;place-items:center;padding:20px}.modal{background:#fff;width:min(510px,100%);border-radius:19px;padding:26px;box-shadow:0 20px 80px #0005}.modalHead{display:flex}.modalHead h2{margin:0 0 4px}.modalHead p{margin:0;color:#888;font-size:13px}.modalHead button{margin-left:auto;border:0;background:none}.modal label{display:grid;gap:7px;font-size:12px;color:#686b73;margin-top:18px}.modal input,.modal select{border:1px solid #dcdad4;border-radius:10px;padding:12px;background:#fff;color:#222;outline:none}.modal input:focus,.modal select:focus{border-color:#9e7c37;box-shadow:0 0 0 3px #d8b56622}.modal .amountLabel input{font-size:27px;font-weight:700}.formRow{display:grid;grid-template-columns:1fr 1fr;gap:14px}.more{border:0;background:none;color:#9b6d1e;margin:17px 0;cursor:pointer}.save{width:100%;justify-content:center}.save:disabled{opacity:.45}.fab{position:fixed;right:22px;bottom:22px;width:54px;height:54px;border:0;border-radius:17px;background:#1b1e24;color:#fff;place-items:center;box-shadow:0 10px 30px #0004}@media(max-width:900px){.sidebar{transform:translate(-105%);transition:.25s}.sidebar.open{transform:none}.close{display:block!important;margin-left:auto!important;padding:4px!important}.sidebar.open:after{content:"";position:fixed;left:248px;right:-100vw;top:0;bottom:0;background:#1118;z-index:-1}main{margin-left:0}header{height:86px;padding:18px 20px}.menu{display:grid;border:0;background:none;margin-right:11px}.headerActions .icon{display:none}.headerActions .primary{font-size:0;padding:11px}.headerActions .primary svg{margin:0}.content{padding:20px}.grid{grid-template-columns:1fr}.heroStats{gap:18px}.metrics{grid-template-columns:1fr 1fr}.metrics article:last-child{grid-column:1/3}.annualTop{grid-template-columns:1fr}.movementDate{display:none}}@media(max-width:560px){header p{display:none}.content{padding:14px}.hero{padding:24px;display:block}.hero strong{font-size:33px}.heroStats{margin:25px 0 0;justify-content:space-between}.heroStats>div{gap:7px}.heroStats i{width:34px;height:34px}.heroStats b{font-size:14px}.metrics{gap:10px}.metrics article{padding:15px}.metrics b{font-size:18px}.chart{padding:18px 8px}.chart .panelHead{padding:0 10px}.categories{padding:19px}.movement{gap:9px}.movementName small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.movement strong{font-size:12px}.fab{display:grid}.formRow{grid-template-columns:1fr}.modal{padding:21px}.annual{padding:18px 5px}.annual .panelHead{padding:0 15px}.annual .legend{display:none}}.splash{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;font-size:24px;background:#15171d;color:#fff}.authPage{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.authVisual{background:radial-gradient(circle at 80% 20%,#d5ae5733,transparent 34%),linear-gradient(145deg,#1f2229,#111318);color:#fff;padding:48px 7vw;display:flex;flex-direction:column;justify-content:space-between}.authBrand,.mobileBrand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:700}.authVisual span{font-size:11px;letter-spacing:2.5px;color:#d6b66c}.authVisual h1{font-size:clamp(45px,5.8vw,80px);line-height:.98;letter-spacing:-3px;margin:20px 0}.authVisual p{max-width:490px;color:#afb2bb;font-size:17px;line-height:1.6}.authVisual small{color:#7d818b}.authForm{display:grid;place-items:center;padding:40px}.authForm form{width:min(420px,100%)}.authForm h2{font-size:31px;margin:0 0 8px}.authForm form>p{color:#777b84;margin:0 0 30px}.authForm label{display:grid;gap:8px;font-size:13px;font-weight:600;margin:17px 0}.authForm input{border:1px solid #dcdad4;border-radius:11px;padding:14px;outline:none}.authForm input:focus{border-color:#af8435;box-shadow:0 0 0 3px #d6b66c22}.authSubmit{border:0;background:#1b1e24;color:#fff;border-radius:11px;padding:14px 18px;width:100%;font-weight:600;margin-top:10px;cursor:pointer}.authSubmit:disabled{opacity:.55}.textButton{display:block;border:0;background:none;color:#9b6d1e;margin:15px auto;cursor:pointer}.authSwitch{text-align:center;border-top:1px solid #eceae4;padding-top:20px;margin-top:25px;color:#777;font-size:13px}.authSwitch button{border:0;background:none;color:#90671e;font-weight:700;cursor:pointer}.formAlert{padding:12px 14px;border-radius:10px;font-size:13px;margin:15px 0}.formAlert.error{background:#fbe9e7;color:#a84439}.formAlert.success{background:#e4f5ee;color:#267b62}.mobileBrand{display:none}.verifyPage{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;background:#f5f4ef}.verifyPage h1{margin:25px 0 8px}.verifyPage p{max-width:500px;color:#6f737c;line-height:1.6}.verifyPage .authSubmit{max-width:320px}@media(max-width:760px){.authPage{grid-template-columns:1fr}.authVisual{display:none}.authForm{padding:28px;min-height:100vh}.mobileBrand{display:flex;margin-bottom:55px}.authForm h2{font-size:27px}}.languageToggle{display:flex;justify-content:flex-end;gap:4px;margin-bottom:24px}.languageToggle button{border:1px solid #deddd8;background:#fff;color:#777;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:700;cursor:pointer}.languageToggle button.selected{background:#1b1e24;color:#fff;border-color:#1b1e24}.settingsActions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.settingsActions .save{width:auto}.settingsActions .cancel{border:1px solid #deddd8;background:#fff;border-radius:10px;padding:11px 17px;cursor:pointer}.period{display:flex;align-items:center;background:#fff;border:1px solid #deddd8;border-radius:10px;height:40px}.period button{border:0;background:none;width:35px;height:100%;display:grid;place-items:center;cursor:pointer;color:#6d7078}.period svg{width:16px}.period span{font-size:12px;font-weight:600;min-width:78px;text-align:center}.loading{min-height:55vh;display:grid;place-items:center;color:#8b8e95}.emptyState{text-align:center;color:#8b8e95;padding:25px 10px;font-size:13px}.filters{display:flex;gap:12px;margin-bottom:22px}.filters label{display:flex;align-items:center;gap:8px;border:1px solid #deddd8;border-radius:10px;padding:0 12px;flex:1}.filters label svg{width:17px;color:#8b8e95}.filters input{border:0;outline:0;padding:12px 0;width:100%}.filters select{border:1px solid #deddd8;border-radius:10px;padding:10px 14px;background:#fff}.tableHead,.tableRow{display:grid!important;grid-template-columns:42px minmax(160px,1.5fr) 110px 140px 140px 120px;align-items:center}.tableHead{padding:8px 0 10px;color:#8b8e95;font-size:11px;border-bottom:1px solid #efeee9}.tableHead span:first-child,.tableRow .movementName{grid-column:2}.tableRow .movementDate{width:auto}.tableRow strong{text-align:right}.positiveAmount{color:#249c7c}.backButton{border:0;background:none;color:#777;display:flex;align-items:center;gap:5px;margin:0 0 15px;cursor:pointer}.backButton svg{width:17px}.typeTabs{display:grid;grid-template-columns:1fr 1fr;background:#f0efe9;border-radius:10px;padding:4px;margin-top:20px}.typeTabs button{border:0;background:transparent;padding:9px;border-radius:7px;cursor:pointer}.typeTabs button.active{background:#fff;box-shadow:0 2px 7px #0001;font-weight:600}.modal>.save{margin-top:20px}.dashboardGrid{margin-top:20px}@media(max-width:900px){.period{display:none}.tableHead{display:none!important}.tableRow{display:flex!important}.tableRow>span:not(.movementName):not(.movementDate){display:none}.filters{flex-direction:column}.filters select{width:100%}}.sectionActions{display:flex;align-items:center;margin-bottom:20px}.sectionActions p{color:#777b84}.sectionActions .primary{margin-left:auto}.accountGrid,.budgetGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.accountCard,.budgetCard{background:#fff;border:1px solid #e6e4de;border-radius:16px;padding:22px;display:grid;gap:8px}.accountIcon{width:42px;height:42px;border-radius:12px;background:#eeeaf9;color:#7057d9;display:grid;place-items:center}.accountIcon svg{width:20px}.accountCard span,.accountCard small,.accountCard em,.budgetCard span,.budgetCard em{color:#858991;font-size:12px;font-style:normal}.accountCard h3,.budgetCard h3{margin:7px 0 0}.accountCard b{font-size:21px;margin-top:12px}.budgetCard>div:first-child{display:grid;grid-template-columns:12px 1fr;align-items:center}.budgetCard>div:first-child i{width:9px;height:9px;border-radius:50%}.budgetCard>div:first-child h3{margin:0}.budgetCard>div:first-child span{grid-column:2}.budgetCard>b{font-size:19px;margin-top:12px}.budgetCard>b small{font-weight:400;color:#858991}.budgetBar{height:7px;background:#eceae4;border-radius:8px}.budgetBar i{display:block;height:100%;background:#d6b66c;border-radius:8px}.budgetBar.exceeded i{background:#df675f}.txManage{display:flex;align-items:center;border-top:1px solid #efeee9}.txManage .movement{border:0;flex:1}.txManage>button{border:0;background:#fbe9e7;color:#a84439;border-radius:8px;padding:7px 10px;cursor:pointer}.typeTabs.three{grid-template-columns:repeat(3,1fr)}.scrollModal{max-height:92vh;overflow:auto}.checkLabel{display:flex!important;align-items:center}.checkLabel input{width:17px;height:17px;margin:0}.recurringSection{margin-top:30px}.recurringSection h2{margin:0 0 4px;font-size:18px}.recurringSection .sectionActions>button:not(.primary){margin-left:auto;border:1px solid #deddd8;background:#fff;border-radius:9px;padding:10px;cursor:pointer}.recurringSection .sectionActions .primary{margin-left:10px}.recurringList{background:#fff;border:1px solid #e6e4de;border-radius:15px;padding:8px 22px}.recurringList article{display:grid;grid-template-columns:1fr 140px 210px auto;align-items:center;gap:15px;padding:15px 0;border-top:1px solid #efeee9}.recurringList article:first-child{border:0}.recurringList article div{display:grid}.recurringList span{font-size:12px;color:#858991}.recurringList button{border:0;background:#f3f1eb;border-radius:8px;padding:7px;cursor:pointer}@media(max-width:760px){.recurringList article{grid-template-columns:1fr auto}.recurringList article>span{grid-column:1}.recurringSection .sectionActions{flex-wrap:wrap}.recurringSection .sectionActions>div{width:100%}}@media(max-width:1000px){.accountGrid,.budgetGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){input,select,textarea,.modal input,.modal select,.authForm input{font-size:16px!important}.overlay{align-items:end;padding:0}.modal{width:100%;max-height:calc(100dvh - 12px);border-radius:19px 19px 0 0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(21px + env(safe-area-inset-bottom))}.accountGrid,.budgetGrid{grid-template-columns:1fr}.sectionActions{align-items:flex-start;gap:12px}.sectionActions p{margin-top:0}.sectionActions .primary{font-size:0;padding:12px}.sectionActions .primary svg{margin:0}}.cardActions{display:flex!important;grid-template-columns:none!important;gap:8px;margin-top:12px}.cardActions button,.editButton{border:1px solid #deddd8;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer}.cardActions .dangerButton,.dangerButton{border-color:#f0d0cc;color:#a84439;background:#fff8f7}.txManage{gap:7px}.categoryComparison{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.categoryComparison article{border:1px solid #eceae4;border-radius:11px;padding:13px;display:grid;gap:4px}.categoryComparison article>span{display:flex;align-items:center;gap:7px}.categoryComparison i,.categoryName i{display:inline-block;width:8px;height:8px;border-radius:50%}.categoryComparison small,.annualCategoryTable span{font-size:12px;color:#777b84}.better{color:#24866c!important}.worse{color:#c25449!important}.annualCategories{margin-top:20px}.annualCategoryTable{overflow-x:auto}.annualCategoryHead,.annualCategoryTable article{display:grid;grid-template-columns:minmax(150px,1.3fr) 130px 180px 170px minmax(180px,1fr);gap:14px;align-items:center;min-width:850px;padding:12px 4px}.annualCategoryHead{font-size:11px;color:#8b8e95;border-bottom:1px solid #eceae4}.annualCategoryTable article{border-bottom:1px solid #efeee9}.categoryName{display:flex;align-items:center;gap:8px}@media(max-width:620px){.categoryComparison{grid-template-columns:1fr}.txManage{align-items:flex-start;flex-wrap:wrap}.txManage .movement{min-width:100%}.txManage>button{flex:1}.annualCategories{padding:18px 14px}}
