:root{color-scheme:dark;--bg:#090D16;--card:rgba(15,23,42,.65);--border:rgba(255,255,255,.08);--text:#e9edf7;--muted:#8b97b0;--purple:#8b5cf6;--blue:#3b82f6;--green:#10b981;--amber:#f59e0b;--red:#ef4444;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:13px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #ad8aff;outline-offset:3px}button{color:var(--text);border:1px solid var(--border);background:transparent;border-radius:9px;transition:background .15s,transform .15s}button:hover{background:rgba(255,255,255,.06)}button:active{transform:translateY(1px)}a{color:#b49aff;text-decoration:none}button:disabled{opacity:.4;cursor:not-allowed}[hidden]{display:none!important}.num,input[type=number],input[type=range],input[type=date],svg text,output,.metric-value,.mono,textarea{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.muted{color:var(--muted)}.small{font-size:11px;line-height:1.65}.purple{color:var(--purple)}.blue-text{color:var(--blue)}.green-text{color:var(--green)}.amber-text{color:var(--amber)}.red-text{color:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:33px;font-weight:600;letter-spacing:-1.3px;line-height:1.2;margin-bottom:9px}h2{font-size:16px;font-weight:560;letter-spacing:-.35px;line-height:1.4;margin-bottom:16px}h3{font-size:13px;margin-bottom:8px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.9px;color:var(--muted);margin-bottom:12px}.eyebrow.purple{color:#b49aff}.subtitle{font-size:13px;color:var(--muted);margin:0}.sidebar{position:fixed;inset:0 auto 0 0;width:216px;padding:32px 17px 20px;background:#0a0f1b;border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;color:var(--text);font-size:18px;font-weight:650;margin:0 10px 48px;letter-spacing:-.6px}.brand-mark{display:grid;place-items:center;width:32px;height:35px;border-radius:10px;background:linear-gradient(135deg,#7353e6,#9c75fb);color:#fff;font-size:22px;font-weight:750;box-shadow:0 0 25px #8b5cf620}.brand small{display:block;font-size:8px;letter-spacing:3.5px;color:#91a0bd;margin-top:2px}.side-label{font-size:8px;letter-spacing:1.3px;color:#55637c;margin:0 12px 14px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{border:0;text-align:left;display:flex;align-items:center;gap:10px;padding:12px 10px;font-size:11px;color:#92a0bb;white-space:nowrap}.sidebar nav button.active{background:#8b5cf615;color:#c9b8ff;box-shadow:inset 2px 0 var(--purple);border-radius:6px}.nav-icon{font-size:17px;width:20px;line-height:1;color:#8a91b2}.nav-badge{font-size:7px;letter-spacing:.7px;border:1px solid #8b5cf644;padding:0 4px;border-radius:3px;margin-left:auto}.sidebar-bottom{margin-top:auto}.isolation{font-size:10px;color:#acb7c9;padding:15px 10px;border-bottom:1px solid var(--border)}.isolation small{display:block;color:#5c6c86;font-size:9px;margin-left:14px}.status-dot{display:inline-block;height:5px;width:5px;background:var(--purple);border-radius:100%;vertical-align:middle;margin-right:6px;box-shadow:0 0 8px #8b5cf630}.status-dot.amber{background:var(--amber)}.operator{display:flex;align-items:center;gap:9px;padding:18px 6px 0;font-size:10px}.operator small{display:block;font-size:7px;letter-spacing:.8px;color:var(--muted)}.avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:100%;background:#192234;font-size:9px;border:1px solid var(--border)}.operator button{border:0;margin-left:auto;color:#64748b}.workspace{margin-left:216px}.topbar{height:72px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 34px;background:#090d16dd}.project-select{display:flex;align-items:center;gap:8px}.project-dot{width:15px;height:15px;background:linear-gradient(135deg,#5576e8,#89a5ff);border-radius:4px}.project-select select{border:none;background:transparent;color:#d6dded;width:205px;font-size:11px;outline-offset:1px}.top-actions{display:flex;align-items:center;gap:14px}.demo-toggle{padding:7px 11px;font-size:10px;color:#bcc6d9}.demo-toggle[aria-pressed=true]{background:#8b5cf61f;border-color:#8b5cf655;color:#c9b8ff}.badge{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid var(--border);padding:3px 8px;border-radius:5px;font-size:9px;line-height:1.5;color:#8c9ab3;background:#ffffff03}.badge.purple{color:#b99aff;border-color:#8b5cf62f;background:#8b5cf610}.badge.blue{color:#7aa9fb;border-color:#3b82f62f;background:#3b82f60c}.badge.green{color:#54d8b0;border-color:#10b98133;background:#10b98110}.badge.amber{color:#e7b45c;border-color:#f59e0b30;background:#f59e0b0b}.badge.red{color:#fb8c8c;background:#ef444413;border-color:#ef444430}main{padding:34px;max-width:1690px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:16px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.page-heading .eyebrow .muted{margin:0 7px}.date-box{display:flex;align-items:center;font-size:9px;color:#8b97b0;white-space:nowrap}.context-banner{margin-bottom:22px;padding:9px 13px;border:1px solid #3b82f623;border-radius:7px;color:#8b9eba;background:#3b82f606;font-size:10px}.context-banner.demo{color:#b6a0e8;background:#8b5cf60c;border-color:#8b5cf62b}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.metric{background:var(--card);border:1px solid var(--border);border-radius:13px;backdrop-filter:blur(12px)}.card{padding:24px;margin-bottom:18px;min-width:0}.metric{padding:19px 19px 16px;min-width:0;position:relative;overflow:hidden}.metric .metric-top{display:flex;justify-content:space-between;align-items:center;color:#99a6be;font-size:10px;gap:6px;margin-bottom:13px}.metric-value{font-size:26px;letter-spacing:-1.1px;font-weight:500;line-height:1.25;white-space:nowrap}.metric .metric-detail{font-size:9px;color:#687892;margin-top:10px}.metric .sparkline{width:64px;height:22px;position:absolute;right:15px;bottom:13px;opacity:.4}.metric.accent{background:linear-gradient(120deg,#8b5cf612,rgba(15,23,42,.65));border-color:#8b5cf62b}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px}.overview-grid>.card{margin:0}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.card-heading h2{margin:0}.card-heading .eyebrow{margin-bottom:7px}.cash-card{padding-bottom:20px}.cascade-top{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:22px;margin-bottom:8px}.cascade-top .big{font-size:39px;letter-spacing:-1.8px;font-family:var(--mono);font-variant-numeric:tabular-nums;line-height:1.1}.cascade-top p{margin-bottom:6px;color:#8c9ab3;font-size:10px}.cascade-rows{margin-bottom:20px}.cascade-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid #ffffff04;font-size:10px;color:#9aa8bf}.cascade-row .num{font-size:12px;color:#75a7fb}.cascade-row .swatch{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:2px;margin-right:9px}.cascade-row.reserve .swatch{background:#6d7d9a}.cascade-bottom{display:flex;justify-content:space-between;align-items:center;border:1px solid #ffffff0c;background:#0b1222;padding:15px;border-radius:9px;margin:0 0 16px}.cascade-bottom p{margin:0;font-size:10px;color:#abb7cb}.cascade-bottom small{display:block;font-size:8px;color:#62728d;margin-top:4px}.cascade-bottom .num{font-size:24px;letter-spacing:-1px}.pulse-card{padding:22px 19px;display:flex;flex-direction:column}.pulse-card h2{font-size:13px}.pulse-row{position:relative;display:flex;gap:12px;padding:13px 0}.pulse-row:not(:last-child):before{content:"";position:absolute;top:36px;bottom:-4px;left:12px;width:1px;background:#ffffff08}.event-icon{flex-shrink:0;display:grid;place-items:center;width:26px;height:26px;border-radius:7px;background:#8b5cf613;color:#b49aff;border:1px solid #8b5cf61a}.pulse-row p{margin:0;font-size:10px;color:#b8c3d8}.pulse-row small{font-size:8px;display:block;color:#65758f;margin-top:3px}.pulse-row time{font-size:8px;color:#52617b;margin-left:auto}.pulse-footer{margin-top:auto;border-top:1px solid var(--border);padding-top:19px}.success-count{font-size:25px;color:#b49aff;font-family:var(--mono)}.empty-state{padding:32px 10px;text-align:center;color:var(--muted);font-size:11px}.empty-state .empty-symbol{font-size:34px;color:#46536e;display:block;margin-bottom:12px}.outlook-card{grid-column:1/-1}.text-button{border:0;font-size:10px;color:#a89acb;padding:5px 0}.chart-container{width:100%;overflow:hidden}.chart-container svg{width:100%;height:210px;display:block}.chart-container svg text{font-size:9px;fill:#65758f}.chart-legend{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:9px;color:var(--muted);margin-top:8px;flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:7px}.legend-line{width:16px;height:2px;background:var(--purple)}.legend-line.blue{background:var(--blue)}.chart-note{font-size:9px;color:#6a7c97;margin-top:12px;margin-bottom:0}.chart-summary{display:flex;gap:25px;padding-top:14px;border-top:1px solid var(--border);margin-top:14px}.chart-summary>div>span.num{font-size:17px;display:block}.chart-summary small{font-size:9px;color:#6f809b}.simulation-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.controls-card{height:fit-content;position:sticky;top:20px}.controls-card h2{font-size:22px;letter-spacing:-.8px}.segmented{display:flex;background:#080e1c;border-radius:7px;padding:3px;border:1px solid var(--border);margin-bottom:23px;gap:2px}.segmented button{border:0;font-size:10px;padding:6px;flex:1;border-radius:5px;color:#8594ae}.segmented button.active{background:#24304a;color:#d3dbed;box-shadow:0 2px 5px #0003}label{font-size:11px;color:#a7b4ca;display:block;margin-bottom:15px}input:not([type=range]):not([type=checkbox]),select,textarea{display:block;background:#0a1020;border:1px solid #ffffff12;color:#d4dded;border-radius:7px;padding:10px 11px;min-width:0;width:100%;margin-top:7px}textarea{resize:vertical;font-size:11px;line-height:1.6}input[type=checkbox]{accent-color:var(--purple)}input[type=range]{appearance:none;width:100%;height:4px;border-radius:4px;background:#27314a;accent-color:var(--purple);cursor:pointer;margin:13px 0 8px}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:100%;background:#b79aff;border:3px solid #7650d9;box-shadow:0 0 0 4px #8b5cf611}.slider-field{margin:17px 0 21px}.slider-field .slider-title{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#8fa0bc}.slider-title output{color:#bca2ff}.slider-field input[type=number]{padding:5px 8px;font-size:10px;margin:4px 0 0;width:100%}.slider-field small{font-size:8px;color:#536581}.million-card{background:radial-gradient(ellipse at 85% 0,#8b5cf613,transparent 70%),var(--card)}.million-progress{height:7px;background:#ffffff09;border-radius:20px;overflow:hidden;margin:19px 0 12px}.million-progress span{display:block;height:100%;background:linear-gradient(90deg,#6d43d5,#b894ff);border-radius:20px;transition:width .3s}.million-value{font-size:33px;color:#ccbbff;letter-spacing:-1px}.million-meta{display:flex;justify-content:space-between;gap:10px;color:#8393ae;font-size:10px}.cost-row{display:flex;justify-content:space-between;gap:15px;padding:10px 0;font-size:11px;color:#94a4bd;border-bottom:1px solid #ffffff06}.cost-row.total{color:#ddcffb;border-top:1px solid #8b5cf644;border-bottom:0;margin-top:8px;padding-top:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-top:20px}.primary,.secondary{padding:9px 15px;font-size:11px;font-weight:500}.primary{background:#8254e8;border-color:#9c75ef66;color:#fff;box-shadow:0 4px 15px #0002}.primary:hover{background:#9469ee}.secondary{background:#ffffff04;color:#c4b7e1}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.salary-hero{display:grid;grid-template-columns:1fr 270px;gap:30px;background:radial-gradient(ellipse at 0 0,#8b5cf610,transparent 70%),var(--card)}.salary-hero h2{font-size:27px;letter-spacing:-.8px;margin-bottom:10px}.salary-presets{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}summary{cursor:pointer;font-size:12px;color:#b4bfd4;padding:3px 0;list-style-position:outside}details[open] summary{margin-bottom:20px}.table-wrap{overflow:auto;width:100%}table{border-collapse:collapse;width:100%;font-size:10px;white-space:nowrap}th{text-align:left;color:#62738f;font-size:9px;font-weight:500;border-bottom:1px solid var(--border);padding:13px 12px}td{padding:14px 12px;border-bottom:1px solid #ffffff05;color:#abb7cc}.milestone-row{display:grid;grid-template-columns:150px 1fr 120px;align-items:center;gap:20px;padding:17px 0;border-bottom:1px solid var(--border)}.milestone-row:last-child{border-bottom:0}.milestone-row .num{font-size:17px;color:#cbb8f7}.milestone-bar{height:4px;background:#ffffff08;border-radius:10px;overflow:hidden}.milestone-bar span{display:block;height:100%;background:#8b5cf699}.milestone-row small{font-size:8px;color:#70819d}.progress-ring{width:110px;height:110px;flex-shrink:0}.disk-main{display:flex;align-items:center;gap:25px;margin:24px 0}.disk-label .num{font-size:27px}.disk-breakdown{display:flex;height:7px;border-radius:20px;overflow:hidden;gap:2px;margin-bottom:16px}.decile{margin:22px 0}.decile-top{display:flex;justify-content:space-between;font-size:10px;color:#9aa9c1}.decile-track{height:5px;background:#ffffff08;border-radius:10px;margin-top:9px;overflow:hidden}.decile-track span{display:block;height:100%;background:#8b5cf6;border-radius:10px}.source-row{padding:15px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--border);font-size:11px}.source-row small{display:block;font-size:9px;color:#5f718e;margin-top:4px}.expense-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px 16px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border)}.expense-form label{margin-bottom:5px}.expense-form button{align-self:center;margin-top:15px}.inline{display:flex;align-items:center;gap:9px;margin:20px 0}.save-scenario{display:flex;justify-content:space-between;align-items:center;gap:20px}footer{display:flex;justify-content:center;gap:12px;font-size:8px;letter-spacing:.3px;color:#40516c;margin-top:32px}footer span{color:#29354a}.toast{position:fixed;bottom:24px;right:24px;padding:13px 22px;border:1px solid #8b5cf666;background:#171328;color:#d9c9ff;border-radius:10px;box-shadow:0 10px 40px #0008;z-index:50}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 15%,#8b5cf615,transparent 65%),#090d16;padding:24px}.login-card{width:390px;max-width:100%;padding:36px;border:1px solid var(--border);border-radius:18px;background:var(--card)}.login-card .brand-mark{margin-bottom:35px}.login-card h1{font-size:32px}.login-card form{margin-top:32px}.login-card button{width:100%;margin:10px 0}.login-card .small{margin:20px 0 0}#error{border:1px solid #ef444455;background:#ef444410;color:#ffabab;padding:12px;border-radius:8px;margin-bottom:16px}
@media(min-width:1500px){.overview-grid{grid-template-columns:minmax(0,1fr) 330px}.metric-value{font-size:30px}.sidebar{width:230px}.workspace{margin-left:230px}main{padding:40px 44px}.topbar{padding:0 44px}}
@media(max-width:1150px){.sidebar{width:184px;padding-left:10px;padding-right:10px}.sidebar .brand{font-size:16px}.sidebar nav button{font-size:10px;padding-left:8px}.workspace{margin-left:184px}main{padding:25px}.topbar{padding:0 25px}.overview-grid{grid-template-columns:minmax(0,1fr) 260px}.metric{padding:15px}.metric-value{font-size:22px}.card{padding:20px}.card-heading .badge{font-size:8px}.simulation-layout{grid-template-columns:240px minmax(0,1fr)}.metric-grid.three .metric-value{font-size:21px}.date-box{display:none}}
@media(max-width:900px){.sidebar{width:70px;padding:25px 10px}.brand{margin:0 auto 35px}.brand>span:last-child,.side-label,.sidebar nav button>*:not(.nav-icon),.isolation,.operator>span:not(.avatar),.operator button{display:none}.sidebar nav button{font-size:0;justify-content:center;padding:14px 10px}.sidebar nav .nav-icon{display:block;font-size:20px}.sidebar nav button .nav-badge{display:none}.operator{justify-content:center}.workspace{margin-left:70px}.overview-grid{grid-template-columns:minmax(0,1fr) 250px}.card-heading .badge{display:none}.top-actions>.badge{display:none}.simulation-layout{grid-template-columns:220px minmax(0,1fr)}.metric-grid.three{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.salary-hero{grid-template-columns:1fr 210px}.expense-form{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.sidebar{inset:auto 0 0 0;width:auto;height:64px;border-right:0;border-top:1px solid var(--border);padding:0 8px;background:#0a0f1bf5;backdrop-filter:blur(15px)}.sidebar>.brand,.sidebar-bottom{display:none}.sidebar nav{display:flex;height:100%;justify-content:space-around;gap:0}.sidebar nav button{font-size:7px;padding:6px;flex:1;flex-direction:column;gap:3px;white-space:normal;line-height:1.25;color:#74849e;text-align:center;max-width:90px}.sidebar nav .nav-icon{font-size:19px;height:23px}.sidebar nav button.active{box-shadow:inset 0 2px var(--purple);border-radius:0;background:#8b5cf608}.workspace{margin-left:0;padding-bottom:64px}.topbar{height:61px;padding:0 18px}.project-select select{width:155px;font-size:10px}.project-dot{width:12px;height:12px}.top-actions{gap:4px}.demo-toggle{font-size:8px;padding:6px 8px}main{padding:23px 17px}.page-heading{margin-bottom:18px}.page-heading h1{font-size:29px}.page-heading .eyebrow{font-size:7px}.subtitle{font-size:11px;max-width:320px}.context-banner{font-size:9px;line-height:1.65;padding:9px 11px;margin-bottom:17px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}.metric-grid.three{grid-template-columns:1fr}.metric{padding:14px}.metric-value{font-size:20px}.metric .metric-top{font-size:9px;margin-bottom:9px}.metric .metric-detail{font-size:8px}.overview-grid{display:flex;flex-direction:column;gap:14px}.overview-grid .outlook-card{order:2}.overview-grid .pulse-card{order:3}.card{padding:19px;margin-bottom:14px;border-radius:11px}.card-heading{margin-bottom:19px;gap:10px}.card-heading h2{font-size:14px}.card-heading .text-button{max-width:105px;font-size:9px;text-align:right}.card-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.cascade-top .big{font-size:33px}.cascade-bottom .num{font-size:23px}.simulation-layout{display:block}.controls-card{position:static}.sim-results .metric-grid.three{grid-template-columns:1fr 1fr}.sim-results .metric-grid.three .metric:last-child{grid-column:1/-1}.simulation-layout .controls-card #sliders{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.slider-field{margin:8px 0 14px}.slider-field:first-child{grid-column:1/-1}.slider-field input[type=number]{padding:6px}.slider-title output{font-size:10px}.two-columns{display:block}.salary-hero{grid-template-columns:1fr;gap:20px}.salary-hero h2{font-size:25px}.salary-presets{margin-top:20px}.salary-hero>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:14px}.salary-hero>div:last-child p{grid-column:1/-1}.salary-hero>div:last-child label{font-size:10px;margin:0}.milestone-row{grid-template-columns:95px 1fr 87px;gap:12px}.milestone-row .num{font-size:14px}.milestone-row small{font-size:7px}.million-value{font-size:28px}.million-meta{font-size:9px}.form-grid{grid-template-columns:1fr 1fr}.form-grid label{font-size:9px}.form-grid input{font-size:12px}.expense-form{grid-template-columns:1fr 1fr;gap:10px}.expense-form label{font-size:9px}.save-scenario{display:block}.save-scenario button{width:100%}footer{font-size:7px;gap:6px;flex-wrap:wrap}.chart-container svg{height:190px}.toast{bottom:78px;left:17px;right:17px;text-align:center;font-size:11px}.badge{max-width:100%}.small{font-size:10px}.salary-presets button{flex:1;padding:10px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.chart-summary small .num{display:inline;font-size:inherit}.metric-value{font-variant-numeric:tabular-nums}body{font-variant-numeric:tabular-nums}
