:root{color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-editorial:Georgia, "Times New Roman", serif;--bg:#f5f1e8;--sidebar:#ece6da;--card:#fffcf6;--raised:#e8e3d7;--surface-input:#fffcf6;--surface-hover:#e5dfd1;--text:#242821;--muted:#62675f;--subtle:#6d7268;--forest:#476549;--terracotta:#ac5839;--olive:#727c43;--solar:#977039;--critical:#a13f36;--grid:#545b52;--lime:#c7d67e;--border:#d8d3c7;--border-soft:#e0dacd;--border-strong:#9b9e8b;--accent-soft:#ece8de;--green-soft:#e7ecdd;--purple-soft:#ebeddc;--amber-soft:#f1e6d1;--rose-soft:#f4e2da;--chart-text:#646b60;--chart-grid:#d9d4c7;--chart-actual:#7d8375;--chart-hover:#47654908;--chart-cursor:#47654935;--shadow-raised:4px 5px 0 #2428210a;--radius-sm:3px;--radius-md:5px;--radius-lg:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--text-xs:11px;--text-sm:12px;--text-md:14px;--text-lg:17px;--duration:.2s;--ease:cubic-bezier(.2, .7, .2, 1);font-family:Segoe UI,Arial,sans-serif;font-size:14px}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{transition:border-color var(--duration), background var(--duration), box-shadow var(--duration)}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--forest);outline-offset:4px}h1,h2,h3,p{margin-top:0}h2{font-size:var(--text-lg);letter-spacing:-.25px;font-weight:550}p{color:var(--muted);line-height:1.75}svg{flex-shrink:0}::selection{color:#242821;background:#d5dfaa}input:disabled,select:disabled{opacity:.6}#root{min-height:100vh}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.app-shell{min-height:100vh}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);z-index:40;flex-direction:column;width:224px;padding:36px 22px 22px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{letter-spacing:-.9px;white-space:nowrap;align-items:center;gap:10px;font-size:21px;font-weight:600;display:flex}.brand-icon{width:35px;height:40px;color:var(--forest);place-items:center;display:grid}.brand-icon svg{fill:none;stroke:currentColor;stroke-width:1.2px;width:35px;height:35px}.brand-ai{vertical-align:6px;letter-spacing:0;margin-left:3px;font-size:10px;font-weight:500}.brand small{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-sm);letter-spacing:0;color:var(--muted);margin-top:6px;font-weight:400;display:block}.sidebar nav{gap:5px;margin-top:62px;display:grid}.nav-link{min-height:47px;color:var(--muted);font-size:var(--text-sm);transition:color var(--duration), border-color var(--duration);border-bottom:1px solid #0000;align-items:center;gap:11px;padding:11px 0;line-height:1.5;display:flex}.nav-link>span:not(.nav-number){flex:1}.nav-link .nav-number{color:var(--subtle);font-family:var(--font-editorial);font-size:var(--text-xs);flex:0 0 19px;font-style:italic}.nav-link>svg{width:13px}.nav-link:hover,.nav-link.active{color:var(--forest);border-bottom-color:var(--forest)}.nav-link.active .nav-number{color:var(--forest)}.sidebar-lower{margin-top:auto;padding-top:60px}.sidebar-service{border-top:1px solid var(--border);align-items:center;gap:9px;padding:22px 0;font-size:10px;display:flex}.sidebar-service>div{flex:1}.sidebar-service strong{font-weight:500;display:block}.sidebar-service small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.sidebar-service>svg{width:12px;color:var(--subtle)}.sidebar-version{color:var(--muted);letter-spacing:.8px;justify-content:space-between;font-size:8px;display:flex}.app-main{min-width:0;margin-left:224px}.topbar{justify-content:space-between;align-items:center;gap:var(--space-5);border-bottom:1px solid var(--border);height:66px;margin:0 42px;display:flex}.breadcrumb{min-width:0;font-size:var(--text-xs);color:var(--muted);align-items:center;gap:10px;display:flex}.breadcrumb strong{white-space:nowrap;text-overflow:ellipsis;font-weight:450;overflow:hidden}.topbar-right{align-items:center;gap:var(--space-5);display:flex}.topbar-date{font-size:var(--text-xs);color:var(--muted)}.operation-status{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--solar);display:inline-flex}.main-content{max-width:1660px;margin:0 auto;padding:38px 42px 0}.page-content{animation:page-enter var(--duration) var(--ease) both}.page-intro{justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:36px;display:flex}.page-intro h1{font-family:var(--font-editorial);letter-spacing:-1.8px;margin-bottom:15px;font-size:clamp(34px,3.8vw,53px);font-weight:400;line-height:1.13}.page-intro p{max-width:630px;margin:0;font-size:13px}.button{border:1px solid var(--terracotta);background:var(--terracotta);color:#fffaf3;min-height:43px;font-size:var(--text-sm);transition:transform var(--duration), background var(--duration);border-radius:3px;justify-content:center;align-items:center;gap:11px;padding:11px 19px;font-weight:550;line-height:1.5;display:inline-flex}.button:hover:not(:disabled){background:#984b30;transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button.secondary{border-color:var(--border-strong);color:var(--text);background:0 0}.button.secondary:hover:not(:disabled){background:var(--sidebar)}.button.full{width:100%;margin-top:var(--space-6)}.text-link{align-items:center;gap:var(--space-2);color:var(--forest);font-size:var(--text-sm);white-space:nowrap;border-bottom:1px solid #47654945;padding-bottom:3px;line-height:1.5;display:inline-flex}.text-link>svg{transition:transform var(--duration)}.text-link:hover>svg{transform:translate(2px,-1px)}.badge{max-width:100%;padding:var(--space-1) var(--space-2);border:1px solid var(--border);background:var(--raised);color:var(--muted);letter-spacing:.2px;border-radius:2px;align-items:center;gap:6px;font-size:9px;font-weight:500;line-height:1.6;display:inline-flex}.badge.green{color:#3c5132;background:#e6edcd;border-color:#aebc80}.badge.cyan{color:var(--grid);background:var(--raised);border-color:var(--border)}.badge.purple{color:#575f2f;background:var(--purple-soft);border-color:#bdc29d}.badge.amber{color:#725323;background:var(--amber-soft);border-color:#d7bd8c}.badge.rose{color:var(--critical);background:var(--rose-soft);border-color:#d7aaa0}.tiny-dot{background:var(--forest);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.tiny-dot.cyan{background:var(--grid)}.tiny-dot.amber{background:var(--solar)}.tiny-dot.muted{background:var(--subtle)}.muted-text{color:var(--muted);font-size:var(--text-xs)}.purple-text{color:var(--olive)}.green-text{color:var(--forest)}.rose-text{color:var(--critical)}.panel{border-top:1px solid var(--border);background:0 0;min-width:0;margin-bottom:30px;padding:26px 0;position:relative}.panel-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-5);margin-bottom:var(--space-6);display:flex}.panel-heading h2{margin:0 0 var(--space-2);font-size:18px;font-weight:500}.panel-heading p{font-size:var(--text-sm);margin:0;line-height:1.6}.panel-heading>.badge{flex-shrink:0}.panel-foot{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--border);color:var(--muted);margin-top:18px;padding-top:18px;font-size:10px;display:flex}.panel-foot>span{align-items:center;gap:7px;display:flex}.dashboard-grid{gap:var(--space-8);grid-template-columns:1.1fr 1fr;align-items:start;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-5);margin:28px 0 var(--space-4);display:flex}.section-heading h2{font-size:var(--text-md);margin:0}.stats-grid{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:0;margin-bottom:30px;display:grid}.stats-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{--tone:var(--grid);border-right:1px solid var(--border);min-width:0;transition:background var(--duration);flex-direction:column;padding:23px 22px;display:flex;position:relative}.stat:last-child{border-right:0}.stat.purple{--tone:var(--olive)}.stat.green{--tone:var(--forest)}.stat.amber{--tone:var(--solar)}.stat.rose{--tone:var(--critical)}.stat:hover,.stat:focus-within{z-index:5;background:#ebe7db70}.stat-top{color:var(--muted);font-size:var(--text-xs);justify-content:space-between;align-items:flex-start;gap:9px;line-height:1.5;display:flex}.stat-label{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex;position:relative}.stat-icon{color:var(--tone);place-items:center;width:18px;height:22px;display:grid}.stat-icon svg{width:15px}.stat-value{font-variant-numeric:tabular-nums;letter-spacing:-1.6px;overflow-wrap:anywhere;margin:22px 0 15px;font-size:36px;font-weight:450;line-height:1.1;animation:.18s ease-out both value-enter}.stat-value small{font-size:var(--text-sm);letter-spacing:0;color:var(--muted);margin-left:5px;font-weight:400}.stat-detail{color:var(--muted);align-items:center;gap:6px;margin-top:auto;font-size:10px;line-height:1.6;display:flex}.stat-detail .tiny-dot{background:var(--tone);width:3px;height:3px}.metric-help{min-width:20px;min-height:24px;color:var(--subtle);background:0 0;border:0;place-items:center;margin:-3px;padding:2px;display:inline-grid}.metric-help:hover,.metric-help[aria-expanded=true]{color:var(--forest)}.metric-tooltip{z-index:60;background:var(--card);border:1px solid var(--border-strong);width:min(260px,70vw);box-shadow:var(--shadow-raised);font-size:var(--text-sm);color:var(--text);border-radius:3px;padding:13px 15px;font-weight:400;line-height:1.7;position:absolute;top:calc(100% + 10px);left:0}.stat:last-child .metric-tooltip{left:auto;right:0}.metric-progress{appearance:none;background:var(--border);border:0;width:100%;height:3px;margin:-2px 0 14px;display:block;overflow:hidden}.metric-progress::-webkit-progress-bar{background:var(--border)}.metric-progress::-webkit-progress-value{background:var(--tone)}.metric-progress::-moz-progress-bar{background:var(--tone)}.editorial-hero{grid-template-columns:.87fr 1.13fr;align-items:start;gap:40px;margin-bottom:36px;display:grid}.hero-story{padding:22px 0 0}.hero-story h1{font-family:var(--font-editorial);letter-spacing:-4.7px;margin:0 0 27px;font-size:clamp(56px,6.4vw,90px);font-weight:400;line-height:1.02}.hero-story h1 em{color:var(--forest);font-weight:400}.hero-story>p{font-size:var(--text-md);max-width:335px;margin-bottom:25px;line-height:1.8}.hero-feature{border-top:1px solid var(--border);max-width:340px;margin-top:42px;padding-top:23px}.hero-feature>span{font-size:var(--text-sm);color:var(--muted)}.hero-feature>strong{letter-spacing:-4px;font-variant-numeric:tabular-nums;margin:15px 0 10px;font-size:75px;font-weight:350;line-height:1.1;display:block}.hero-feature small{letter-spacing:-.3px;margin-left:10px;font-size:18px;font-weight:400}.hero-feature>p{font-size:var(--text-xs);margin:0}.hero-system{border-left:1px solid var(--border);min-width:0;padding:15px 0 0 28px}.figure-heading{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:18px;display:flex}.figure-heading h2{font-family:var(--font-editorial);letter-spacing:-.6px;margin:0;font-size:26px;font-weight:400}.figure-index{font-family:var(--font-editorial);font-style:italic;font-size:var(--text-sm);color:var(--muted)}.overview-facts{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:38px;display:grid}.overview-facts .stat{padding:22px var(--space-6)}.overview-facts .stat:first-child{padding-left:0}.overview-facts .stat-value{font-size:38px}.overview-demand{background:var(--card);padding:28px 28px var(--space-5);border-top-color:var(--text);margin-bottom:38px}.overview-demand .panel-heading h2{font-family:var(--font-editorial);letter-spacing:-.7px;font-size:31px;font-weight:400}.overview-bottom{padding:var(--space-5) 0 25px;grid-template-columns:.85fr 1.1fr 1fr;gap:34px;display:grid}.overview-bottom h2{font-family:var(--font-editorial);letter-spacing:-.6px;font-size:25px;font-weight:400}.reserve-editorial>p{font-size:var(--text-xs);margin-top:var(--space-5);max-width:250px;line-height:1.8}.insights-editorial{border-left:1px solid var(--border);min-width:0;padding-left:30px}.insight{align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--border);padding:17px 0;display:flex}.insight:last-child{border:0}.insight-icon{width:24px;height:26px;color:var(--grid);flex-shrink:0;place-items:center;display:grid}.insight-icon.green{color:var(--forest)}.insight-icon.rose{color:var(--critical)}.insight-icon.purple{color:var(--olive)}.insight-icon.amber{color:var(--solar)}.insight strong{font-size:var(--text-sm);font-weight:550;line-height:1.5}.insight p{font-size:var(--text-xs);margin:6px 0 0}.savings-editorial{background:#e4e9d4;min-width:0;padding:25px;position:relative}.savings-editorial>svg{color:var(--forest);margin-bottom:17px}.savings-editorial h2{font-size:29px;line-height:1.3}.savings-editorial h2 em{color:var(--forest);font-weight:400}.savings-editorial .stat{padding:var(--space-2) 0 23px;border:0}.savings-editorial .stat-value{color:var(--forest);font-size:37px}.savings-editorial .stat:hover{background:0 0}.savings-editorial .stat-icon{display:none}.energy-flow{min-width:0}.flow-time{color:var(--muted);border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:10px;padding:0 0 10px;font-size:10px;display:flex}.flow-time>span:last-child{font-style:italic}.flow-canvas{aspect-ratio:600/390;width:100%;margin:var(--space-4) 0 10px;min-width:0;position:relative}.flow-drawing{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.system-orbit{fill:none;stroke:#c1c8af;stroke-width:1px}.system-orbit.inner{stroke:#dce0ce;stroke-dasharray:2 6}.system-axis{fill:none;stroke:#d8ddcb;stroke-width:.8px}.energy-path{fill:none;stroke:var(--grid);stroke-width:1.25px;opacity:.48;transition:opacity var(--duration), stroke-width var(--duration)}.solar-load,.solar-storage{stroke:var(--forest)}.storage-load{stroke:var(--olive)}.grid-storage{stroke-dasharray:4 5}.selected-solar .solar-load,.selected-solar .solar-storage,.selected-storage .storage-load,.selected-grid .grid-load,.selected-grid .grid-storage,.selected-load .solar-load,.selected-load .storage-load,.selected-load .grid-load{opacity:1;stroke-width:1.8px}.path-labels text{fill:var(--muted);font-family:Segoe UI,Arial,sans-serif;font-size:var(--text-xs);text-anchor:middle;paint-order:stroke;stroke:var(--bg);stroke-width:6px;stroke-linejoin:round}.flow-node{width:26%;min-height:90px;padding:7px var(--space-1);background:var(--bg);color:var(--text);transition:border-color var(--duration), background var(--duration);border:1px solid #0000;border-radius:0;flex-direction:column;align-items:center;display:flex;position:absolute}.flow-node:hover{border-color:var(--border-strong)}.flow-node[aria-pressed=true]{border-bottom-color:var(--forest)}.flow-node.solar{top:4%;left:2%}.flow-node.storage{bottom:0;left:2%}.flow-node.grid{bottom:0;right:2%}.flow-node.load{aspect-ratio:1;background:#e3e9d3;border-radius:50%;justify-content:center;width:28%;min-height:120px;top:28%;left:36%}.node-symbol{width:28px;height:28px;color:var(--forest);place-items:center;margin-bottom:5px;display:grid}.storage .node-symbol{color:var(--olive)}.grid .node-symbol{color:var(--grid)}.node-title{font-size:var(--text-xs);line-height:1.5}.flow-node>strong{letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:25px;font-weight:450;line-height:1.3}.flow-node>strong small{letter-spacing:0;margin-left:var(--space-1);font-size:10px;font-weight:400}.node-caption{color:var(--muted);font-size:9px;line-height:1.6}.flow-detail{border-top:1px solid var(--border);min-height:142px;padding:15px 0 0}.flow-detail-heading{color:var(--forest);font-size:var(--text-sm);justify-content:space-between;align-items:center;font-weight:550;display:flex}.flow-detail>p{font-size:var(--text-xs);max-width:520px;margin:10px 0 0;line-height:1.8}.flow-detail .flow-unavailable{margin-top:var(--space-3);font-size:10px;font-style:italic}.flow-detail dl{gap:var(--space-3);margin:var(--space-4) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.flow-detail dt{color:var(--muted);font-size:10px;line-height:1.5}.flow-detail dd{letter-spacing:-.6px;margin:6px 0 0;font-size:20px;font-weight:450}.flow-detail dd small{color:var(--muted);letter-spacing:0;font-size:10px}.flow-breakdown{border-top:1px solid var(--border);margin-top:19px}.flow-breakdown summary{cursor:pointer;font-size:var(--text-xs);color:var(--forest);justify-content:space-between;align-items:center;padding:13px 0;display:flex}.flow-breakdown summary:after{content:"+";font-size:16px}.flow-breakdown[open] summary:after{content:"−"}.flow-breakdown summary>span{color:var(--muted);margin-left:auto;margin-right:15px;font-size:10px}.flow-ledger{gap:var(--space-3);margin:var(--space-1) 0 15px;grid-template-columns:1fr;display:grid}.flow-ledger>div{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted);display:flex}.flow-ledger strong{color:var(--text);font-weight:500}.hour-picker{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--muted);margin-bottom:14px;display:flex}.hour-picker select{width:auto;max-width:230px;font-size:var(--text-xs);border:1px solid var(--border);background:var(--card);color:var(--text);padding:var(--space-2)}.segmented{border:1px solid var(--border);margin-bottom:15px;display:inline-flex}.segmented button{padding:var(--space-2) var(--space-3);color:var(--muted);font-size:var(--text-xs);background:0 0;border:0}.segmented button[aria-pressed=true]{background:var(--forest);color:var(--card)}.battery-gauge{text-align:center;max-width:205px;margin:0 auto;position:relative}.battery-gauge>svg{width:100%;height:auto;display:block}.gauge-guide{fill:none;stroke:var(--border);stroke-width:.7px;stroke-dasharray:1 4}.gauge-track{fill:none;stroke:#dfe3ca;stroke-width:8px}.gauge-value{fill:none;stroke:var(--forest);stroke-width:8px;transition:stroke-dasharray var(--duration)}.gauge-ticks{stroke:var(--border-strong);stroke-width:1px}.gauge-reading{flex-direction:column;align-items:center;gap:7px;width:100%;display:flex;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.gauge-reading strong{letter-spacing:-1.8px;font-size:37px;font-weight:450;line-height:1}.gauge-reading small{font-size:var(--text-md);letter-spacing:0;margin-left:3px;font-weight:400}.gauge-reading>span{color:var(--muted);font-size:10px}.battery-gauge>p{margin:2px 0 0;font-size:10px;font-style:italic}.battery-visual{justify-content:center;align-items:center;gap:var(--space-6);padding:15px 0 22px;display:flex}.battery-body{width:210px;max-width:52%}.battery-info{gap:18px;max-width:180px;display:grid}.battery-info>span:not(.badge){font-size:var(--text-xs);color:var(--muted)}.battery-info strong{font-size:var(--text-md);color:var(--text);margin-top:6px;font-weight:500;display:block}.chart-frame,.chart{width:100%;min-width:0}.chart-legend{justify-content:center;align-items:center;gap:6px var(--space-3);flex-wrap:wrap;min-height:28px;margin-top:9px;display:flex}.legend-toggle,.legend-label{color:var(--muted);font-size:var(--text-xs);background:0 0;border:0;border-bottom:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:5px 6px;line-height:1.5;display:inline-flex}.legend-toggle:hover:not(:disabled){border-bottom-color:var(--forest);color:var(--text)}.legend-toggle[aria-pressed=false]{opacity:.45;text-decoration:line-through}.legend-toggle:disabled{cursor:default;opacity:1}.series-swatch{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.chart-tooltip{min-width:190px;max-width:min(330px,80vw);padding:14px var(--space-4);border:1px solid var(--border-strong);background:var(--card);box-shadow:var(--shadow-raised);font-size:var(--text-sm);border-radius:2px}.chart-tooltip-heading{margin-bottom:var(--space-2);border-bottom:1px solid var(--border);color:var(--muted);font-size:var(--text-xs);padding-bottom:10px}.chart-tooltip-row{align-items:center;gap:var(--space-2);color:var(--muted);padding:5px 0;line-height:1.6;display:flex}.chart-tooltip-row strong{color:var(--text);white-space:nowrap;padding-left:var(--space-3);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:550}.chart-tooltip-row small{color:var(--muted);margin-left:var(--space-1);font-size:10px;font-weight:400}.recharts-wrapper [tabindex]:focus-visible{outline:2px solid var(--forest);outline-offset:1px}.empty{text-align:center;justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;min-height:215px;padding:26px 15px;display:flex}.empty.compact{min-height:185px}.empty-icon{border:1px solid var(--border);width:53px;height:53px;color:var(--forest);border-radius:50%;place-items:center;margin-bottom:7px;display:grid}.empty strong{font-family:var(--font-editorial);color:var(--text);letter-spacing:-.5px;font-size:21px;font-weight:400}.empty p{font-size:var(--text-sm);max-width:330px;margin:0}.empty .text-link{margin-top:3px}.scenario-grid{border:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:28px;display:grid}.scenario-card{padding:var(--space-5) 17px;text-align:left;border:0;border-right:1px solid var(--border);background:var(--card);min-height:92px;color:var(--text);border-bottom:3px solid #0000;grid-template-columns:29px 1fr;align-content:center;align-items:center;gap:6px 10px;display:grid;position:relative}.scenario-card:last-child{border-right:0}.scenario-card>svg{color:var(--muted);grid-row:1/span 2;width:20px}.scenario-card strong{font-size:13px;font-weight:500}.scenario-card>span{color:var(--muted);font-size:10px;line-height:1.6}.scenario-card>i{background:var(--border);border-radius:50%;width:5px;height:5px;position:absolute;top:10px;right:10px}.scenario-card:hover:not(:disabled){background:#eeedde}.scenario-card.selected{border-bottom-color:var(--forest);background:#e9eddc}.scenario-card.selected>svg{color:var(--forest)}.scenario-card.selected>i{background:var(--forest)}.forecast-workspace{grid-template-columns:1.1fr .9fr;gap:44px}.studio-result{background:#e9ecdf;border:1px solid #d3dac3;min-height:420px;padding:25px 28px}.studio-result .panel-heading h2{font-family:var(--font-editorial);font-size:27px;font-weight:400}.form-grid{gap:var(--space-5) 18px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field{gap:var(--space-2);min-width:0;color:var(--text);font-size:var(--text-sm);flex-direction:column;line-height:1.5;display:flex}.input-wrap{border:1px solid var(--border);background:var(--surface-input);border-radius:2px;align-items:center;min-width:0;display:flex}.input-wrap:hover{border-color:var(--border-strong)}.input-wrap:focus-within{border-color:var(--forest);box-shadow:0 2px 0 var(--forest)}.field input,.field select{width:100%;min-width:0;min-height:43px;padding:11px var(--space-3);border:1px solid var(--border);background:var(--surface-input);color:var(--text);border-radius:2px;font-size:13px}.input-wrap input{box-shadow:none;background:0 0;border:0;outline:none}.input-wrap input:focus-visible{outline:none}.unit{margin-right:var(--space-3);color:var(--muted);flex-shrink:0;font-size:10px}.hint{font-size:var(--text-xs);margin:var(--space-5) 0 0;color:var(--muted);line-height:1.8}.prediction-display{text-align:left;padding:18px 0 25px}.prediction-display>span{font-size:var(--text-sm);color:var(--muted)}.prediction-display>strong{letter-spacing:-4px;color:var(--forest);margin:23px 0;font-size:76px;font-weight:350;line-height:1.1;display:block}.prediction-display>strong small{font-size:var(--text-lg);letter-spacing:0;color:var(--muted);margin-left:9px;font-weight:400}.recommendation{color:var(--forest);animation:value-enter var(--duration) ease-out both;border-top:1px solid #becaaa;align-items:center;gap:13px;padding:17px 0;display:flex}.recommendation.critical{color:var(--critical);border-top-color:#d3aaa0}.recommendation strong{font-size:var(--text-sm);font-weight:550}.recommendation p{font-size:var(--text-xs);margin:6px 0 0}.forecast-controls{margin-bottom:var(--space-6);flex-wrap:wrap;align-items:flex-end;gap:18px;display:flex}.forecast-controls>.field{flex:1;min-width:160px}.forecast-controls>.button{min-height:44px}.notice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4) 18px;margin-bottom:var(--space-6);border:0;border-left:2px solid var(--forest);background:var(--green-soft);color:var(--text);font-size:var(--text-sm);line-height:1.8;display:flex}.notice>svg{color:var(--forest);margin-top:3px}.notice.error{border-color:var(--critical);background:var(--rose-soft);color:var(--critical);animation:value-enter var(--duration) ease-out both;margin-top:18px}.notice.error>svg{color:var(--critical)}.notice .text-link{margin-left:7px}.details{border-top:1px solid var(--border);margin-top:25px}.details summary{cursor:pointer;color:var(--forest);font-size:var(--text-sm);padding:18px 0}.table-wrap{border-top:1px solid var(--text);border-bottom:1px solid var(--border);width:100%;max-height:480px;overflow:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:var(--text-sm);white-space:nowrap}.table-wrap th{z-index:1;text-align:left;padding:14px var(--space-4);background:var(--raised);color:var(--text);font-weight:500;position:sticky;top:0}.table-wrap td{padding:15px var(--space-4);border-top:1px solid var(--border-soft);color:var(--text)}.table-wrap tr:hover td{background:var(--green-soft)}.table-wrap .critical-row td{background:var(--rose-soft);color:var(--critical)}.model-note{font-size:var(--text-xs);color:var(--muted);padding:0 var(--space-1) var(--space-3);line-height:1.8}.system-map{border:1px solid var(--border);background:#eeeee3;margin-bottom:34px;padding:25px 28px}.system-map .panel-heading h2{font-family:var(--font-editorial);font-size:30px;font-weight:400}.system-map>.field{max-width:260px;margin-bottom:15px}.system-map .energy-flow{grid-template-columns:1.45fr 1fr;align-items:center;gap:0 35px;display:grid}.system-map .flow-time{grid-column:1/-1}.system-map .flow-canvas{grid-area:2/1/span 2;max-width:650px}.system-map .flow-detail{grid-area:2/2}.system-map .flow-detail dl{grid-template-columns:1fr;gap:0}.system-map .flow-detail dl>div{padding:var(--space-3) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;display:flex}.system-map .flow-detail dd{margin:0;font-size:23px}.system-map .flow-breakdown{grid-area:3/2}.system-map .flow-node{background:#eeeee3}.system-map .flow-node.load{background:#dfe7cc}.system-map .path-labels text{stroke:#eeeee3}.energy-workspace{grid-template-columns:1.1fr .9fr;gap:40px}.energy-workspace>.panel:last-child{background:var(--card);border-top-color:var(--forest);padding:25px}.optimization-banner{border-top:1px solid var(--text);border-bottom:1px solid var(--border);align-items:center;gap:17px;margin-bottom:25px;padding:21px 0;display:flex}.optimization-symbol{width:38px;height:38px;color:var(--forest);flex-shrink:0;place-items:center;display:grid}.optimization-symbol svg{width:25px}.optimization-banner>div{flex:1}.optimization-banner h2{font-size:var(--text-md);margin-bottom:7px;font-weight:500}.optimization-banner p{font-size:var(--text-sm);margin:0}.optimization-banner>.badge{flex-shrink:0}.optimization-workspace{grid-template-columns:.9fr 1.1fr;gap:48px}.optimization-workspace .form-grid{margin-bottom:22px}.optimization-workspace>.panel:first-child .form-grid{grid-template-columns:1fr}.tariff-strip{border:1px solid var(--border);min-height:36px;font-size:10px;display:flex;overflow:hidden}.tariff-strip>span{place-items:center;display:grid}.tariff-strip .off{color:#435334;background:#dce4c8;flex:6}.tariff-strip .off:last-child{flex:2}.tariff-strip .standard{color:#53584a;background:#e3e1d3;flex:12}.tariff-strip .peak{color:#6f3922;background:#e8bea4;flex:4}.tariff-legend{color:var(--muted);margin-top:var(--space-3);gap:18px;font-size:10px;display:flex}.tariff-legend>span:before{content:"";background:var(--olive);border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block}.tariff-legend>span:nth-child(2):before{background:var(--grid)}.tariff-legend>span:nth-child(3):before{background:var(--terracotta)}.switch-field{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:13px;margin-bottom:23px;padding:17px 0;display:flex}.switch-field input{appearance:none;border:1px solid var(--border-strong);background:var(--raised);cursor:pointer;border-radius:20px;flex-shrink:0;width:36px;height:21px;position:relative}.switch-field input:before{content:"";background:var(--muted);width:13px;height:13px;transition:transform var(--duration), background var(--duration);border-radius:50%;position:absolute;top:3px;left:3px}.switch-field input:checked{background:var(--forest);border-color:var(--forest)}.switch-field input:checked:before{background:var(--card);transform:translate(15px)}.switch-field strong{font-size:13px;font-weight:500;display:block}.switch-field small{font-size:var(--text-xs);color:var(--muted);margin-top:5px;line-height:1.6;display:block}.optimization-actions{justify-content:space-between;align-items:center;gap:var(--space-6);padding:0 0 28px;display:flex}.optimization-actions p{font-size:var(--text-sm);margin:0}.savings-highlight{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-8) 35px;border-top:1px solid var(--forest);animation:page-enter var(--duration) ease-out both;background:#e3e9d2;border-bottom:1px solid #c6d1b3;margin-bottom:30px;display:flex}.savings-highlight h2{font-family:var(--font-editorial);letter-spacing:-.6px;margin:0 0 var(--space-4);font-size:26px;font-weight:400}.savings-highlight strong{letter-spacing:-3px;color:var(--forest);font-size:62px;font-weight:350}.savings-highlight p{font-size:var(--text-sm);margin:var(--space-3) 0 0}.savings-side{text-align:right}.savings-side>span:not(.badge){letter-spacing:-1.3px;color:var(--forest);font-size:35px;font-weight:400}.savings-side>.badge{margin-top:var(--space-5)}.savings-highlight.negative{background:var(--rose-soft);border-color:#ce9e92}.savings-highlight.negative strong,.savings-highlight.negative .savings-side>span:not(.badge){color:var(--critical)}.cost-ledger>div{justify-content:space-between;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-sm);padding:18px 0;line-height:1.6;display:flex}.cost-ledger>div>span{color:var(--muted)}.cost-ledger strong{text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.cost-ledger>div:last-child{border:0;padding-bottom:0}.cost-ledger .total{padding:19px var(--space-3);background:var(--green-soft);color:var(--forest);margin:0 -12px}.page-validation{counter-reset:research}.page-validation>.notice{border:0;border-top:1px solid var(--text);border-bottom:1px solid var(--border);font-size:var(--text-sm);background:0 0;max-width:930px;padding:19px 0}.page-validation .panel-heading h2{font-family:var(--font-editorial);font-size:26px;font-weight:400}.page-validation .panel{counter-increment:research}.page-validation .panel-heading h2:before{content:counter(research, decimal-leading-zero) " / ";color:var(--muted);margin-right:var(--space-2);font-family:Segoe UI,Arial,sans-serif;font-size:10px}.page-validation .stats-grid{margin:30px 0 35px}.threshold-metrics{justify-content:space-around;gap:var(--space-6);margin:27px 0;display:flex}.threshold-metrics>div{gap:var(--space-3);flex-direction:column;display:flex}.threshold-metrics span{font-size:var(--text-sm);color:var(--muted)}.threshold-metrics strong{letter-spacing:-1.5px;color:var(--forest);font-size:34px;font-weight:400}.confusion-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:1fr 1fr;gap:0;display:grid}.confusion-grid>div{background:var(--card);border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:18px}.confusion-grid span{color:var(--muted);font-size:10px;display:block}.confusion-grid strong{margin-top:var(--space-3);font-size:29px;font-weight:400;display:block}.confusion-grid>.missed{background:var(--rose-soft)}.confusion-grid>.missed strong{color:var(--critical)}.status-banner{align-items:center;gap:var(--space-5);border-top:1px solid var(--solar);border-bottom:1px solid var(--border);background:0 0;margin-bottom:25px;padding:25px 0;display:flex}.status-banner.reachable{border-top-color:var(--forest)}.status-emblem{width:45px;height:45px;color:var(--solar);flex-shrink:0;place-items:center;display:grid}.reachable .status-emblem{color:var(--forest)}.status-banner>div{flex:1}.status-banner h2{font-family:var(--font-editorial);margin:0 0 var(--space-2);font-size:26px;font-weight:400}.status-banner p{font-size:var(--text-xs);margin:0}.service-row{border-bottom:1px solid var(--border);align-items:center;gap:18px;padding:22px 0;display:flex}.service-row:last-child{border:0;padding-bottom:2px}.service-row>div{flex:1;min-width:0}.service-row strong{font-size:13px;font-weight:550}.service-row p{font-size:var(--text-sm);overflow-wrap:anywhere;max-width:700px;margin:6px 0 0}.service-row .badge{text-align:center;max-width:200px}.service-icon{width:35px;height:35px;color:var(--grid);flex-shrink:0;place-items:center;display:grid}.service-icon.green{color:var(--forest)}.service-icon.amber{color:var(--solar)}.status-detail{padding:15px 0 var(--space-5);color:var(--forest);flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.status-detail strong{color:var(--text);margin-top:var(--space-5);font-size:18px;font-weight:450}.status-detail p{font-size:var(--text-sm);max-width:380px;margin:var(--space-3) 0 0}.activity-row{border-bottom:1px solid var(--border);align-items:flex-start;gap:13px;padding:19px 0;display:flex}.activity-row:last-child{border:0}.activity-row>div{flex:1;min-width:0}.activity-row strong{font-size:var(--text-sm);font-weight:500}.activity-row p{font-size:var(--text-sm);margin:7px 0}.activity-row small{color:var(--muted);font-size:10px}.activity-row>span{font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.skeleton-grid{margin-bottom:var(--space-6);grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.skeleton{border-top:1px solid var(--border);background:var(--raised);min-height:140px;animation:value-enter var(--duration) ease-out both}.icon-button{min-width:38px;min-height:38px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:2px;place-items:center;display:grid}.icon-button:hover{background:var(--raised);border-color:var(--border)}.menu-button,.mobile-close{display:none}.mobile-close{position:absolute;top:4px;right:5px}.nav-overlay{z-index:35;background:#24282155;border:0;position:fixed;inset:0}.skip-link{z-index:100;padding:var(--space-3) var(--space-4);border:1px solid var(--forest);background:var(--card);color:var(--forest);position:fixed;top:-65px;left:20px}.skip-link:focus{top:12px}footer{justify-content:space-between;align-items:center;gap:var(--space-5);border-top:1px solid var(--border);color:var(--muted);margin-top:15px;padding:25px 0;font-size:9px;display:flex}footer>span:first-child{align-items:center;gap:7px;display:flex}.not-found{padding:60px var(--space-5);min-height:70vh}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes page-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes value-enter{0%{opacity:.35}to{opacity:1}}@media (width>=1700px){.main-content{padding:45px 52px 0}.topbar{margin:0 52px}.editorial-hero{gap:65px}.hero-story h1{font-size:98px}.hero-system{padding-left:45px}.hero-feature{margin-top:60px}.hero-feature>strong{font-size:90px}}@media (width<=1250px){.sidebar{width:200px;padding-left:17px;padding-right:17px}.app-main{margin-left:200px}.brand{font-size:18px}.brand-icon,.brand-icon svg{width:29px}.brand small{font-size:var(--text-xs)}.nav-link{font-size:var(--text-xs);gap:7px}.topbar{margin:0 28px}.main-content{padding:var(--space-8) 28px 0}.editorial-hero{grid-template-columns:.85fr 1.15fr;gap:25px}.hero-system{padding-left:var(--space-5)}.hero-story h1{letter-spacing:-3.8px;font-size:68px}.hero-story>p{max-width:290px;font-size:13px}.hero-feature>strong{font-size:67px}.figure-heading h2{font-size:24px}.flow-node>strong{font-size:22px}.flow-node{min-height:80px}.flow-node.load{min-height:100px}.node-symbol{width:24px;height:24px}.node-symbol svg{width:18px}.node-caption{font-size:8px}.node-title{font-size:10px}.flow-detail dl{gap:var(--space-2)}.flow-detail dd{font-size:18px}.overview-bottom{gap:var(--space-6);grid-template-columns:.85fr 1.1fr 1fr}.overview-bottom h2{font-size:23px}.insights-editorial{padding-left:22px}.savings-editorial{padding:22px 18px}.savings-editorial .stat-value,.stat-value{font-size:31px}.stat{padding:21px var(--space-4)}.scenario-card{grid-template-columns:1fr;gap:7px;padding:17px 14px}.scenario-card>svg{margin-bottom:var(--space-1);grid-row:auto}.forecast-workspace{gap:30px}.system-map{padding:var(--space-6)}.system-map .energy-flow{gap:0 25px}.flow-detail>p{font-size:var(--text-xs)}.optimization-workspace{gap:35px}}@media (width<=1050px){.editorial-hero{grid-template-columns:1fr 1.25fr;gap:22px}.hero-story h1{font-size:60px}.hero-feature>strong{font-size:61px}.hero-system{padding-left:17px}.figure-heading h2{font-size:22px}.flow-node{min-height:75px;padding:5px 2px}.flow-node.load{width:30%;min-height:92px}.flow-node>strong{font-size:20px}.node-title{font-size:10px}.node-caption{font-size:7px}.flow-detail dl{grid-template-columns:1fr}.flow-detail dl>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.flow-detail dd{font-size:var(--text-lg);margin:0}.flow-detail dt{font-size:10px}.flow-detail{min-height:155px}.overview-bottom{grid-template-columns:1fr 1.3fr}.savings-editorial{grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:center;gap:0 25px;padding:25px;display:grid}.savings-editorial>svg{display:none}.savings-editorial h2{grid-area:1/1;margin:0;font-size:30px}.savings-editorial>.stat{grid-area:1/2/span 2}.savings-editorial>.text-link{grid-area:2/1;justify-self:start}.stats-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid.four .stat:nth-child(2){border-right:0}.stats-grid.four .stat:nth-child(n+3){border-top:1px solid var(--border)}.dashboard-grid{grid-template-columns:1fr;gap:25px;margin-bottom:26px}.dashboard-grid>.panel{margin-bottom:0}.forecast-workspace{grid-template-columns:1fr 1fr;gap:26px}.studio-result{padding:23px var(--space-5)}.studio-result .panel-heading h2{font-size:24px}.scenario-grid{grid-template-columns:repeat(2,1fr)}.scenario-card{border-bottom:1px solid var(--border);grid-template-columns:29px 1fr}.scenario-card:nth-child(2){border-right:0}.scenario-card:nth-child(n+3){border-bottom:3px solid #0000}.scenario-card.selected{border-bottom:3px solid var(--forest)}.scenario-card>svg{grid-row:1/span 2;margin-bottom:0}.system-map .energy-flow{grid-template-columns:1fr}.system-map .flow-time,.system-map .flow-canvas,.system-map .flow-detail,.system-map .flow-breakdown{grid-area:auto/1}.system-map .flow-canvas{max-width:580px;margin:15px auto}.system-map .flow-node{min-height:90px}.system-map .flow-node.load{min-height:120px}.system-map .flow-node>strong{font-size:27px}.system-map .node-title{font-size:var(--text-sm)}.system-map .node-caption{font-size:10px}.system-map .flow-detail dl{grid-template-columns:repeat(3,minmax(0,1fr))}.system-map .flow-detail dl>div{border:0;padding:10px 0 0;display:block}.system-map .flow-detail dd{margin-top:7px}.system-map .flow-detail{min-height:0}.system-map .flow-breakdown{margin-top:var(--space-5)}.system-map .flow-detail>p{max-width:none}.optimization-banner{flex-wrap:wrap}.optimization-banner>.badge{margin-left:55px}.savings-highlight strong{font-size:52px}}@media (width<=1100px){.editorial-hero{gap:var(--space-8);grid-template-columns:1fr}.hero-story{grid-template-columns:1.2fr 1fr;gap:0 30px;padding-top:5px;display:grid}.hero-story h1{grid-area:1/1/span 2;font-size:76px}.hero-story>p{font-size:var(--text-sm);grid-area:1/2}.hero-story>.button{grid-area:2/2;place-self:start}.hero-feature{gap:0 var(--space-5);max-width:none;padding-top:var(--space-5);grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:center;margin-top:25px;display:grid}.hero-feature>strong{grid-area:1/2/span 2;margin:0;font-size:65px}.hero-feature>p{margin-top:var(--space-2)}.hero-system{border-left:0;border-top:1px solid var(--border);padding-top:25px;padding-left:0}.hero-system .flow-canvas{max-width:560px;margin:var(--space-3) auto}.hero-system .flow-node{min-height:90px}.hero-system .flow-node.load{min-height:120px}.hero-system .flow-node>strong{font-size:27px}.hero-system .node-title{font-size:var(--text-sm)}.hero-system .node-caption{font-size:10px}.hero-system .flow-detail dl{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-system .flow-detail dl>div{display:block}.hero-system .flow-detail dd{margin-top:7px}.hero-system .flow-detail{min-height:0}}@media (width<=850px){.overview-facts .stat{padding:var(--space-5) 14px}.overview-facts .stat-value{font-size:30px}.forecast-workspace{grid-template-columns:1fr}.studio-result{min-height:0}.form-grid{gap:var(--space-5) 17px}.overview-demand{padding:25px var(--space-5)}.overview-demand .panel-heading h2{font-size:27px}.page-intro h1{font-size:41px}.battery-visual{gap:35px}.status-banner{flex-wrap:wrap}.status-banner>.badge{margin-left:65px}.service-row{flex-wrap:wrap;gap:14px}.service-row>div{flex-basis:calc(100% - 50px)}.service-row>.badge{margin-left:49px}.skeleton-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.sidebar{width:224px;transition:transform var(--duration) var(--ease);padding:36px 22px 22px;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.app-main{margin-left:0}.menu-button,.mobile-close{display:grid}.brand{font-size:21px}.brand small{font-size:var(--text-sm)}.brand-icon,.brand-icon svg{width:35px}.nav-link{font-size:var(--text-sm);min-height:49px}.topbar{gap:var(--space-4);height:61px;margin:0 22px}.topbar-right.has-operation .topbar-date{display:none}.main-content{padding:28px 22px 0}.page-intro{align-items:flex-start;gap:var(--space-5);margin-bottom:30px}.page-intro h1{font-size:42px}.page-intro p{font-size:var(--text-sm)}.topbar-date{font-size:10px}.hero-story h1{font-size:83px}.hero-story>p{font-size:13px}.overview-bottom{gap:25px}.overview-facts .stat-value{font-size:34px}.chart-tooltip{min-width:180px}.operation-status{font-size:10px}.metric-tooltip{width:min(235px,65vw)}}@media (width<=520px){.topbar{margin:0 var(--space-4);gap:var(--space-3)}.breadcrumb{font-size:var(--text-xs)}.topbar-right{gap:var(--space-2)}.topbar-date{font-size:10px}.operation-status{max-width:130px;font-size:10px}.main-content{padding:var(--space-6) var(--space-4) 0}.page-intro{flex-wrap:wrap;gap:18px;margin-bottom:27px}.page-intro h1{letter-spacing:-1.5px;margin-bottom:13px;font-size:38px}.page-intro p{font-size:var(--text-sm);max-width:340px}.button{min-height:44px;font-size:var(--text-sm);padding:11px var(--space-4)}.hero-story{padding-top:7px;display:block}.hero-story h1{letter-spacing:-4px;margin-bottom:22px;font-size:74px;line-height:1.03}.hero-story>p{max-width:310px;margin-bottom:23px;font-size:13px}.hero-feature{padding-top:var(--space-5);grid-template-columns:1fr 1fr;margin-top:28px}.hero-feature>span{font-size:var(--text-xs)}.hero-feature>strong{letter-spacing:-3px;font-size:55px}.hero-feature>p{font-size:10px;line-height:1.7}.hero-feature small{margin-left:6px;font-size:13px}.editorial-hero{gap:27px;margin-bottom:28px}.figure-heading h2{font-size:25px}.hero-system .flow-node,.system-map .flow-node{min-height:74px;padding:var(--space-1) 2px}.hero-system .flow-node.load,.system-map .flow-node.load{width:31%;min-height:92px;left:34.5%}.hero-system .flow-node>strong,.system-map .flow-node>strong{font-size:22px}.flow-node>strong small{margin-left:3px;font-size:9px}.node-symbol{width:22px;height:22px;margin-bottom:2px}.node-symbol svg{width:17px}.path-labels text{font-size:13px}.flow-canvas{margin-top:15px;margin-bottom:var(--space-5);aspect-ratio:600/420}.flow-drawing{height:93%;top:0}.flow-detail{padding-top:var(--space-4)}.flow-detail dl,.hero-system .flow-detail dl,.system-map .flow-detail dl{grid-template-columns:1fr;gap:10px}.flow-detail dl>div,.hero-system .flow-detail dl>div,.system-map .flow-detail dl>div{justify-content:space-between;align-items:center;gap:var(--space-3);border:0;padding:0;display:flex}.flow-detail dd,.hero-system .flow-detail dd,.system-map .flow-detail dd{margin:0;font-size:20px}.flow-detail dt,.flow-detail>p{font-size:var(--text-xs)}.flow-time{gap:6px;font-size:9px}.flow-time>span:last-child{text-align:right}.hour-picker{flex-direction:column;align-items:flex-start;gap:9px}.hour-picker select{width:100%;max-width:none;min-height:40px}.overview-facts{grid-template-columns:1fr;margin-bottom:28px}.overview-facts .stat,.overview-facts .stat:first-child{gap:0 var(--space-3);border-right:0;border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;padding:18px 0;display:grid}.overview-facts .stat:last-child{border-bottom:0}.overview-facts .stat-top{grid-area:1/1}.overview-facts .stat-value{text-align:right;grid-area:1/2/span 2;align-self:center;margin:0;font-size:37px}.overview-facts .stat-detail{grid-area:2/1;margin-top:7px;font-size:9px}.overview-facts .stat-icon{display:none}.overview-facts .stat .metric-tooltip{left:0;right:auto}.overview-demand{padding:22px var(--space-3) 18px;margin-bottom:28px}.overview-demand .panel-heading{flex-wrap:wrap;gap:14px}.overview-demand .panel-heading h2{font-size:28px}.panel-heading h2{font-size:var(--text-lg)}.panel-heading p{font-size:var(--text-xs)}.panel-foot{flex-direction:column;align-items:flex-start;gap:10px;font-size:9px;line-height:1.6}.overview-bottom{grid-template-columns:1fr;gap:28px;padding-top:10px}.reserve-editorial{gap:10px var(--space-5);grid-template-columns:1fr 1fr;align-items:center;display:grid}.reserve-editorial>.figure-heading{grid-column:1/-1;margin:0}.reserve-editorial>.battery-gauge{grid-area:2/1/span 2}.reserve-editorial>p{font-size:var(--text-xs);grid-area:2/2;align-self:end;margin:0}.reserve-editorial>.text-link{font-size:var(--text-xs);grid-area:3/2;place-self:start}.battery-gauge{max-width:190px}.gauge-reading strong{font-size:32px}.gauge-reading>span,.battery-gauge>p{font-size:9px}.insights-editorial{border-left:0;border-top:1px solid var(--border);padding:25px 0 0}.overview-bottom h2{font-size:26px}.savings-editorial{grid-column:1;padding:25px;display:block}.savings-editorial>svg{display:block}.savings-editorial h2{margin-bottom:var(--space-5);font-size:32px}.savings-editorial .stat-value{font-size:42px}.savings-editorial>.text-link{font-size:var(--text-sm)}.stat{padding:19px 13px}.stat-top{font-size:var(--text-xs);gap:5px}.stat-value{letter-spacing:-1px;margin:var(--space-5) 0 var(--space-3);font-size:29px}.stat-detail{font-size:9px}.stat-icon{width:17px}.stat-icon svg{width:13px}.stats-grid.four{margin-bottom:25px}.stat:nth-child(2n) .metric-tooltip{left:auto;right:0}.metric-tooltip{width:min(220px,68vw);font-size:var(--text-xs)}.panel{margin-bottom:25px;padding:23px 0}.panel-heading{gap:var(--space-3);margin-bottom:var(--space-5)}.panel-heading>.badge{max-width:125px;font-size:8px}.panel-heading .text-link{font-size:10px}.dashboard-grid{gap:25px;margin-bottom:25px}.section-heading{gap:var(--space-3);margin:23px 0 14px}.section-heading h2{font-size:13px}.section-heading .muted-text{text-align:right;max-width:140px;font-size:9px}.scenario-card{padding:17px var(--space-3);grid-template-columns:1fr;gap:7px}.scenario-card>svg{width:21px;margin-bottom:var(--space-1);grid-row:auto}.scenario-card strong{font-size:var(--text-sm)}.scenario-card>span{font-size:10px}.studio-result{padding:23px var(--space-5)}.studio-result .panel-heading h2{font-size:25px}.form-grid{gap:18px 13px}.field{font-size:var(--text-xs)}.field input,.field select{min-height:44px;padding:11px 10px;font-size:13px}.unit{margin-right:9px;font-size:10px}.hint{font-size:10px}.prediction-display>strong{font-size:67px}.recommendation{gap:11px}.recommendation strong,.recommendation p{font-size:var(--text-xs)}.forecast-controls{gap:15px var(--space-3)}.forecast-controls>.field{min-width:120px}.forecast-controls>.button{width:100%}.notice{font-size:var(--text-xs);gap:10px;padding:14px}.notice .text-link{font-size:var(--text-xs);margin-left:0}.empty{min-height:200px;padding:25px 7px}.empty.compact{min-height:180px}.empty strong{font-size:21px}.empty p,.table-wrap table{font-size:var(--text-xs)}.table-wrap th,.table-wrap td{padding:13px}.model-note{font-size:10px}.system-map{padding:22px 13px}.system-map .panel-heading h2{font-size:28px}.system-map>.field{max-width:none}.system-map .flow-detail{padding-top:17px}.system-map .energy-flow{gap:0}.system-map .flow-canvas{margin-bottom:var(--space-5)}.energy-workspace>.panel:last-child{padding:22px var(--space-4)}.battery-visual{align-items:center;gap:15px}.battery-body{width:180px;max-width:53%}.battery-info{gap:var(--space-4);max-width:140px}.battery-info strong{font-size:13px}.battery-info>span:not(.badge){font-size:10px}.battery-info .badge{font-size:8px}.battery-body .gauge-reading strong{font-size:29px}.optimization-banner{padding:var(--space-5) 0;gap:var(--space-3)}.optimization-banner>div{min-width:170px}.optimization-banner h2{font-size:13px;line-height:1.5}.optimization-banner p{font-size:var(--text-xs)}.optimization-banner>.badge{margin-left:50px}.optimization-workspace .form-grid{grid-template-columns:1fr}.optimization-actions{flex-direction:column;align-items:stretch;gap:18px}.optimization-actions p{font-size:var(--text-xs)}.optimization-actions>.button{width:100%}.switch-field{gap:var(--space-3)}.switch-field strong{font-size:var(--text-sm)}.switch-field small{font-size:10px}.tariff-strip{font-size:9px}.tariff-legend{gap:13px;font-size:10px}.savings-highlight{padding:25px var(--space-5);gap:var(--space-5);align-items:flex-start}.savings-highlight h2{font-size:24px}.savings-highlight strong{letter-spacing:-2px;font-size:43px}.savings-highlight p{font-size:10px}.savings-side>span:not(.badge){font-size:27px}.savings-side>.badge{font-size:8px}.cost-ledger>div{font-size:var(--text-xs)}.cost-ledger strong{max-width:53%}.page-validation .panel-heading h2{font-size:24px}.page-validation .panel-heading{flex-wrap:wrap}.page-validation>.notice{font-size:var(--text-xs)}.threshold-metrics strong{font-size:29px}.threshold-metrics span{font-size:var(--text-xs)}.confusion-grid>div{padding:15px}.confusion-grid span{font-size:10px}.status-banner{gap:var(--space-3);padding:22px 0}.status-banner h2{font-size:25px;line-height:1.25}.status-banner p{font-size:10px}.status-emblem{width:35px;height:35px}.status-emblem svg{width:26px}.status-banner>.badge{margin-left:47px}.service-row{gap:var(--space-3)}.service-row>div{flex-basis:calc(100% - 47px)}.service-row>.badge{margin-left:47px;font-size:9px}.service-row strong{font-size:var(--text-sm)}.service-row p{font-size:var(--text-xs)}.status-detail strong{font-size:var(--text-lg)}.status-detail p{font-size:var(--text-xs)}.activity-row{flex-wrap:wrap;gap:10px}.activity-row>div{flex-basis:calc(100% - 30px)}.activity-row>span{margin-left:28px}.activity-row strong{font-size:var(--text-sm)}.activity-row p{font-size:var(--text-xs)}.insight strong{font-size:var(--text-sm)}.insight p{font-size:var(--text-xs)}.chart-tooltip{min-width:180px;padding:11px var(--space-3)}.chart-tooltip-row{font-size:var(--text-xs)}.chart-tooltip-row strong{padding-left:var(--space-2)}.chart-tooltip-heading{font-size:10px}.chart-legend{gap:5px}.legend-toggle,.legend-label{padding:6px;font-size:10px}.text-link{font-size:var(--text-sm)}footer{gap:13px;font-size:8px}footer>span:last-child{text-align:right;max-width:175px}.flow-canvas{aspect-ratio:600/540}.flow-drawing{height:100%}.hero-system .node-title,.system-map .node-title{font-size:var(--text-xs)}.hero-system .node-caption,.system-map .node-caption{font-size:9px}.page-optimization .stats-grid .stat-value{letter-spacing:-.7px;font-size:22px}}@media (width<=360px){.savings-highlight{flex-direction:column}.savings-side{align-items:center;gap:var(--space-3);text-align:left;flex-wrap:wrap;display:flex}.savings-side p,.savings-side>.badge{margin:0}}.preview-notice{z-index:100;color:#59431b;background:#fff7e5;border:1px solid #9a7131;border-radius:12px;width:min(860px,100% - 32px);padding:12px 18px;font-size:13px;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0002}
