:root{font-family:Segoe UI,Arial,sans-serif;font-size:16px;color:#203d36;background:#eff3f0;font-variant-numeric:tabular-nums;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;padding:1rem 1.5rem;max-width:1920px;margin-inline:auto}h1,h2,h3,p{margin:0}h1{font-size:1.4rem;line-height:1.3;letter-spacing:-.04rem}h1 span{font-size:1rem;font-weight:450;margin-left:.5rem;color:#5c756c}h2{font-size:1.25rem}h3{font-size:1rem;font-weight:600}small,.micro{font-size:.8125rem;line-height:1.5;color:#536b62}.micro b{color:#264e40}header,.brand,.headerActions,.sectionTitle,.periodControls,footer,footer nav,.analysisFooter,.dialogTitle,.chartToolbar,.chartTools,.chartTabs{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.brand{justify-content:flex-start;flex-shrink:0}.brandMark{width:2.6rem;height:2.6rem;background:#146b5d;border-radius:.65rem;color:#fff;display:grid;place-items:center;font-weight:700;font-size:1.3rem}header{margin-bottom:1rem}.headerActions{justify-content:flex-end;flex-wrap:wrap}.mode{font-size:.875rem;color:#235e4d;font-weight:600;max-width:12rem}.chip{font-size:.8125rem;border:1px solid #d5dfd9;background:#f0f4f1;border-radius:2rem;padding:.3rem .6rem;white-space:nowrap}.chip.online{background:#dff2e7;border-color:#d0e7da;color:#15553d}button,input,select{font:inherit}button{border:1px solid #146b5d;border-radius:.45rem;background:#146b5d;color:white;padding:.55rem .8rem;font-size:.875rem;font-weight:600;cursor:pointer;min-height:2.5rem}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:default}.secondary{background:#fff;color:#225646;border-color:#bdcfc3}.textButton{border:0;background:transparent;color:#185f4c;padding:.4rem;font-size:.875rem}.textButton:hover{text-decoration:underline}.row{display:flex;align-items:end;gap:1rem}.row label{flex:1}label{display:block;font-size:.875rem;line-height:1.5}input,select{border:1px solid #c1d0c7;border-radius:.4rem;background:#fff;color:#243f35;padding:.5rem;width:100%;height:2.7rem;min-width:0}label input,label select{margin-top:.3rem}input:disabled{background:#eef2ef}button:focus-visible,input:focus,select:focus,summary:focus-visible{outline:3px solid #429b8a;outline-offset:3px}main{display:grid;gap:1rem;min-width:0}.liveMetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #d1ded5;border-radius:.7rem;background:#fff;padding:.65rem 0}.liveGroup{display:grid;grid-template-columns:1fr 1fr;min-width:0;border-right:1px solid #dce5df}.liveGroup:last-child{border:0}.liveGroup article{padding:.1rem 1rem;min-width:0}.liveGroup span{display:block;font-size:.875rem}.liveGroup span small{font-size:.75rem}.liveGroup strong{display:block;font-size:1.8rem;line-height:1.25;letter-spacing:-.03rem}.liveGroup article>small{display:block;font-size:.75rem}.card{border:1px solid #d2dfd6;background:white;border-radius:.7rem;padding:1rem;min-width:0}.analysis{display:flex;flex-direction:column;gap:.8rem}.analysisTitle h2{margin-bottom:.2rem}.periodControls select{width:11rem}.metrics{display:grid;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr))}.metrics article{border:1px solid #d8e4dc;border-radius:.5rem;padding:.7rem .9rem;background:#f7f9f7;min-width:0}.metrics span,.metrics small{display:block}.metrics span{font-size:.875rem}.metrics strong{display:block;font-size:1.65rem;line-height:1.35;letter-spacing:-.035rem}.savingCard{background:#e7f3eb!important;border-color:#cae4d4!important}.savingCard.negative{background:#fff0e5!important;border-color:#eac4a8!important}.chartToolbar{gap:1rem;padding-top:.2rem}.chartTabs{justify-content:flex-start;flex-wrap:wrap;gap:.4rem}.chartTabs button{background:#f2f6f3;border-color:transparent;color:#375a4c}.chartTabs button[aria-pressed=true]{background:#185f50;color:#fff}.chartTabs select{width:12rem;font-size:.875rem;height:2.5rem}.chartTools{justify-content:flex-end;flex-shrink:0;gap:.35rem}.chartTools .secondary{min-width:2.5rem;font-size:1.1rem;padding:.3rem}.chartTools .textButton{white-space:nowrap}#chartPanel{min-width:0}#chartPanel .sectionTitle{gap:1rem;padding:.4rem 0}.chart{position:relative;width:100%;height:clamp(300px,39vh,570px);min-height:18.75rem}.chart svg{display:block;max-width:100%;touch-action:pan-y}.chart svg text{font: .8125rem Segoe UI,Arial,sans-serif;fill:#4d695a}.chartLegend{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.4rem}.chartLegend button{border:0;border-left:3px solid;border-radius:0;background:none;color:#324d41;font-weight:400;font-size:.875rem;padding:.2rem .5rem;min-height:2rem}.chartLegend button[aria-pressed=false]{opacity:.42;text-decoration:line-through}.chartTip{position:absolute;z-index:5;pointer-events:none;background:#fff;border:1px solid #b6cdbf;border-radius:.5rem;box-shadow:0 .4rem 1.5rem #193d3024;padding:.8rem;max-width:19rem;font-size:.875rem;line-height:1.55}.chartTip strong{display:block;margin-bottom:.35rem}.chartTip small{display:block}.analysisFooter{flex-wrap:wrap}.analysisFooter>span{flex:1}.comparison{padding-top:.5rem;border-top:1px solid #d8e4dd}.comparison summary{cursor:pointer;font-size:.875rem;font-weight:600;padding:.4rem 0}.comparison p{margin-top:.45rem}.tableWrap{width:100%;overflow:auto;margin-top:.5rem}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{padding:.6rem .75rem;text-align:right;border-bottom:1px solid #e0e8e2;white-space:nowrap}th{font-weight:500;color:#536c60;background:#f3f7f4}th:first-child,td:first-child{text-align:left}footer{margin-top:.75rem;flex-wrap:wrap;color:#587165;font-size:.8125rem}footer nav{gap:.65rem}dialog{width:min(960px,94vw);max-width:94vw;max-height:90dvh;padding:1.4rem;border:1px solid #bfd3c5;border-radius:.75rem;color:#203e32;background:#fff;box-shadow:0 1.5rem 6rem #14342540;overflow:auto}dialog::backdrop{background:#0a211f80}.dialogTitle{position:sticky;top:-1.4rem;z-index:6;background:#fff;border-bottom:1px solid #d7e3da;padding:0 0 .8rem;margin-bottom:1rem}.dialogTitle h2{font-size:1.25rem}dialog p{line-height:1.6;margin:.8rem 0}dialog img{max-width:100%;height:auto}#controlDialog,#economicsDialog{width:min(660px,94vw)}.targetRow{display:grid;grid-template-columns:1.3fr 1fr auto;align-items:end;gap:.7rem;margin:1rem 0}.targetRow button{height:2.7rem}.parameterGrid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.parameterGrid td{white-space:normal;overflow-wrap:anywhere}.parameterBlock{border:1px solid #d9e4dc;border-radius:.4rem;padding:.65rem;margin:.65rem 0;font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}.log{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1rem 0;border-bottom:1px solid #dce6df;font-size:.875rem}.log div{display:flex;gap:1rem}.log span{overflow-wrap:anywhere}a{color:#155e48}.eventList{max-height:62dvh;overflow:auto}.eventItem{border-top:1px solid #dce7df;padding:.85rem .5rem;line-height:1.5;font-size:.875rem;overflow-wrap:anywhere}.eventItem time{font-size:.8125rem;color:#597366;display:block}.eventItem strong{font-size:1rem}.eventItem p{font-size:.875rem;margin:.25rem 0}.eventItem.warn{border-left:3px solid #bb7135;padding-left:.8rem}.eventItem details{font-size:.8125rem}.cloudOffline .liveGroup strong,.valuesStale .liveGroup strong{color:#7b8c81}#notice{position:fixed;bottom:1rem;right:1rem;z-index:100;background:#1e4c3e;color:white;max-width:min(32rem,calc(100vw - 2rem));border-radius:.5rem;padding:1rem;font-size:1rem;box-shadow:0 .5rem 2rem #10291d44}.expandedChart #chartPanel{position:fixed;inset:1rem;z-index:50;background:white;padding:1.25rem;border:1px solid #bfcebf;border-radius:.65rem;box-shadow:0 0 0 2rem #183b3266}.expandedChart .chart{height:calc(100dvh - 10rem)}.expandedChart .chartTools{position:fixed;right:2.5rem;bottom:2.5rem;z-index:55}.srOnly{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.eventList{min-height:8rem}
.brand{flex-shrink:1;min-width:0}.brand>div{min-width:0}footer nav{flex-wrap:wrap}.metrics strong{overflow-wrap:anywhere}
@media(max-width:700px){.metrics{grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr))}.liveGroup{grid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}}
@media(max-width:1100px){body{padding:1rem}header{align-items:flex-start;flex-wrap:wrap}.headerActions{justify-content:flex-start}.analysisTitle{flex-wrap:wrap}.chartToolbar{flex-wrap:wrap}.chartTools{margin-left:auto}.liveGroup article{padding-inline:.7rem}.liveGroup span small{display:block}.liveGroup strong{font-size:1.5rem}.metrics strong{font-size:1.45rem}}
@media(max-width:700px){body{padding:.75rem}.brandMark{width:2.2rem;height:2.2rem}h1{font-size:1.25rem}.brand small{font-size:.75rem}.headerActions{gap:.5rem}.mode{max-width:none}.headerActions button{min-height:2.75rem}.headerActions .chip{font-size:.75rem}.liveMetrics{grid-template-columns:1fr;padding:0}.liveGroup{border-right:0;border-bottom:1px solid #dbe6df;padding:.65rem 0;grid-template-columns:1fr 1fr}.liveGroup article{padding:0 1rem}.liveGroup strong{font-size:1.65rem}.liveGroup span small{display:inline}.card{padding:.8rem}.metrics{grid-template-columns:1fr 1fr;gap:.5rem}.metrics article{padding:.65rem}.metrics span{font-size:.875rem}.metrics strong{font-size:1.35rem}.periodControls{width:100%}.periodControls select{flex:1}.analysisTitle{gap:.7rem}.chartTabs{gap:.35rem}.chartTabs button{min-height:2.75rem}.chartTabs select{width:100%;height:2.75rem}.chartTools{gap:.4rem;flex-wrap:wrap}.chart{height:350px}#chartHint{display:none}#chartPanel .sectionTitle{align-items:flex-start}.analysisFooter{gap:.5rem}.analysisFooter>span{flex-basis:100%}footer{gap:.7rem}footer nav{justify-content:space-between;width:100%}.row{flex-wrap:wrap}.row label{flex-basis:100%}dialog{padding:1rem;max-width:96vw;width:96vw}.dialogTitle{top:-1rem}.parameterGrid{grid-template-columns:1fr}.targetRow{grid-template-columns:1fr 1fr}.targetRow button{grid-column:1/-1}.expandedChart #chartPanel{inset:.5rem;padding:.8rem}.expandedChart .chart{height:calc(100dvh - 11rem)}.expandedChart .chartTools{right:1.5rem;bottom:1.5rem}.eventList{max-height:60dvh}}
.row label{min-width:0}.chartTools{min-width:0;max-width:100%;flex-shrink:1;flex-wrap:wrap}@media(max-width:700px){.metrics{grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr))}.liveGroup{grid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr))}}
