:root{color-scheme:light;--on-brand:#fff;--surface:#fff;--text:#263a32;--border:#e3e7df;--c3f503309:#3f503309;--c23634e13:#23634e13;--c2c482415:#2c482415;--c122f2444:#122f2444;--cffffff16:#ffffff16;--c142d2466:#142d2466;--c94a094:#94a094;--c9da69a:#9da69a;--ca7b49f:#a7b49f;--c376b52:#376b52;--cdce3db:#dce3db;--cedf0e8:#edf0e8;--c8a978c:#8a978c;--c9ca697:#9ca697;--c6b7d6e:#6b7d6e;--cfbeeea:#fbeeea;--c8b968e:#8b968e;--cf2f4ee:#f2f4ee;--c8c8d6a:#8c8d6a;--ca7bb9c:#a7bb9c;--c72a994:#72a994;--cedf1e9:#edf1e9;--cdfe5dc:#dfe5dc;--ce2e6df:#e2e6df;--c8b978d:#8b978d;--c7e8880:#7e8880;--cf7eddf:#f7eddf;--cf6f8f2:#f6f8f2;--cc2c7c1:#c2c7c1;--c8b978b:#8b978b;--c8a968b:#8a968b;--ce0e7db:#e0e7db;--ca38959:#a38959;--c9aaa98:#9aaa98;--ce7edde:#e7edde;--ce6f1e5:#e6f1e5;--c8e9b8e:#8e9b8e;--c96a096:#96a096;--c95a093:#95a093;--c263a32:#263a32;--c35493c:#35493c;--cf3f5ef:#f3f5ef;--cf5f6f0:#f5f6f0;--ceaf2e9:#eaf2e9;--c8f988f:#8f988f;--c23634e:#23634e;--cabc5ad:#abc5ad;--c8a9687:#8a9687;--c7f8a80:#7f8a80;--ceaf1e5:#eaf1e5;--ceff1eb:#eff1eb;--c929a93:#929a93;--c729273:#729273;--c74a18c:#74a18c;--c879087:#879087;--c164c3c:#164c3c;--cfafbf8:#fafbf8;--cedf6ef:#edf6ef;--c314939:#314939;--c96a093:#96a093;--ca25247:#a25247;--c95a096:#95a096;--c558a72:#558a72;--c3e5a49:#3e5a49;--ca64038:#a64038;--cefd8d0:#efd8d0;--c8a948b:#8a948b;--cf5f6f2:#f5f6f2;--ce3e7de:#e3e7de;--c1d5543:#1d5543;--cf4f2e4:#f4f2e4;--c567148:#567148;--cfaedeb:#faedeb;--cc0d0bf:#c0d0bf;--c7c8880:#7c8880;--c446a49:#446a49;--c58724c:#58724c;--c558569:#558569;--c52745f:#52745f;--cf2f5ed:#f2f5ed;--c205d47:#205d47;--ce3e7df:#e3e7df;--cc2d7c6:#c2d7c6;--c283c34:#283c34;--ca86560:#a86560;--cfff:#fff}:root[data-theme=dark]{color-scheme:dark;--surface:#192620;--text:#e1ece4;--border:#33483d;--c3f503309:#3f503309;--c23634e13:#23634e13;--c2c482415:#2c482415;--c122f2444:#122f2444;--cffffff16:#ffffff16;--c142d2466:#142d2466;--c94a094:#a6b8aa;--c9da69a:#a6b8aa;--ca7b49f:#a6b8aa;--c376b52:#a6d9b5;--cdce3db:#33483d;--cedf0e8:#23352c;--c8a978c:#a6b8aa;--c9ca697:#a6b8aa;--c6b7d6e:#a6b8aa;--cfbeeea:#472b29;--c8b968e:#a6b8aa;--cf2f4ee:#23352c;--c8c8d6a:#d7c69a;--ca7bb9c:#a6b8aa;--c72a994:#afc2ad;--cedf1e9:#233c2c;--cdfe5dc:#33483d;--ce2e6df:#23352c;--c8b978d:#a6b8aa;--c7e8880:#a6b8aa;--cf7eddf:#3a3524;--cf6f8f2:#23352c;--cc2c7c1:#33483d;--c8b978b:#a6b8aa;--c8a968b:#a6b8aa;--ce0e7db:#33483d;--ca38959:#d7c69a;--c9aaa98:#a6b8aa;--ce7edde:#233c2c;--ce6f1e5:#233c2c;--c8e9b8e:#a6b8aa;--c96a096:#a6b8aa;--c95a093:#a6b8aa;--c263a32:#e1ece4;--c35493c:#e1ece4;--cf3f5ef:#233c2c;--cf5f6f0:#23352c;--ceaf2e9:#233c2c;--c8f988f:#a6b8aa;--c23634e:#23634e;--cabc5ad:#a6b8aa;--c8a9687:#a6b8aa;--c7f8a80:#a6b8aa;--ceaf1e5:#233c2c;--ceff1eb:#23352c;--c929a93:#a6b8aa;--c729273:#a6b8aa;--c74a18c:#afc2ad;--c879087:#a6b8aa;--c164c3c:#164c3c;--cfafbf8:#192620;--cedf6ef:#233c2c;--c314939:#e1ece4;--c96a093:#a6b8aa;--ca25247:#f4b1a9;--c95a096:#a6b8aa;--c558a72:#558a72;--c3e5a49:#a6d9b5;--ca64038:#a64038;--cefd8d0:#33483d;--c8a948b:#a6b8aa;--cf5f6f2:#23352c;--ce3e7de:#23352c;--c1d5543:#1d5543;--cf4f2e4:#3a3524;--c567148:#a6d9b5;--cfaedeb:#472b29;--cc0d0bf:#33483d;--c7c8880:#a6b8aa;--c446a49:#a6d9b5;--c58724c:#a6d9b5;--c558569:#a6d9b5;--c52745f:#a6d9b5;--cf2f5ed:#233c2c;--c205d47:#a6d9b5;--ce3e7df:#23352c;--cc2d7c6:#33483d;--c283c34:#e1ece4;--ca86560:#f4b1a9;--cfff:#192620}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--c263a32);background:var(--cf5f6f2);font-synthesis:none;font-weight:400;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:disabled{opacity:.6;cursor:wait}a{color:inherit;text-decoration:none}input,select,textarea{border:1px solid var(--cdce3db);border-radius:8px;padding:11px 12px;background:var(--cfff);color:var(--c283c34);min-width:0;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--c558a72);box-shadow:0 0 0 3px var(--c23634e13)}textarea{resize:vertical;min-height:75px}h1,h2,h3,p{margin:0}h1{font-size:32px;font-weight:600;letter-spacing:-1.2px;line-height:1.25}h2{font-size:30px;letter-spacing:-1px;font-weight:600}h3{font-size:16px;font-weight:600}small{font-size:11px;line-height:1.5}p{line-height:1.65;color:var(--c7c8880)}.app{display:flex;min-height:100vh}.sidebar{width:246px;background:var(--cfff);border-right:1px solid var(--ce3e7df);padding:35px 24px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;font-size:35px;font-weight:650;letter-spacing:-1.5px;gap:8px}.brand-icon{background:var(--c23634e);color:var(--on-brand);padding:9px;display:flex;border-radius:12px;margin-right:5px}.brand-dot{color:var(--c74a18c);margin-left:-8px}.household{display:flex;flex-direction:column;gap:8px;margin:43px 0 32px}.household strong{font-size:12px;font-weight:500}.household>span:last-child{font-size:11px;color:var(--c929a93)}.eyebrow{font-size:10px;color:var(--c8a968b);font-weight:600;letter-spacing:1.7px}nav{display:flex;flex-direction:column;gap:6px}nav button{justify-content:flex-start;padding:13px 12px;color:var(--c7e8880);border-radius:8px;font-size:13px;font-weight:500}nav button.selected{background:var(--ceaf2e9);color:var(--c205d47)}nav button small{margin-left:auto;background:var(--cfff);padding:1px 6px;border-radius:5px}.chat-note{margin-top:auto;background:var(--cf3f5ef);border-radius:12px;padding:20px 16px;display:flex;flex-direction:column;gap:10px;color:var(--c52745f)}.chat-note strong{font-size:13px;color:var(--c3e5a49)}.chat-note p{font-size:11px}.account{display:flex;align-items:center;gap:9px;padding-top:26px}.avatar{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ce7edde);text-transform:uppercase;color:var(--c567148);font-size:12px}.account strong{font-size:12px}.account small{display:block;color:var(--c96a096);font-size:10px}.account button{margin-left:auto}main{margin-left:246px;width:calc(100% - 246px)}header{height:82px;border-bottom:1px solid var(--ce2e6df);background:var(--cfafbf8);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{font-size:12px;color:var(--c879087)}.breadcrumb span{padding:0 12px;color:var(--cc2c7c1)}.primary{background:var(--c23634e);color:var(--on-brand);padding:12px 18px;border-radius:8px;font-weight:500;font-size:12px}.primary:hover{background:var(--c164c3c)}.secondary{border:1px solid var(--cdfe5dc);padding:10px 14px;border-radius:7px;background:var(--cfff);font-size:12px}.danger{background:var(--ca64038);color:var(--on-brand);padding:12px 18px;border-radius:8px}.page{max-width:1510px;margin:auto;padding:38px 42px 24px}.page-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.page-title .eyebrow{display:block;margin-bottom:10px}.page-title p{font-size:12px;margin-top:12px}.month-picker{display:flex;align-items:center;border:1px solid var(--cdfe5dc);border-radius:8px;background:var(--cfff);padding:5px;gap:2px}.month-picker input{border:0;padding:5px 0;width:135px;font-size:12px;background:none}.month-picker button{padding:5px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 16px}.stat{background:var(--cfff);border:1px solid var(--ce3e7df);border-radius:12px;padding:24px 21px;position:relative}.stat>span{font-size:11px;color:var(--c7f8a80)}.stat h2{margin:13px 0 12px;font-size:28px}.stat small{font-size:10px;color:var(--c94a094)}.hero-stat{background:var(--c23634e);border-color:var(--c23634e);color:var(--on-brand)}.hero-stat>span,.hero-stat small{color:var(--cc2d7c6)}.stat-icon{position:absolute;right:14px;top:22px;color:var(--on-brand)fff16}.report-note{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--c8b978d);margin:19px 0 27px}.dot{display:inline-block;width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--ca7bb9c)}.charts{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;margin-bottom:20px}.card{background:var(--cfff);border:1px solid var(--ce3e7df);border-radius:12px;padding:24px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.card-title p{font-size:10px;margin-top:6px}.donut-content{display:flex;align-items:center;gap:10px}.donut{width:48%;min-width:170px}.legend{flex:1}.legend>div{display:flex;align-items:center;gap:8px;font-size:10px;margin-bottom:14px}.legend strong{margin-left:auto;font-size:10px;font-weight:550}.quick-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.quick{justify-content:flex-start;padding:20px;text-align:left}.quick>svg{margin-left:auto;color:var(--c8a978c)}.quick strong{font-size:12px;font-weight:550}.quick p{font-size:10px;margin-top:5px}.mini-icon{display:inline-flex;align-items:center;justify-content:center;background:var(--ceaf1e5);color:var(--c58724c);border-radius:10px;padding:12px;flex-shrink:0}.mini-icon.beige{background:var(--cf7eddf);color:var(--ca38959)}.small-charts .card{padding:20px 24px}.breakdown{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:11px;margin-bottom:12px;gap:7px}.breakdown>div{width:100%;background:var(--cf2f4ee);height:5px;border-radius:5px;overflow:hidden}.breakdown i{display:block;height:100%;border-radius:5px}.text-button{color:var(--c376b52);font-size:11px;padding:4px}.transactions{padding:24px 0 0}.transactions>.card-title{padding:0 24px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}th{background:var(--cfafbf8);color:var(--c8f988f);font-size:10px;font-weight:500;padding:13px 14px}td{border-top:1px solid var(--ceff1eb);padding:16px 14px;color:var(--c7f8a80)}th:first-child,td:first-child{padding-left:24px}td strong{font-weight:550;color:var(--c35493c);display:block;max-width:280px}td small{display:block;font-size:9px;color:var(--c95a096);max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{font-size:10px;border:1px solid var(--ce3e7de);background:var(--cf6f8f2);padding:5px 8px;border-radius:5px;white-space:nowrap}.right{text-align:right}.amount{color:var(--c314939);font-weight:600}.status{font-size:9px;color:var(--c8c8d6a);background:var(--cf4f2e4);padding:3px 6px;border-radius:4px;display:inline-block;margin-top:4px}.status.paid{color:var(--c558569);background:var(--cedf6ef)}.status.canceled{color:var(--ca86560);background:var(--cfaedeb)}.row-actions{display:flex;gap:3px}.row-actions button{padding:5px;color:var(--c8b968e)}.empty{padding:40px 20px;text-align:center;color:var(--ca7b49f)}.empty svg{margin-bottom:10px}.empty p{font-size:12px}.filters{display:flex;gap:9px;flex-wrap:wrap;padding:0 24px 20px}.filters input,.filters select{font-size:11px;padding:9px;max-width:170px}.search{display:flex;align-items:center;border:1px solid var(--cdce3db);border-radius:8px;padding-left:10px;color:var(--c9aaa98)}.search input{border:0;padding:9px 8px}.plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px}.plan-title{display:flex;align-items:center;gap:12px;margin-bottom:20px}.plan-title .status{margin-left:auto}.plan h2 small{font-size:12px;font-weight:400;color:var(--c8a948b);letter-spacing:0}.plan p{font-size:11px;margin:7px 0}.plan-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--c8b978b);padding:15px 0}.plan .secondary{margin:12px 0}.plan .muted{display:block}.inactive{opacity:.7}.progress{height:7px;background:var(--cedf1e9);border-radius:7px;margin-top:20px}.progress>div{height:100%;background:var(--c72a994);border-radius:7px}.payment{display:flex;align-items:center;gap:12px;font-size:11px;padding:9px 0;border-bottom:1px solid var(--cedf0e8)}.payment button{margin-left:auto}details{margin-top:12px}summary{font-size:12px;cursor:pointer;color:var(--c52745f)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.categories-settings{grid-column:1/-1}.setting-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--cedf0e8)}.setting-row>div{flex:1;min-width:0}.setting-row strong{font-size:12px;font-weight:550}.setting-row small{display:block;color:var(--c95a093);word-break:break-all}.setting-row button{padding:6px}footer{font-size:10px;color:var(--c9da69a);margin-top:30px;display:flex;justify-content:space-between}.modal-backdrop{position:fixed;inset:0;background:var(--c142d2466);backdrop-filter:blur(4px);z-index:20;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--cfff);border-radius:16px;padding:30px;max-width:560px;width:100%;max-height:92vh;overflow:auto;position:relative;box-shadow:0 20px 70px var(--c122f2444)}.close{position:absolute;right:18px;top:20px;color:var(--c8e9b8e)}.modal h2{font-size:24px;margin-bottom:20px}.modal p{margin:10px 0;font-size:12px}label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--c6b7d6e);margin-bottom:15px}label input,label select,label textarea{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.muted{color:var(--c96a093);font-size:11px;line-height:1.7}form>.primary{width:100%;margin-top:12px}.error{background:var(--cfbeeea);border:1px solid var(--cefd8d0);color:var(--ca25247);padding:12px;border-radius:8px;font-size:12px;margin-bottom:16px;display:flex;justify-content:space-between;word-break:break-word}.notice{background:var(--ce6f1e5);color:var(--c446a49);padding:12px;border-radius:8px;font-size:12px;margin-bottom:16px;display:flex;gap:8px}.busy{font-size:10px;color:var(--c729273);padding-bottom:10px}.loading{padding:60px}.login-page{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;background:var(--cf5f6f0)}.login-intro{padding:70px 12%;background:var(--c1d5543);color:var(--on-brand);display:flex;flex-direction:column;justify-content:center}.login-intro .brand{position:absolute;top:60px;font-size:36px}.login-intro .eyebrow{color:var(--cabc5ad)}.login-intro h1{font-size:62px;line-height:1.12;margin:25px 0;letter-spacing:-2px}.login-intro p{color:var(--cc0d0bf);font-size:14px}.login-card{align-self:center;justify-self:center;background:var(--cfff);padding:42px;border:1px solid var(--ce0e7db);border-radius:18px;width:380px;max-width:90%;box-shadow:0 10px 40px var(--c3f503309)}.login-card h2{font-size:27px;margin:25px 0 10px}.login-card p{font-size:12px;margin-bottom:30px}.login-card>small{display:block;color:var(--c9ca697);text-align:center;margin-top:22px;font-size:10px}@media(min-width:1600px){.page{padding-top:50px}.charts{grid-template-columns:1fr 1fr}}@media(max-width:1200px){.sidebar{width:210px;padding:30px 18px}main{margin-left:210px;width:calc(100% - 210px)}.page{padding:30px 26px}header{padding:0 26px}.stats{grid-template-columns:repeat(2,1fr)}.charts{grid-template-columns:1fr}.donut-content{justify-content:center}.donut{max-width:250px}.legend{max-width:300px}.page-title h1{font-size:27px}}@media(max-width:760px){.sidebar{inset:auto 0 0;width:100%;height:65px;padding:5px 8px;border:0;border-top:1px solid var(--ce3e7df);flex-direction:row;justify-content:center}.sidebar .brand,.household,.chat-note,.account{display:none}nav{flex-direction:row;justify-content:space-around;width:100%;gap:1px}nav button{flex-direction:column;padding:6px 8px;font-size:9px;gap:5px;flex:1}nav button small{display:none}main{margin-left:0;width:100%;padding-bottom:65px}header{height:68px;padding:0 18px}.page{padding:26px 18px 20px}.page-title{align-items:flex-start;flex-direction:column;gap:18px}.page-title h1{font-size:27px}.page-title p{font-size:11px}.stats{gap:10px}.stat{padding:18px 14px}.stat h2{font-size:22px}.stat small{font-size:9px}.stat>span{font-size:10px}.stat-icon{display:none}.charts,.quick-cards,.plan-grid,.settings-grid{grid-template-columns:1fr;gap:14px}.card{padding:20px}.category-card{padding:20px 14px}.donut{min-width:140px}.legend>div{font-size:9px}.legend strong{font-size:9px}.report-note{font-size:9px;line-height:1.6;align-items:flex-start}.table-wrap{scrollbar-width:thin}.table-wrap table{min-width:650px}.transactions{padding:20px 0 0}.categories-settings{grid-column:auto}.quick{padding:17px}.modal{padding:28px 20px}.form-grid{gap:10px}footer{flex-direction:column;gap:8px;line-height:1.7}.login-page{display:flex;flex-direction:column}.login-intro{padding:100px 30px 35px}.login-intro .brand{top:25px;font-size:28px}.login-intro h1{font-size:42px;margin:15px 0}.login-intro p{font-size:12px}.login-card{margin:25px auto 45px;padding:30px}.breadcrumb{font-size:10px}.primary{font-size:11px;padding:11px 13px}.setting-row{gap:8px}.setting-row .text-button{font-size:10px}}.chart-tabs{display:flex;gap:3px;padding:3px;background:var(--cf2f5ed);border-radius:6px}.chart-tabs button{padding:6px 8px;font-size:10px;border-radius:4px;color:var(--c8a9687)}.chart-tabs button.active{color:var(--c376b52);background:var(--cfff);box-shadow:0 1px 3px var(--c2c482415)}.header-actions{display:flex;gap:10px;align-items:center}.login-theme{position:absolute;top:24px;right:24px;z-index:10}.feature-settings{margin-bottom:20px}.income-receipts{margin-top:20px}.recharts-text{fill:var(--text)}.recharts-tooltip-item{color:var(--text)!important}@media(max-width:760px){nav button{padding:6px 3px}.header-actions{gap:6px}.theme-toggle{font-size:10px;padding:10px}}:root[data-theme=dark] .hero-stat>span,:root[data-theme=dark] .hero-stat small{color:#dce8df}.date-badge{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:46px;overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--surface);box-shadow:0 2px 4px #0000000a;vertical-align:middle;line-height:1;text-align:center;font-style:normal}.date-badge .date-month{display:block;width:100%;padding:5px 8px;background:#db5959;color:#fff;font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.date-badge .date-day{display:block;color:var(--text);font-size:20px;font-weight:650;padding:5px 8px 2px;line-height:1}.date-badge .date-year{display:block;font-size:8px;color:var(--c8a978c);padding:0 8px 5px}.date-detail{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:11px;margin:12px 0}.next-payment{display:flex;align-items:center;gap:10px}.next-payment>small{font-size:10px}.plan .plan-meta{align-items:center}.transactions td:has(.date-badge){padding-top:9px;padding-bottom:9px}.date-empty{color:var(--c8a978c);font-size:11px}[data-theme=dark] .date-badge .date-month{background:#b94650}.payment .date-badge{margin-right:4px}.fixed-card{padding:24px;display:flex;flex-direction:column;gap:20px}.fixed-card .plan-title{margin:0;gap:12px}.fixed-card .plan-title h3{min-width:0;overflow-wrap:anywhere}.fixed-card .mini-icon{width:38px;height:38px;flex-shrink:0}.fixed-card-main{display:flex;align-items:center;justify-content:space-between;gap:20px}.fixed-card-price{min-width:0}.fixed-card-price h2{margin:0 0 5px;font-size:30px;line-height:1.1;letter-spacing:-.8px}.fixed-card-price>span{font-size:12px;color:var(--c8a978c)}.fixed-card-price p{margin:6px 0 0;font-size:10px;color:var(--c8a978c)}.fixed-card .next-payment{flex-direction:column;gap:7px;min-width:70px;align-items:center}.fixed-card .next-payment>small{font-size:10px;white-space:nowrap}.fixed-card-details{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--c8a978c)}.fixed-card-details>span+span:before{content:"\b7";margin-right:10px}.fixed-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:14px;font-size:10px;color:var(--c8a978c)}.fixed-card .fixed-card-footer .secondary{margin:0;padding:8px 10px;font-size:11px}.fixed-card .fixed-card-footer time{white-space:nowrap}@media(max-width:760px){.fixed-card{padding:20px;gap:18px}.fixed-card-price h2{font-size:27px}.fixed-card-main{gap:12px}}.installment-card{display:flex;flex-direction:column;gap:20px;min-width:0;align-self:start}.installment-card .plan-title{margin:0}.installment-card .mini-icon{width:38px;height:38px}.installment-heading{min-width:0;flex:1}.installment-heading h3{overflow-wrap:anywhere}.installment-card .installment-heading p{margin:4px 0 0}.installment-card .status{margin-top:0;text-transform:capitalize;flex-shrink:0}.installment-amounts{display:flex;align-items:center;justify-content:space-between;gap:16px}.installment-amounts h2{font-size:30px;line-height:1.2}.installment-amounts p{margin:6px 0 0}.installment-balance{display:flex;flex-direction:column;gap:6px;text-align:right;flex-shrink:0}.installment-balance span,.installment-dates dt{font-size:10px;color:var(--c8a978c)}.installment-balance strong{font-size:16px;font-weight:550;font-variant-numeric:tabular-nums}.installment-card .plan-meta{padding:0 0 9px;font-size:11px}.installment-card .progress{margin:0;height:6px}.installment-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding-top:18px;border-top:1px solid var(--border)}.installment-dates dd{margin:6px 0 0;font-size:11px;line-height:1.5}.installment-footer{display:grid;grid-template-columns:1fr auto;align-items:start;gap:12px;border-top:1px solid var(--border);padding-top:14px}.installment-footer details{display:contents}.installment-footer summary{grid-column:1;grid-row:1;align-self:center;padding:8px 0;min-width:0}.installment-card .installment-footer .secondary{grid-column:2;grid-row:1;margin:0;padding:8px 12px}.installment-footer .payment{grid-column:1/-1;min-width:0}.installment-footer .payment:last-child{border-bottom:0}@media(max-width:1000px)and (min-width:761px){.installment-amounts{align-items:flex-start;flex-direction:column;gap:12px}.installment-balance{flex-direction:row;align-items:baseline;gap:8px;text-align:left}}@media(max-width:760px){.installment-card{gap:18px}.installment-amounts h2{font-size:26px}.installment-balance strong{font-size:14px}.installment-dates{gap:8px}.installment-dates dt{font-size:9px}}.transactions .filters{align-items:center;gap:8px;padding-bottom:18px}.transactions .filters input,.transactions .filters select{height:40px;max-width:none;font-size:12px;padding:0 10px}.transactions .filters select{flex:1 1 125px}.transactions .filters>input{flex:1 1 145px;width:145px}.transactions .filters .search{flex:2 1 220px;flex-direction:row;gap:8px;margin:0;padding:0 12px;height:40px;background:var(--surface);color:var(--c9aaa98)}.transactions .filters .search svg{flex-shrink:0}.transactions .filters .search input{width:100%;padding:0;border:0;background:transparent;box-shadow:none}.transactions .filters .search:focus-within{border-color:var(--c558a72);box-shadow:0 0 0 3px var(--c23634e13)}.transactions .reset-filters{height:40px;white-space:nowrap;padding:0 8px}.transactions .transaction-day{width:64px;text-align:center;white-space:nowrap}.transactions td.transaction-day{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.transactions .payment-status{font:inherit;font-size:11px;padding:4px 8px;text-transform:capitalize;cursor:pointer}.transactions .payment-status:hover{box-shadow:0 0 0 1px currentColor}.transactions .payment-status:focus-visible,.row-actions button:focus-visible{outline:2px solid var(--c558a72);outline-offset:3px}@media(max-width:760px){.transactions .filters{padding:0 16px 16px}.transactions .filters .search{flex-basis:100%}.transactions .filters select,.transactions .filters>input{flex:1 1 calc(50% - 8px);width:calc(50% - 8px)}}.installment-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.installment-tabs button{padding:9px 13px;border-radius:7px;font-size:12px;color:var(--c8a978c)}.installment-tabs button.selected{background:var(--ceaf2e9);color:var(--c205d47);font-weight:600}.installment-tabs button:focus-visible{outline:2px solid var(--c72a994);outline-offset:2px}.overview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.overview-stats .stat{padding:26px;min-width:0}.overview-stats .stat>span{font-size:14px}.overview-stats .stat h2{font-size:clamp(24px,2.4vw,36px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:18px 0 14px}.overview-stats .stat small{display:block;font-size:13px;line-height:1.6}.overspend-stat{background:var(--cfbeeea);border-color:var(--cefd8d0);color:var(--ca25247)}.overspend-stat>span,.overspend-stat small{color:var(--ca25247)}@media(max-width:1100px){.overview-stats{grid-template-columns:1fr}.overview-stats .stat h2{font-size:32px}}.installment-actions{grid-column:2;grid-row:1;display:flex;align-items:center;gap:8px}.delete-item{color:var(--ca25247)}.delete-item:hover{background:var(--cfaedeb)}.delete-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.savings-history{margin-bottom:20px;--savings-line:#23634e}.savings-chart{min-width:0}.savings-caption{font-size:13px;margin-top:12px}.savings-history .card-title p{font-size:12px}:root[data-theme=dark] .savings-history{--savings-line:#b2c9a8}.installment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:20px}.installment-toolbar .installment-tabs{margin:0}.installment-view-switch{display:flex;gap:3px;padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--cf2f4ee)}.installment-view-switch button{padding:7px 14px;border-radius:5px;font-size:12px;color:var(--c8a978c)}.installment-view-switch button.selected{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 3px #0000000a}.installment-view-switch button:focus-visible{outline:2px solid var(--c72a994);outline-offset:2px}.installment-list{grid-template-columns:minmax(0,1fr);gap:8px}.installment-list .installment-card{display:grid;grid-template-columns:minmax(160px,1fr) minmax(150px,.8fr) minmax(125px,.65fr) auto auto;grid-template-areas:"title amounts progress schedule actions";gap:10px 18px;align-items:center;padding:12px 16px}.installment-list .plan-title{grid-area:title;gap:8px}.installment-list .mini-icon{display:none}.installment-list .installment-heading h3{font-size:13px}.installment-list .installment-heading p{font-size:10px;margin-top:3px}.installment-list .installment-amounts{grid-area:amounts;flex-direction:column;align-items:flex-start;gap:3px}.installment-list .installment-amounts h2{font-size:20px}.installment-list .installment-amounts h2 small{font-size:10px}.installment-list .installment-amounts>div>p{display:none}.installment-list .installment-balance{flex-direction:row;align-items:baseline;gap:6px;text-align:left}.installment-list .installment-balance strong{font-size:11px}.installment-list .installment-progress{grid-area:progress;min-width:0}.installment-list .plan-meta{font-size:10px;padding-bottom:5px}.installment-list .plan-meta>span:last-child{display:none}.installment-list .progress{height:4px}.installment-list .installment-footer{display:contents}.installment-list .installment-footer summary{grid-area:schedule;padding:8px 0;font-size:11px}.installment-list .installment-actions{grid-area:actions;gap:6px}.installment-list .installment-footer .secondary{padding:7px 9px;font-size:11px}.installment-list .installment-expanded{grid-column:1/-1;padding-top:10px;border-top:1px solid var(--border)}.installment-list .installment-expanded>p{font-size:11px;margin:0 0 10px}.installment-list .installment-dates{border:0;padding:0;max-width:600px}.installment-list .installment-footer .payment{grid-column:1/-1;padding:6px 0}@media(max-width:1100px){.installment-list .installment-card{grid-template-columns:minmax(0,1fr) minmax(150px,.8fr) auto;grid-template-areas:"title amounts actions" "progress schedule schedule";gap:8px 16px}.installment-list .installment-footer summary{justify-self:end}}@media(max-width:760px){.installment-list .installment-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"title amounts" "progress progress" "schedule actions";padding:12px 14px;gap:8px 12px}.installment-list .plan-title{align-items:flex-start;gap:5px}.installment-list .installment-amounts{align-items:flex-end;text-align:right}.installment-list .installment-amounts h2 small{display:block}.installment-list .installment-footer summary{justify-self:start}.installment-list .installment-actions{justify-self:end}.installment-toolbar{gap:10px}.installment-toolbar .installment-tabs button{padding:8px 10px}}.wealth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin-top:20px}.wealth-account{border:1px solid var(--border);border-radius:12px;padding:20px;min-width:0}.wealth-account h3{overflow-wrap:anywhere}.wealth-account h2{margin:16px 0 4px}.wealth-account p{color:var(--muted);overflow-wrap:anywhere}.wealth-interest{display:flex;gap:20px;flex-wrap:wrap;margin:20px 0;font-size:12px;color:var(--muted)}.wealth-interest strong{display:block;font-size:16px;color:var(--text);margin-top:6px}.wealth-account details{font-size:12px;margin-top:16px}.wealth-account summary{cursor:pointer;color:var(--muted)}.income-sources-card .card-title{flex-wrap:wrap}.income-source-toolbar{display:flex;justify-content:flex-end;margin:0 0 12px}.income-sources{display:grid;gap:10px}.income-source{min-width:0;border:1px solid var(--border);border-radius:9px;display:grid;align-items:center;gap:10px 16px}.income-source-heading{grid-area:name;min-width:0}.income-source-heading h3{font-size:14px;overflow-wrap:anywhere}.income-source-heading p{font-size:10px;margin-top:3px}.income-source-amount{grid-area:amount;display:flex;flex-direction:column;gap:3px;font-variant-numeric:tabular-nums;min-width:0}.income-source-amount strong{font-size:20px;font-weight:600;letter-spacing:-.4px;overflow-wrap:anywhere}.income-source-amount small{font-size:10px;color:var(--c8a978c)}.income-source-status{grid-area:status;justify-self:start;margin:0}.income-source details{display:contents}.income-source summary{grid-area:details;font-size:11px;padding:8px 0}.income-source-details{grid-column:1/-1;border-top:1px solid var(--border);padding-top:10px}.income-source-details dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.income-source-details dt{font-size:10px;color:var(--c8a978c)}.income-source-details dd{margin:5px 0 0;font-size:11px;overflow-wrap:anywhere}.income-source-details p{font-size:11px;margin-top:10px;white-space:pre-wrap;overflow-wrap:anywhere}.income-source-actions{grid-area:actions;display:flex;align-items:center;gap:6px;justify-self:end}.income-source-actions .secondary{font-size:11px;padding:7px 9px}.income-source-list{grid-template-columns:minmax(0,1fr)}.income-source-list .income-source{grid-template-columns:minmax(140px,1fr) minmax(130px,.7fr) auto auto auto;grid-template-areas:"name amount status details actions";padding:12px 16px}.income-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.income-source-grid .income-source{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name status" "amount amount" "details actions";padding:20px;gap:18px 12px}.income-source-grid .income-source-amount strong{font-size:28px}.income-source-grid .income-source-heading h3{font-size:16px}@media(max-width:1100px){.income-source-list .income-source{grid-template-columns:minmax(0,1fr) minmax(130px,.7fr) auto;grid-template-areas:"name amount status" "details actions actions";gap:8px 12px}}@media(max-width:760px){.income-source-grid{grid-template-columns:minmax(0,1fr)}.income-source-list .income-source{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"name amount" "status status" "details actions";padding:12px;gap:8px 10px}.income-source-list .income-source-amount{align-items:flex-end;text-align:right}.income-source-list .income-source-amount strong{font-size:18px}.income-source-list .income-source-heading h3{font-size:13px}.income-source-details dl{gap:8px}.income-source-grid .income-source{padding:16px}}.spending-share{--share-remaining:#91b7a2;--share-muted:var(--border)}.spending-share-content{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0}.spending-ring{position:relative;width:112px;height:112px;flex-shrink:0}.spending-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none}.spending-ring-label strong{font-size:23px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.7px}.overview-stats .spending-ring-label small{font-size:11px}.spending-share-value{flex:1;min-width:100px}.overview-stats .spending-share-value h2{font-size:clamp(22px,1.8vw,30px);margin:0 0 6px}.overview-stats .spending-share-value small{font-size:12px}.overspend-stat{--share-remaining:#d7aaa0}.overview-stats .spending-share>small{font-size:12px}.expense-options{margin:18px 0 8px;border-top:1px solid var(--border);padding-top:14px}.expense-options>summary{font-size:12px;color:var(--text);padding:2px 0 12px}.expense-options[open]>summary{margin-bottom:8px}.manual-expense-toggle{flex-direction:row;align-items:center;gap:9px}.manual-expense-toggle input{width:auto}.modal .quick-expense-hint{color:var(--c8a978c);font-size:11px;margin:0 0 8px}.description-autocomplete{position:relative;margin-bottom:15px}.description-autocomplete>label{margin-bottom:7px}.description-autocomplete>input{width:100%}.description-suggestions{position:absolute;top:100%;left:0;right:0;z-index:3;margin-top:4px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 20px #00000018;max-height:220px;overflow-y:auto}.description-suggestions>button{display:block;width:100%;text-align:left;padding:10px;font-size:12px;color:var(--text);border-radius:5px;white-space:normal;overflow-wrap:anywhere}.description-suggestions>button:hover,.description-suggestions>button[aria-selected=true]{background:var(--cedf0e8)}
