.layout-vertical-nav{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--err:#f87171;--ok:#34d399;--warn:#fbbf24;--r-sm:6px;--ease-out:cubic-bezier(.2, .7, .2, 1);--sb-row:34px;--sb-sub-row:30px}.layout-vertical-nav.light-nav{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;--err:#dc2626;--ok:#059669;--warn:#b45309}.layout-vertical-nav .sb-toggle{color:var(--ink-3);border-radius:6px}.layout-vertical-nav .sb-toggle:hover{color:var(--ink-1);background:var(--bg-2)}.layout-vertical-nav .sb-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.sb-site{flex:none;padding:10px 10px 2px}.sb-site-btn{background:var(--bg-2);border:1px solid var(--line);width:100%;color:var(--ink-1);cursor:pointer;text-align:left;font:inherit;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out);border-radius:8px;align-items:center;gap:10px;padding:7px 8px 7px 7px;display:flex}.sb-site-btn:hover{border-color:var(--line-2);background:var(--bg-3)}.sb-site-btn:focus-visible{outline:2px solid rgba(var(--brand-rgb), .7);outline-offset:1px}.sb-site-btn[aria-expanded=true]{border-color:rgba(var(--brand-rgb), .45)}.sb-site-mark{letter-spacing:.02em;background:rgba(var(--brand-rgb), .12);width:30px;height:30px;color:var(--brand);box-shadow:0 0 0 1px rgba(var(--brand-rgb), .22) inset;border-radius:7px;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid;position:relative}.sb-site-mark.none{background:var(--bg-3);color:var(--ink-3);box-shadow:0 0 0 1px var(--line-2) inset}.sb-site-mark svg{width:15px;height:15px}.sb-dot{background:var(--ink-4);border-radius:50%;flex:none;width:8px;height:8px}.sb-dot.online{background:var(--ok)}.sb-dot.warn{background:var(--warn)}.sb-dot.offline{background:var(--err)}.sb-site-mark .sb-dot{border:2px solid var(--bg-2);width:10px;height:10px;position:absolute;bottom:-3px;right:-3px}.sb-site-btn:hover .sb-site-mark .sb-dot{border-color:var(--bg-3)}.sb-site-text{flex:1;min-width:0}.sb-site-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:600;line-height:1.2;display:block}.sb-site-name{color:var(--ink-1);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;line-height:1.25;display:block;overflow:hidden}.sb-site-name.muted{color:var(--ink-2);font-weight:500}.sb-site-caret{color:var(--ink-4);flex:none;place-items:center;display:grid}.sb-site-caret svg{width:14px;height:14px}.layout-vertical-nav .sb-list{padding:4px 4px 8px}.layout-vertical-nav .nav-link,.layout-vertical-nav .nav-group{padding:0}.layout-vertical-nav .sb-row{min-height:var(--sb-row);width:calc(100% - 16px);color:var(--ink-2);cursor:pointer;transition:background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:7px;gap:8px;margin:1px 8px;padding:0 8px 0 6px;font-size:13px;font-weight:500;line-height:1.1;position:relative}.layout-vertical-nav .sb-row:hover{background:var(--bg-2);color:var(--ink-1)}.layout-vertical-nav .sb-row:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.layout-vertical-nav .sb-row.active,.layout-vertical-nav .sb-row.active:hover{background:var(--brand-soft);color:var(--brand-active-text)}.layout-vertical-nav .sb-row.has-active{color:var(--ink-1)}.layout-vertical-nav .Mui-disabled .sb-row{pointer-events:none}.sb-ico{width:26px;height:26px;color:inherit;transition:background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:6px;flex:none;place-items:center;display:grid;position:relative}.sb-ico svg{opacity:.9;width:16px;height:16px}.layout-vertical-nav .sb-row:hover .sb-ico{background:var(--bg-3)}.layout-vertical-nav .sb-row.active .sb-ico{background:rgba(var(--brand-rgb), .16);color:var(--brand)}.layout-vertical-nav .sb-row.has-active .sb-ico{color:var(--brand)}.sb-label{white-space:nowrap;text-overflow:clip;min-width:0;transition:opacity .18s var(--ease-out);flex:1;overflow:hidden}.sb-pill{background:var(--brand);pointer-events:none;width:3px;position:absolute;top:7px;bottom:7px;left:-8px}.sb-badge{font-variant-numeric:tabular-nums;min-width:18px;height:18px;color:var(--err);background:#f8717124;border:1px solid #f8717147;border-radius:9px;flex:none;place-items:center;margin-left:auto;padding:0 6px;font-size:10.5px;font-weight:600;line-height:1;display:inline-grid}.light-nav .sb-badge{background:#dc262614;border-color:#dc262638}.sb-caret{color:var(--ink-4);transition:transform .22s var(--ease-out), color .18s var(--ease-out);flex:none;place-items:center;margin-left:auto;display:grid}.sb-caret svg{width:14px;height:14px}.layout-vertical-nav .sb-row:hover .sb-caret{color:var(--ink-2)}.layout-vertical-nav .sb-row.open .sb-caret{transform:rotate(90deg)}.layout-vertical-nav .sb-row.open.rtl .sb-caret{transform:rotate(-90deg)}.sb-badge+.sb-caret{margin-left:0}.layout-vertical-nav .sb-sub{width:100%;margin:0;padding:0;list-style:none;position:relative}.layout-vertical-nav .sb-sub:before{content:"";background:var(--line-2);width:1px;position:absolute;top:3px;bottom:3px;left:27px}.layout-vertical-nav .sb-row.sub{min-height:var(--sb-sub-row);padding-left:30px;font-size:12.5px;font-weight:450}.layout-vertical-nav .sb-sub .sb-sub{width:calc(100% - 14px);margin-left:14px}.layout-vertical-nav .sb-row.sub .sb-ico{width:22px;height:22px}.layout-vertical-nav .sb-row.sub .sb-ico svg{width:14px;height:14px}.layout-vertical-nav .sb-row.sub .sb-pill{width:6px;height:6px;box-shadow:0 0 0 2px var(--bg-1);top:calc(50% - 3px);bottom:auto;left:17px}.layout-vertical-nav .sb-section{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;background:0 0;align-items:center;gap:8px;margin:14px 12px 4px 16px;padding:0;font-size:10.5px;font-weight:600;line-height:1;display:flex;position:static}.layout-vertical-nav .sb-section:after{content:"";background:var(--line);flex:1;height:1px}.layout-vertical-nav .sb-list>.sb-section:first-child{margin-top:8px}.sb-foot{border-top:1px solid var(--line);flex:none;align-items:center;gap:4px;padding:8px 10px 10px;display:flex}.sb-user{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .18s var(--ease-out);background:0 0;border:0;border-radius:8px;flex:1;align-items:center;gap:10px;padding:5px 6px;display:flex}.sb-user:hover,.sb-user[aria-expanded=true]{background:var(--bg-2)}.sb-user:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.sb-avatar{letter-spacing:.02em;color:#052e16;background:linear-gradient(135deg, var(--brand), var(--brand-dark));width:30px;height:30px;box-shadow:0 0 0 2px rgba(var(--brand-rgb), .18);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid;position:relative}.sb-avatar:after{content:"";background:var(--ok);border:2px solid var(--bg-1);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}.sb-user-text{flex:1;min-width:0}.sb-user-name,.sb-user-role{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.sb-user-name{color:var(--ink-1);font-size:12.5px;font-weight:600;line-height:1.25}.sb-user-role{color:var(--ink-3);font-size:11px;line-height:1.2}.sb-user-caret{color:var(--ink-4);flex:none;place-items:center;display:grid}.sb-user-caret svg{width:14px;height:14px}.layout-vertical-nav .sb-signout{color:var(--ink-3);border-radius:6px;flex:none}.layout-vertical-nav .sb-signout:hover{color:var(--err);background:#f871711a}.layout-vertical-nav .sb-signout:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.layout-vertical-nav .ps__rail-y{width:4px!important}.layout-vertical-nav .ps__thumb-y{background-color:var(--bg-3)!important;width:4px!important}.layout-vertical-nav.rail .sb-row{justify-content:center;gap:0;margin:2px 8px;padding:0}.layout-vertical-nav.rail .sb-label{opacity:0;flex:0 0 0;width:0}.layout-vertical-nav.rail .sb-caret,.layout-vertical-nav.rail .sb-badge,.layout-vertical-nav.rail .sb-section-text,.layout-vertical-nav.rail .sb-site-text,.layout-vertical-nav.rail .sb-site-caret,.layout-vertical-nav.rail .sb-user-text,.layout-vertical-nav.rail .sb-user-caret,.layout-vertical-nav.rail .sb-signout{display:none}.layout-vertical-nav.rail .sb-row:has(.sb-badge) .sb-ico:after{content:"";background:var(--err);border:2px solid var(--bg-1);border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.layout-vertical-nav.rail .sb-section{margin:10px 26px 6px}.layout-vertical-nav.rail .sb-site{padding:10px 0 2px}.layout-vertical-nav.rail .sb-site-btn{justify-content:center;width:34px;height:34px;margin:0 auto;padding:0}.layout-vertical-nav.rail .sb-foot{justify-content:center;padding:8px 0 10px}.layout-vertical-nav.rail .sb-user{flex:none;padding:4px}.sb-pop{color:var(--ink-1);overflow:hidden;background:var(--bg-1)!important;border:1px solid var(--line)!important;box-shadow:var(--elev-3)!important;border-radius:10px!important}.sb-pop-head{color:var(--ink-1);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 8px;font-size:12.5px;font-weight:600;display:flex}.sb-pop-head span{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.sb-site-search{padding:0 10px 8px}.sb-pop .MuiAutocomplete-popper{width:auto!important;position:static!important}.sb-site-search .MuiInputBase-root{background:var(--bg-2);font-size:13px}.sb-site-search .MuiInputBase-input{padding-top:7px;padding-bottom:7px}.sb-site-search .MuiOutlinedInput-notchedOutline{border-color:var(--line)!important}.sb-site-search .Mui-focused .MuiOutlinedInput-notchedOutline{border-color:rgba(var(--brand-rgb), .55)!important}.sb-site-search svg{color:var(--ink-3)}.sb-pop .sb-site-listbox{border-top:1px solid var(--line);max-height:300px;padding:4px 6px 6px!important}.sb-pop .sb-site-opt{color:var(--ink-2);cursor:pointer;border-radius:6px;align-items:center;gap:10px;font-size:12.5px;padding:6px 8px!important;display:flex!important}.sb-pop .sb-site-opt.Mui-focused,.sb-pop .sb-site-opt:hover{background:var(--bg-2)!important;color:var(--ink-1)!important}.sb-pop .sb-site-opt[aria-selected=true]{background:var(--brand-soft)!important;color:var(--brand-active-text)!important}.sb-site-opt-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.sb-site-opt-meta{color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px}.sb-site-opt svg{width:14px;height:14px;color:var(--brand);flex:none}.sb-site-empty{color:var(--ink-3);padding:14px 12px;font-size:12.5px}.sb-menu-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:4px;padding:8px 12px 10px;display:flex}.sb-menu-head .sb-avatar{width:34px;height:34px;font-size:12px}.sb-menu-name{color:var(--ink-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;line-height:1.25;display:block;overflow:hidden}.sb-menu-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.sb-menu-item{gap:10px;color:var(--ink-2)!important;min-height:34px!important;font-size:13px!important}.sb-menu-item .MuiListItemIcon-root{color:var(--ink-3)!important;min-width:0!important;margin-right:0!important}.sb-menu-item svg{width:16px;height:16px}.sb-menu-item:hover{color:var(--ink-1)!important}.sb-menu-item.danger,.sb-menu-item.danger .MuiListItemIcon-root{color:var(--err)!important}.sb-kbd{background:var(--bg-3);border:1px solid var(--line);color:var(--ink-3);white-space:nowrap;border-radius:4px;margin-left:auto;padding:2px 6px;font-family:inherit;font-size:10.5px;line-height:1}@media (prefers-reduced-motion:reduce){.layout-vertical-nav,.layout-vertical-nav *{transition-duration:.01ms!important}}
.site-header{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;background:linear-gradient(135deg, color-mix(in srgb, var(--bg-1) 94%, var(--brand) 6%) 0%, var(--bg-1) 55%);border:1px solid var(--line);color:var(--ink-1);border-radius:12px;margin-bottom:12px;padding:18px 22px;font-family:inherit;position:relative;overflow:hidden}.site-header.light{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;background:linear-gradient(135deg, color-mix(in srgb, var(--bg-1) 92%, var(--brand) 8%) 0%, var(--bg-1) 55%)}.site-header:before{content:"";background:linear-gradient(90deg, transparent, var(--brand) 25%, var(--brand) 75%, transparent);opacity:.55;height:2px;position:absolute;top:0;left:0;right:0}.site-header:after{content:"";background:radial-gradient(circle, rgba(var(--brand-rgb), .08), transparent 70%);pointer-events:none;width:240px;height:240px;position:absolute;top:-60px;right:-60px}.sh-row{z-index:1;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.sh-identity{flex:1;align-items:center;gap:14px;min-width:0;display:flex}.sh-avatar{color:#fff;letter-spacing:-.5px;background:linear-gradient(135deg,#fb923c 0%,#ea580c 100%);border-radius:11px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:17px;font-weight:800;display:grid;overflow:hidden;box-shadow:0 8px 22px #ea580c47,inset 0 1px #fff3}.sh-avatar-img{background:#fff;place-items:center;padding:2px;display:grid;overflow:hidden;box-shadow:0 4px 14px #00000026,inset 0 0 0 1px #0000000f}.sh-avatar-img .MuiAvatar-root{background:0 0!important;place-items:center!important;width:100%!important;height:100%!important;margin:0!important;font-size:16px!important;display:grid!important}.sh-avatar-img .MuiAvatar-root .MuiAvatar-root{position:static!important}.sh-avatar-img img{object-fit:contain;width:100%;height:100%;display:block}.sh-titleblock{min-width:0}.sh-name-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sh-name{letter-spacing:-.01em;color:var(--ink-1);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:19px;font-weight:700;line-height:1.2;overflow:hidden}.sh-tier{background:rgba(var(--brand-rgb), .12);color:var(--brand-active-text);border:1px solid rgba(var(--brand-rgb), .22);letter-spacing:.1em;text-transform:uppercase;border-radius:4px;align-items:center;gap:5px;padding:2px 8px;font-family:JetBrains Mono,Monaco,Consolas,monospace;font-size:10px;font-weight:700;display:inline-flex}.site-header.light .sh-tier{background:rgba(var(--brand-rgb), .08);color:#047857;border-color:rgba(var(--brand-rgb), .22)}.sh-sub{color:var(--ink-3);margin-top:3px;font-size:12.5px;line-height:1.4}.sh-sub .sh-meta-k{margin-left:2px;margin-right:6px}.sh-site-id{font-family:var(--mono,ui-monospace, "JetBrains Mono", monospace);color:var(--ink-2);letter-spacing:.01em;font-size:12px}.sh-copy{vertical-align:-4px;width:20px;height:20px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;margin-left:6px;transition:background-color .15s,color .15s,transform .15s;display:inline-flex}.sh-copy:hover{background:var(--bg-2);color:var(--ink-1)}.sh-copy:active{transform:scale(.92)}.sh-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.sh-status{background:#4ade800f;border:1px solid #4ade8047;border-radius:10px;align-items:center;gap:10px;padding:8px 12px 8px 10px;display:inline-flex}.sh-status.offline{background:#f871710f;border-color:#f8717147}.sh-status.warning{background:#fbbf240f;border-color:#fbbf2447}.sh-status.unknown{background:#94a3b80f;border-color:#94a3b847}.sh-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;position:relative}.sh-status.online .sh-status-dot{background:#4ade80;animation:2.2s ease-in-out infinite sh-pulse-ok}.sh-status.offline .sh-status-dot{background:#f87171;animation:1.6s ease-in-out infinite sh-pulse-err}.sh-status.warning .sh-status-dot{background:#fbbf24;animation:1.9s ease-in-out infinite sh-pulse-warn}.sh-status.unknown .sh-status-dot{background:#94a3b8}@keyframes sh-pulse-ok{0%,to{box-shadow:0 0 #4ade808c}50%{box-shadow:0 0 0 7px #4ade8000}}@keyframes sh-pulse-err{0%,to{box-shadow:0 0 #f871718c}50%{box-shadow:0 0 0 7px #f8717100}}@keyframes sh-pulse-warn{0%,to{box-shadow:0 0 #fbbf248c}50%{box-shadow:0 0 0 7px #fbbf2400}}.sh-status-text{flex-direction:column;line-height:1.15;display:flex}.sh-status-label{letter-spacing:.12em;color:#86efac;text-transform:uppercase;font-family:JetBrains Mono,Monaco,Consolas,monospace;font-size:10.5px;font-weight:700}.sh-status.offline .sh-status-label{color:#fca5a5}.sh-status.warning .sh-status-label{color:#fcd34d}.sh-status.unknown .sh-status-label{color:#94a3b8}.site-header.light .sh-status-label{color:#047857}.site-header.light .sh-status.offline .sh-status-label{color:#b91c1c}.site-header.light .sh-status.warning .sh-status-label{color:#b45309}.site-header.light .sh-status.unknown .sh-status-label{color:#64748b}.sh-status-time{color:var(--ink-1);font-variant-numeric:tabular-nums;letter-spacing:.01em;margin-top:1px;font-size:12px;font-weight:600}.sh-iconbtn{width:32px;height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:background-color .18s,color .18s,transform .18s;display:grid}.sh-iconbtn:hover{background:var(--bg-2);color:var(--ink-1);transform:rotate(-4deg)scale(1.05)}.sh-iconbtn:active{transform:scale(.92)}.sh-meta{border-top:1px dashed var(--line);z-index:1;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:14px;padding-top:12px;display:flex;position:relative}.sh-meta-cell{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:12px;display:inline-flex}.sh-meta-cell svg{color:var(--ink-4);flex-shrink:0}.sh-meta-cell-truncate .sh-meta-v{text-overflow:ellipsis;vertical-align:bottom;max-width:220px;display:inline-block;overflow:hidden}.sh-meta-k{color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.sh-meta-v{color:var(--ink-1);font-weight:600}.sh-meta-suffix{color:var(--ink-4)}.sh-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.sh-sync{color:var(--ink-3);margin-right:4px;font-family:JetBrains Mono,Monaco,Consolas,monospace;font-size:11px}.sh-sync .live{color:#4ade80;font-weight:700}.sh-daterange{border:1px solid var(--line);color:var(--ink-2);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;display:inline-flex}.sh-btn{background:var(--bg-2);border:1px solid var(--line);height:32px;color:var(--ink-1);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;transition:background-color .18s,transform .12s,box-shadow .18s;display:inline-flex}.sh-btn:hover{background:var(--bg-3);transform:translateY(-1px)}.sh-btn:active{transform:translateY(0)scale(.97)}.site-header{box-sizing:border-box;width:100%}@media (max-width:1200px){.sh-actions{border-top:1px dashed var(--line);flex-wrap:wrap;width:100%;margin-top:6px;margin-left:0;padding-top:8px}.sh-sync{margin-right:auto}}@media (max-width:900px){.site-header{padding:14px 16px}.sh-row{flex-direction:column;align-items:flex-start;gap:12px}.sh-right{flex-wrap:wrap;justify-content:flex-start;width:100%}.sh-status{flex:1;min-width:200px}.sh-name{white-space:normal;font-size:17px}.sh-meta{gap:8px 16px}.sh-meta-cell{font-size:11.5px}}@media (max-width:600px){.site-header{border-radius:10px;padding:12px 14px}.sh-avatar{width:38px;height:38px;font-size:15px}.sh-name{font-size:15px}.sh-sub{font-size:11.5px}.sh-tier{display:none}.sh-status{padding:6px 10px 6px 8px}.sh-status-time{font-size:11px}.sh-iconbtn{width:28px;height:28px}.sh-meta{gap:6px 12px;margin-top:10px;padding-top:8px}.sh-meta-cell{gap:5px;font-size:11px}.sh-daterange{padding:3px 8px;font-size:10.5px}.sh-btn{height:28px;padding:0 10px;font-size:11.5px}}
.skc-kpis{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--skc-yield:#10b981;--skc-rev:#38bdf8;--skc-co2:#f5b84a;--skc-coal:#a78bfa;--skc-trees:#f472b6;--skc-ok:#34d399;--skc-r:12px;box-sizing:border-box;grid-template-columns:repeat(5,1fr);gap:12px;width:100%;margin-bottom:12px;display:grid}.skc-kpis.light{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8}.skc-kpi{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--skc-r);padding:14px 16px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .25s,box-shadow .3s;position:relative;overflow:hidden}.skc-kpi.skc-yield{--skc-accent:var(--skc-yield)}.skc-kpi.skc-rev{--skc-accent:var(--skc-rev)}.skc-kpi.skc-co2{--skc-accent:var(--skc-co2)}.skc-kpi.skc-coal{--skc-accent:var(--skc-coal)}.skc-kpi.skc-trees{--skc-accent:var(--skc-trees)}.skc-kpi:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:0 12px 28px #00000047}.skc-kpis.light .skc-kpi:hover{box-shadow:0 8px 20px #0f172a14}.skc-kpi:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(600px circle at 50% 50%, color-mix(in srgb, var(--skc-accent,transparent) 7%, transparent), transparent 45%);transition:opacity .3s;position:absolute;inset:0}.skc-kpi:hover:after{opacity:1}.skc-kpi:before{content:"";background:var(--skc-accent,var(--bg-3));border-radius:0 2px 2px 0;width:2px;position:absolute;top:12px;bottom:12px;left:0}.skc-label{color:var(--ink-2);align-items:center;gap:8px;min-width:0;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.skc-ico{background:var(--bg-3);width:22px;height:22px;color:var(--ink-1);border-radius:6px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.skc-label-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.skc-val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink-1);align-items:baseline;font-size:22px;font-weight:600;line-height:1.15;display:flex}.skc-val .font-small-4{color:var(--ink-3);margin-left:4px;font-size:12px;font-weight:500}.skc-delta{color:var(--skc-ok);align-items:center;margin-top:6px;font-size:11.5px;font-weight:500;display:inline-flex}.skc-delta.mut{color:var(--ink-3)}@media (max-width:1200px){.skc-kpis{grid-template-columns:repeat(4,1fr)}}@media (max-width:960px){.skc-kpis{grid-template-columns:repeat(3,1fr)}.skc-val{font-size:20px}}@media (max-width:680px){.skc-kpis{grid-template-columns:repeat(2,1fr);gap:10px}.skc-kpi{padding:12px 14px}.skc-val{font-size:18px}}@media (max-width:380px){.skc-kpis{grid-template-columns:1fr}}
.esum{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:12px;display:grid}.esc-card{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--esc-r:12px;--esc-accent:var(--ink-3);background:var(--bg-1);border:1px solid var(--line);border-radius:var(--esc-r);box-sizing:border-box;height:100%;min-height:78px;color:var(--ink-1);flex-direction:column;justify-content:center;gap:6px;padding:12px 14px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .25s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.esc-card.light{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8}.esc-card:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:0 12px 28px #00000047}.esc-card.light:hover{box-shadow:0 8px 20px #0f172a14}.esc-card:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(600px circle at 50% 50%, color-mix(in srgb, var(--esc-accent,transparent) 7%, transparent), transparent 45%);transition:opacity .3s;position:absolute;inset:0}.esc-card:hover:after{opacity:1}.esc-card:before{content:"";background:var(--esc-accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:10px;bottom:10px;left:0}.esc-label{color:var(--ink-2);align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:500;display:flex}.esc-ico{background:var(--bg-3);width:22px;height:22px;color:var(--ink-1);border-radius:6px;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.esc-ico img,.esc-ico svg{width:14px;height:14px;display:block}.esc-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.esc-val-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.esc-val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink-1);align-items:baseline;min-width:0;font-size:20px;font-weight:600;line-height:1.15;display:flex}.esc-spark{opacity:.85;pointer-events:none;flex-shrink:0;width:64px;height:22px}.esc-spark.is-bars{opacity:1}.esc-spark.is-bars rect{fill:currentColor;opacity:1}.esc-val .font-small-4{color:var(--ink-3);margin-left:4px;font-size:12px;font-weight:500}@media (max-width:600px){.esc-card{min-height:88px;padding:12px 14px}.esc-val{font-size:18px}.esc-spark{width:56px;height:20px}}
.spf-panel{--bg-0:#0b0f14;--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .28);--ok:#34d399;--d-grid:#38bdf8;--d-genset:#a78bfa;--d-solar:var(--brand);--spf-r:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--spf-r);color:var(--ink-1);box-sizing:border-box;width:100%;overflow:hidden}.spf-panel.light{--bg-0:#f6f8fb;--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8}.spf-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.spf-title{letter-spacing:-.005em;color:var(--ink-1);margin:0;font-size:13.5px;font-weight:600}.spf-sub{color:var(--ink-3);margin-top:2px;font-size:12px}.spf-tools{color:var(--ink-3);align-items:center;gap:6px;display:flex}.spf-tag-ok{color:#34d399;background:#34d3991f;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.spf-tag-ok .spf-dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite spf-pulse-dot}@keyframes spf-pulse-dot{0%,to{box-shadow:0 0 0 3px #34d3992e}50%{box-shadow:0 0 0 6px #34d3990f}}.spf-iconbtn{width:32px;height:32px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:background-color .18s,color .18s,transform .18s;display:grid}.spf-iconbtn:hover{background:var(--bg-2);color:var(--ink-1);transform:rotate(-4deg)scale(1.05)}.spf-iconbtn:active{transform:scale(.92)}.spf-body{padding:16px}.spf-flow{height:340px;padding:20px;position:relative}.spf-canvas{border:1px solid var(--line);background:var(--bg-0);background-image:radial-gradient(circle, var(--line-2) 1px, transparent 1.5px);background-size:24px 24px;border-radius:8px;width:100%;height:560px;position:relative;overflow:hidden}.spf-panel.light .spf-canvas{background-image:radial-gradient(circle,#0f172a1a 1px,#0000 1.5px)}.spf-canvas .react-flow,.spf-canvas .react-flow__renderer,.spf-canvas .react-flow__viewport{background:0 0}.spf-zoom{z-index:7;background:var(--bg-1);border:1px solid var(--line);border-radius:9px;flex-direction:column;display:flex;position:absolute;bottom:14px;left:14px;overflow:hidden;box-shadow:0 4px 12px #0000002e}.spf-zoom button{width:30px;height:30px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;place-items:center;transition:background-color .15s,color .15s;display:grid}.spf-zoom button:hover{background:var(--bg-2);color:var(--ink-1)}.spf-zoom button:not(:last-child){border-bottom:1px solid var(--line)}.spf-zoom button svg{width:15px;height:15px}.spf-zoomlbl{z-index:7;color:var(--ink-2);background:var(--bg-1);border:1px solid var(--line);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:6px;padding:2px 8px;font-size:10.5px;position:absolute;bottom:14px;left:52px;box-shadow:0 2px 6px #0000001f}.spf-canvas .react-flow__node{box-shadow:none;background:0 0;border:0;padding:0;pointer-events:all!important;width:auto!important;height:auto!important}.spf-node.is-dim,.spf-node-load.is-dim{opacity:.32}.react-flow__node .spf-node.is-hot{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), 0 10px 28px color-mix(in srgb, var(--accent) 24%, transparent)}.react-flow__node .spf-node-load.is-hot{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand), 0 10px 28px color-mix(in srgb, var(--brand) 24%, transparent)}.spf-canvas .react-flow__edge{transition:opacity .18s}.spf-canvas .react-flow__edge.sld-dim{opacity:.1!important}.react-flow__node .spf-node{position:relative;inset:auto;transform:none}.react-flow__node .spf-node-load{position:relative;top:auto;left:auto;transform:none}.spf-flow-grid{grid-template-rows:auto auto auto;grid-template-columns:1fr 1fr 1fr;gap:14px 18px;min-height:360px;padding:18px;display:grid}.spf-cell{flex-direction:column;gap:10px;min-width:0;display:flex}.spf-cell-top-center,.spf-cell-bottom-center{align-items:center}.spf-cell-mid-left{justify-content:center;align-items:flex-start}.spf-cell-mid-right{justify-content:center;align-items:flex-end}.spf-cell-load{justify-content:center;align-items:center}.spf-cell-top-right,.spf-cell-bottom-right{align-items:flex-end}.spf-flow-grid .spf-node{position:relative;inset:auto;transform:none}.spf-flow-grid .spf-node-load{position:relative;top:auto;left:auto;transform:none}.spf-flow svg{width:100%;height:100%;position:absolute;inset:0}.spf-flow path[data-flow]{stroke-dasharray:5 4;animation:1.2s linear infinite spf-dash-flow}@keyframes spf-dash-flow{to{stroke-dashoffset:-40px}}.spf-node{width:var(--w,180px);background:var(--bg-1);border:1px solid var(--line);z-index:1;border-radius:11px;transition:border-color .18s,box-shadow .18s;position:absolute;overflow:hidden}.spf-node:hover{border-color:color-mix(in srgb, var(--accent,var(--line-2)) 42%, var(--line));box-shadow:0 8px 22px #0000002e}.spf-node-h{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 10px;display:flex}.spf-node-ic{background:color-mix(in srgb, var(--accent,var(--ink-3)) 16%, var(--bg-2));width:24px;height:24px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent,var(--line-2)) 30%, transparent);color:var(--accent,var(--ink-2));border-radius:6px;flex:none;place-items:center;line-height:0;display:grid;position:relative;overflow:hidden}.spf-node-ic>div,.spf-node-ic>div>svg{max-width:14px;max-height:14px;display:block;width:14px!important;height:14px!important}.spf-node-ic svg *{fill:currentColor!important;stroke:currentColor!important}.spf-node-t{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.spf-node-t b{color:var(--ink-1);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;overflow:hidden}.spf-node-t span{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;font-size:9.5px;overflow:hidden}.spf-node-dot{background:var(--ok);border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 0 3px #34d39929}.spf-node-dot.off{background:var(--ink-4);box-shadow:none}.spf-node-dot.warn{background:#f5b84a;box-shadow:0 0 0 3px #f5b84a29}.spf-node-b{flex-direction:column;gap:4px;padding:8px 10px;display:flex}.spf-node-row{color:var(--ink-3);justify-content:space-between;align-items:baseline;gap:8px;font-size:11px;display:flex}.spf-node-row .v{color:var(--ink-1);font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;font-weight:500;display:inline-flex}.spf-node-row .u{color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:500}.spf-node-load{background:var(--bg-1);border:1px solid var(--line);z-index:2;border-radius:11px;width:200px;transition:border-color .18s,box-shadow .18s;position:absolute;overflow:hidden}.spf-node-load:hover{border-color:color-mix(in srgb, var(--brand) 42%, var(--line));box-shadow:0 8px 22px #0000002e}.spf-node-load .spf-node-ic{background:color-mix(in srgb, var(--brand) 16%, var(--bg-2));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand) 30%, transparent);color:var(--brand)}.spf-load-body{flex-direction:column;align-items:center;gap:4px;padding:10px 12px 12px;display:flex}.spf-load-val{font-variant-numeric:tabular-nums;color:var(--brand);letter-spacing:-.01em;align-items:baseline;gap:6px;font-size:18px;font-weight:700;display:inline-flex}.spf-load-val .spf-load-unit{color:var(--brand);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;font-weight:600}.spf-load-sub{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:500}@media (max-width:720px){.spf-flow{height:380px;padding:12px}.spf-node{min-width:120px;padding:8px 10px}.spf-node-load{width:110px;height:110px}.spf-load-val{font-size:16px}}
.ssc-panel{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--ssc-r:12px;background:var(--bg-1);border:1px solid var(--line);border-radius:var(--ssc-r);color:var(--ink-1);box-sizing:border-box;width:100%;overflow:hidden}.ssc-panel.light{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8}.ssc-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.ssc-title{letter-spacing:-.005em;color:var(--ink-1);margin:0;font-size:13.5px;font-weight:600}.ssc-sub{color:var(--ink-3);margin-top:2px;font-size:12px}.ssc-range-wrap{position:relative}.ssc-header-tools{align-items:center;gap:6px;display:flex}.ssc-iconbtn{background:var(--bg-2);border:1px solid var(--line);width:28px;height:28px;color:var(--ink-2);cursor:pointer;border-radius:6px;place-items:center;transition:background-color .18s,color .18s,border-color .18s;display:grid}.ssc-iconbtn:hover{background:var(--bg-3);color:var(--ink-1);border-color:var(--line-2)}.ssc-iconbtn:active{transform:scale(.96)}.ssc-iconbtn svg{display:block}.ssc-range{background:var(--bg-2);border:1px solid var(--line);height:28px;color:var(--ink-2);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:12px;transition:background-color .18s,color .18s;display:inline-flex}.ssc-range:hover{background:var(--bg-3);color:var(--ink-1)}.ssc-range-menu{background:var(--bg-2);border:1px solid var(--line);z-index:30;border-radius:8px;min-width:140px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 12px 28px #00000052}.ssc-range-item{color:var(--ink-2);cursor:pointer;white-space:nowrap;border-radius:5px;padding:6px 10px;font-size:12px;transition:background-color .15s,color .15s}.ssc-range-item:hover,.ssc-range-item:focus{background:var(--bg-3);color:var(--ink-1);outline:none}.ssc-range-item.active{color:var(--ink-1);background:var(--bg-3)}.ssc-body{min-height:220px;padding:16px 20px 16px 16px}.ssc-charts{grid-template-columns:1fr 1fr;gap:0;display:grid}.ssc-chart-bar,.ssc-chart-pie{align-items:stretch;min-width:0;height:100%;min-height:420px;display:flex;overflow:hidden}.ssc-chart-bar{border-right:1px solid var(--line);flex-direction:column;justify-content:stretch;padding-right:12px}.ssc-chart-bar>*{flex:1;min-height:0}.ssc-chart-pie{gap:16px;padding-left:12px}.ssc-pie-canvas{flex:0 0 38%;min-width:0;height:100%}.ssc-pie-legend{flex-direction:column;flex:1;justify-content:center;gap:18px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.ssc-pie-legend-row{color:var(--ink-1);grid-template-columns:14px 1fr auto;align-items:center;gap:12px;font-size:14px;display:grid}.ssc-pie-legend-sw{border-radius:2px;flex:none;width:10px;height:10px}.ssc-pie-legend-name{color:var(--ink-1);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.ssc-pie-legend-meta{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;gap:6px;display:inline-flex}.ssc-pie-legend-val{color:var(--ink-1);font-size:14px;font-weight:600}.ssc-pie-legend-sep{color:var(--ink-3);font-weight:400}.ssc-pie-legend-pct{color:var(--ink-2);font-size:14px;font-weight:500}@keyframes ssc-bar-grow{0%{clip-path:inset(100% 0 0);opacity:.5}to{clip-path:inset(0);opacity:1}}@keyframes ssc-pie-pop{0%{opacity:0;transform:scale(.55)}60%{opacity:1}to{opacity:1;transform:scale(1)}}@keyframes ssc-legend-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}.ssc-chart-bar{animation:.85s cubic-bezier(.22,1,.36,1) both ssc-bar-grow}.ssc-pie-canvas{transform-origin:50%;animation:.8s cubic-bezier(.34,1.4,.64,1) .12s both ssc-pie-pop}.ssc-pie-legend-row{animation:.5s cubic-bezier(.22,1,.36,1) both ssc-legend-in}.ssc-pie-legend-row:first-child{animation-delay:.3s}.ssc-pie-legend-row:nth-child(2){animation-delay:.38s}.ssc-pie-legend-row:nth-child(3){animation-delay:.46s}.ssc-pie-legend-row:nth-child(4){animation-delay:.54s}.ssc-pie-legend-row:nth-child(5){animation-delay:.62s}.ssc-pie-legend-row:nth-child(n+6){animation-delay:.7s}@media (prefers-reduced-motion:reduce){.ssc-chart-bar,.ssc-pie-canvas,.ssc-pie-legend-row{animation:none}}.ssc-empty{height:180px;color:var(--ink-3);place-items:center;font-size:12px;display:grid}@media (max-width:720px){.ssc-charts{grid-template-columns:1fr}.ssc-chart-bar{border-right:0;border-bottom:1px solid var(--line);height:360px;min-height:360px;padding-bottom:12px;padding-right:0}.ssc-chart-pie{flex-direction:column;align-items:stretch;height:auto;min-height:360px;padding-top:12px;padding-left:0}.ssc-pie-canvas{flex:none;height:240px}.ssc-pie-legend{gap:12px}}
.lp-shell{--bg-0:#0b0f14;--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--accent:var(--brand);--accent-soft:rgba(var(--brand-rgb), .12);--brand-line:rgba(var(--brand-rgb), .3);--brand-ink:#06240c;--ok:#34d399;--warn:#f59e0b;--bad:#ef4444;--r-lg:12px;--r-md:10px;--r-sm:8px;--elev-1:0 1px 2px #00000047, 0 1px 1px #0000002e;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-spring:cubic-bezier(.34, 1.4, .6, 1);color:var(--ink-1);font-feature-settings:"tnum" on, "lnum" on;background:0 0;min-height:100%;padding:18px 22px 28px}.lp-shell.light{--bg-0:#f6f8fb;--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;--accent-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .25);--elev-1:0 1px 2px #0f172a14}.lp-page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.lp-page-head h1{letter-spacing:-.01em;color:var(--ink-1);margin:0;font-size:20px;font-weight:600;line-height:1.2}.lp-page-head p{color:var(--ink-3);margin:4px 0 0;font-size:13px}.lp-head-meta{color:var(--ink-2);flex-shrink:0;align-items:center;gap:10px;font-size:12.5px;display:flex}.lp-pill{background:var(--bg-2);border:1px solid var(--line);height:26px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.lp-pill .dot{border-radius:50%;width:6px;height:6px}.lp-pill.online .dot{background:var(--ok);animation:2s ease-in-out infinite lp-pulse-dot;box-shadow:0 0 0 3px #34d3992e}.lp-mut{color:var(--ink-3);font-variant-numeric:tabular-nums}.lp-mut b{color:var(--ink-1);font-weight:600}.lp-stack{flex-direction:column;gap:12px;display:flex}.lp-acc{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);transition:box-shadow .2s var(--ease-out), border-color .2s;overflow:hidden}.lp-acc.open{box-shadow:var(--elev-1);border-color:var(--line-2)}.lp-acc-h{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s, box-shadow .2s var(--ease-out);align-items:center;gap:12px;padding:11px 13px;display:flex}.lp-acc-h:hover{background:var(--bg-2)}.lp-acc.open .lp-acc-h{box-shadow:inset 0 -1px 0 var(--line)}.lp-acc-title{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.lp-ic{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);box-shadow:inset 0 0 0 1px var(--brand-line);border-radius:8px;flex:none;place-items:center;display:grid}.lp-ic svg{width:16px;height:16px}.lp-acc-name{color:var(--ink-1);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.lp-count{color:var(--ink-3);font-variant-numeric:tabular-nums;background:var(--bg-3);border-radius:999px;flex:none;padding:2px 8px;font-size:10.5px}.lp-selpill{color:var(--brand-ink);background:var(--accent);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:2px 8px;font-size:10.5px;font-weight:700;display:none}.lp-acc.has-sel .lp-selpill{display:inline-block}.lp-acc-tools{flex:none;align-items:center;gap:6px;display:flex}.lp-tool{width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;transition:background-color .15s,color .15s;display:grid}.lp-tool:hover:not(:disabled){background:var(--bg-3);color:var(--ink-1)}.lp-tool:disabled{opacity:.32;cursor:not-allowed}.lp-tool.active{color:var(--accent);background:var(--accent-soft)}.lp-tool svg{width:15px;height:15px}.lp-tool-seg{background:var(--bg-2);border:1px solid var(--line);border-radius:8px;flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.lp-tool-seg .lp-tool{border-radius:5px;width:26px;height:24px}.lp-search{align-items:center;display:flex;position:relative}.lp-search svg{width:13px;height:13px;color:var(--ink-3);pointer-events:none;position:absolute;left:8px}.lp-search input{background:var(--bg-2);border:1px solid var(--line);width:148px;height:28px;color:var(--ink-1);border-radius:6px;outline:none;padding:0 9px 0 27px;font-size:12px;transition:border-color .15s,box-shadow .15s,width .25s}.lp-search input:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--accent-soft);width:188px}.lp-search input::placeholder{color:var(--ink-4)}.lp-vsep{background:var(--line);flex:none;width:1px;height:18px;margin:0 2px}.lp-chev{color:var(--ink-3);transition:transform .25s var(--ease-out);flex:none}.lp-acc.open .lp-chev{transform:rotate(180deg)}.lp-acc-body-wrap{transition:grid-template-rows .34s var(--ease-out);grid-template-rows:0fr;display:grid}.lp-acc.open .lp-acc-body-wrap{grid-template-rows:1fr}.lp-acc-body{align-items:stretch;min-height:0;display:flex;overflow:hidden}.lp-grid{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;min-width:0;max-height:520px;transition:flex-basis .36s var(--ease-out);flex:100%;overflow:auto}.lp-grid::-webkit-scrollbar{width:9px;height:9px}.lp-grid::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid var(--bg-1);border-radius:5px}.lp-acc.has-chart .lp-grid{flex:46%}.lp-thead,.lp-row{grid-template-columns:1fr 132px 188px 52px;display:grid}.lp-thead{z-index:2;background:var(--bg-2);position:sticky;top:0}.lp-th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);border-bottom:1px solid var(--line);padding:9px 14px;font-size:10.5px;font-weight:600}.lp-th.num{text-align:right}.lp-grp{cursor:pointer;background:var(--bg-2);border-bottom:1px solid var(--line);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 14px;transition:background-color .12s;display:flex}.lp-grp:hover{background:var(--bg-3)}.lp-grp-caret{width:15px;height:15px;color:var(--ink-3);transition:transform .2s var(--ease-out);flex:none}.lp-grp.open .lp-grp-caret{transform:rotate(90deg)}.lp-grp-name{color:var(--ink-1);font-size:12.5px;font-weight:600}.lp-grp-count{color:var(--ink-3);font-variant-numeric:tabular-nums;background:var(--bg-0);border:1px solid var(--line);border-radius:999px;padding:1px 7px;font-size:10.5px}.lp-grp-sel{color:var(--accent);margin-left:auto;font-size:10.5px;font-weight:600}.lp-row{border-bottom:1px solid var(--line);cursor:pointer;transition:background-color .12s,box-shadow .15s}.lp-row:hover{background:var(--bg-2)}.lp-row.sel{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.lp-row.sel:hover{background:color-mix(in srgb, var(--accent-soft) 70%, var(--bg-2))}.lp-cell{min-height:38px;color:var(--ink-1);align-items:center;min-width:0;padding:7px 14px;font-size:12.5px;display:flex}.lp-cell.num{font-variant-numeric:tabular-nums;justify-content:flex-end}.lp-cell.center{justify-content:center}.lp-pname{align-items:center;gap:8px;min-width:0;display:flex}.lp-pname .swatch{visibility:hidden;border-radius:2px;flex:none;width:8px;height:8px}.lp-row.sel .lp-pname .swatch{visibility:visible}.lp-pname .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lp-pname mark{background:var(--accent-soft);color:var(--accent);border-radius:2px;padding:0 1px}.lp-unit{color:var(--ink-3);margin-left:4px;font-size:11px}.lp-time{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:11.5px}.lp-empty{text-align:center;color:var(--ink-3);padding:28px 14px;font-size:12.5px}.lp-cb{border:1.5px solid var(--line-2);cursor:pointer;background:0 0;border-radius:3px;flex:none;place-items:center;width:16px;height:16px;transition:background-color .12s,border-color .12s;display:grid}.lp-cb:hover{border-color:var(--accent)}.lp-cb.on{background:var(--accent);border-color:var(--accent)}.lp-cb.on:after{content:"";border-left:1.5px solid var(--brand-ink);border-bottom:1.5px solid var(--brand-ink);width:8px;height:4px;transform:rotate(-45deg)translate(1px,-1px)}.lp-chart-wrap{border-left:1px solid var(--line);background:var(--bg-1);flex-direction:column;flex:54%;min-width:0;min-height:344px;display:none}.lp-acc.has-chart .lp-chart-wrap{animation:lp-chart-in .42s var(--ease-out) both;display:flex}.lp-chart-h{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;display:flex}.lp-chart-h .t{color:var(--ink-3);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:600}.lp-chart-h .t b{color:var(--ink-1)}.lp-chart-tools{align-items:center;gap:4px;display:inline-flex}.lp-chart-save{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:26px;height:26px;transition:background-color .14s,color .14s;display:inline-grid}.lp-chart-save:hover{background:var(--bg-3);color:var(--ink-1)}.lp-chart-save svg{width:14px;height:14px}.lp-chart-clear{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:4px 7px;font-size:11.5px;transition:background-color .14s,color .14s;display:inline-flex}.lp-chart-clear:hover{background:var(--bad);color:#fff}.lp-chart-clear svg{width:12px;height:12px}.lp-chart-body{flex:1;min-height:300px;position:relative}.lp-chart{position:absolute;inset:0}.lp-chart-skel{background:var(--bg-1);z-index:2;opacity:0;pointer-events:none;transition:opacity .34s var(--ease-out);flex-direction:column;gap:14px;padding:18px 16px 14px;display:flex;position:absolute;inset:0}.lp-chart-skel.show{opacity:1}.lp-chart-skel-plot{border-radius:10px;flex:1}.lp-chart-skel-legend{justify-content:center;gap:16px;padding-bottom:6px;display:flex}.lp-chart-skel-legend span{border-radius:5px;width:74px;height:9px}.lp-chart-skel-plot,.lp-chart-skel-legend span{background:linear-gradient(90deg, var(--bg-2) 25%, var(--bg-3) 50%, var(--bg-2) 75%);background-size:200% 100%;animation:1.3s linear infinite lp-shimmer}.lp-skrow{border-bottom:1px solid var(--line);grid-template-columns:1fr 132px 188px 52px;display:grid}.lp-sk{background:linear-gradient(90deg, var(--bg-2) 25%, var(--bg-3) 50%, var(--bg-2) 75%);background-size:200% 100%;border-radius:5px;height:9px;animation:1.3s linear infinite lp-shimmer;display:inline-block}.lp-skel-stack{flex-direction:column;gap:12px;display:flex}.lp-skel-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);height:56px;position:relative;overflow:hidden}.lp-skel-card:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff0a 50%,#0000 100%);animation:1.6s linear infinite lp-sweep;position:absolute;inset:0}.lp-shell.light .lp-skel-card:after{background:linear-gradient(90deg,#0000 0%,#0f172a0a 50%,#0000 100%)}.lp-page-empty{text-align:center;background:var(--bg-1);border:1px dashed var(--line-2);border-radius:var(--r-lg);color:var(--ink-3);place-items:center;padding:60px 20px;display:grid}.lp-page-empty h3{color:var(--ink-2);margin:12px 0 4px;font-size:14px;font-weight:600}.lp-page-empty p{color:var(--ink-4);margin:0;font-size:12px}@keyframes lp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes lp-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes lp-pulse-dot{0%,to{box-shadow:0 0 0 3px #34d3992e}50%{box-shadow:0 0 0 6px #34d3990f}}@keyframes lp-acc-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes lp-chart-in{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes lp-line-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.lp-stack.lp-enter .lp-acc{animation:lp-acc-in .52s var(--ease-out) backwards}.lp-stack.lp-enter .lp-acc:first-child{animation-delay:30ms}.lp-stack.lp-enter .lp-acc:nth-child(2){animation-delay:90ms}.lp-stack.lp-enter .lp-acc:nth-child(3){animation-delay:.15s}.lp-stack.lp-enter .lp-acc:nth-child(4){animation-delay:.21s}.lp-stack.lp-enter .lp-acc:nth-child(5){animation-delay:.27s}.lp-stack.lp-enter .lp-acc:nth-child(6){animation-delay:.33s}.lp-stack.lp-enter .lp-acc:nth-child(7){animation-delay:.39s}.lp-stack.lp-enter .lp-acc:nth-child(8){animation-delay:.45s}.lp-stack.lp-enter .lp-acc:nth-child(9){animation-delay:.51s}.lp-grp,.lp-row{animation:lp-line-in .34s var(--ease-out) backwards}@media (prefers-reduced-motion:reduce){.lp-stack.lp-enter .lp-acc,.lp-grp,.lp-row,.lp-acc.has-chart .lp-chart-wrap,.lp-sk,.lp-chart-skel-plot,.lp-chart-skel-legend span,.lp-skel-card:after,.lp-pill.online .dot{animation:none!important}.lp-acc-body-wrap,.lp-chart-skel{transition:none!important}}@media (max-width:1100px){.lp-acc.has-chart .lp-acc-body{flex-direction:column}.lp-acc.has-chart .lp-grid{flex:auto}.lp-chart-wrap{border-left:0;border-top:1px solid var(--line)}}@media (max-width:720px){.lp-shell{padding:14px 12px 22px}.lp-page-head{flex-wrap:wrap}.lp-head-meta{width:100%}.lp-acc-h{flex-wrap:wrap}.lp-search input{width:120px}.lp-search input:focus{width:150px}}
.ms-redesign-scope{--bg-0:#0b0f14;--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--brand-ink:#052e16;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .28);--ok:#34d399;--warn:#f5b84a;--err:#f87171;--d-solar:var(--brand);--d-grid:#38bdf8;--d-genset:#a78bfa;--d-load:#f5b84a;--d-export:#f472b6;--r-sm:6px;--r-md:8px;--r-lg:12px;--ease-out:cubic-bezier(.2,.7,.2,1);--ease-spring:cubic-bezier(.34,1.4,.6,1);color:var(--ink-1);font-feature-settings:"cv02","cv11","ss01";letter-spacing:-.003em}.ms-redesign-scope.ms-light{--bg-0:#f6f8fb;--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .25)}.ms-redesign-scope .page-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.ms-redesign-scope .page-head h1{letter-spacing:-.01em;color:var(--ink-1);margin:0;font-size:20px;font-weight:600}.ms-redesign-scope .page-head p{color:var(--ink-3);margin:4px 0 0;font-size:13px}.ms-redesign-scope .head-meta{color:var(--ink-2);align-items:center;gap:10px;font-size:12.5px;display:flex}.ms-redesign-scope .head-meta b{color:var(--ink-1);font-weight:600}.ms-redesign-scope .mut{color:var(--ink-3)}.ms-redesign-scope .btn{border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line);height:32px;color:var(--ink-1);cursor:pointer;transition:background-color .18s var(--ease-out), border-color .18s var(--ease-out), transform .12s var(--ease-out), box-shadow .18s var(--ease-out);align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.ms-redesign-scope .btn:hover{background:var(--bg-3);transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.ms-redesign-scope .btn:active{transform:translateY(0)scale(.97)}.ms-redesign-scope .btn.primary{background:var(--brand);color:var(--brand-ink);border-color:#0000;font-weight:600}.ms-redesign-scope .btn.primary:hover{filter:brightness(1.08);box-shadow:0 4px 18px rgba(var(--brand-rgb), .28)}.ms-redesign-scope .btn.ghost{background:0 0}.ms-redesign-scope .btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.ms-redesign-scope .kpis{gap:12px;display:grid}.ms-redesign-scope .kpi{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-lg);transition:transform .3s var(--ease-spring), border-color .25s var(--ease-out), box-shadow .3s var(--ease-out);padding:14px 16px;position:relative;overflow:hidden}.ms-redesign-scope .kpi:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:0 12px 28px #00000047}.ms-redesign-scope.ms-light .kpi:hover{box-shadow:0 8px 20px #0f172a14}.ms-redesign-scope .kpi:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%), rgba(var(--brand-rgb), .06), transparent 40%);transition:opacity .3s var(--ease-out);position:absolute;inset:0}.ms-redesign-scope .kpi:hover:after{opacity:1}.ms-redesign-scope .reveal{opacity:0;transition:opacity .55s var(--ease-out), transform .55s var(--ease-out);transform:translateY(12px)}.ms-redesign-scope .reveal.in{opacity:1}.ms-redesign-scope .reveal.in:not(.kpi),.ms-redesign-scope .kpi.reveal.in:not(:hover){transform:none}.ms-redesign-scope .reveal.d1{transition-delay:60ms}.ms-redesign-scope .reveal.d2{transition-delay:.12s}.ms-redesign-scope .reveal.d3{transition-delay:.18s}.ms-redesign-scope .reveal.d4{transition-delay:.24s}.ms-redesign-scope .reveal.d5{transition-delay:.3s}@media (prefers-reduced-motion:reduce){.ms-redesign-scope .reveal{opacity:1;transition:none;transform:none}}.ms-redesign-scope .btn .ripple{pointer-events:none;opacity:.18;animation:ms-ripple .6s var(--ease-out) forwards;background:currentColor;border-radius:50%;position:absolute;transform:scale(0)}@keyframes ms-ripple{to{opacity:0;transform:scale(8)}}.ms-redesign-scope .kpi .label{color:var(--ink-2);align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.ms-redesign-scope .kpi .val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink-1);font-size:22px;font-weight:600;line-height:1.15}.ms-redesign-scope .kpi .unit{color:var(--ink-3);margin-left:4px;font-size:12px;font-weight:500}.ms-redesign-scope .kpi .delta{color:var(--ok);align-items:center;gap:4px;margin-top:6px;font-size:11.5px;font-weight:500;display:inline-flex}.ms-redesign-scope .kpi .delta.down{color:var(--err)}.ms-redesign-scope .kpi .delta.mut{color:var(--ink-3)}.ms-redesign-scope .kpi.yield:before,.ms-redesign-scope .kpi.rev:before,.ms-redesign-scope .kpi.co2:before,.ms-redesign-scope .kpi.coal:before,.ms-redesign-scope .kpi.trees:before{content:"";border-radius:0 2px 2px 0;width:2px;position:absolute;top:12px;bottom:12px;left:0}.ms-redesign-scope .kpi.yield:before{background:var(--d-solar)}.ms-redesign-scope .kpi.rev:before{background:var(--d-grid)}.ms-redesign-scope .kpi.co2:before{background:var(--d-load)}.ms-redesign-scope .kpi.coal:before{background:var(--d-genset)}.ms-redesign-scope .kpi.trees:before{background:var(--d-export)}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup) .MuiDataGrid-columnHeaderTitle{-webkit-line-clamp:2;-webkit-box-orient:vertical;text-transform:none!important;letter-spacing:0!important;color:var(--ink-2)!important;white-space:normal!important;text-overflow:ellipsis!important;max-height:26px!important;font-size:12px!important;font-weight:600!important;line-height:1.1!important;display:-webkit-box!important;overflow:hidden!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup) .MuiDataGrid-columnHeaderTitleContainer,.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup) .MuiDataGrid-columnHeaderTitleContainerContent{white-space:normal!important;align-items:center!important;max-height:48px!important;overflow:hidden!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup):not(.MuiDataGrid-columnHeaderCheckbox){padding-left:12px!important;padding-right:12px!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--filledGroup .MuiDataGrid-columnHeaderTitle{text-transform:none!important;letter-spacing:0!important;color:var(--ink-3)!important;font-size:11.5px!important;font-weight:600!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--filledGroup[data-fields^=\|-solar-],.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--filledGroup[data-fields^=\|-production-],.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--filledGroup[data-fields^=\|-pr-],.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-cell[data-field=solar],.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-cell[data-field=production],.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-cell[data-field=pr]{box-shadow:inset 1px 0 0 var(--line)!important}.ms-redesign-scope .dg-site{align-items:center;gap:10px;width:100%;min-width:0;height:100%;display:flex}.ms-redesign-scope .dg-site .s-ic{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;font-weight:600;display:grid}.ms-redesign-scope .dg-site .s-ic.online{background:rgba(var(--brand-rgb), .15);color:#34d399;box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb), .35);font-size:14px;line-height:1;background:rgba(var(--brand-rgb), .25)!important;box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb), .5)!important}.ms-redesign-scope .dg-site .s-ic.warn{color:#f5b84a;background:#f5b84a26;box-shadow:inset 0 0 0 1px #f5b84a66}.ms-redesign-scope .dg-site .s-ic.offline{color:#f87171;background:#f8717126;box-shadow:inset 0 0 0 1px #f8717166}.ms-redesign-scope .dg-site .s-name{color:var(--ink-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.2;overflow:hidden}.ms-redesign-scope .dg-site .s-name b{font-weight:700}.ms-redesign-scope .dg-site .s-sub{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11.5px;line-height:1.3;overflow:hidden}.ms-redesign-scope .trend-bullet{flex:1;max-width:70px;height:14px;position:relative}.ms-redesign-scope .dg-section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:10px;margin:0 0 12px;font-size:11px;font-weight:600;display:flex}.ms-redesign-scope .dg-section-title:after{content:"";background:var(--line);flex:1;height:1px}.ms-redesign-scope .ms-dg-toolbar{border-bottom:1px solid var(--line);background:var(--bg-1);align-items:center;gap:6px;width:100%;padding:8px 10px;display:flex}.ms-redesign-scope .ms-dg-toolbar .sep{flex:1}.ms-redesign-scope .ms-dg-tb-btn{border-radius:var(--r-sm);height:28px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12.5px;transition:background-color .18s,color .18s;display:inline-flex}.ms-redesign-scope .ms-dg-tb-btn:hover{background:var(--bg-2);color:var(--ink-1)}.ms-redesign-scope .ms-dg-tb-btn.active{background:var(--brand-soft);color:#bbf7d0}.ms-redesign-scope .ms-dg-tb-btn .badge{background:var(--brand);min-width:16px;height:16px;color:var(--brand-ink);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;margin-left:4px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:1;display:inline-grid}.ms-redesign-scope .ms-dg-tb-search{align-items:center;margin-left:16px;display:inline-flex;position:relative}.ms-redesign-scope .ms-dg-tb-search input{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);width:220px;height:28px;color:var(--ink-1);outline:none;padding:0 10px 0 28px;font-size:12.5px;transition:border-color .18s,box-shadow .18s,width .25s}.ms-redesign-scope .ms-dg-tb-search input:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft);width:260px}.ms-redesign-scope .ms-dg-tb-search input::placeholder{color:var(--ink-4)}.ms-redesign-scope .ms-dg-tb-search>svg{color:var(--ink-3);position:absolute;top:7px;left:8px}.ms-redesign-scope .ms-dg-tb-export{border-radius:var(--r-sm);height:30px;color:var(--ink-1);cursor:pointer;background:0 0;border:1px solid #ffffff24;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12.5px;font-weight:500;transition:border-color .18s,color .18s,background-color .18s;display:inline-flex}.ms-redesign-scope.ms-light .ms-dg-tb-export{border-color:#0f172a24}.ms-redesign-scope .ms-dg-tb-export:hover{border-color:var(--brand-line);color:var(--brand);background:var(--brand-soft)}.ms-redesign-scope .ms-dg-tb-export .chev{opacity:.85;width:12px;height:12px}.ms-redesign-scope .dg-foot{border-top:1px solid var(--line);background:var(--bg-2);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.ms-redesign-scope .dg-foot .agg{white-space:nowrap}.ms-redesign-scope .dg-foot b{color:var(--ink-1);font-variant-numeric:tabular-nums;font-weight:600}.ms-redesign-scope .dg-foot .right{flex-wrap:nowrap;align-items:center;gap:14px;margin-left:auto;display:flex}.ms-redesign-scope .dg-pagesize{color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.ms-redesign-scope .dg-pagesize-trigger{color:var(--ink-1);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:4px;align-items:center;gap:2px;padding:4px 4px 4px 8px;font-size:12.5px;font-weight:500;transition:background-color .15s;display:inline-flex}.ms-redesign-scope .dg-pagesize-trigger:hover{background:var(--bg-3)}.ms-redesign-scope .dg-pagesize-trigger svg{width:12px;height:12px;color:var(--ink-3)}.ms-redesign-scope .dg-range{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}.ms-redesign-scope .dg-nav{gap:2px;display:inline-flex}.ms-redesign-scope .dg-nav button{width:28px;height:28px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;transition:background-color .15s,color .15s;display:grid}.ms-redesign-scope .dg-nav button:hover:not(:disabled){background:var(--bg-3);color:var(--ink-1)}.ms-redesign-scope .dg-nav button:disabled{opacity:.35;cursor:not-allowed;color:var(--ink-4)}.ms-redesign-scope .dg-nav button svg{width:14px;height:14px}.ms-redesign-scope .MuiDataGrid-footerContainer{display:none!important}.ms-redesign-scope .dg-redesign{background:var(--bg-1)!important;border:1px solid var(--line)!important;border-radius:var(--r-lg)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-row,.ms-redesign-scope .dg-redesign .MuiDataGrid-row.even,.ms-redesign-scope .dg-redesign .MuiDataGrid-row.odd{background:var(--bg-1)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-row:hover,.ms-redesign-scope .dg-redesign .MuiDataGrid-row.even:hover,.ms-redesign-scope .dg-redesign .MuiDataGrid-row.odd:hover{background:var(--bg-2)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-cell{background:0 0!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-overlayWrapper,.ms-redesign-scope .dg-redesign .MuiDataGrid-main{background:var(--bg-1)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeaders,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeaderRow,.ms-redesign-scope .dg-redesign .MuiDataGrid-topContainer,.ms-redesign-scope .dg-redesign .MuiDataGrid-pinnedColumnHeaders,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnGroupHeader{background:var(--bg-2)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-pinnedColumns--left .MuiDataGrid-row,.ms-redesign-scope .dg-redesign .MuiDataGrid-pinnedColumns--left .MuiDataGrid-row.even,.ms-redesign-scope .dg-redesign .MuiDataGrid-pinnedColumns--left .MuiDataGrid-row.odd{background:var(--bg-1)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-pinnedColumns--left .MuiDataGrid-row:hover{background:var(--bg-2)!important}.ms-redesign-scope .ms-dg-toolbar{background:var(--bg-1)!important}.ms-redesign-scope .dg-foot{background:var(--bg-2)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller,.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScrollerContent{background:var(--bg-1)!important}@media (max-width:1919.98px){.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScrollerContent{padding-top:8px}}.ms-redesign-scope .dg-redesign ::-webkit-scrollbar{width:10px;height:10px}.ms-redesign-scope .dg-redesign ::-webkit-scrollbar-thumb{background:var(--line-2)!important;border:2px solid var(--bg-1)!important;border-radius:5px!important}.ms-redesign-scope .dg-redesign ::-webkit-scrollbar-track{background:0 0!important}.ms-redesign-scope .dg-redesign ::-webkit-scrollbar-corner{background:0 0!important}.ms-redesign-scope .dg-redesign *{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.ms-redesign-scope .dg-redesign .MuiDataGrid-filler--pinnedLeft,.ms-redesign-scope .dg-redesign .MuiDataGrid-cell.MuiDataGrid-cellEmpty{display:none!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-filler>*{border-top:0!important;border-color:var(--line)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader--filledGroup,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup){border-bottom:1px solid var(--line)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeaderTitleContainer,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeaderTitleContainerContent{border-bottom:0!important;border-color:var(--line)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-withBorderColor{border-color:var(--line)!important}.ms-redesign-scope .MuiDataGrid-pinnedColumns--left,.ms-redesign-scope .MuiDataGrid-pinnedColumnHeaders--left{border-right:1px solid var(--line)!important;box-shadow:4px 0 6px -4px #00000059!important}.ms-redesign-scope.ms-light .MuiDataGrid-pinnedColumns--left,.ms-redesign-scope.ms-light .MuiDataGrid-pinnedColumnHeaders--left{box-shadow:4px 0 6px -4px #0f172a1a!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--alignRight,.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--alignRight .MuiDataGrid-columnHeaderDraggableContainer{flex-direction:row!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeaderTitleContainer{flex-direction:row!important;justify-content:flex-start!important;align-items:center!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--alignRight .MuiDataGrid-columnHeaderTitleContainer{justify-content:flex-end!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--alignRight .MuiDataGrid-columnHeaderTitleContainerContent{order:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader--alignRight .MuiDataGrid-iconButtonContainer{order:1!important;margin-left:4px!important;margin-right:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeader .MuiDataGrid-menuIcon{flex:none!important;order:99!important;width:18px!important;margin-left:auto!important;margin-right:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-menuIconButton{width:18px!important;height:18px!important;padding:2px!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-menuIconButton svg{width:14px!important;height:14px!important;font-size:14px!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-columnHeaderDraggableContainer{flex:auto!important;min-width:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-iconButtonContainer{flex:none!important;width:16px!important;min-width:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-iconButtonContainer button{width:16px!important;height:16px!important;padding:0!important}.ms-redesign-scope .MuiDataGrid-root .MuiDataGrid-iconButtonContainer svg{width:12px!important;height:12px!important;font-size:12px!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup) .MuiDataGrid-columnHeaderTitleContainerContent:after{content:"";vertical-align:middle;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='%237C8899' opacity='0.7'><path d='M5 1.5l3 3.5h-6z'/><path d='M5 12.5l3 -3.5h-6z'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:contain;flex:none;width:8px;height:10px;margin-left:4px;transition:opacity .18s;display:inline-block}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--filledGroup):hover .MuiDataGrid-columnHeaderTitleContainerContent:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 14' fill='%23A6B3C4'><path d='M5 1.5l3 3.5h-6z'/><path d='M5 12.5l3 -3.5h-6z'/></svg>")}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader--sorted .MuiDataGrid-columnHeaderTitleContainerContent:after,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:hover .MuiDataGrid-columnHeaderTitleContainerContent:after,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader[data-field=productionTrend] .MuiDataGrid-columnHeaderTitleContainerContent:after,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader[data-field=irradianceTrend] .MuiDataGrid-columnHeaderTitleContainerContent:after{display:none}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:not(.MuiDataGrid-columnHeader--sorted):not(:hover) .MuiDataGrid-iconButtonContainer,.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:not(:hover) .MuiDataGrid-menuIcon{width:0!important;overflow:hidden!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:hover .MuiDataGrid-iconButtonContainer{width:16px!important;overflow:visible!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-columnHeader:hover .MuiDataGrid-menuIcon{width:18px!important;overflow:visible!important}.ms-redesign-scope .dg-redesign [data-field=size].MuiDataGrid-cell,.ms-redesign-scope .dg-redesign [data-field=size].MuiDataGrid-columnHeader{box-shadow:inset 1px 0 0 var(--line)!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller,.ms-redesign-scope .dg-redesign .MuiDataGrid-scrollArea{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller::-webkit-scrollbar{width:10px;height:10px}.ms-redesign-scope .dg-redesign .MuiDataGrid-scrollArea::-webkit-scrollbar{width:10px;height:10px}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller::-webkit-scrollbar:horizontal{height:0!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-scrollArea::-webkit-scrollbar:horizontal{height:0!important}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid var(--bg-1);border-radius:5px}.ms-redesign-scope .dg-redesign .MuiDataGrid-scrollArea::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid var(--bg-1);border-radius:5px}.ms-redesign-scope .dg-redesign .MuiDataGrid-virtualScroller::-webkit-scrollbar-track{background:0 0}.ms-redesign-scope .dg-redesign .MuiDataGrid-scrollArea::-webkit-scrollbar-track{background:0 0}.dg-pop{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .28);--r-sm:6px;--r-md:8px;background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--r-md);z-index:80;color:var(--ink-1);font-feature-settings:"cv02","cv11","ss01";letter-spacing:-.003em;font-family:Inter,SF Pro Text,system-ui,-apple-system,sans-serif;font-size:12.5px;position:fixed;box-shadow:0 10px 30px #00000061,0 4px 10px #00000038}body.light .dg-pop,.dg-light-pop{--bg-1:#fff;--bg-2:#f8fafc;--bg-3:#f1f4f9;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;background:#fff}.dg-pop.dg-cols-pop{flex-direction:column;width:248px;max-height:380px;display:flex;overflow:hidden}.dg-pop-search{border-bottom:1px solid var(--line);padding:10px 10px 8px;position:relative}.dg-pop-search>svg{width:13px;height:13px;color:var(--ink-3);position:absolute;top:18px;left:18px}.dg-pop-search input{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);width:100%;height:30px;color:var(--ink-1);outline:none;padding:0 10px 0 30px;font-family:inherit;font-size:12.5px;transition:border-color .15s,box-shadow .15s}.dg-pop-search input:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft)}.dg-pop-list{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;flex:1;padding:4px;overflow-y:auto}.dg-pop-list::-webkit-scrollbar{width:8px}.dg-pop-list::-webkit-scrollbar-thumb{background:var(--line-2);border:2px solid var(--bg-1);border-radius:4px}.dg-row-cb{cursor:pointer;color:var(--ink-1);-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;gap:10px;padding:7px 8px;font-size:12.5px;line-height:1.2;transition:background-color .12s;display:flex}.dg-row-cb:hover{background:var(--bg-2)}.dg-row-cb.empty{color:var(--ink-3);cursor:default;justify-content:center;padding:14px 8px;font-style:italic}.dg-row-cb.empty:hover{background:0 0}.dg-cb{border:1.5px solid var(--line-2);cursor:pointer;background:0 0;border-radius:3px;flex:none;place-items:center;width:16px;height:16px;transition:all .15s;display:grid}.dg-cb:hover{border-color:var(--brand)}.dg-cb.on{background:var(--brand);border-color:var(--brand)}.dg-cb.on:after{content:"";border-bottom:1.5px solid #052e16;border-left:1.5px solid #052e16;width:8px;height:4px;transform:rotate(-45deg)translate(1px,-1px)}.dg-pop-foot{border-top:1px solid var(--line);background:var(--bg-2);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.dg-pop-foot .dg-row-cb{flex:1;padding:6px 4px}.dg-pop-foot .link{color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:6px 8px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background-color .12s}.dg-pop-foot .link:hover{background:var(--brand-soft)}.dg-pop.dg-filters-pop{min-width:480px;max-width:calc(100vw - 32px);padding:10px}.dg-pop-rows{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.dg-filter-row{grid-template-columns:1fr 1fr 1fr 28px;align-items:end;gap:8px;display:grid}.dg-field{position:relative}.dg-field-label{background:var(--bg-1);letter-spacing:.02em;color:var(--ink-3);pointer-events:none;z-index:1;padding:0 4px;font-size:10.5px;position:absolute;top:-7px;left:9px}.dg-field-control{background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--r-sm);width:100%;height:38px;color:var(--ink-1);cursor:pointer;text-align:left;outline:none;justify-content:space-between;align-items:center;padding:0 28px 0 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s;display:flex}.dg-field-control:hover{border-color:var(--ink-3)}.dg-field-control:focus,.dg-field.open .dg-field-control{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft)}.dg-field-control .chev{width:12px;height:12px;color:var(--ink-3);transition:transform .18s;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.dg-field.open .dg-field-control .chev{transform:translateY(-50%)rotate(180deg)}.dg-field-control .ctrl-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}input.dg-field-control{cursor:text;padding-right:10px}input.dg-field-control::placeholder{color:var(--ink-4)}input.dg-field-control:disabled{opacity:.5;cursor:not-allowed}.dg-field-pop{background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--r-sm);z-index:5;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;max-height:240px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 30px #00000061,0 4px 10px #00000038}.dg-field-pop button{text-align:left;width:100%;color:var(--ink-1);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:7px 10px;font-family:inherit;font-size:13px;transition:background-color .12s;display:block}.dg-field-pop button:hover{background:var(--bg-2)}.dg-field-pop button.selected{background:var(--brand-soft);color:var(--brand)}.dg-row-trash{width:28px;height:38px;color:var(--ink-3);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;place-items:center;transition:background-color .12s,color .12s;display:grid}.dg-row-trash:hover{background:var(--bg-2);color:#f87171}.dg-row-trash svg{width:14px;height:14px}.dg-filters-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:2px;padding-top:6px;display:flex}.dg-link-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;padding:6px 8px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background-color .12s;display:inline-flex}.dg-link-btn:hover{background:var(--brand-soft)}.dg-link-btn.danger{color:var(--ink-2)}.dg-link-btn.danger:hover{background:var(--bg-2);color:#f87171}.dg-link-btn svg{width:13px;height:13px}.dg-pop-empty{text-align:center;color:var(--ink-3);padding:18px 10px;font-size:12.5px}.ms-redesign-scope .ms-dg-tb-btn .ms-badge{background:var(--brand);min-width:16px;height:16px;color:var(--brand-ink);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;margin-left:4px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:1;display:inline-grid}.ms-redesign-scope .ms-dg-menu{background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--r-md);z-index:70;min-width:120px;padding:4px;position:absolute;box-shadow:0 10px 30px #00000061,0 4px 10px #00000038}.ms-redesign-scope .ms-dg-menu button{width:100%;color:var(--ink-1);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:8px 10px;font-size:12.5px;display:flex}.ms-redesign-scope .ms-dg-menu button:hover{background:var(--bg-2)}.ms-redesign-scope .ms-dg-menu button.selected{background:var(--brand-soft);color:var(--brand)}@media (max-width:1200px){.ms-redesign-scope .kpis{grid-template-columns:repeat(4,1fr)!important}.ms-redesign-scope .page-head{flex-wrap:wrap}.ms-redesign-scope .page-head .head-meta{flex-wrap:wrap;width:100%}}@media (max-width:960px){.ms-redesign-scope .kpis{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:560px){.ms-redesign-scope .kpis{grid-template-columns:1fr!important}}.ms-spark{display:block;position:relative}.ms-spark svg{cursor:crosshair;display:block;overflow:visible}.ms-spark-cursor line{stroke:var(--ink-3,#7c8899);stroke-width:1px;stroke-dasharray:2 2}.ms-spark-cursor circle{stroke:var(--bg-1,#10161e);stroke-width:2px}.ms-spark-tip{z-index:1500;pointer-events:none;white-space:nowrap;border-radius:var(--r-sm,6px);background:var(--bg-1,#10161e);border:1px solid var(--line-2,#2a3547);color:var(--ink-1,#e6edf5);padding:5px 9px;font-size:12px;line-height:1.3;position:fixed;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 8px 24px #00000052,0 2px 6px #0000002e}.ms-spark-tip b{font-variant-numeric:tabular-nums;font-weight:600}.ms-spark-tip span{color:var(--ink-3,#7c8899);margin-left:7px}
.ms-dg-toolbar{--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .28);--r-sm:6px;--ease-out:cubic-bezier(.2,.7,.2,1);border-bottom:1px solid var(--line);background:var(--bg-1);width:100%;color:var(--ink-1);align-items:center;gap:6px;padding:8px 10px;font-family:inherit;display:flex}body.light .ms-dg-toolbar{--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8}.ms-dg-toolbar .sep{flex:1}.ms-dg-tb-search{align-items:center;margin-left:16px;display:inline-flex;position:relative}.ms-dg-tb-search input{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);width:220px;height:28px;color:var(--ink-1);outline:none;padding:0 10px 0 28px;font-family:inherit;font-size:12.5px;transition:border-color .18s,box-shadow .18s,width .25s}.ms-dg-tb-search input:focus{border-color:var(--brand-line);box-shadow:0 0 0 3px var(--brand-soft);width:260px}.ms-dg-tb-search input::placeholder{color:var(--ink-4)}.ms-dg-tb-search>svg{color:var(--ink-3);position:absolute;top:7px;left:8px}.ms-dg-tb-btn{border-radius:var(--r-sm);height:28px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12.5px;transition:background-color .18s,color .18s;display:inline-flex}.ms-dg-tb-btn:hover{background:var(--bg-2);color:var(--ink-1)}.ms-dg-tb-btn.active{background:var(--brand-soft);color:#bbf7d0}.ms-dg-tb-btn .ms-badge{background:var(--brand);min-width:16px;height:16px;color:var(--brand-ink,#052e16);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;margin-left:4px;padding:0 5px;font-size:10.5px;font-weight:700;line-height:1;display:inline-grid}.ms-dg-tb-export{border-radius:var(--r-sm);height:30px;color:var(--ink-1);cursor:pointer;background:0 0;border:1px solid #ffffff24;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:12.5px;font-weight:500;transition:border-color .18s,color .18s,background-color .18s;display:inline-flex}body.light .ms-dg-tb-export{border-color:#0f172a24}.ms-dg-tb-export:hover{border-color:var(--brand-line);color:var(--brand);background:var(--brand-soft)}.ms-dg-tb-export .chev{opacity:.85;width:12px;height:12px}
.fm-scope{--bg-0:#0b0f14;--bg-1:#10161e;--bg-2:#151c26;--bg-3:#1c2532;--line:#202a38;--line-2:#2a3547;--ink-1:#e6edf5;--ink-2:#a6b3c4;--ink-3:#7c8899;--ink-4:#5a6576;--brand-ink:#052e16;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .28);--ok:#34d399;--warn:#f5b84a;--err:#f87171;--map-bg-0:#0a0f16;--map-bg-1:#080c12;--map-overlay:#10161ed9;--r-sm:6px;--r-md:8px;--r-lg:12px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-spring:cubic-bezier(.34, 1.4, .6, 1);color:var(--ink-1);font-feature-settings:"cv02", "cv11", "ss01";letter-spacing:-.003em}.fm-scope.fm-light{--bg-0:#f6f8fb;--bg-1:#fff;--bg-2:#f1f4f9;--bg-3:#e7ecf3;--line:#e5eaf1;--line-2:#d7dee8;--ink-1:#0f172a;--ink-2:#475569;--ink-3:#64748b;--ink-4:#94a3b8;--brand-soft:rgba(var(--brand-rgb), .1);--brand-line:rgba(var(--brand-rgb), .25);--map-bg-0:#f2f6fb;--map-bg-1:#e7eef7;--map-overlay:#ffffffe0}.fm-scope .page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.fm-scope .page-head h1{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:600}.fm-scope .page-head p{color:var(--ink-3);margin:4px 0 0;font-size:13px}.fm-scope .head-meta{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.fm-scope .seg{background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:2px;display:inline-flex;position:relative}.fm-scope .seg button{height:26px;color:var(--ink-2);z-index:1;cursor:pointer;transition:color .18s var(--ease-out), background .18s var(--ease-out);background:0 0;border:0;border-radius:999px;padding:0 14px;font-family:inherit;font-size:12px}.fm-scope .seg button:hover{color:var(--ink-1)}.fm-scope .seg button.active{color:var(--ink-1);background:var(--bg-0);box-shadow:0 1px 4px #00000040}.fm-scope .btn{border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line);height:32px;color:var(--ink-1);cursor:pointer;transition:background-color .18s var(--ease-out), border-color .18s var(--ease-out), transform .12s var(--ease-out), box-shadow .18s var(--ease-out);align-items:center;gap:6px;padding:0 12px;font-family:inherit;font-size:12.5px;font-weight:500;display:inline-flex}.fm-scope .btn:hover{background:var(--bg-3);transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.fm-scope .btn:active{transform:translateY(0)scale(.97)}.fm-scope .btn.ghost{background:0 0}.fm-scope .wm-panel{border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg-1);position:relative;overflow:hidden}.fm-scope .worldmap{background:radial-gradient(1200px 600px at 30% 30%, rgba(var(--brand-rgb), .04), transparent 55%), radial-gradient(900px 500px at 75% 70%, #38bdf808, transparent 60%), linear-gradient(180deg, var(--map-bg-0) 0%, var(--map-bg-1) 100%);border-radius:var(--r-md);contain:layout paint;width:100%;height:640px;display:block;position:relative}.fm-scope .wm-load{z-index:3;pointer-events:none;transition:opacity .5s var(--ease-out), visibility .5s;background:linear-gradient(#0a0f16cc,#0a0f16f2);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.fm-scope.fm-light .wm-load{background:linear-gradient(#f7fafdcc,#e6edf7f2)}.fm-scope .wm-load.done{opacity:0;visibility:hidden}.fm-scope .wm-load-orb{background:radial-gradient(circle at 35% 35%, var(--brand-active-text), var(--brand) 55%, #065f46 100%);width:48px;height:48px;box-shadow:0 0 0 0 rgba(var(--brand-rgb), .6), 0 20px 60px rgba(var(--brand-rgb), .35);border-radius:50%;animation:2.2s ease-in-out infinite fm-orb;position:relative}.fm-scope .wm-load-orb:before,.fm-scope .wm-load-orb:after{content:"";border:1.5px solid rgba(var(--brand-rgb), .5);border-radius:50%;animation:2.2s ease-out infinite fm-ring;position:absolute;inset:-6px}.fm-scope .wm-load-orb:after{animation-delay:1.1s}@keyframes fm-orb{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes fm-ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.8)}}.fm-scope .wm-load-txt{color:var(--ink-1);letter-spacing:.02em;font-size:13px;font-weight:600}.fm-scope .wm-load-sub{color:var(--ink-3);font-size:11px}.fm-scope .wm-engine-badge{background:var(--map-overlay);border:1px solid var(--line);color:var(--ink-2);z-index:2;letter-spacing:.02em;-webkit-backdrop-filter:blur(10px)saturate(1.2);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;display:inline-flex;position:absolute;top:16px;left:50%;transform:translate(-50%)}.fm-scope .wm-engine-badge:before{content:"";background:var(--brand);width:6px;height:6px;box-shadow:0 0 8px var(--brand);border-radius:50%}.fm-scope .fm-overlay{background:var(--map-overlay);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px)saturate(1.2);transition:background .4s,border-color .3s,color .3s}.fm-scope .wm-stats{z-index:2;gap:8px;min-width:172px;display:grid;position:absolute;top:16px;left:16px}.fm-scope .fm-stat{min-width:140px;animation:fm-slide-in .5s var(--ease-out) both;border-radius:8px;padding:10px 12px;transition:border-color .2s,transform .2s,background .4s}.fm-scope .fm-stat:hover{border-color:var(--line-2);transform:translate(2px)}.fm-scope .fm-stat .num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:22px;font-weight:600;line-height:1.1}.fm-scope .fm-stat .num .unit{color:var(--ink-3);margin-left:4px;font-size:12px}.fm-scope .fm-stat .lbl{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);align-items:center;gap:6px;margin-bottom:4px;font-size:10.5px;display:flex}.fm-scope .fm-stat .dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.fm-scope .fm-stat .ok-ink{color:var(--ok)}.fm-scope .fm-stat .err-ink{color:var(--err)}.fm-scope .fm-sep{border:0;border-top:1px solid var(--line);margin:2px 0}@keyframes fm-slide-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.fm-scope .wm-stats .fm-stat:first-child{animation-delay:50ms}.fm-scope .wm-stats .fm-stat:nth-child(2){animation-delay:.12s}.fm-scope .wm-stats .fm-stat:nth-child(3){animation-delay:.19s}.fm-scope .wm-stats .fm-stat:nth-child(4){animation-delay:.26s}.fm-scope .wm-stats .fm-stat:nth-child(6){animation-delay:.34s}.fm-scope .wm-stats .fm-stat:nth-child(7){animation-delay:.4s}.fm-scope .wm-regions{z-index:2;min-width:150px;animation:fm-slide-in-r .55s var(--ease-out) both;border-radius:10px;padding:10px 12px;animation-delay:.2s;position:absolute;top:16px;right:16px}@keyframes fm-slide-in-r{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}.fm-scope .wm-regions-h{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:10.5px;font-weight:600}.fm-scope .wm-regions-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.fm-scope .wm-regions button{border:1px solid var(--line);color:var(--ink-2);cursor:pointer;transition:all .18s var(--ease-out);background:0 0;border-radius:6px;padding:6px 8px;font-family:inherit;font-size:11px}.fm-scope .wm-regions button:hover{background:var(--bg-2);color:var(--ink-1);border-color:var(--line-2);transform:translateY(-1px);box-shadow:0 4px 10px #00000040}.fm-scope .wm-regions button.active{background:linear-gradient(180deg, rgba(var(--brand-rgb), .18), rgba(var(--brand-rgb), .08));border-color:rgba(var(--brand-rgb), .45);color:var(--brand-active-text)}.fm-scope .wm-legend{color:var(--ink-2);z-index:2;animation:fm-slide-in-b .55s var(--ease-out) both;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:12px;animation-delay:.3s;display:flex;position:absolute;bottom:16px;left:16px}@keyframes fm-slide-in-b{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fm-scope .wm-legend-h{color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin-right:4px;font-size:10.5px}.fm-scope .wm-legend-item{align-items:center;gap:6px;display:inline-flex}.fm-scope .wm-legend-item .d{border-radius:50%;flex-shrink:0;width:10px;height:10px}.fm-scope .wm-legend-item .d-sq{border-radius:2px}.fm-scope .wm-legend-item .d-tri{border-bottom:10px solid #ea580c;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;background:0 0!important}.fm-scope .wm-legend-item .d-dia{border-radius:2px;transform:rotate(45deg)}.fm-scope .wm-legend-sub{color:var(--ink-4);margin-left:4px;font-size:11px}.fm-scope .wm-clock{color:var(--ink-3);z-index:2;text-align:right;animation:fm-slide-in-b .55s var(--ease-out) both;border-radius:10px;padding:8px 12px;font-size:11px;animation-delay:.4s;position:absolute;bottom:16px;right:16px}.fm-scope .wm-clock-t{color:var(--ink-1);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:13px;font-weight:600}.fm-scope .wm-clock-s{color:var(--ink-3);margin-top:2px;font-size:11px}.fm-scope .wm-attr{color:var(--ink-4);z-index:2;pointer-events:none;font-size:10px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.wm-tt{min-width:220px;max-width:280px;font-family:Inter,system-ui,sans-serif}.wm-tt-h{border-bottom:1px solid #ffffff14;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:6px;display:flex}.wm-tt-h .dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 12px}.wm-tt-h .nm{flex:1;font-size:13px;font-weight:600}.wm-tt-h .st{text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:500}.wm-tt-loc{opacity:.7;margin-bottom:8px;font-size:11px}.wm-tt-grid{grid-template-columns:auto 1fr;gap:4px 12px;font-size:12px;display:grid}.wm-tt-grid .k{opacity:.6}.wm-tt-grid .v{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.wm-tt-alarm{border-top:1px solid #ffffff14;margin-top:8px;padding-top:8px;font-size:11.5px}.fm-scope .fm-cards{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;display:grid}.fm-scope .fm-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-md);padding:16px}.fm-scope .fm-card-h{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:12px;font-size:11.5px}.fm-scope .fm-row{justify-content:space-between;align-items:center;gap:12px;padding:3px 0;font-size:12.5px;display:flex}.fm-scope .fm-row b{font-weight:600}.fm-scope .fm-row .mut{color:var(--ink-3);font-size:11px}.fm-scope .fm-tag{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.fm-scope .fm-tag.err{color:#fca5a5;background:#f8717126}.fm-scope .fm-tag.major{color:#fdba74;background:#ea580c26}.fm-scope .fm-tag.warn{color:#fcd34d;background:#f5b84a26}.fm-scope .fm-pbar{background:var(--bg-3);border-radius:999px;height:6px;margin-top:4px;overflow:hidden}.fm-scope .fm-pbar i{border-radius:999px;height:100%;display:block}@media (max-width:900px){.fm-scope .fm-cards{grid-template-columns:1fr}.fm-scope .wm-stats{display:none}}.fm-scope.slm-wrap{border-radius:var(--r-md);border:1px solid var(--line);isolation:isolate;position:relative;overflow:hidden}.fm-scope .slm-map{background:radial-gradient(900px 500px at 30% 25%, rgba(var(--brand-rgb), .05), transparent 55%), radial-gradient(700px 420px at 78% 75%, #38bdf80a, transparent 60%), linear-gradient(180deg, var(--map-bg-0) 0%, var(--map-bg-1) 100%);width:100%;height:360px;display:block}.fm-scope .slm-hint{height:30px;color:var(--ink-2);z-index:2;pointer-events:none;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:11.5px;display:inline-flex;position:absolute;top:12px;left:12px}.fm-scope .slm-hint>svg{color:var(--brand);flex-shrink:0}.fm-scope .slm-coords{height:30px;color:var(--ink-2);font-variant-numeric:tabular-nums;z-index:2;border-radius:16px;align-items:center;gap:8px;padding:0 12px;font-family:JetBrains Mono,SF Mono,monospace;font-size:11.5px;display:inline-flex;position:absolute;bottom:12px;left:12px}.fm-scope .slm-coords>svg{color:var(--brand);flex-shrink:0}
