@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--ink:#27332f;--muted:#8a9690;--line:#e9ede9;--paper:#fff;--wash:#f8faf8;--green:#376c58;--green-dark:#285b47;--sage:#eaf2ec;--purple:#8b7ee8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#f8faf8;margin:0;font-family:DM Sans,Arial,sans-serif;font-size:13px}.app-shell{min-height:100vh;display:flex}.sidebar{z-index:3;background:#fff;border-right:1px solid #edf0ed;flex-direction:column;width:232px;padding:26px 17px 17px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#34443b;letter-spacing:-.8px;align-items:center;gap:10px;padding:0 8px 54px;font:800 19px Manrope,sans-serif;text-decoration:none;display:flex}.brand-mark{color:#fff;background:#386d58;border-radius:10px;place-items:center;width:31px;height:31px;font:800 20px Manrope;display:grid;box-shadow:0 4px 10px #386d582c}.brand-dot{color:#e1ad65}.nav-label,.card-label{color:#9aa59f;letter-spacing:1.25px;font-size:9px;font-weight:700}.nav-label{padding:0 12px 12px}.nav-item{color:#75827b;border-radius:8px;align-items:center;gap:13px;height:42px;margin-bottom:4px;padding:0 13px;font-size:12px;text-decoration:none;display:flex}.nav-item>span{text-align:center;width:16px;font-size:17px}.nav-item.active{color:#32644f;background:#edf4ef;font-weight:700}.side-bottom{margin-top:auto}.side-tip{background:#fcfcf7;border:1px solid #edf0e7;border-radius:10px;margin:0 2px 18px;padding:16px 14px 13px;position:relative}.tip-spark{color:#d4a762;margin-bottom:9px;font-size:18px;display:block}.side-tip strong{font:700 12px Manrope}.side-tip p{color:#8b9690;margin:6px 0 12px;font-size:10.5px;line-height:1.65}.tip-line{color:#a28c68;font-size:9px}.profile{border-top:1px solid #f0f1ef;align-items:center;gap:9px;padding:16px 5px 0;display:flex}.avatar{color:#976e54;background:#f1e3d8;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.profile strong{font-size:11px;display:block}.profile small{color:#98a29c;margin-top:3px;font-size:9px;display:block}.profile-dots{color:#929b95;margin-left:auto;font-size:18px}.main-area{width:calc(100% - 232px);margin-left:232px}.topbar{background:#fff;border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:center;height:58px;padding:0 42px;display:flex}.breadcrumb{color:#9ba59f;font-size:11px}.breadcrumb span{color:#c2c9c4;padding:0 10px}.breadcrumb strong{color:#53625a;font-weight:600}.top-right{align-items:center;gap:20px;display:flex}.today-label{color:#8b9690;font-size:10px}.icon-button{color:#63776a;background:0 0;border:0;font-size:19px;position:relative}.icon-button i{background:#e98779;border:1px solid #fff;border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:2px}.avatar.small{width:27px;height:27px;font-size:10px}.page-content{max-width:1200px;margin:auto;padding:36px 42px 24px}.welcome-row{justify-content:space-between;align-items:flex-end;margin:0 0 25px;display:flex}.eyebrow{color:#8b9a91;letter-spacing:1.2px;align-items:center;gap:8px;font-size:9px;font-weight:700;display:flex}.eyebrow-line{background:#c5a66c;width:17px;height:1px}h1,h2{letter-spacing:-.65px;font-family:Manrope,DM Sans,sans-serif}h1{color:#2e3e35;margin:10px 0 5px;font-size:27px;font-weight:700;line-height:1.25}h1 span{color:#cf9e60}.subtitle{color:#939d97;margin:0;font-size:12px}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font:600 11px DM Sans;transition:background .15s,transform .15s;display:inline-flex}.primary-button{color:#fff;background:#386d58;box-shadow:0 3px 7px #315f4f20}.primary-button:hover{background:#295a46;transform:translateY(-1px)}.primary-button span{font-size:16px;line-height:12px}.month-toolbar{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.month-select{color:#34433b;align-items:center;gap:13px;font:700 13px Manrope;display:flex}.month-select button{color:#7f8b84;cursor:pointer;background:#fff;border:1px solid #e7ebe7;border-radius:6px;width:25px;height:25px;font-size:18px;line-height:18px}.month-select i{border:1px solid #8e9c93;border-radius:3px;width:13px;height:13px;margin-left:2px;position:relative}.month-select i:before{content:"";border-top:1px solid #8e9c93;width:100%;position:absolute;top:2px}.period-label{color:#9ba59f;letter-spacing:1px;align-items:center;gap:7px;font-size:8px;display:flex}.period-label span{background:#8cbaa0;border-radius:50%;width:6px;height:6px}.summary-grid{grid-template-columns:1.15fr 1fr .9fr;gap:13px;display:grid}.card{background:#fff;border:1px solid #ebefeb;border-radius:9px;box-shadow:0 2px 6px #24342c05}.total-card{background:linear-gradient(130deg,#fff 30%,#f6faf6);min-height:160px;padding:18px 20px;position:relative;overflow:hidden}.card-label{color:#929e96}.round-icon{color:#799180;border:1px solid #edf0eb;border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;font-weight:400;display:grid}.total-card .round-icon{position:absolute;top:15px;right:17px}.total-number{color:#2e4438;letter-spacing:-1px;margin-top:16px;font:700 30px Manrope}.summary-foot{color:#9aa39e;align-items:center;gap:7px;margin-top:8px;font-size:9px;display:flex}.trend-chip{color:#54836a;background:#eef5ef;border-radius:10px;padding:4px 7px;font-size:9px;font-weight:700}.trend-chip[data-down=true]{color:#55866b;background:#edf4ee}.category-card{min-height:160px;padding:16px 17px 13px}.card-head{justify-content:space-between;align-items:flex-start;display:flex}.card-caption{color:#9ca59f;margin:5px 0 0;font-size:10px}.category-list{gap:7px;margin-top:12px;display:grid}.category-row{justify-content:space-between;align-items:center;font-size:10px;display:flex}.category-name{color:#718077;align-items:center;gap:7px;display:flex}.category-row strong{color:#39473f;font-size:10px}.category-icon{color:#63816d;background:#f5f7f4;border-radius:6px;place-items:center;width:21px;height:21px;margin-right:2px;font-size:11px;display:inline-grid}.category-row .category-icon{width:17px;height:17px;font-size:10px}.stacked-bar{background:#f3f3ef;border-radius:4px;gap:2px;height:5px;margin-top:12px;display:flex;overflow:hidden}.stacked-bar i{border-radius:4px}.empty-inline{color:#a0aaa3;margin-top:23px;font-size:10px;line-height:1.6}.insight-card{background:#f5f7fb;border-color:#e9ecf5;min-height:160px;padding:17px 18px 13px}.insight-top{align-items:center;gap:8px;display:flex}.insight-icon{color:#9688df;font-size:16px}.insight-card p{color:#65716e;margin:12px 0 5px;font-size:11px;line-height:1.55}.insight-card p strong{color:#39463f;text-transform:capitalize}.insight-amount{color:#4c526f;font:700 17px Manrope}.insight-amount span{color:#99a1ac;font:400 9px DM Sans}.insight-bottom{color:#9ba1a9;border-top:1px solid #e6e9f2;margin-top:12px;padding-top:9px;font-size:9px}.insight-bottom span{color:#ba9e60;margin-right:5px}.analytics-grid{grid-template-columns:1.25fr 1fr;gap:13px;margin-top:13px;display:grid}.trend-card,.compare-card{min-height:258px;padding:17px 19px 12px}.section-heading{justify-content:space-between;align-items:flex-start;display:flex}.section-heading h2,.transactions-heading h2{color:#344139;margin:5px 0 0;font-size:15px}.chart-legend{color:#929d96;align-items:center;gap:6px;font-size:9px;display:flex}.chart-legend i{background:#63927a;border-radius:50%;width:7px;height:7px}.chart-wrap{height:151px;margin-top:13px;display:flex}.axis-labels{color:#a3aaa5;flex-direction:column;justify-content:space-between;width:47px;padding:0 9px 20px 0;font-size:8px;display:flex}.chart{flex:1;position:relative}.grid-lines{flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:3px 0 20px}.grid-lines i{border-top:1px dashed #edf0ed}.bars{justify-content:space-around;align-items:stretch;display:flex;position:absolute;inset:0}.bar-column{flex-direction:column;justify-content:flex-end;align-items:center;width:11%;height:100%;display:flex;position:relative}.bar{z-index:1;background:#bfd3c5;border-radius:5px 5px 1px 1px;width:56%;min-height:3px;transition:height .3s;position:relative}.bar.selected{background:#4d8367}.bar-column span{color:#969f99;height:19px;padding-top:7px;font-size:8px}.bar-value{color:#a1aaa3;white-space:nowrap;font-size:7px;position:absolute;bottom:calc(100% - 16px)}.chart-note{color:#9ba49d;border-top:1px solid #eff1ef;padding-top:10px;font-size:9px}.chart-note span{color:#c8a45e;margin-right:4px}.more-button{color:#929b95;cursor:pointer;background:#f7f8f6;border:0;border-radius:5px;width:25px;height:22px;font-size:16px}.compare-list{margin-top:15px}.compare-row{border-bottom:1px solid #f1f3f1;margin-bottom:6px;padding:0 0 7px}.compare-title{color:#748078;align-items:center;gap:6px;font-size:9px;display:flex}.compare-title strong{color:#445149;margin-left:auto;font-size:9px}.compare-dot{border-radius:50%;width:6px;height:6px}.spark-bars{justify-content:space-between;align-items:flex-end;height:22px;margin-top:4px;padding:0 3px;display:flex}.spark-bars i{border-radius:2px 2px 0 0;width:8%;min-height:2px}.compare-months{color:#a4ada6;justify-content:space-between;padding:0 3px;font-size:7px;display:flex}.transactions-card{margin-top:13px;padding:17px 19px 0}.transactions-heading{justify-content:space-between;align-items:flex-start;padding-bottom:14px;display:flex}.transactions-heading h2{margin-top:5px}.transactions-heading .card-caption{margin-top:4px}.transaction-actions{align-items:center;gap:8px;display:flex}.search-box{color:#9ca69f;border:1px solid #e9ede9;border-radius:6px;align-items:center;gap:6px;width:157px;height:31px;padding:0 9px;display:flex}.search-box span{font-size:17px}.search-box input{color:#4a574f;background:0 0;border:0;outline:0;width:100%;font:10px DM Sans}.search-box input::placeholder{color:#adb5af}.secondary-button{color:#5e6d64;background:#fff;border:1px solid #e4eae5;padding:8px 11px;font-size:10px}.secondary-button:hover{background:#f7faf7}.secondary-button:first-letter{font-size:15px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}thead th{color:#a0aaa3;letter-spacing:.8px;border-top:1px solid #eff1ef;border-bottom:1px solid #eff1ef;padding:10px 8px;font-size:8px;font-weight:700}tbody td{color:#7e8982;white-space:nowrap;border-bottom:1px solid #f1f3f1;padding:9px 8px;font-size:10px}.transaction-name{align-items:center;gap:8px;display:flex}.transaction-name .category-icon{background:#f4f6f3;border-radius:7px;width:24px;height:24px}.transaction-name strong{color:#49564e;font-size:10px;font-weight:600}.date-cell{color:#939d96}.category-pill{color:#76837a;background:#f7f8f6;border-radius:12px;align-items:center;gap:6px;padding:5px 8px;font-size:8px;display:inline-flex}.category-pill i{border-radius:50%;width:5px;height:5px}.amount-col{text-align:right}.amount{color:#48564d;font-weight:600}.row-actions{opacity:.25;justify-content:flex-end;gap:3px;transition:opacity .15s;display:flex}.row-actions button{color:#58675d;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 5px;font-size:12px}.row-actions button:hover{color:#386d58;background:#edf3ee}.transaction-card tr:hover .row-actions,tbody tr:hover .row-actions{opacity:1}.table-footer{color:#a0aaa3;justify-content:space-between;align-items:center;height:36px;font-size:9px;display:flex}.table-footer strong{color:#66736a;font-weight:600}.table-footer button{color:#65846f;cursor:pointer;background:0 0;border:0;font:600 9px DM Sans}.table-footer button span{margin-left:4px;font-size:13px}.empty-row{text-align:center;color:#9da79f;padding:23px}.page-footer{color:#a9b1aa;justify-content:space-between;padding:17px 3px 4px;font-size:8px;display:flex}.page-footer b{color:#cfaa6c;margin-left:4px}.modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#24332c66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:12px;width:min(100%,420px);padding:25px;position:relative;box-shadow:0 18px 60px #1b322640}.dialog h2{margin:11px 0 3px;font-size:21px}.dialog-subtitle,.confirm-dialog p{color:#929d95;margin:0 0 20px;font-size:11px}.dialog-close{color:#76837a;cursor:pointer;background:#f6f8f5;border:0;border-radius:50%;width:27px;height:27px;font-size:19px;position:absolute;top:14px;right:16px}.field-label{color:#617067;margin:0 0 14px;font-size:10px;font-weight:600;display:block}.field-label input,.field-label select{color:#35443b;background:#fff;border:1px solid #e5ebe6;border-radius:6px;outline:none;width:100%;height:38px;margin-top:6px;padding:0 10px;font:11px DM Sans;display:block}.field-label input:focus,.field-label select:focus{border-color:#7da58a;box-shadow:0 0 0 3px #eaf3ec}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.currency-hint{float:right;color:#a1aaa4;font-size:8px;font-weight:400}.amount-input{position:relative}.amount-input>span{color:#8e9991;font-size:11px;position:absolute;top:18px;left:11px}.amount-input input{padding-left:23px}.dialog-actions{border-top:1px solid #eff1ef;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:15px;display:flex}.form-error{color:#b85d53;margin:0;font-size:10px}.confirm-dialog{text-align:center;width:min(100%,360px);padding:29px 25px 22px}.dialog-mark{color:#ce7668;background:#fff0eb;border-radius:50%;place-items:center;width:36px;height:36px;margin:0 auto 10px;font:700 16px Manrope;display:grid}.confirm-dialog h2{font-size:17px}.confirm-dialog p{margin:7px 0 17px}.danger-button{color:#fff;background:#c9685b}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:1050px){.sidebar{width:200px}.main-area{width:calc(100% - 200px);margin-left:200px}.topbar{padding:0 27px}.page-content{padding:30px 27px 20px}.summary-grid{grid-template-columns:1fr 1fr}.insight-card{min-height:unset;grid-column:1/-1}.insight-card p{margin:12px 8px 8px 0;display:inline-block}.insight-bottom{margin-top:4px}.analytics-grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){.sidebar{width:58px;padding:17px 8px}.brand{padding:0 5px 39px}.brand>span:last-child,.nav-label,.nav-item:not(.active){display:none}.brand-mark{width:34px;height:34px}.nav-item.active{justify-content:center;width:40px;margin:auto;padding:0;font-size:0}.nav-item.active span{font-size:17px}.side-tip,.profile>div:not(.avatar),.profile-dots{display:none}.profile{justify-content:center;padding:14px 0 0}.main-area{width:calc(100% - 58px);margin-left:58px}.topbar{height:51px;padding:0 18px}.today-label{display:none}.top-right{gap:13px}.page-content{padding:26px 18px 20px}.welcome-row{align-items:flex-start;gap:15px}.welcome-row h1{max-width:390px;font-size:22px}.welcome-row .primary-button{min-width:38px;padding:10px 12px;font-size:0}.welcome-row .primary-button span{font-size:17px}.subtitle{font-size:10px}.summary-grid{grid-template-columns:1fr 1fr}.total-card,.category-card{min-height:153px;padding:14px}.total-number{font-size:25px}.analytics-grid{grid-template-columns:1fr}.trend-card,.compare-card{min-height:unset}.compare-card{padding-bottom:12px}.compare-list{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.transactions-card{padding:15px 13px 0}.transactions-heading{gap:10px}.transactions-heading h2{font-size:13px}.search-box{width:32px;padding:0 8px}.search-box input{width:0;min-width:0}.search-box:focus-within{width:125px}.search-box:focus-within input{width:100%}.secondary-button{padding:7px 8px}.secondary-button span{display:none}.transaction-actions{gap:5px}.page-footer{font-size:7px}.category-pill{max-width:112px;overflow:hidden}.row-actions{opacity:.8}}@media (max-width:460px){.page-content{padding-left:12px;padding-right:12px}.topbar{padding:0 12px}.welcome-row h1{max-width:230px;font-size:19px}.welcome-row{margin-bottom:19px}.eyebrow{font-size:8px}.period-label{font-size:7px}.summary-grid{grid-template-columns:1fr}.total-card{min-height:140px}.category-card{min-height:145px}.insight-card{grid-column:auto}.insight-card p{display:block}.analytics-grid{margin-top:10px}.transactions-heading{display:block}.transaction-actions{justify-content:flex-end;margin-top:13px}.search-box{width:130px}.search-box input{width:100%}.search-box:focus-within{width:130px}table{min-width:550px}.table-footer{font-size:8px}.page-footer{gap:10px}.page-footer span:last-child{text-align:right}.month-toolbar{margin-bottom:10px}}.category-select{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0}.category-select:hover,.category-select.is-selected{background:#f1f6f1}.category-select.is-selected .category-name span:last-child{color:#315f4a;font-weight:700}.category-segment{cursor:pointer;border:0;min-width:4px;height:100%;padding:0;transition:opacity .15s,filter .15s}.category-segment:hover,.category-segment:focus-visible{filter:brightness(.88);outline-offset:2px;z-index:1;outline:2px solid #314f3e}.category-segment.is-muted{opacity:.35}.clear-filter{color:#5c8068;cursor:pointer;background:0 0;border:0;padding:8px 0 0;font:600 9px DM Sans}.manage-categories{margin-top:13px;padding:18px 19px}.manage-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px;display:flex}.manage-heading h2{color:#344139;margin:5px 0 0;font-size:15px}.manage-heading .card-caption{margin-top:5px}.managed-category-list{grid-template-columns:1fr 1fr;gap:8px 12px;display:grid}.managed-category{border:1px solid #eff2ef;border-radius:7px;grid-template-columns:10px minmax(80px,1fr) auto auto;align-items:center;gap:8px;min-width:0;padding:10px;display:grid}.managed-color{border-radius:50%;width:8px;height:8px}.managed-category>strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.usage-count{color:#98a29b;white-space:nowrap;font-size:8px}.category-action{color:#627267;cursor:pointer;background:#fff;border:1px solid #e7ece8;border-radius:5px;padding:5px 7px;font:600 9px DM Sans}.category-action:hover:not(:disabled){color:#386d58;background:#f2f7f3}.delete-category{color:#a76c64}.category-action:disabled{color:#b6bcb7;cursor:not-allowed;background:#f8f9f8}.category-help{color:#a36d63;grid-column:2/-1;margin-top:-3px;font-size:8px;line-height:1.35}.category-help:empty{display:none}.category-dialog .field-label{margin-top:20px}@media (max-width:760px){.nav-item:not(.active){display:flex}.nav-item{justify-content:center;width:40px;margin:0 auto 5px;padding:0;font-size:0}.nav-item>span{font-size:17px}.managed-category-list{grid-template-columns:1fr}}@media (max-width:460px){.manage-categories{padding:15px 13px}.managed-category{grid-template-columns:10px minmax(65px,1fr) auto auto;gap:6px}.manage-heading .secondary-button span{display:inline}.category-segment{min-width:3px}}.login-shell{background:#f8faf8;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #e9ede9;border-radius:14px;width:min(100%,420px);padding:34px;box-shadow:0 16px 50px #27332f0d}.login-brand{width:max-content;margin:0 0 34px;padding:0}.login-card h1{letter-spacing:-.5px;margin:12px 0 5px;font:700 24px Manrope,sans-serif}.login-description{color:#8a9690;margin:0 0 24px}.login-card .field-label{margin:16px 0 0;display:block}.login-card .field-label input{color:#27332f;width:100%;font:inherit;border:1px solid #e2e8e2;border-radius:7px;outline:none;margin-top:7px;padding:11px 12px;display:block}.login-card .field-label input:focus{border-color:#376c58;box-shadow:0 0 0 3px #376c581a}.login-submit{justify-content:center;width:100%;margin-top:22px}.login-card .form-error{margin:15px 0 0}.sign-out-button{color:#8a9690;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:5px 0;font-size:9px}.sign-out-button:hover{color:#285b47}
