:root{color:#17201f;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f6f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}main{min-height:100vh;padding:24px}.topbar{justify-content:space-between;align-items:center;gap:18px;max-width:1480px;margin:0 auto 18px;display:flex}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.top-actions button,.preset-grid button,.setup-banner button,.view-tabs button{color:#174535;cursor:pointer;background:#fff;border:1px solid #cdd8d2;border-radius:8px;min-height:36px;padding:8px 10px;font-weight:700}.hidden-input{display:none}.eyebrow{color:#5d6d66;letter-spacing:0;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:700}h1,h2{letter-spacing:0;margin:0}h1{font-size:clamp(28px,4vw,44px);line-height:1.05}h2{font-size:20px}.status-pill,.confidence{color:#173c2e;background:#dfeee6;border:1px solid #bed7ca;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.layout,.lower-grid{gap:18px;max-width:1480px;margin:0 auto 18px;display:grid}.layout{grid-template-columns:minmax(380px,.9fr) minmax(540px,1.25fr)}.lower-grid{grid-template-columns:1.2fr .8fr}.panel{background:#fff;border:1px solid #d9dfdb;border-radius:8px;padding:18px;box-shadow:0 10px 28px #252f2b14}.panel-heading{align-items:center;gap:10px;margin-bottom:16px;display:flex}.panel-heading.spread{justify-content:space-between}.panel-heading.spread h2{font-size:34px}.confidence{flex-direction:column;align-items:flex-end;gap:0;min-width:120px}.confidence span{font-size:22px;font-weight:800}.grid{gap:10px;display:grid}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.four{grid-template-columns:repeat(4,minmax(0,1fr))}.five{grid-template-columns:repeat(5,minmax(0,1fr))}.preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.field{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.field span{color:#46554f;font-size:12px;font-weight:700}.input-section{border-top:1px solid #e3e9e5;padding-top:14px}.input-section:first-of-type{border-top:0;padding-top:0}.input-section+.input-section{margin-top:8px}.input-section summary{color:#20352d;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:2px 0 10px;list-style:none;display:flex}.input-section summary::-webkit-details-marker{display:none}.input-section summary:after{color:#527064;content:"+";font-size:20px;font-weight:500;line-height:1}.input-section[open] summary:after{content:"−"}.input-section summary span{color:#20352d;letter-spacing:0;font-size:14px;font-weight:700}.input-section summary small{color:#73817b;text-align:right;flex:1;font-size:11px;font-weight:500}.input-section-body{padding-top:2px}.setup-banner{background:#eef6f1;border:1px solid #cfe2d7;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:12px;display:flex}.setup-banner strong,.setup-banner span{display:block}.setup-banner span,.field-help{color:#5f7069;font-size:12px}.setup-banner span{margin-top:3px}.setup-banner button{flex:none}.field-help{margin:-2px 0 10px}input,select,textarea{color:#17201f;background:#fbfcfa;border:1px solid #cfd7d2;border-radius:6px;width:100%;min-height:40px;padding:8px 10px}textarea{resize:vertical}input[type=range]{padding:0}.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.metric-grid div{background:#f4f6f2;border:1px solid #dfe5e1;border-radius:8px;padding:12px}.metric-grid span,.service-row span,.benchmark-banner span{color:#61716b;margin-top:4px;font-size:12px;display:block}.metric-grid strong{margin-top:4px;font-size:22px;display:block}.benchmark-banner{background:#fff5de;border:1px solid #ecd69e;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px;display:flex}.export-actions{gap:10px;margin-bottom:14px;display:flex}.export-actions button{color:#fff;cursor:pointer;background:#174535;border:1px solid #174535;border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:9px 12px;font-weight:700;display:inline-flex}.export-actions button+button{color:#174535;background:#fff}.warning-panel{background:#fff8e9;border:1px solid #ecd69e;border-radius:8px;gap:8px;margin-bottom:14px;padding:10px 12px;display:grid}.warning-panel div{color:#55400d;align-items:flex-start;gap:8px;font-size:13px;display:flex}.view-tabs{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.view-tabs button.active{color:#fff;background:#174535;border-color:#174535}.services{border:1px solid #dde5e0;border-radius:8px;overflow:hidden}.service-card{background:#fff}.service-card+.service-card{border-top:1px solid #e7ece8}.service-card.muted{color:#7b8581;background:#f5f5f3}.service-row{grid-template-columns:40px minmax(0,1fr) minmax(150px,auto) auto;align-items:center;gap:12px;padding:11px 12px;display:grid}.status-select{color:#20302a;background:#fff;border:1px solid #cdd8d2;border-radius:8px;min-height:36px;padding:7px 9px}.icon-toggle{color:#174535;cursor:pointer;background:#e7f1ed;border:1px solid #c7ddd3;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.service-card.muted .icon-toggle{color:#68726d;background:#ececea;border-color:#d7d7d4}.expand-control{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:0;display:flex}.expand-control small{color:#61716b;margin-top:4px;font-size:12px;display:block}.chevron{color:#5c6b65;flex:none;transition:transform .16s}.chevron.open{transform:rotate(180deg)}.driver-panel{background:#f8faf7;border-top:1px solid #e2e9e4;padding:12px 16px 14px 64px}.formula-strip{background:#edf5f0;border:1px solid #d3e3da;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding:10px 12px;display:flex}.formula-strip span,.driver-grid span,.driver-list span{color:#5a6963;font-size:12px;font-weight:700;display:block}.driver-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.driver-grid div{background:#fff;border:1px solid #e1e8e4;border-radius:8px;padding:10px}.driver-grid strong,.driver-list p{color:#20302a;margin:4px 0 0;font-size:13px;display:block}.driver-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.driver-list div{border-left:3px solid #9fbdaf;padding-left:10px}.override-row{background:#fff;border:1px solid #e1e8e4;border-radius:8px;grid-template-columns:minmax(180px,.4fr) minmax(0,1fr);align-items:end;gap:12px;margin:10px 0 12px;padding:10px;display:grid}.override-row .field{margin-bottom:0}.override-row p{color:#64736d;margin:0;font-size:13px}.rollup-table{background:#fff;border:1px solid #e1e8e4;border-radius:8px;margin:10px 0 12px;overflow:hidden}.rollup-table td strong{font-size:13px;display:block}.rollup-table td small{color:#64736d;margin-top:3px;font-size:12px;display:block}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e2e8e4;padding:10px 8px;font-size:14px}th{color:#4d5d57;text-transform:uppercase;font-size:12px}.assumptions{color:#31413b;margin:0;padding-left:20px}.assumptions li+li{margin-top:10px}.assumption-register,.proposal-summary{gap:10px;display:grid}.proposal-summary.compact{background:#f8faf7;border:1px solid #e1e8e4;border-radius:8px;margin-bottom:14px;padding:12px}.version-table h3{color:#20352d;margin:0 0 10px;font-size:15px}.assumption-register div,.proposal-summary div{border-left:3px solid #9fbdaf;padding-left:10px}.assumption-register span,.proposal-summary span{color:#4d5d57;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.assumption-register p,.proposal-summary p{color:#20302a;margin:4px 0;font-size:14px}.assumption-register small{color:#6a7872;font-size:12px;display:block}@media (max-width:1050px){main{padding:14px}.topbar,.layout,.lower-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}@media (max-width:720px){.two,.three,.four,.five,.preset-grid,.metric-grid{grid-template-columns:1fr}.panel-heading.spread{flex-direction:column;align-items:flex-start}.setup-banner{flex-direction:column;align-items:stretch}.input-section summary small{display:none}.export-actions{flex-direction:column}.service-row{grid-template-columns:36px 1fr}.service-row b,.status-select{grid-column:2}.driver-panel{padding-left:12px}.driver-grid,.driver-list{grid-template-columns:1fr}.formula-strip{flex-direction:column;align-items:flex-start}.override-row{grid-template-columns:1fr}}

