:root{--navy:#152b4a;--ink:#192a41;--muted:#738196;--line:#e6ebf1;--teal:#20aa9b;--bg:#f5f7fb;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}.layout{display:grid;grid-template-columns:238px 1fr;min-height:100vh}aside{background:var(--navy);color:#b9c9dd;padding:25px 17px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;color:white;font-size:17px;font-weight:800;padding:0 8px 30px}.brand>b{font:22px Georgia;color:#70cfc5;border:1px solid #70cfc5;border-radius:9px;width:31px;height:31px;text-align:center;line-height:31px}.brand small,.user small{display:block;font-size:9px;letter-spacing:.13em;opacity:.6}.nav{border:0;text-align:left;background:none;color:#aec0d4;border-radius:8px;padding:12px;width:100%;font-size:13px;font-weight:700}.nav span{margin-left:9px}.nav.active,.nav:hover{background:#203a59;color:#fff}.user{margin-top:auto;border-top:1px solid #36516f;padding:18px 7px 0;display:flex;gap:9px;align-items:center;font-size:12px}.user i,.avatar{font-style:normal;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:800}.user i{width:32px;height:32px;background:#dfb47e;color:#503622}.avatar{width:36px;height:36px;background:#dcecf0;color:#1c7778}main{padding:30px 42px;max-width:1600px;width:100%;margin:auto}.view{display:none}.view.active{display:block}header,.intro,.head{display:flex;justify-content:space-between;align-items:flex-start}header{align-items:center;margin-bottom:27px}.eyebrow,.card>p,.head p{font-size:10px;letter-spacing:.12em;font-weight:800;color:#8290a2;margin:0 0 6px}h1,h2,h3{margin:0;letter-spacing:-.55px}h1,.intro h2{font-size:27px}.notice{background:#e8f6f4;color:#29635e;border-radius:9px;padding:13px 16px;display:flex;gap:10px;align-items:center;font-size:12px;margin-bottom:18px}.notice span{flex:1}button{cursor:pointer}.notice button,.head button,.card button:not(.primary),.opportunity button{border:0;background:none;color:#16837b;font-size:11px;font-weight:800}.stats,.expense-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:17px}.stats article,.card{background:#fff;border:1px solid var(--line);border-radius:10px}.stats article,.expense-stats .card{padding:17px}.stats p{font-size:10px;color:#8290a2;font-weight:800;margin:0 0 8px}.stats strong,.expense-stats strong{font-size:22px;letter-spacing:-1px;display:block;margin-bottom:6px}.stats em{font-size:11px;font-style:normal;color:#159b7b;font-weight:800}.stats em span,.expense-stats small{color:#9ba7b7;font-weight:500}.stats .amber,.danger-text{color:#bd5e56!important}.two{display:grid;grid-template-columns:1.7fr .8fr;gap:17px}.card{padding:20px}.head h2,.card h2{font-size:16px}.legend{font-size:10px;color:#7a8797}.legend span:first-child{color:#1faba1;margin-right:10px}.legend span:last-child{color:#274f8c}svg{width:100%;height:235px;margin-top:8px;overflow:visible}.axis{display:flex;justify-content:space-between;color:#a2adb9;font-size:10px}.allocation{display:flex;align-items:center;gap:26px;padding:22px 4px 4px}.donut{height:136px;width:136px;border-radius:50%;background:conic-gradient(#274f8c 0 52%,#1faba1 52% 82%,#9276d4 82% 94%,#e5b541 94%);display:grid;place-items:center;position:relative}.donut:before{content:"";position:absolute;inset:18px;background:#fff;border-radius:50%}.donut span{z-index:1;text-align:center;color:#758195;font-size:10px}.donut b{font-size:25px;color:var(--ink)}.allocation ul{list-style:none;padding:0;margin:0;flex:1}.allocation li{border-bottom:1px solid #edf0f3;padding:8px 0;font-size:11px;color:#68768a}.allocation li b{float:right;color:var(--ink)}.allocation li i{width:8px;height:8px;background:#274f8c;border-radius:50%;display:inline-block;margin-right:5px}.allocation li:nth-child(2) i{background:#1faba1}.allocation li:nth-child(3) i{background:#9276d4}.allocation li:nth-child(4) i{background:#e5b541}.lower{margin-top:17px}.muted{font-size:12px;color:#748196;line-height:1.6}.bar{height:7px;background:#edf1f5;border-radius:99px;overflow:hidden;margin:16px 0 8px}.bar i{display:block;width:72%;height:100%;background:var(--teal);border-radius:inherit}.goal{display:flex;justify-content:space-between;font-size:10px;color:#7b8899}.goal b{color:var(--ink)}mark{font-size:10px;background:#e9f7f2;color:#16866e;border-radius:999px;padding:5px 9px;font-weight:800}.disclaimer{display:block;color:#9aa7b7;font-size:9px;line-height:1.45;margin:17px 0}.intro{align-items:flex-end;margin-bottom:21px}.intro>div>p:last-child{font-size:13px;color:#758398;margin:7px 0}.primary{border:0;background:var(--navy);color:#fff;border-radius:7px;padding:11px 15px;font-weight:800;font-size:12px}.planning,.expense-layout{display:grid;grid-template-columns:285px 1fr;gap:18px}.planning form h3,.add-expense h3{font-size:16px;margin-bottom:15px}label{display:block;color:#647187;font-size:11px;font-weight:800;margin:14px 0}label output{float:right}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #dfe5ec;border-radius:6px;background:#fbfcfe;padding:9px;font:inherit;font-size:12px;color:var(--ink)}input[type=range]{padding:0;accent-color:var(--teal)}textarea{height:60px;resize:vertical}fieldset{border:0;padding:0;margin:18px 0 0}legend{font-size:11px;font-weight:800;color:#647187;margin-bottom:8px}.segments{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e2e7ed;border-radius:7px;overflow:hidden}.segments button{border:0;border-right:1px solid #e2e7ed;background:#fff;padding:8px 3px;font-size:10px;color:#748198}.segments .chosen{background:#e7f5f3;color:#167d76;font-weight:800}.scenario{height:250px}.numbers{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding-top:16px;gap:10px}.numbers span{display:block;font-size:10px;color:#7e8b9b;margin-bottom:4px}.numbers b{font-size:17px}.neutral{background:#edf1f6;color:#57677f}.risk-note{display:flex;gap:11px;border:1px solid #f3e2bb;background:#fff8e9;border-radius:9px;padding:13px;margin-top:13px}.risk-note>b{width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:#f1c56c;color:#795015;text-align:center;line-height:20px}.risk-note strong{font-size:12px}.risk-note p{margin:3px 0;color:#796e5c;font-size:11px;line-height:1.45}.compare{margin-top:18px}.strategies,.opportunities,.admins{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.strategy{border:1px solid #e2e8ee;border-radius:8px;padding:14px}.strategy.selected{border:2px solid var(--teal);padding:13px}.strategy h3{font-size:13px}.strategy p{font-size:10px;color:#798799}.return{font-size:18px;font-weight:800}.return small{font-size:10px;color:#778496}.metrics{border-top:1px solid #edf0f3;margin-top:12px;padding-top:9px;display:flex;justify-content:space-between;font-size:10px;color:#778496}.metrics b{color:var(--ink)}.opportunity{min-height:205px;position:relative;overflow:hidden}.tag{font-size:9px;color:#168c83;font-weight:800;letter-spacing:.08em}.opportunity h3{font-size:17px;margin:18px 0 8px}.opportunity p{font-size:11px;color:#748196;line-height:1.55}.healthy{font-size:11px;color:#218b73}.admins h3{font-size:16px}.setting{border-top:1px solid var(--line);padding:12px 0;display:flex;justify-content:space-between;align-items:center}.setting b,.setting small{display:block;font-size:11px}.setting small{font-size:10px;color:#8390a0}.switch{width:33px;height:18px;border:0;border-radius:99px;background:#cfd8e2;position:relative}.switch:after{content:"";width:14px;height:14px;border-radius:50%;position:absolute;left:2px;top:2px;background:white}.switch.on{background:var(--teal)}.switch.on:after{left:17px}.outline{border:1px solid #dce4ea!important;border-radius:6px!important;background:#fff!important;padding:8px 10px!important;color:#38526e!important}.admins ul{list-style:none;padding:0;font-size:10px;line-height:2;color:#558072}.usage{font-size:10px;color:#6d798b}.usage span{display:flex;justify-content:space-between}.usage .bar i{width:31%}.integration{display:flex;gap:16px;align-items:center;margin-top:18px}.integration>b{width:36px;height:36px;display:grid;place-items:center;border-radius:8px;background:#eee1fa;color:#704098}.integration h3{font-size:14px}.integration p{margin-bottom:0}.integration .primary{margin-left:auto}.add-expense .primary{margin-top:5px;width:100%}.commitment{display:grid;grid-template-columns:1.4fr .75fr .75fr .7fr 65px;gap:9px;align-items:center;border-top:1px solid #edf0f3;padding:12px 0;font-size:11px}.commitment:first-child{margin-top:10px}.commitment small{display:block;color:#8b98a8}.commitment .amount{font-weight:800;text-align:right}.commitment .remove{border:0;background:transparent;color:#a3aeba;font-size:16px}.pay{border:1px solid #b8e0db;background:#effaf8;color:#167d76;border-radius:5px;padding:5px 6px;font-size:10px;font-weight:800}.expense-bottom{display:grid;grid-template-columns:1.2fr .8fr;gap:17px;margin-top:17px}.spend-row{display:grid;grid-template-columns:105px 1fr 70px;align-items:center;gap:9px;font-size:11px;color:#657387;margin:11px 0}.spend-row .bar{margin:0;height:8px}.spend-row b{text-align:right;color:var(--ink)}.flag{border-top:1px solid #edf0f3;padding:11px 0;font-size:11px;display:flex;justify-content:space-between;gap:10px}.flag small{display:block;color:#8b98a8}.flag b{color:#bd5e56}.debt-impact{display:flex;align-items:center;justify-content:space-between;margin-top:17px}.debt-impact .muted{max-width:700px;margin-bottom:0}.impact-actions{display:flex;gap:8px}.payment-toast{position:fixed;right:24px;bottom:24px;background:#163450;color:#fff;padding:14px 17px;border-radius:8px;box-shadow:0 12px 30px #16345044;font-size:12px;z-index:5}@media(max-width:1050px){.stats,.expense-stats{grid-template-columns:repeat(2,1fr)}.two,.planning,.expense-layout,.expense-bottom{grid-template-columns:1fr}.admins{grid-template-columns:1fr 1fr}}@media(max-width:720px){.layout{display:block}aside{height:auto;position:relative;padding:14px}.brand{padding-bottom:15px}.nav{width:49%;font-size:11px}.user{display:none}main{padding:21px 15px}h1,.intro h2{font-size:23px}.stats,.expense-stats,.two,.strategies,.opportunities,.admins{grid-template-columns:1fr}.lower{gap:17px}.notice button{display:none}.intro{align-items:flex-start;flex-direction:column}.planning{display:block}.planning>div{margin-top:18px}.numbers{grid-template-columns:1fr}.integration,.debt-impact{align-items:flex-start;flex-wrap:wrap}.integration .primary{margin-left:0}.commitment{grid-template-columns:1fr 1fr 1fr 58px}.commitment .group{display:none}.spend-row{grid-template-columns:85px 1fr 65px}}
