/* Interactive energy diagnostics — scoped, responsive, no inner scroll traps. */
#fbody[data-tab="flow"]{display:block;padding:4px 8px 22px;scrollbar-width:thin;scrollbar-color:#587477 transparent}
.edDashboard{max-width:1760px;margin:0 auto;color:#e6eeeb;font:13px/1.5 system-ui,'Segoe UI',sans-serif;--ed-gold:#e7c795;--ed-mint:#9de0c2;--ed-line:#3b565e}
.edDashboard *,.edDashboard *::before,.edDashboard *::after{box-sizing:border-box}
.edDashboard button,#edLocator button{font:inherit;color:inherit;cursor:pointer;border:1px solid #58767c;border-radius:8px;background:#213b44;padding:9px 13px;min-height:40px;touch-action:manipulation}
.edDashboard button:hover,#edLocator button:hover{border-color:#b6d5c6;background:#2b4850}
.edDashboard :focus-visible,#edLocator :focus-visible{outline:3px solid #edd09d;outline-offset:3px}
.edDashboard button:disabled{opacity:.4;cursor:default}
.edHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin:12px 0 22px}
.edEyebrow,.edStep{font-size:10px;font-weight:750;letter-spacing:.14em;color:#d8be93}
.edHeader h2{font-size:clamp(25px,2.6vw,38px);letter-spacing:-.04em;line-height:1.15;margin:8px 0 12px}
.edHeader p{font-size:13px;color:#a9c0c3;max-width:670px;margin:0}
.edQuickActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.edQuickActions button{font-size:11px;border-color:#8c977a;background:#31483e;color:#dfebd3}
.edHeaderAside{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}
.edHeaderAside>div{display:flex;gap:8px;flex-wrap:wrap}
.edHeaderAside small{color:#9cb5b9;font-size:11px}
.edHeaderAside button{font-size:11px}
.edState{padding:6px 11px;border:1px solid #587862;border-radius:7px;color:#bce6cb;background:#213b32;font-weight:700;font-size:12px}
.edState.edBad{color:#ffd6ba;border-color:#b17959;background:#493b31}
.edState.edWarn{color:#f1d5a0;border-color:#957e50;background:#3b3b2e}
.edMetrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 20px}
.edMetric{min-width:0;padding:15px;border:1px solid var(--ed-line);border-radius:10px;background:linear-gradient(145deg,#243b42,#192d36);display:flex;flex-direction:column;gap:5px}
.edMetric>span{font-size:11px;color:#b5c9c9}
.edMetric>strong{font-size:clamp(20px,1.7vw,28px);line-height:1.3;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:#f1e9d7}
.edMetric>small{font-size:10px;line-height:1.5;color:#91aeb4}
.edMetric.edWarn{border-color:#9a7e52;background:linear-gradient(150deg,#3d4032,#21353b)}
.edFlow{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr);gap:10px;align-items:stretch}
.edDashboard .edNode{position:relative;display:flex;flex-direction:column;text-align:left;padding:22px;background:radial-gradient(ellipse at top left,#314a48,#192f38 70%);border:1px solid #668b82;border-radius:13px;min-width:0;color:#e2eeea;box-shadow:0 8px 28px #05151a28}
.edDashboard .edNode[data-ed-stage="grid"]{border-color:#5a8396;background:radial-gradient(ellipse at top left,#2d4757,#192f38 70%)}
.edDashboard .edNode.edBad{border-color:#ba895e}
.edNode>strong{font-size:clamp(27px,2.5vw,41px);line-height:1.2;letter-spacing:-.045em;color:#cff0db;margin:14px 0 4px;font-variant-numeric:tabular-nums}
.edNode[data-ed-stage="grid"]>strong{color:#c8e7f1}
.edNode h3{margin:0 0 14px;font-size:13px;font-weight:600;color:#c9d9d8}
.edNode>small{margin-top:auto;padding-top:14px;color:#dfc79b;font-size:11px}
.edConnector{display:grid;place-items:center;font-size:27px;color:#b4c6b4;align-self:center}
.edBar{height:8px;display:flex;overflow:hidden;flex:none;border-radius:6px;background:#0b212a;margin:0 0 17px}
.edBar i{height:100%;min-width:0}
.edBar .firm{background:#d4b681}.edBar .solar{background:#ecc453}.edBar .wind{background:#88c7b2}.edBar .battery{background:#a39fd5}.edBar .grid{background:#91b8cd}.edBar .import{background:#ead3a1}.edBar .served{background:#9ae0bd}
.edPair{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:7px 0;border-bottom:1px solid #36515b;font-size:12px}
.edPair>span{color:#aac2c5;min-width:0}
.edPair>b{font-size:12px;font-variant-numeric:tabular-nums;flex-shrink:0;text-align:right;font-weight:650}
.edNode .edPair{font-size:11px;gap:10px}
.edNode .edPair b{font-size:12px}
.edFlowNote{font-size:11px;line-height:1.6;color:#9eb7bc;margin:12px 2px 24px;max-width:1250px}
.edLower{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(0,1.25fr);gap:20px;align-items:start}
.edIssues,.edDetail{min-width:0;border:1px solid #3c5961;border-radius:12px;background:#152a33;overflow:hidden}
.edIssues{padding:18px}
.edSectionTitle{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 14px}
.edSectionTitle h3{font-size:16px;margin:0;letter-spacing:-.015em}
.edSectionTitle>span{border-radius:6px;background:#2b4248;padding:3px 9px;font-size:11px;color:#dac498}
.edIssue{padding:14px;margin:0 0 12px;border:1px solid #5c605b;border-left:3px solid #cf9b63;border-radius:8px;background:linear-gradient(115deg,#343b35,#1b3039)}
.edIssue:last-child{margin-bottom:0}
.edIssue.bad{border-left-color:#eda77f}
.edIssue.info{border-left-color:#93becd;background:#1d353e}
.edIssueSeverity{font-size:9px;letter-spacing:.12em;font-weight:800;color:#d4b180}
.edIssue.bad .edIssueSeverity{color:#f5b392}.edIssue.info .edIssueSeverity{color:#9fced7}
.edIssue h4{font-size:14px;margin:5px 0 6px;line-height:1.35}
.edIssue p{font-size:12px;line-height:1.55;color:#b6c9c9;margin:0 0 12px}
.edIssue>div{display:flex;gap:8px;flex-wrap:wrap}
.edIssue button{font-size:11px;min-height:36px;padding:7px 11px}
.edIssue button[data-ed-issue]{border-color:#958360;color:#ead3a8;background:#384239}
.edTabs{display:flex;flex-wrap:wrap;gap:7px;padding:14px;border-bottom:1px solid #3d5860;background:#1b323b}
.edDashboard .edTabs button{font-size:11px;padding:8px 10px;border-color:#46616b;background:#203943;flex:1 1 auto}
.edDashboard .edTabs button.on{color:#f0d9b3;border-color:#d3b680;background:#3b473d}
.edDetailBody{padding:18px}
.edDetailIntro,.edNote{font-size:12px;line-height:1.6;color:#a8c0c5;margin:0 0 16px}
.edBatteryStats{border:1px solid #5c6184;border-radius:8px;padding:8px 12px;background:#2a3545;margin-bottom:12px}
.edEmpty{padding:22px;border:1px dashed #536e75;border-radius:8px;color:#b4caca;font-size:13px;line-height:1.7}
.edTableHead,.edDashboard .edAsset{display:grid;grid-template-columns:minmax(0,1fr) minmax(78px,.26fr) minmax(85px,.28fr);gap:12px;align-items:center;text-align:left}
.edTableHead{padding:8px 12px;color:#809fa7;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.edTableHead>span:not(:first-child){text-align:right}
.edDashboard .edAsset{width:100%;min-width:0;padding:12px;margin-bottom:8px;border:1px solid #3c5964;border-radius:8px;background:#1c323c;color:#d8e7e6;font-size:12px}
.edAsset>span:first-child{display:grid;gap:4px;min-width:0}
.edAsset b{font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.edAsset small{font-size:10px;color:#97b4bd;line-height:1.45}
.edAsset>span:nth-child(2),.edAsset>strong{font-size:12px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.edAsset>strong{color:#c8e4d6}
.edPagination{display:flex;gap:8px;align-items:center;margin-top:12px}
.edPagination>span{margin-right:auto;font-size:11px;color:#9fb6bd}
.edPagination button{min-width:40px}
#edLocator{position:fixed;z-index:925;left:50%;top:155px;transform:translateX(-50%);max-width:calc(100vw - 32px);width:max-content;display:flex;gap:22px;align-items:center;padding:16px 20px;border:1px solid #98cebb;border-radius:12px;background:#112932f5;color:#deede7;box-shadow:0 12px 36px #0007;font:12px/1.5 system-ui,sans-serif;backdrop-filter:blur(10px)}
#edLocator[hidden],body:has(#finM:not(.hidden)) #edLocator{display:none}
#edLocator>div:first-child{display:grid;gap:3px;min-width:0}
#edLocator small{font-size:9px;letter-spacing:.12em;color:#b0d4bd}
#edLocator strong{font-size:15px;overflow-wrap:anywhere}
#edLocator span{color:#a5c1c9;font-size:11px}
.edLocatorActions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
#edLocator button{font-size:11px}
@media(max-width:1400px){.edNode .edPair{flex-wrap:wrap;gap:3px}.edNode .edPair b{margin-left:auto}.edDashboard .edNode{padding:18px}.edLower{grid-template-columns:minmax(300px,.85fr) minmax(0,1.2fr)}}
@media(max-width:1100px){.edMetrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.edLower{grid-template-columns:1fr}.edHeader{gap:16px}.edHeader h2{font-size:28px}.edFlow{gap:5px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr)}.edDashboard .edNode{padding:14px}.edNode h3{font-size:12px}.edNode>strong{font-size:28px}.edStep{font-size:8px}.edHeaderAside{flex-shrink:1}.edHeaderAside>div{justify-content:flex-end}#edLocator{top:125px;flex-wrap:wrap;gap:12px}}
@media(max-width:700px){.edHeader{display:block}.edHeaderAside{align-items:flex-start;margin-top:16px}.edHeaderAside>div{justify-content:flex-start}.edMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.edMetric{padding:12px}.edMetric strong{font-size:22px}.edFlow{grid-template-columns:1fr;gap:7px}.edConnector{transform:rotate(90deg);height:24px}.edDashboard .edNode{padding:18px}.edNode .edPair{flex-wrap:nowrap}.edStep{font-size:9px}.edIssues,.edDetailBody{padding:12px}.edFlowNote{font-size:11px}.edTableHead,.edDashboard .edAsset{grid-template-columns:minmax(0,1fr) 65px 70px;gap:7px;padding:10px 8px}.edAsset>span:nth-child(2),.edAsset>strong{font-size:11px}.edTableHead{font-size:9px}.edAsset b{font-size:11px}#edLocator{top:100px;width:calc(100vw - 24px);padding:12px;gap:10px}.edLocatorActions{flex-shrink:1}#edLocator button{font-size:10px;min-height:36px}}
@media(prefers-reduced-motion:reduce){.edDashboard *{scroll-behavior:auto!important;transition:none!important}}
