.aria-scope{min-width:0}.aria-parks .aria-head{align-items:flex-start}.aria-parks h1{letter-spacing:-.03em;font-size:28px;font-weight:600}.aria-pills{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.aria-pill{color:#1d4f86;background:#e8f1fb;border-radius:999px;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.aria-pill.influx{color:#8a5a10;background:#fff4d6}.aria-pill.live{color:#1c7a3a;background:#e5f6ea}.aria-plate{color:#3d4d63;background:#f3f6fa;border-radius:999px;align-items:center;min-height:22px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.aria-parks .aria-search{width:min(280px,100%);position:relative}.aria-parks .aria-search .ico{color:var(--t3);position:absolute;top:8px;left:10px}.aria-parks .aria-search .inp{background:#fff;border-radius:999px;width:100%;padding-left:32px}.aria-parks .aria-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.aria-parks .kpi-row{display:contents}.aria-parks .kpi-chip,.aria-parks .aria-kpi,.aria-parks .kpi-chip.pv,.aria-parks .kpi-chip.acc,.aria-parks .kpi-chip.n,.aria-parks .kpi-chip.ok,.aria-parks .kpi-chip.warn,.aria-parks .kpi-chip.err{background:#fff;border:1px solid #11182714;border-radius:16px;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ico text""meter meter";align-items:center;gap:2px 10px;width:auto;min-width:0;margin:0;padding:14px 14px 12px;display:grid;box-shadow:0 1px 2px #1018280a}.aria-parks .kpi-chip .bd,.aria-parks .aria-kpi .bd{background:#eef3f8;border-radius:12px;grid-area:ico;width:36px;height:36px}.aria-parks .kpi-chip.pv .bd{background:#fff4df}.aria-parks .kpi-chip.acc .bd{background:#e7f1fb}.aria-parks .kpi-chip.err .bd,.aria-parks .aria-kpi.err .bd{background:#fde8e4}.aria-parks .kpi-chip>div,.aria-parks .aria-kpi>div{flex-direction:column;grid-area:text;min-width:0;display:flex}.aria-parks .kpi-chip .lab,.aria-parks .aria-kpi .lab{color:var(--t3);font-size:12px}.aria-parks .kpi-chip .val,.aria-parks .aria-val{letter-spacing:-.03em;color:var(--t1);overflow-wrap:anywhere;font-family:IBM Plex Mono,monospace;font-size:20px;font-weight:500}.aria-parks td a{white-space:nowrap}.aria-meter{background:#e7edf3;border-radius:4px;grid-area:meter;height:4px;margin-top:8px;display:block}.aria-meter[data-known=yes]{background:#1f9d55}.aria-parks .kpi-chip.warn .aria-meter[data-known=yes],.aria-parks .aria-kpi.warn .aria-meter[data-known=yes]{background:#e09a2b}.aria-parks .kpi-chip.err .aria-meter[data-known=yes]{background:#d4533c}.aria-parks .kpi-chip.n .aria-meter{background:#e7edf3}.aria-parks .aria-filters{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.aria-parks .chip{background:#fff;border-radius:999px}.aria-parks .chip.on{color:#1d4f86;background:#e8f1fb;border-color:#0000}.aria-parks .aria-table{border-radius:16px;padding:6px 8px 8px;box-shadow:0 1px 2px #1018280a}.aria-parks .aria-table th{font-size:12px}.aria-parks .park-name{font-weight:600}.aria-parks .aria-spark{color:#1f9d55;font-weight:600}.aria-parks .pill{border-radius:999px;padding:3px 8px}.aria-prez h1{letter-spacing:-.03em;font-size:28px;font-weight:600}.aria-prez .ph{flex-direction:column;gap:0;display:flex}.aria-prez .ph-l{width:100%}.aria-prez .prez-kpis{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:10px;width:100%;min-width:0;margin:0 0 16px;display:grid}.aria-prez .prez-kpis>.kc{min-width:0;height:100%}.aria-prez .kc .kv{white-space:normal;overflow-wrap:anywhere;line-height:1.15}.aria-prez .kc .kd{overflow-wrap:anywhere;font-size:11px;line-height:1.35}.aria-prez .prez-warn{color:var(--t2);background:#fff;border:1px solid #11182714;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:8px 12px;font-size:13px;display:flex}.aria-prez .prez-warn.w{color:#9a5b05;background:#fff8eb;border-color:#f3dfb4}.aria-prez .prez-warn-ico{color:#9a5b05;background:#f3dfb4;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:grid}.aria-prez .prez-warn-line{flex:1;min-width:0}.aria-prez .prez-warn summary{cursor:pointer;width:fit-content;font-size:12px;font-weight:500}.aria-prez .prez-warn .sub{margin-top:6px}.aria-prez .prez-spark{width:100%;height:32px;display:block}.aria-prez .prez-power{margin-bottom:16px}.aria-prez .prez-plot{width:100%;min-width:0;height:440px}.aria-prez .kpi-body{display:none}.aria-prez .tabs{border-bottom:0;gap:8px;margin:4px 0 8px}.aria-prez .tabs a{color:var(--t2);background:#fff;border:1px solid #11182714;border-radius:999px;margin:0;padding:6px 12px}.aria-prez .tabs a.active{color:#fff;background:#1e293b;border-color:#1e293b;font-weight:500}.aria-prez .kc{background:#fff;border-radius:16px;flex-direction:column;align-items:stretch;gap:4px;padding:14px 14px 12px;display:flex;box-shadow:0 1px 2px #1018280a}.aria-prez .kc .hd{align-items:center;gap:8px;margin:0;display:flex}.aria-prez .kc .bd{border-radius:10px;flex:none;width:28px;height:28px}.aria-prez .kc.pv .bd{background:#fff4df!important}.aria-prez .kc.acc .bd{background:#e7f1fb!important}.aria-prez .kc.ok .bd{background:#e5f6ea!important}.aria-prez .kc.err .bd{background:#fde8e4!important}.aria-prez .kc.bess .bd{background:#e5f6ea!important}.aria-prez .eq-flow{flex-flow:column;align-items:stretch;gap:12px;margin-top:8px;display:flex}.aria-prez .eq-chain,.aria-prez .eq-step{flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0;display:flex}.aria-prez .eq-node{text-align:center;flex-direction:column;flex:132px;align-items:center;gap:2px;min-width:0;max-width:180px;display:flex}.aria-prez .eq-node img{object-fit:contain;width:84px;height:84px}.aria-prez .eq-link{color:var(--t3);font-size:12px;line-height:1.3}.aria-prez .eq-warn{color:#9a5b05;background:#fff8eb;border:1px solid #f3dfb4;border-radius:10px;width:100%;padding:8px 10px;font-size:13px}.aria-prez .eq-missing{color:#9a5b05}.aria-prez .kc .aria-lab{color:var(--t3);font-size:12px;font-weight:500}.aria-prez .kc .kv{letter-spacing:-.03em;font-size:22px;font-weight:500}.aria-prez .kc .kv.neg{color:#c2412d}.aria-prez .kc .kd{margin-top:auto}.aria-prez .card{border-radius:16px;box-shadow:0 1px 2px #1018280a}.aria-prez .meas{grid-template-columns:1fr 1fr;gap:0 28px}.aria-prez .aria-metric{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;min-width:0;padding:8px 0;display:flex}.aria-prez .aria-metric .k{flex:90px;min-width:0}.aria-prez .aria-read{align-items:baseline;gap:10px;margin-left:auto;display:flex}.aria-prez .aria-metric .kv{font-size:16px}.aria-fee-row{flex-wrap:wrap;align-items:baseline;gap:8px 12px;display:flex}.aria-prez .aria-fee-row{flex-direction:column;align-items:flex-start;gap:6px}.aria-prez .aria-fee-row .kv{font-size:26px}@media (width<=1099px){.aria-prez .prez-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.aria-prez .prez-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.aria-prez .prez-plot{height:320px}}@media (width<=720px){.aria-parks h1,.aria-prez h1{font-size:22px}.aria-parks .aria-kpis,.aria-prez .meas{grid-template-columns:minmax(0,1fr)}.aria-parks .aria-search{width:100%}}@media (width<=480px){.aria-prez .prez-kpis{grid-template-columns:minmax(0,1fr)}.aria-prez .prez-plot{height:280px}.aria-prez .eq-node{flex-basis:100%;max-width:none}}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f7fa;--s1:#fff;--s2:#f8f9fa;--line:#11182714;--t1:#111827;--t2:#4b5565;--t3:#6b7487;--pv:#d4920a;--grid:#55657a;--load:#8b5cf6;--bess:#22a35a;--wind:#0fa3b1;--ok:#2f8a4e;--warn:#c27a12;--err:#c2412d;--acc:#1e81ce;--acc-d:#1668a8}body{background:var(--bg);color:var(--t1);font:400 13px/1.45 IBM Plex Sans,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.mono,.num,td.r{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}.app{min-height:100vh;display:flex}.side{background:var(--s1);border-right:1px solid var(--line);flex-direction:column;flex:none;width:232px;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0;overflow:auto}.logo{align-items:center;gap:10px;padding:0 8px 24px;font-size:15px;font-weight:600;display:flex}.logo img{width:24px;height:24px}.nl{color:var(--t3);padding:16px 8px 8px;font-size:11px}.ni{height:34px;color:var(--t2);border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:0 8px;display:flex}.ni:hover{background:var(--s2)}.ni.active{color:var(--t1);background:#eef2f6;font-weight:500}.ni.active .ico{color:var(--acc-d)}.ni .c{color:var(--t3);margin-left:auto;font-family:IBM Plex Mono;font-size:11px}.ni .c.e{color:var(--err)}.ico{stroke:currentColor;fill:none;stroke-width:1.5px;flex:none;width:16px;height:16px}.user{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding:12px 8px;font-size:12px;display:flex}.av{background:#e3e6e9;border-radius:14px;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-weight:500;display:grid}.main{flex:1;min-width:0;padding:24px 28px}.top{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}h1{font-size:20px;font-weight:500}h2{font-size:15px;font-weight:500}.sub{color:var(--t3);font-size:12px}.sp{flex:1}.crumb{color:var(--t3);margin-bottom:6px;font-size:12px}.crumb a:hover{color:var(--acc-d)}.btn{border:1px solid var(--line);background:var(--s1);height:32px;color:var(--t2);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:inline-flex}.btn:hover{border-color:#11182733}.btn.p{background:var(--acc-d);color:#fff;border-color:var(--acc-d)}.btn.d{color:var(--err)}.btn.dp{background:var(--err);color:#fff;border-color:var(--err)}.btn:disabled{opacity:.5;cursor:not-allowed}.ibtn{justify-content:center;gap:0;width:28px;height:28px;padding:0}.act-col{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0;display:flex}.seg{background:#e9ebed;border-radius:8px;padding:2px;display:inline-flex}.seg button{color:var(--t2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 12px;font-size:12px}.seg button.on{color:var(--acc-d);background:#fff;box-shadow:0 1px 2px #0000000f}.card{background:var(--s1);border:1px solid var(--line);border-radius:12px;padding:20px}.ct{align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:500;display:flex}.ct .sub{margin-left:auto;font-weight:400}.dot{border-radius:4px;flex:none;width:8px;height:8px;display:inline-block}.chip{border:1px solid var(--line);background:var(--s1);height:30px;color:var(--t2);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:inline-flex}.chip b{color:var(--t1);font-family:IBM Plex Mono;font-weight:500}.chip.on{color:var(--acc-d);background:#eaf2fa;border-color:#1e81ce40}.tag{color:var(--t2);background:#eef0f2;border-radius:4px;margin-right:4px;padding:1px 6px;font-size:11px}.k{color:var(--t3);font-size:12px}.kv{font-variant-numeric:tabular-nums;letter-spacing:-.5px;font-family:IBM Plex Mono;font-size:24px;font-weight:500}.kv small{color:var(--t3);letter-spacing:0;margin-left:4px;font-size:12px;font-weight:400}.kd{color:var(--t3);margin-top:4px;font-size:11px}table{border-collapse:collapse;width:100%}th{color:var(--t3);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 12px;font-size:11px;font-weight:400}td{border-bottom:1px solid var(--line);height:44px;padding:0 12px;font-size:13px}td.r,th.r{text-align:right}tr.click{cursor:pointer}tr.click:hover td{background:var(--s2)}.st{align-items:center;gap:6px;font-size:12px;display:inline-flex}.ok{color:var(--ok)}.warn{color:var(--warn)}.err{color:var(--err)}.grid{gap:16px;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=1100px){.g4{grid-template-columns:repeat(2,1fr)}.g3,.g2{grid-template-columns:1fr}}.tabs{border-bottom:1px solid var(--line);gap:20px;margin-bottom:20px;display:flex}.tabs a,.tabs span{color:var(--t2);border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0;font-size:13px}.tabs a.active{color:var(--t1);border-color:var(--t1);font-weight:500}.tabs .off{color:var(--t3);cursor:not-allowed}.kc{border:1px solid;border-radius:12px;padding:16px}.kc .hd{align-items:center;gap:10px;margin-bottom:12px;font-size:12px;font-weight:500;display:flex}.kc .bd{border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid;box-shadow:inset 0 0 0 1px #ffffff80}.kc.pv{background:#fff8eb;border-color:#f3dfb4}.kc.pv .bd{background:#f9e8bd}.kc.pv .hd{color:#9a6400}.kc.acc{background:#eef5fc;border-color:#cfe1f3}.kc.acc .bd{background:#dcecf9}.kc.acc .hd{color:var(--acc-d)}.kc.ok{background:#edf8f1;border-color:#c8e8d4}.kc.ok .bd{background:#d4efdf}.kc.ok .hd{color:#1f7a3f}.kc.err{background:#fdf0ee;border-color:#f3cfc8}.kc.err .bd{background:#f8ddd5}.kc.err .hd{color:#a3311f}.kc.bess{background:#eef9f2;border-color:#c8ead5}.kc.bess .bd{background:#d4efdf}.kc.bess .hd{color:#1a7e45}.kc.wind{background:#ecf8f9;border-color:#c3e8ec}.kc.wind .bd{background:#d2eff1}.kc.wind .hd{color:#0b7b86}.ak{border:1px solid var(--line);border-radius:12px;padding:14px 16px}.ak .k{font-size:12px}.ak .kv{font-size:28px}.bar{background:#eef0f2;border-radius:5px;height:10px;margin:14px 0 6px;position:relative}.bar>i{background:var(--pv);border-radius:5px;position:absolute;top:0;bottom:0;left:0}.bar>b{width:2px;position:absolute;top:-4px;bottom:-4px}.banner{color:var(--t2);background:var(--s2);border:1px solid var(--line);border-radius:8px;margin-bottom:16px;padding:8px 12px;font-size:12px}.banner.w{color:#7a4f00;background:#fff8eb;border-color:#f3dfb4}.pill{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;display:inline-block}.pill.ok{color:#1f7a3f;background:#e9f7ee}.pill.warn{color:#9a5b05;background:#fff4e0}.pill.err{color:#b2321f;background:#fdecea}.pill.n{color:var(--t2);background:#eef0f2}.modal-bg{z-index:50;background:#11182759;place-items:center;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:520px;max-width:94vw;padding:24px;box-shadow:0 20px 60px #0003}.modal h2{margin-bottom:12px}.modal .row{border-bottom:1px solid var(--line);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.modal .acts{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.inp{background:#fff;border:1px solid #11182726;border-radius:8px;min-width:0;height:32px;padding:0 10px}label.f{color:var(--t3);flex-direction:column;gap:4px;font-size:12px;display:flex}.flow{justify-content:space-around;align-items:center;gap:8px;padding:8px 0;display:flex;position:relative}.flow .n,.flow-n{text-align:center;color:var(--t2);min-width:88px;font-size:12px}.flow .n img{object-fit:contain;height:84px;margin:0 auto 6px;display:block}.flow .n b,.flow-n b{margin-top:2px;font-family:IBM Plex Mono;font-weight:500;display:block}.flow .arr{background:repeating-linear-gradient(90deg,var(--pv) 0 6px,transparent 6px 10px);flex:1;max-width:90px;height:2px}.flow-badge{background:color-mix(in srgb,var(--equipment-color) 12%,white);border:1px solid color-mix(in srgb,var(--equipment-color) 18%,white);border-radius:18px;place-items:center;width:64px;height:64px;margin:0 auto 8px;display:grid}.flow-lab{color:var(--t2);font-size:12px}.flow-link{background:repeating-linear-gradient(90deg,var(--flow-c,var(--pv)) 0 6px,transparent 6px 10px);flex:1;min-width:28px;max-width:96px;height:2px;position:relative;overflow:visible}.flow-link.on:before,.flow-link.on:after{content:"";background:var(--flow-c,var(--pv));border-radius:50%;width:7px;height:7px;margin-top:-3.5px;animation:2.4s linear infinite flow-dot;position:absolute;top:50%;box-shadow:0 0 0 2px #ffffffd9}.flow-link.on:after{animation-delay:1.2s}@keyframes flow-dot{0%{opacity:0;left:-4px}12%{opacity:1}88%{opacity:1}to{opacity:0;left:calc(100% - 3px)}}.picto{color:inherit;display:block}.picto-sun .picto-rays{animation:6s ease-in-out infinite picto-pulse}.picto-glow{animation:6s ease-in-out infinite picto-glow}@keyframes picto-glow{0%,to{opacity:.1}50%{opacity:.2}}.picto-wind .picto-blade{transform-origin:32px 24px;animation:12s linear infinite picto-spin}.picto-battery .picto-batt{animation:5s ease-in-out infinite picto-pulse}@keyframes picto-spin{to{transform:rotate(360deg)}}@keyframes picto-pulse{0%,to{opacity:.7}50%{opacity:1}}.kpi-row{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.kpi-chip{background:var(--s1);border:1px solid;border-radius:12px;align-items:center;gap:10px;min-width:140px;padding:8px 12px;display:inline-flex}.kpi-chip .bd{border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid}.kpi-chip .lab{color:var(--t3);font-size:11px}.kpi-chip .val{font-family:IBM Plex Mono;font-size:15px;font-weight:500}.kpi-chip.pv{background:#fff8eb;border-color:#f3dfb4}.kpi-chip.pv .bd{background:#f9e8bd}.kpi-chip.acc{background:#eef5fc;border-color:#cfe1f3}.kpi-chip.acc .bd{background:#dcecf9}.kpi-chip.ok{background:#edf8f1;border-color:#c8e8d4}.kpi-chip.ok .bd{background:#d4efdf}.kpi-chip.warn{background:#fff8eb;border-color:#f3dfb4}.kpi-chip.warn .bd{background:#f9e8bd}.kpi-chip.err{background:#fdf0ee;border-color:#f3cfc8}.kpi-chip.err .bd{background:#f8ddd5}.foot{color:var(--t3);margin-top:12px;font-size:11px}.tl{border:1px solid var(--line);border-radius:6px;height:28px;display:flex;overflow:hidden}.tl>div{color:#fff;white-space:nowrap;place-items:center;font-size:11px;display:grid;overflow:hidden}select.park-switch{font:inherit;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;max-width:min(420px,70vw);margin:-2px 0;padding:2px 6px 2px 0;font-size:20px;font-weight:500}select.park-switch:hover,select.park-switch:focus{border-color:var(--line);background:var(--s1);outline:none}.tr-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin:-4px 0 12px;display:flex}.tr-wrap{flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:relative}.tr-pop{background:var(--s1);border:1px solid var(--line);z-index:30;border-radius:12px;gap:8px;min-width:280px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #11182714}.recharts-legend-wrapper,.recharts-legend-item,.recharts-legend-item-text{cursor:pointer}.login{background:#2a2118;min-height:100vh;position:relative}.login-hero{position:absolute;inset:0;overflow:hidden}.login-hero img{object-fit:cover;width:100%;height:100%;display:block}.login-panel{z-index:1;box-sizing:border-box;justify-content:flex-end;align-items:center;width:100%;min-height:100vh;padding:40px 56px;display:flex;position:relative}.login-card{-webkit-backdrop-filter:blur(18px);background:#ffffff94;border:1px solid #ffffff9e;border-radius:18px;flex-direction:column;gap:14px;width:360px;padding:26px 26px 24px;display:flex;box-shadow:0 16px 48px #1118272e}.login-card .inp{background:#ffffffd1}.login-card .banner{background:#ffffff6b;border-color:#ffffff80}.login-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000,#120e0a61);height:160px;position:absolute;inset:auto 0 0}.login-foot{z-index:2;color:#ffffffeb;text-shadow:0 1px 10px #0006;pointer-events:none;max-width:min(560px,100% - 480px);font-size:12px;line-height:1.4;position:absolute;bottom:28px;left:40px}.login-foot b{letter-spacing:.01em;margin-bottom:3px;font-size:14px;font-weight:500;display:block}.login-foot span{opacity:.88}@media (width<=720px){.login-panel{justify-content:center;padding:24px}.login-foot{max-width:calc(100% - 40px);bottom:16px;left:20px}}@media (prefers-reduced-motion:reduce){.picto *,.flow-link:before,.flow-link:after{animation:none!important}}.ef{aspect-ratio:1;width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.ef-line{stroke:#b4bcc6;stroke-width:1.5px;stroke-dasharray:4 5;fill:none}.ef-lbl{fill:#2b3440;text-anchor:middle;font-size:16px;font-weight:600}.ef-val{fill:#2b3440;text-anchor:middle;font-family:IBM Plex Mono;font-size:15px}.ef-sub{fill:#6b7582;text-anchor:middle;font-size:12px}@media (prefers-reduced-motion:reduce){.ef-comet{display:none}}.split{grid-template-columns:var(--cols)}@media (width<=900px){.split{grid-template-columns:minmax(0,1fr)}.split>*{grid-column:auto!important}.ef{max-width:min(100%,520px)}}@media (width<=760px){.app{flex-direction:column}.side{z-index:20;border-right:0;border-bottom:1px solid var(--line);flex-flow:row;align-items:center;gap:4px;width:auto;height:auto;padding:8px 10px;position:sticky;top:0;overflow-x:auto}.side .logo{flex:none;padding:0 8px 0 0}.side .ni{white-space:nowrap;flex:none;margin:0}.side .nl{display:none}.side .user{border:0;flex:none;margin:0 0 0 auto;padding:0 0 0 8px}.side .user>div:nth-child(2){display:none}.main{padding:14px 12px}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-width:0}.card:has(table){overflow-x:auto}}@media (width<=420px){.g4{grid-template-columns:minmax(0,1fr)}}.tabs{scrollbar-width:none;overflow-x:auto}.tabs a,.tabs span{white-space:nowrap}@media (width<=1100px){.main{padding:18px 16px}.card{min-width:0}.card:has(table){overflow-x:auto}}@media (width<=760px){.card{padding:14px}.card table{min-width:520px}.top h1{font-size:18px}.inp,select{max-width:100%}}.grid>*,.main>*{min-width:0}.seg{flex-wrap:wrap;max-width:100%}@media (width<=760px){.top>*{min-width:0;max-width:100%}.card .recharts-responsive-container{min-width:0}}.ph{align-items:flex-start;gap:20px;display:flex}.ph-l{flex:1;min-width:0}.ph>.kpi-head{flex:1.2;min-width:0;margin-bottom:20px}.meas{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@media (width>=1280px){.kpi-body{display:none}}@media (width<=1279px){.ph{display:block}.kpi-head{display:none}}.kc .kv,.fee-leg span{white-space:nowrap}@media (width<=1879px){.ph>.kpi-head{grid-template-columns:repeat(2,minmax(0,1fr))}}.fee-leg{flex-wrap:wrap;gap:4px 12px;display:none}@media (width<=1599px){.fee-pos{display:none}.fee-leg{display:flex}}.emskv{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;margin:0;font-size:13px;display:grid}.emskv>dt{min-width:0;color:var(--t2)}.emskv>dd{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;margin:0;font-family:IBM Plex Mono}@media (width<=420px){.emskv{grid-template-columns:minmax(0,1fr)}.emskv>dd{text-align:left;margin-bottom:6px}}.ef-motion-control{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ef-motion[data-reduced-motion=true] .ef-comet,.ef-motion[data-motion=off] .ef-comet{display:none}.ef-motion[data-motion=on] .ef-comet{display:inline}.weather-card table{min-width:0}.weather-card td{overflow-wrap:anywhere;padding:0 8px}.ef.ef-pv{aspect-ratio:800/480}.flow-card{align-self:start}.cal-grid>.btn{text-align:center;flex-wrap:wrap;gap:0 2px;min-width:0;padding:0 2px;line-height:1.1}@media (width<=760px){.card table.alarm-table{min-width:0}.alarm-table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.alarm-table,.alarm-table tbody,.alarm-table tr,.alarm-table td{width:100%;display:block}.alarm-table tr{border-bottom:1px solid var(--line);padding:6px 0}.alarm-table td{overflow-wrap:anywhere;text-align:left;border:0;height:auto;padding:4px 8px}.alarm-table td.r{text-align:left}.alarm-table td[data-label]{grid-template-columns:88px minmax(0,1fr);gap:8px;display:grid}.alarm-table td[data-label]>*{grid-column:2;justify-self:start;max-width:100%}.alarm-table td[data-label]:before{content:attr(data-label);color:var(--t3);font-size:11px}.alarm-table td:not([data-label]):empty{display:none}.alarm-table td[data-label]:empty:after{content:"—";grid-column:2}}.weather-card{align-self:start}.pin-field{min-width:0;color:var(--t3);border:0;font-size:12px}.pin-field legend{margin-bottom:8px}.pin-digits{justify-content:center;gap:10px;display:flex}.pin-digits .inp{text-align:center;width:46px;height:48px;padding:0;font-size:24px}.weather-cloud-title{color:var(--t3);margin-top:6px;font-size:12px}.weather-clouds{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0;display:grid}.weather-clouds>span{color:var(--t3);background:#eef5fc;border:1px solid #cfe1f3;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:6px;font-size:12px;display:flex}.weather-clouds b{color:var(--t1);font-size:13px}.card{border-radius:8px;padding:16px}.kc{padding:16px;background:var(--s1)!important;border-color:var(--line)!important}.kc .hd{color:var(--t2)!important}.kc .bd{box-shadow:none;border-radius:8px;background:var(--s2)!important}.kv{letter-spacing:0;font-variant-numeric:tabular-nums}.btn:focus-visible,.inp:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--acc-d);outline-offset:2px}.monitoring-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.technical-section{min-width:0;margin-bottom:20px}.technical-section>summary{cursor:pointer;border-bottom:1px solid var(--line);margin-bottom:12px;padding:12px 0;font-size:15px;font-weight:500}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.tech-panel{min-width:0}.tech-panel:first-child{grid-column:1/-1}.tech-panel>.card{height:100%}.monitoring .ct{flex-wrap:wrap}.monitoring .ct .sub{margin-left:0}.monitoring .seg{flex-wrap:wrap}.series-readings{flex-wrap:wrap;gap:8px 16px;margin:12px 0;font-size:12px;display:flex}.series-readings>span{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.series-readings i{width:12px;height:3px;display:inline-block}.series-readings b{font-weight:500}.inverter-bars{margin-bottom:16px}.inverter-bar-row{border-bottom:1px solid var(--line);grid-template-columns:100px minmax(32px,1fr) 100px 140px;align-items:center;gap:12px;min-height:36px;display:grid}.inverter-bar-track{background:#eef0f2;height:8px}.inverter-bar-track i{background:#1668a8;height:100%;display:block}.inverter-bar-row b{text-align:right;font-weight:500}.string-matrix{overflow-x:auto}.string-matrix table{margin-top:12px}.string-matrix td{min-width:64px}.string-matrix details{margin-top:16px}.string-matrix summary{cursor:pointer}.forecast-metrics,.forecast-monitor>.card,.forecast-lower{margin-bottom:16px}.contract-gaps{color:var(--t2);padding-left:20px}.contract-gaps li{margin-bottom:12px}@media (width<=900px){.tech-grid{grid-template-columns:minmax(0,1fr)}.tech-panel:first-child{grid-column:auto}.inverter-bar-row{grid-template-columns:88px minmax(24px,1fr) 88px;gap:8px}.inverter-bar-row>.sub{grid-column:1/-1;padding-bottom:8px}.monitoring .seg{max-width:100%;display:flex}.monitoring .seg button{white-space:normal}}@media (width<=760px){.card{padding:14px}.forecast-monitor table{min-width:0}.forecast-monitor td{overflow-wrap:anywhere}.series-readings{font-size:12px}}.day-power{min-width:0;margin-top:14px}.day-power-status{color:#445367;margin-bottom:6px;font-size:12px}.day-power-plot{width:100%;min-width:0;height:290px}.day-power .sub{overflow-wrap:anywhere;margin-top:6px}.hourly-fieldset{border:0;min-width:0;margin:12px 0;padding:0}.hourly-grid{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:7px;display:grid}.hour-cell{background:#f1f3f6;border:1px solid #d7dde5;border-radius:3px;flex-direction:column;gap:4px;min-width:0;padding:7px;display:flex}.hour-cell>span{font-variant-numeric:tabular-nums;font-size:11px;line-height:1.4}.hour-cell input{box-sizing:border-box;text-align:center;font-variant-numeric:tabular-nums;color:#182b41;background:#fff;border:1px solid #9aa9b8;border-radius:2px;width:100%;min-width:0;padding:7px 3px;font-size:15px}.hour-cell small{color:#445367;font-size:10px}.hour-cell.valid{background:#fff2df;border-color:#d39346}.hour-cell.zero{background:#dde9f7;border-color:#557ca7}.hour-cell.invalid{background:#ffeded;border-color:#b73126}.hour-cell.invalid small{color:#9b2119}.hour-cell input:focus-visible{outline-offset:2px;outline:2px solid #245da0}.hour-cell input:disabled{opacity:.65}.interval-row{flex-wrap:wrap;align-items:end;gap:8px;margin:8px 0;display:flex}.interval-row label{flex-direction:column;font-size:12px;display:flex}.interval-row input{box-sizing:border-box;width:90px}.interval-row [aria-invalid=true]{background:#ffeded;border:2px solid #b73126}@media (width<=600px){.day-power-plot{height:285px}.hourly-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hour-cell{padding:5px}.day-power .recharts-default-legend{font-size:11px!important}}.display-line-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:12px 0;display:grid}.display-line-grid label{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:8px;display:flex}.display-threshold-row{flex-wrap:wrap;align-items:end;gap:8px;margin:10px 0;display:flex}.display-threshold-row label{flex:1;gap:4px;min-width:120px;max-width:220px;display:grid}.display-settings input[type=color]{flex-shrink:0;width:44px;min-height:40px}.display-settings [aria-invalid=true]{border-color:var(--err)}.users-table{align-self:start;min-width:0;overflow-x:auto}.users-table table{min-width:900px}.user-actions{flex-flow:row;align-items:center;gap:6px;padding:4px 0;display:flex}.user-actions .btn{flex-shrink:0;min-width:40px;min-height:40px}.pcc-zoom-controls{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0;display:flex}.reading-link{color:var(--acc-d);text-underline-offset:4px}.hist-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hist-bar>.sub{flex-basis:100%}.hist-label{text-align:center;white-space:nowrap;min-width:150px}.hist-chart{min-width:0;height:380px}.hist-table{max-width:100%;overflow-x:auto}.hist-table table{min-width:860px}.hist-table td{white-space:nowrap}.hist-table tr.muted td{color:var(--t3)}.hist-table tfoot td{border-top:1px solid var(--line);font-weight:500}@media (width<=760px){.hist-chart{height:300px}.hist-bar>.seg{flex-basis:100%}.hist-label{white-space:normal;overflow-wrap:anywhere;flex:1;min-width:0;font-size:13px}.card table.stack-table,.hist-table table.stack-table,.users-table table.stack-table{min-width:0}.stack-table thead{display:none}.stack-table,.stack-table tbody,.stack-table tfoot,.stack-table tr,.stack-table td{width:100%;display:block}.stack-table tr{border-bottom:1px solid var(--line);padding:6px 0}.stack-table td{overflow-wrap:anywhere;text-align:left;border:0;padding:4px 8px;white-space:normal!important;height:auto!important}.stack-table td.r{text-align:left}.stack-table td[data-label]{grid-template-columns:96px minmax(0,1fr);gap:8px;display:grid}.stack-table td[data-label]>*{grid-column:2;justify-self:start;max-width:100%}.stack-table td[data-label]:before{content:attr(data-label);color:var(--t3);font-size:11px}.stack-table td:not([data-label]):empty{display:none}.stack-table td[data-label]:empty:after{content:"—";grid-column:2}.card label{min-width:0;max-width:100%}.card label>select{max-width:100%}.stack-table .user-actions{flex-wrap:wrap}.stack-table .pill{white-space:normal}.stack-table.stack-head thead{display:block}.stack-table:not(:has(tbody>tr)) thead{display:block}.stack-table.stack-head thead tr{flex-wrap:wrap;gap:2px 12px;padding:4px 8px;display:flex}.stack-table:not(:has(tbody>tr)) thead tr{flex-wrap:wrap;gap:2px 12px;padding:4px 8px;display:flex}.stack-table.stack-head thead th{white-space:normal;border:0;height:auto;padding:4px 0}.stack-table:not(:has(tbody>tr)) thead th{white-space:normal;border:0;height:auto;padding:4px 0}}.conn-now{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.conn-bar{isolation:isolate;background:#eef0f2;border-radius:4px;height:18px;margin-top:4px;position:relative;overflow:hidden}.conn-bar i{min-width:2px;position:absolute;top:0;bottom:0}.conn-axis{justify-content:space-between;margin:4px 0 8px;font-size:11px;display:flex}@media (width<=760px){.conn-now{grid-template-columns:minmax(0,1fr)}}.heat-wrap{max-width:100%;overflow-x:auto}.heat-grid{min-width:640px}.heat-line{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:8px;margin:4px 0;display:grid}.heat-row{background:#e7eaee;border-radius:3px;height:18px;display:flex;overflow:hidden}.heat-row i{flex:1 1 0;min-width:2px;height:100%}.heat-scale{color:var(--t3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:11px;display:flex}.heat-scale b{background:linear-gradient(90deg,#2d70be,#be842d);border-radius:4px;width:120px;height:8px}.inv-state{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:8px;margin:6px 0;display:grid}.inv-state .conn-bar{margin:0}@media (width<=760px){.heat-line,.inv-state{grid-template-columns:minmax(0,1fr)}.heat-grid{min-width:520px}}a.reading-link{color:inherit;cursor:pointer;text-decoration:none}a.reading-link:hover{color:var(--acc-d);text-underline-offset:3px;text-decoration:underline}a.reading-link:focus-visible{outline:2px solid var(--acc-d);outline-offset:2px}.side{--sd-bg:#0f1d2e;--sd-hi:#1a2c42;--sd-act:#1d3550;--sd-t1:#f1f5f9;--sd-t2:#c3cfdc;--sd-t3:#8fa1b5;--sd-line:#ffffff14;--sd-cy:#22c3e6;background:var(--sd-bg);border-right-color:var(--sd-bg);color:var(--sd-t1)}.side .logo{color:var(--sd-t1);font-size:16px}.side .nl{color:var(--sd-t3)}.side .ni{color:var(--sd-t2);height:38px;padding:0 10px;position:relative}.side .ni .ico{color:var(--sd-t3)}.side .ni:hover{background:var(--sd-hi);color:var(--sd-t1)}.side .ni:hover .ico{color:var(--sd-t1)}.side .ni.active{background:var(--sd-act);color:#fff;font-weight:500}.side .ni.active .ico{color:var(--sd-cy)}.side .ni.active:before{content:"";background:var(--sd-cy);border-radius:2px;width:3px;position:absolute;top:7px;bottom:7px;left:0}.side .ni:focus-visible{outline:2px solid var(--sd-cy);outline-offset:-2px}.side .ni .c{color:var(--sd-t3)}.side .ni .c.e{color:#ff8a75}.side .user{border-top-color:var(--sd-line);color:var(--sd-t1)}.side .user .sub{color:var(--sd-t3)}.side .av{background:var(--sd-act);color:var(--sd-t1)}.side .btn{color:var(--sd-t2);background:0 0;border-color:#ffffff2e}.side .btn:hover{background:var(--sd-hi);color:var(--sd-t1)}@media (width<=760px){.side{border-bottom-color:var(--sd-bg)}.side .ni.active:before{width:auto;height:3px;inset:auto 6px 2px}}.weather-stale .kv,.weather-stale table .r,.weather-stale .weather-clouds b{color:var(--t3)}.hour-cell.miss{background:#fff8eb;border-color:#e6d3a1}.hour-cell.past{background:#eef1f4;border-color:#d5dbe3}.hour-cell .icon-flag{color:#9a5b05}.icon-draft{max-height:min(62vh,560px);overflow:auto}.icon-hours{margin-top:8px}.tag.warn{color:#7a4f00;background:#fff4d6}.banner.sim{color:#7a1f12;background:#fdecea;border:2px solid #e7b2a8;border-radius:10px;margin:0 0 12px;padding:14px 16px;font-size:16px;font-weight:600;line-height:1.35;display:block}.tou-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.tou-track{background:#eef0f2;border-radius:6px;height:28px;margin:8px 0;display:flex;overflow:hidden}.tou-track i{white-space:nowrap;justify-content:center;align-items:center;min-width:2px;font-size:10px;display:flex;overflow:hidden}@media (width<=760px){.tou-kpis{grid-template-columns:minmax(0,1fr)}}
