:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#182536;background:#f3f6f8}*{box-sizing:border-box}body{margin:0}.shell{max-width:1120px;margin:auto;padding:64px 28px}header{display:flex;justify-content:space-between;gap:32px;align-items:flex-start;margin:28px 0 46px}.eyebrow,.kicker{font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#526779}h1{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.02;letter-spacing:-.04em;margin:10px 0 16px;max-width:850px}h2{margin:8px 0 12px;font-size:1.45rem}.lead{font-size:1.15rem;line-height:1.6;color:#52606d;max-width:760px}.status,.pill{border:1px solid #cbd5dc;border-radius:999px;padding:8px 13px;font-size:.8rem;white-space:nowrap;background:#fff}.status.active{border-color:#9bb7aa;background:#f4faf6}.grid,.dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid #dce3e8;border-radius:14px;padding:28px;box-shadow:0 8px 25px rgba(25,42,55,.04)}.card.wide{grid-column:1/-1}.card p{color:#5a6874;line-height:1.55;margin-bottom:22px}.primary,.secondary,button{display:inline-block;text-decoration:none;font:inherit;font-weight:700;border-radius:8px;padding:11px 16px;cursor:pointer}.primary{background:#172a3a;color:white;border:1px solid #172a3a}.secondary{border:1px solid #aebbc4;color:#172a3a;background:#fff}.principle{margin-top:22px;padding:20px 24px;border-left:4px solid #607b8d;background:#e9eef2;color:#354956}.back,.textlink{color:#526779;text-decoration:none;font-weight:650}.cardtop{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.actions{display:flex;gap:10px;flex-wrap:wrap}.situation{font-size:1.05rem;background:#f6f8fa;border-left:4px solid #607b8d;padding:18px}.metric{font-size:2rem;font-weight:800;margin:18px 0}.metric small{font-size:.85rem;font-weight:600;color:#687784}.muted{color:#7b8790;font-size:.9rem}.formgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}label{font-size:.8rem;font-weight:800;color:#526779}select{display:block;width:100%;margin-top:7px;padding:11px;border:1px solid #cbd5dc;border-radius:8px;background:white;color:#182536}.goalgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}.goalgrid>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e0e6ea;border-radius:9px;padding:13px}.focus,.included,.off{font-size:.75rem;font-weight:800;border-radius:999px;padding:5px 9px}.focus{background:#dce9e1;color:#254a36}.included{background:#e8edf2;color:#405566}.off{background:#f1f2f3;color:#7b858c}@media(max-width:760px){.shell{padding:32px 18px}header{display:block;margin-bottom:28px}.status{display:inline-block;margin-top:8px}.grid,.dashboard,.formgrid,.goalgrid{grid-template-columns:1fr}.card.wide{grid-column:auto}.cardtop{display:block}.cardtop button{margin-top:12px}}.narrow{max-width:620px}.loginbox{margin-top:48px}.loginh{font-size:2.4rem}.loginbox form{display:grid;gap:18px}.loginbox label{display:grid;gap:7px}.loginbox input{width:100%;padding:12px;border:1px solid #cbd5dc;border-radius:8px;font:inherit}.error,.success{padding:12px 14px;border-radius:8px;margin:16px 0}.error{background:#f9e9e9;color:#7a2525}.success{background:#e8f4ec;color:#28553a}.topnav{display:flex;justify-content:space-between;align-items:center;color:#526779;font-size:.9rem}
.goalitem{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e0e6ea;border-radius:9px;padding:13px;background:#fff;color:#182536;text-align:left}.goalitem:hover{background:#f8fafb}.goalgrid>input{display:none}.resultsrow{margin-top:20px}.simlist{display:grid;gap:10px;margin-top:18px}.simlist>div{display:flex;justify-content:space-between;gap:18px;padding:13px;border:1px solid #e0e6ea;border-radius:9px}.simlist span{color:#687784;font-size:.86rem;text-align:right}@media(max-width:760px){.simlist>div{display:block}.simlist span{display:block;text-align:left;margin-top:5px}}
.stack{display:grid;gap:14px;margin-top:18px}.stack input{width:100%;margin-top:7px;padding:11px;border:1px solid #cbd5dc;border-radius:8px;font:inherit}.noticebox{background:#eef4f7;border-left:4px solid #607b8d;padding:16px 18px;border-radius:4px;color:#354956}
