@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#172438;background:#f5f7fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:252px;background:#0b1d33;color:#dbe5f1;position:fixed;inset:0 auto 0 0;padding:25px 16px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 9px 32px}.brand-mark{width:38px;height:38px;border-radius:11px;background:#f28b27;color:#0b1d33;display:grid;place-items:center}.brand-logo{width:38px;height:38px;object-fit:contain;border-radius:8px;background:#fff}.brand strong{display:block;font:700 14px Manrope,sans-serif;color:#fff;max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand span{display:block;font-size:9px;letter-spacing:1.4px;color:#8294a9;margin-top:4px}.nav-label{font-size:10px;letter-spacing:1.4px;color:#71849b;font-weight:700;padding:0 12px 12px}.sidebar nav{display:grid;gap:5px}.nav-item{height:44px;border:0;background:transparent;color:#aebdd0;border-radius:8px;padding:0 12px;display:flex;align-items:center;gap:12px;text-align:left;font-size:13px;font-weight:600}.nav-item:hover{background:#142c48;color:#fff}.nav-item.active{background:#1c3a5b;color:#fff;box-shadow:inset 3px 0 #f28b27}.nav-item small{margin-left:auto;background:#294765;border-radius:20px;padding:2px 7px}.sidebar-bottom{margin-top:auto}.privacy-note{display:flex;align-items:center;gap:10px;background:#122b46;border:1px solid #1c3b5a;padding:12px;border-radius:9px;margin:0 3px 17px}.privacy-icon{width:27px;height:27px;background:#174b40;color:#5dd5a2;border-radius:7px;display:grid;place-items:center}.privacy-note b,.user-mini b{display:block;font-size:11px;color:#e7edf5}.privacy-note span,.user-mini span{display:block;font-size:10px;color:#8294a9;margin-top:3px}.user-mini{border-top:1px solid #203750;padding:17px 5px 0;display:flex;align-items:center;gap:10px}.avatar{width:32px;height:32px;border-radius:50%;background:#e9eef5;color:#39516c;display:grid;place-items:center;border:0}.main-area{margin-left:252px;min-height:100vh}.topbar{height:68px;background:#fff;border-bottom:1px solid #e9edf2;display:flex;align-items:center;justify-content:space-between;padding:0 38px}.breadcrumb{font-size:12px;color:#8994a3}.breadcrumb span{padding:0 9px;color:#c0c7d0}.breadcrumb b{color:#24344a;font-weight:600}.top-actions{display:flex;align-items:center;gap:18px}.date-pill{display:flex;align-items:center;gap:8px;font-size:11px;color:#637187}.top-avatar{width:33px;height:33px}.content{max-width:1440px;margin:auto;padding:34px 38px 60px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.6px;color:#e68a2e;margin-bottom:8px}.page-heading h1{font:800 27px Manrope,sans-serif;margin:0;color:#14243a;letter-spacing:-.8px}.page-heading p{margin:7px 0 0;color:#8792a1;font-size:12px}.heading-actions{display:flex;gap:9px}.btn{height:38px;padding:0 14px;border-radius:7px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:700;white-space:nowrap}.btn-primary{background:#0d2a49;color:#fff;box-shadow:0 3px 8px #0d2a491c}.btn-primary:hover{background:#173d63}.btn-secondary{background:#fff;color:#43536a;border-color:#e1e6ed}.btn-secondary:hover{background:#f7f9fb}.btn-small{height:31px;padding:0 10px;font-size:10px}.filter-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.scope-switch{display:flex;gap:4px;background:#e9edf2;padding:4px;border-radius:8px}.scope-switch button{border:0;background:transparent;color:#788496;padding:7px 13px;border-radius:6px;font-size:10px;font-weight:700}.scope-switch button.selected{background:#fff;color:#173452;box-shadow:0 1px 3px #17243812}.month-filter{height:34px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e3e8ef;padding:0 10px;border-radius:7px;color:#728096}.month-filter input{border:0;outline:0;color:#46566b;font-size:11px;background:transparent}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:17px}.stat-card,.panel{background:#fff;border:1px solid #e9edf2;border-radius:11px;box-shadow:0 2px 8px #1c2b3f05}.stat-card{padding:17px 18px;min-height:126px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#778496;font-size:11px;font-weight:600}.stat-icon{width:33px;height:33px;border-radius:9px;display:grid;place-items:center}.stat-icon.green{background:#e8f7f0;color:#159563}.stat-icon.red{background:#fff0f0;color:#d85b64}.stat-icon.blue{background:#eaf2fc;color:#3976b8}.stat-icon.purple{background:#f1edfb;color:#8065b6}.stat-value{font:800 22px Manrope,sans-serif;color:#1b2b40;margin-top:11px;letter-spacing:-.6px}.stat-sub{font-size:10px;color:#a0a9b5;margin-top:4px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:16px;margin-bottom:16px}.panel{padding:18px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel-head h3,.table-toolbar h3{font:700 13px Manrope,sans-serif;margin:0;color:#203149}.panel-head p,.table-toolbar p{font-size:10px;color:#98a2af;margin:5px 0 0}.legend{display:flex;align-items:center;gap:6px;font-size:9px;color:#8490a0}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.green-dot{background:#16a36a}.red-dot{background:#e15b64}.chart-wrap{height:236px;margin:17px -6px 0 -9px}.breakdown-panel{min-height:300px}.donut-wrap{height:166px;position:relative;margin:3px auto 0;max-width:220px}.donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-center b{font:800 15px Manrope;color:#26364b}.donut-center span{font-size:9px;color:#9ba5b1;margin-top:3px}.category-list{display:grid;gap:10px;margin-top:8px}.category-row{display:flex;justify-content:space-between;font-size:10px;color:#667488}.category-row span{display:flex;align-items:center;gap:7px}.category-row i{width:7px;height:7px;border-radius:2px}.category-row b{font-size:10px;color:#3c4a5e}.recent-panel{padding-bottom:5px}.text-link{border:0;background:none;color:#315f91;font-size:10px;font-weight:700}.text-link span{font-size:15px;margin-left:4px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.search-box{height:34px;border:1px solid #e5e9ef;border-radius:7px;padding:0 10px;display:flex;align-items:center;gap:7px;color:#9ba5b1}.search-box input{border:0;outline:0;font-size:10px;width:175px;color:#35465c}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}thead th{font-size:8px;letter-spacing:.8px;color:#a0a9b5;font-weight:700;padding:11px 9px;border-bottom:1px solid #edf0f4}tbody td{font-size:10px;color:#718095;padding:12px 9px;border-bottom:1px solid #f0f2f5}tbody tr:last-child td{border-bottom:0}.transaction-name{display:flex;align-items:center;gap:9px}.transaction-icon{width:29px;height:29px;border-radius:8px;display:grid;place-items:center}.transaction-icon.income{background:#eaf7f0;color:#159563}.transaction-icon.expense{background:#fff0f0;color:#d85b64}.transaction-name b{display:block;color:#34445a;font-size:10px;font-weight:700}.transaction-name span{display:block;color:#a2abb6;font-size:9px;margin-top:3px}.scope-tag{font-size:9px;border-radius:20px;padding:4px 8px;text-transform:capitalize}.scope-tag.personal{background:#edf3fa;color:#4d7098}.scope-tag.business{background:#f4effb;color:#8168aa}.amount-income{color:#159563!important}.amount-expense{color:#d85b64!important}.row-actions{display:flex;gap:4px;justify-content:flex-end}.row-actions button{border:0;background:transparent;color:#9aa5b2;padding:5px}.row-actions button:hover{color:#234f7b}.empty-state{padding:30px 10px;text-align:center;color:#9ba5b1;font-size:11px}.empty-state div{width:40px;height:40px;background:#f3f6f9;border-radius:50%;display:grid;place-items:center;margin:0 auto 9px;color:#8797aa}.empty-state p{margin:0}.settings-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:16px;align-items:start}.settings-panel{padding:21px}.logo-upload{display:flex;align-items:center;gap:15px;padding:20px 0;border-bottom:1px solid #edf0f4;margin-bottom:18px}.logo-preview{width:66px;height:66px;border:1px dashed #ccd5df;border-radius:10px;background:#f8fafc;display:grid;place-items:center;color:#8b9bad;overflow:hidden}.logo-preview img{width:100%;height:100%;object-fit:contain}.logo-upload b{font-size:11px;color:#34445a}.logo-upload p{font-size:9px;color:#9aa4b0;margin:5px 0 9px}.remove-logo{border:0;background:none;color:#c35d64;font-size:10px;margin-left:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.field{display:grid;gap:6px;min-width:0}.field.wide{grid-column:1/-1}.field>span{font-size:10px;font-weight:700;color:#59697e}.field input,.field select{height:37px;border:1px solid #e1e6ed;border-radius:7px;padding:0 10px;outline:none;color:#405169;background:#fff;font-size:11px;width:100%}.field input:focus,.field select:focus{border-color:#6c91b6;box-shadow:0 0 0 3px #dce9f6}.info-callout{display:flex;gap:10px;background:#f0f6fc;color:#48739e;border:1px solid #e1edf8;padding:13px;border-radius:8px;margin:15px 0}.info-callout b{font-size:10px;color:#355d83}.info-callout p{font-size:10px;line-height:1.55;color:#71869c;margin:4px 0 0}.full-btn{width:100%;margin-top:9px;justify-content:flex-start}.warning-note{background:#fff8eb;border:1px solid #f5e7c9;border-radius:8px;padding:13px;margin-top:17px}.warning-note b{font-size:10px;color:#946d2d}.warning-note p{font-size:10px;color:#9a875f;line-height:1.55;margin:5px 0 0}.reports-layout{display:grid;gap:16px}.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.report-box{display:grid;gap:10px}.report-box span{font-size:10px;color:#8792a1}.report-box b{font:800 20px Manrope;color:#203149}.summary-lines{display:grid;gap:0;margin-top:19px}.summary-lines>div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf0f4;font-size:11px;color:#748195}.summary-lines b{color:#35465c}.report-foot{display:flex;justify-content:space-between;padding-top:17px;font-size:11px;color:#44556b}.report-foot strong{font:800 16px Manrope;color:#193a5b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#08172ab3;z-index:30;display:grid;place-items:center;padding:20px}.modal{width:min(540px,100%);background:#fff;border-radius:13px;padding:23px;box-shadow:0 20px 80px #0003;max-height:90vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:19px}.modal-head h2{font:800 20px Manrope;margin:0;color:#1c2e45}.modal-head p{font-size:10px;color:#929dab;margin:6px 0 0}.icon-btn{border:0;background:#f2f5f8;color:#66768a;width:33px;height:33px;border-radius:8px;display:grid;place-items:center}.type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.type-toggle button{height:40px;border:1px solid #e5e9ef;background:#fff;border-radius:7px;color:#7c8999;display:flex;justify-content:center;align-items:center;gap:8px;font-size:11px;font-weight:700}.type-toggle button.income-active{background:#edf8f2;border-color:#bce6d0;color:#16865a}.type-toggle button.expense-active{background:#fff1f1;border-color:#f3c9cc;color:#cf5962}.amount-input{display:flex;border:1px solid #e1e6ed;border-radius:7px;align-items:center;height:39px;padding:0 10px;gap:8px}.amount-input span{color:#8793a3;font-size:12px}.amount-input input{border:0;height:100%;padding:0;box-shadow:none!important}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:5px}.toast{position:fixed;bottom:22px;right:24px;background:#123d31;color:#fff;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:8px;font-size:11px;z-index:50;box-shadow:0 8px 25px #0002}.mobile-menu,.close-mobile{display:none}@media(max-width:1100px){.content{padding:28px 24px}.topbar{padding:0 24px}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.breakdown-panel{min-height:unset}.donut-wrap{height:150px}}@media(max-width:760px){.sidebar{transform:translate(-100%);transition:transform .25s ease;box-shadow:10px 0 30px #0002}.sidebar.open{transform:translate(0)}.mobile-menu,.close-mobile{display:grid}.close-mobile{margin-left:auto}.main-area{margin-left:0}.topbar{height:58px;padding:0 16px}.breadcrumb{font-size:11px}.date-pill span{display:none}.content{padding:25px 15px 45px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:24px}.heading-actions{width:100%}.heading-actions .btn{flex:1}.filter-row{align-items:flex-start;gap:10px;flex-direction:column}.stat-grid{gap:9px}.stat-card{padding:13px;min-height:115px}.stat-value{font-size:18px}.dashboard-grid{gap:10px}.panel{padding:14px}.chart-wrap{height:210px}.legend{font-size:8px}.settings-grid,.report-summary{grid-template-columns:1fr}.table-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.search-box,.search-box input{width:100%}.modal{padding:18px}.form-grid{gap:11px}.top-actions{gap:8px}}@media(max-width:420px){.stat-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:16px}.stat-sub{font-size:9px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.modal-actions .btn{flex:1}.scope-switch button{padding:7px 9px;font-size:9px}}.auth-screen{min-height:100vh;background:linear-gradient(135deg,#0b1d33,#173d63);display:grid;place-items:center;padding:24px}.auth-card{width:min(420px,100%);background:#fff;border-radius:16px;padding:34px;box-shadow:0 25px 80px #0004;display:grid;gap:15px}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}.auth-brand strong{display:block;font:800 14px Manrope,sans-serif;color:#1a2b41}.auth-brand span{display:block;font-size:9px;letter-spacing:1.3px;color:#8995a4;margin-top:4px}.auth-card h1{font:800 23px Manrope,sans-serif;color:#17283e;margin:0}.auth-intro{font-size:11px;color:#8994a3;margin:-7px 0 5px}.auth-submit{width:100%;height:42px;margin-top:3px}.auth-foot{display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:#929dab;margin-top:5px}.auth-error{display:flex;gap:8px;align-items:center;padding:10px;border-radius:7px;background:#fff0f0;color:#b84650;font-size:10px}.loading-screen{min-height:100vh;display:grid;place-items:center;background:#f5f7fa;color:#607086;font:600 13px DM Sans,sans-serif}.user-details{min-width:0;flex:1;overflow:hidden}.user-details b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-mini{border:0;background:transparent;color:#91a3b7;padding:7px}.logout-mini:hover{color:#fff}.account-email{font-size:11px;color:#607086;padding:10px 0}
