@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-ext-wght-normal-C8S-KRRz.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Red Hat Mono Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/red-hat-mono-latin-ext-wght-normal-BQQ6IFDA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Red Hat Mono Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/red-hat-mono-latin-wght-normal-Dwfc5A3M.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--f-sans:"Manrope Variable", "Manrope", system-ui, sans-serif;--f-mono:"Red Hat Mono Variable", ui-monospace, "SF Mono", Menlo, monospace;--t-xs:11.5px;--t-s:12.5px;--t-m:14px;--t-l:17px;--t-xl:22px;--t-2xl:32px;--t-3xl:38px;--gutter:20px;--side-w:340px;--fleet-w:340px;--band-h:196px;--r-panel:20px;--r-card:14px;--r-ctl:11px}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font:400 var(--t-m)/1.45 var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}svg{flex:none}.hint{font-size:var(--t-xs);color:var(--ink-2);margin:0}.app{height:100dvh;position:relative;overflow:hidden}.stage{background:var(--ground);position:absolute;inset:0;overflow:hidden}#bg,#map,.map-layer{width:100%;height:100%;display:block;position:absolute;inset:0}.map-layer{pointer-events:none}.map-layer.dim{opacity:var(--dim)}.bg-wrap{position:absolute;inset:0}.map-layer.overview,.map-layer.selection{transform-origin:0 0;inset:0 auto auto 0}.map-layer.motion{transform-origin:0 0;inset:auto}.stage.moving .bg-wrap{will-change:transform;transform-origin:0 0}#map{touch-action:pan-y;outline:none}#map.zoomed{touch-action:none;cursor:grab}#map.grabbing{cursor:grabbing}.stage:has(#map:focus-visible){box-shadow:inset 0 0 0 2px var(--focus)}.vignette{pointer-events:none;background:linear-gradient(180deg, var(--vig-top), transparent var(--vig-top-h)), radial-gradient(var(--vig-size) at var(--vig-at), transparent var(--vig-from), var(--vig-color) 100%);position:absolute;inset:0}.stage-msg{text-align:center;border:1px solid var(--glass-line);border-radius:var(--r-card);background:var(--glass-strong);max-width:min(420px,100% - 32px);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);box-shadow:var(--glass-shadow);margin:0;padding:12px 16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pg0{fill:var(--m-ground)}.pr0{stroke:var(--m-row)}.pg1{fill:var(--m-g1)}.pr1{stroke:var(--m-g1r)}.pg2{fill:var(--m-g2)}.pr2{stroke:var(--m-g2r)}.pg3{fill:var(--m-g3)}.pr3{stroke:var(--m-g3r)}.prow{stroke-width:1.1px}.flower{fill:var(--m-flower)}.bg-a-field{fill:url(#rows0)}.bg-a-field1{fill:url(#rows1)}.bg-a-field2{fill:url(#rows2)}.bg-a-field3{fill:url(#rows3)}.bg-a-verge{fill:var(--m-verge)}.bg-a-grass{fill:var(--m-grass)}.bg-a-mown{fill:var(--m-mown)}.bg-a-meadow{fill:var(--m-meadow);stroke:var(--m-meadow);stroke-width:.4px}.bg-a-flowers{fill:url(#flowers)}.bg-a-hedge{fill:var(--m-hedge);stroke:var(--m-hedge);stroke-width:.4px}.bg-a-belt{fill:var(--m-belt);stroke:var(--m-belt);stroke-width:.4px}.bg-a-tree{fill:var(--m-crown)}.bg-a-tree-hi{fill:var(--m-crown-hi);opacity:.8}.bg-a-shrub{fill:var(--m-shrub);opacity:.75}.bg-a-building,.bg-a-station{fill:var(--m-building);stroke:var(--m-building);stroke-width:.4px}.bg-a-paved{fill:var(--m-road-edge);opacity:.6}.bg-a-track{fill:var(--m-track);stroke:var(--m-road-edge);stroke-width:.5px}.bg-a-water{fill:var(--m-water)}.bg-a-tech{fill:var(--m-tech)}.bg-a-area{fill:var(--m-verge)}.bg-shadows{fill:var(--m-shadow);opacity:0;transition:opacity .4s}[class^=bg-l-]{fill:none;stroke-linejoin:round;stroke-linecap:round}.thin{vector-effect:non-scaling-stroke;stroke-width:1px}.bg-l-road{stroke:var(--m-road);stroke-linecap:butt}.bg-l-road-edge{stroke:var(--m-road-edge);stroke-linecap:butt}.bg-l-parcel{stroke:var(--m-cad);stroke-dasharray:7 2.5 1.5 2.5}.bg-l-fence{stroke:var(--m-fence);stroke-dasharray:4 2}.bg-l-cable{stroke:var(--m-cable);opacity:.6}.bg-l-berm{stroke:var(--m-berm)}.bg-l-line{stroke:var(--m-line);opacity:.8}[class^=bg-t-]{fill:var(--m-label);text-anchor:middle;dominant-baseline:central}.bg-t-parcel{font-family:var(--f-mono);letter-spacing:.04em}.bg-t-area{font-family:var(--f-sans);letter-spacing:.12em;font-weight:600}.bg-t-note{font-family:var(--f-mono)}.hud{grid-template-columns:var(--side-w) minmax(0, 1fr) var(--fleet-w);grid-template-rows:auto auto auto minmax(0, 1fr) var(--band-h);gap:18px var(--gutter);padding:14px var(--gutter) var(--gutter);pointer-events:none;grid-template-areas:"top top top""ident.fleet""notice.fleet"". .fleet""band band fleet";display:grid;position:absolute;inset:0}.hud>*,.topbar>*,.band>*{pointer-events:auto}.fleet,.day,.detail,.notice,.zoom button,.caption,.tag,.pop,.pill,.stage-msg{-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}.fleet,.day,.detail,.notice{border:1px solid var(--glass-line);background:linear-gradient(180deg, var(--glass-hi), transparent 120px), var(--glass);box-shadow:var(--glass-shadow)}.own-glass .stage :is(.zoom button,.caption,.tag,.stage-msg){-webkit-backdrop-filter:none;backdrop-filter:none}@media (min-width:861px){.own-glass :is(.fleet,.day,.detail,.notice,.pill){-webkit-backdrop-filter:none;backdrop-filter:none}}.glass-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.glass-main{display:block;position:absolute;top:0;left:0}.glass-pane{position:absolute;top:0;left:0;overflow:hidden}.glass-pane canvas{display:block;position:absolute;top:0;left:0}.topbar{pointer-events:none;grid-area:top;justify-content:space-between;align-items:center;gap:16px;min-height:40px;display:flex}.brand{font-size:var(--t-m);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:650;display:flex}.mark{width:22px;height:22px}.mark rect{fill:var(--ink-3)}.mark rect.lit{fill:var(--accent)}.view-mark{border-left:1px solid var(--line-strong);font-size:var(--t-s);color:var(--ink-2);white-space:nowrap;padding-left:10px;font-weight:600}.top-actions{align-items:center;gap:6px;display:flex}.ghost{height:34px;color:var(--ink-2);font-size:var(--t-s);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-weight:550;text-decoration:none;display:inline-flex}.ghost:hover{color:var(--ink);background:var(--hover)}.ghost svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:15px;height:15px}.ghost svg .fill{fill:currentColor;stroke:none}.ghost .caret{stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px;margin-left:-4px}.gate{grid-area:2/1/5/2;min-width:0;display:none}.app.gated .gate{display:block}.app.gated :is(.ident,.notice,.band,.fleet){display:none}.app.gated .stage{visibility:hidden}.gate>*{border:1px solid var(--glass-line);border-radius:var(--r-panel);background:linear-gradient(180deg, var(--glass-hi), transparent 120px), var(--glass);max-width:360px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);padding:20px 22px 22px}.gate h1{font-size:var(--t-2xl)}.gate .desc{margin:10px 0 22px}.gate-note .desc{margin-bottom:0}.gate-field{z-index:-1;background:var(--ground);pointer-events:none;display:none;position:fixed;inset:0}.app.gated .gate-field{display:block}.gate-field svg{opacity:.4;width:100%;height:100%;display:block;position:absolute;inset:0}.gf-module{fill:var(--panel-0)}.gf-mown{fill:var(--m-mown)}.signin{gap:14px;display:grid}.field{font-size:var(--t-xs);color:var(--ink-2);gap:6px;font-weight:600;display:grid}.field input{border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--field);height:40px;color:var(--ink);font-size:var(--t-m);padding:0 12px;font-weight:400}.field input:hover{border-color:var(--glass-line-strong)}.field input:focus-visible{outline-offset:0}.gate-msg{font-size:var(--t-s);color:var(--warn);margin:0}.signin .btn{justify-self:start;height:38px;margin-top:4px;padding:0 20px}.pick-list{gap:2px;margin:0 -10px;display:grid}.ident{grid-area:ident;min-width:0}h1{font-size:var(--t-3xl);letter-spacing:-.028em;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-weight:300;line-height:1.04}.park-btn{font:inherit;letter-spacing:inherit;text-align:left;text-wrap:balance;background:0 0;border:0;padding:0}.chev{vertical-align:.18em;border:1px solid var(--glass-line);background:var(--field);width:28px;height:28px;color:var(--ink-2);border-radius:50%;place-items:center;margin-left:10px;display:inline-grid}.park-btn:hover .chev{color:var(--ink);border-color:var(--glass-line-strong)}.chev svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.desc{max-width:34ch;font-size:var(--t-s);color:var(--ink-2);margin:10px 0 0}.time-row{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px;display:flex}.pill{border:1px solid var(--glass-line);background:var(--glass);height:34px;font-size:var(--t-s);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 12px 0 11px;font-weight:600;display:inline-flex}.pill:hover{border-color:var(--glass-line-strong)}.pill svg{fill:none;width:15px;height:15px;stroke:var(--ink-2);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.pill .caret{width:13px;height:13px;margin-left:-2px}.pill.back{color:var(--sel-ink);border-color:var(--sel-line);background:var(--sel-soft);padding:0 14px}.status{font-size:var(--t-s);color:var(--accent-ink);font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-weight:600;display:inline-flex}.status .dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 0 var(--accent-soft);border-radius:50%;animation:2.6s ease-out infinite breathe}@keyframes breathe{0%{box-shadow:0 0 0 0 var(--accent-ring)}70%,to{box-shadow:0 0 0 7px #0000}}.notice{border-radius:var(--r-card);grid-area:notice;place-self:start;align-items:flex-start;gap:12px;max-width:300px;padding:12px 14px 12px 12px;display:flex}.notice-icon{border:1px solid var(--accent-line);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-ink);border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.notice-icon svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:16px;height:16px}.notice-body p{font-size:var(--t-s);color:var(--ink-2);margin:0;line-height:1.5}.notice-body b{color:var(--ink);font-weight:650}.notice.folded{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}.cv-switch.notice-switch{margin:10px 0 0}.band{pointer-events:none;grid-area:band;gap:14px;min-width:0;min-height:0;display:flex}.day{border-radius:var(--r-panel);flex-direction:column;flex:1;min-width:0;padding:16px 18px 8px;display:flex;position:relative;overflow:hidden}.day:before{content:"";background:radial-gradient(closest-side, var(--glow), transparent);pointer-events:none;width:60%;height:120%;position:absolute;inset:-40% -10% auto auto}.day-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:relative}.now p{margin:0}.now-val{font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:flex}.now-val b{font-size:var(--t-2xl);letter-spacing:-.02em;font-weight:300;line-height:1}.unit{font-size:var(--t-m);color:var(--ink-2);font-weight:500}.now-sub{font-size:var(--t-s);color:var(--ink-2);font-variant-numeric:tabular-nums;margin-top:6px!important}.day-energy{font-size:var(--t-s);color:var(--ink-2);text-align:right;justify-items:end;gap:3px;margin:2px 0 0;display:grid}.day-energy b,.d-energy b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:650}.day-energy small,.d-energy small{font-size:var(--t-xs);color:var(--ink-2);margin-left:3px;font-weight:550}:is(.day-energy,.d-energy,.d-own) .none{color:var(--ink-3)}.cv-switch.band-scope{flex:none;align-self:flex-start;margin:2px auto 0 0;position:relative}.cv-switch.band-scope button{white-space:nowrap}.week-nav{background:var(--field);border-radius:999px;gap:2px;padding:2px;display:none}.week-nav button{width:36px;height:36px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:color .2s,opacity .2s,background-color .2s,transform .12s ease-out;display:grid}.week-nav button:active:not(:disabled){background:var(--tab-on);box-shadow:var(--tab-shadow);transform:scale(.94)}.week-nav button:disabled{color:var(--ink-3);opacity:.5;cursor:default}.week-nav button:focus-visible{outline-offset:-2px}.week-nav svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}@media (hover:hover){.week-nav button:hover:not(:disabled){background:var(--tab-on);box-shadow:var(--tab-shadow)}}#daysChart{-webkit-user-select:none;user-select:none;border-radius:6px;flex:1 1 0;width:100%;min-height:72px;margin-top:14px;display:block;position:relative}#daysChart:focus:not(:focus-visible){outline:none}.db-bar{fill:var(--bar);transition:fill .12s}.db-bar.today{opacity:.72}.db-bar.hover{fill:var(--accent-hover);opacity:1}.db-bar.on{fill:var(--sel);opacity:1}.db-bar.none{fill:none}.db-hatch{stroke:var(--bar);stroke-width:1.6px}.db-hatch.on{stroke:var(--sel)}.c-axis.on{fill:var(--sel-ink)}.c-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 4}.c-base{stroke:var(--line-strong);stroke-width:1px}.c-axis{font-family:var(--f-sans);fill:var(--ink-3);font-variant-numeric:tabular-nums;font-size:10.5px}.detail{border-radius:var(--r-panel);flex-direction:column;flex:none;width:300px;padding:14px 16px 12px;display:flex;overflow:hidden}.detail>*{flex-shrink:0}.d-head{align-items:baseline;gap:8px;display:flex}.d-kind{font-size:var(--t-xs);color:var(--sel-ink);font-weight:600}.d-id{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--f-mono);font-size:var(--t-l);font-weight:500;overflow:hidden}.close{width:26px;height:26px;color:var(--ink-2);background:0 0;border:0;border-radius:8px;flex:none;align-self:flex-start;place-items:center;margin:-4px -6px 0 auto;padding:0;display:grid}.close:hover{background:var(--hover);color:var(--ink)}.close svg,.icon svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.d-meta{font-size:var(--t-xs);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:3px 0 0;display:-webkit-box;overflow:hidden}.d-power{font-variant-numeric:tabular-nums;align-items:baseline;gap:5px;margin-top:6px;display:flex}.d-power b{letter-spacing:-.02em;font-size:28px;font-weight:300;line-height:1}.d-rel{font-size:var(--t-xs);color:var(--ink-2);text-align:right;margin-left:auto}.d-energy{font-size:var(--t-xs);color:var(--ink-2);gap:2px;margin:auto 0 0;display:grid}.d-power.none b{font-size:var(--t-l);letter-spacing:0;color:var(--ink-3);font-weight:400}.d-note{font-size:var(--t-xs);color:var(--ink-3);margin:4px 0 0}.d-own{border-top:1px solid var(--line);font-size:var(--t-xs);color:var(--ink-2);white-space:nowrap;flex-wrap:nowrap;gap:0 10px;margin:6px 0 0;padding-top:6px;display:flex;overflow:hidden}.d-own b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:650}.d-own small{font-size:var(--t-xs);color:var(--ink-2);margin-left:3px;font-weight:550}.d-own-k{color:var(--ink);font-weight:600}.fleet{border-radius:var(--r-panel);flex-direction:column;grid-area:fleet;min-height:0;padding:14px 14px 0;display:flex}.find{align-items:center;display:flex;position:relative}.find svg{fill:none;width:15px;height:15px;stroke:var(--ink-3);stroke-width:1.5px;stroke-linecap:round;pointer-events:none;position:absolute;left:11px}.find input{border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--field);width:100%;height:38px;font-size:var(--t-s);padding:0 12px 0 34px}.find input::placeholder{color:var(--ink-3)}.find input:not(:placeholder-shown){font-family:var(--f-mono)}.find input::-webkit-search-cancel-button{appearance:none;cursor:pointer;background:var(--ink-3);width:14px;height:14px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") 50%/contain no-repeat}.find input::-webkit-search-cancel-button:hover{background:var(--ink)}.find input:focus-visible{outline-offset:0}.find-msg{font-size:var(--t-xs);color:var(--warn);margin:6px 2px 0}.tabs{border-radius:var(--r-ctl);background:var(--field);grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;margin-top:12px;padding:3px;display:grid}.tabs button{height:30px;color:var(--ink-2);font-size:var(--t-s);background:0 0;border:0;border-radius:8px;padding:0 6px;font-weight:600}.tabs button:hover{color:var(--ink)}.tabs button[aria-selected=true]{background:var(--tab-on);color:var(--ink);box-shadow:var(--tab-shadow)}.tabs button:focus-visible{outline-offset:-2px}.panel{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;min-height:0;margin:0 -14px;padding:14px 14px 16px;overflow-y:auto}#panelInv{flex-direction:column;padding-bottom:0;display:flex;overflow:hidden}#panelInv>.inv{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;min-height:0;margin:0 -14px;padding:0 14px 16px;overflow-y:auto}.curve{border-bottom:1px solid var(--line);flex:none;margin-bottom:6px;padding-bottom:12px}.cv-head{flex-wrap:wrap;align-items:center;gap:8px;min-height:26px;display:flex}.cv-park{min-width:0;font-size:var(--t-s);color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cv-chip{border:1px solid var(--sel-line);background:var(--sel-soft);min-width:0;max-width:100%;height:26px;color:var(--sel-ink);font-size:var(--t-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 3px 0 10px;font-weight:600;display:inline-flex}.cv-chip .cv-id{text-overflow:ellipsis;font-family:var(--f-mono);font-size:var(--t-s);font-weight:500;overflow:hidden}.cv-chip button{width:20px;height:20px;color:inherit;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.cv-chip button:hover{background:var(--sel-soft)}.cv-chip svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;width:12px;height:12px}.cv-switch{background:var(--field);border-radius:999px;gap:2px;margin-left:auto;padding:2px;display:inline-flex}.cv-switch button{height:24px;color:var(--ink-2);font-size:var(--t-xs);background:0 0;border:0;border-radius:999px;padding:0 10px;font-weight:600}.cv-switch button:hover{color:var(--ink)}.cv-switch button[aria-pressed=true]{background:var(--tab-on);color:var(--ink);box-shadow:var(--tab-shadow)}.cv-switch button:focus-visible{outline-offset:-2px}.cv-read{font-size:var(--t-s);color:var(--ink-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:2px 6px;margin:12px 0 0;display:flex}.cv-read b{font-size:var(--t-xl);letter-spacing:-.02em;color:var(--ink);font-weight:300;line-height:1}.cv-rel{font-size:var(--t-xs);margin-left:auto}.cv-note{font-size:var(--t-xs);color:var(--ink-3);margin:4px 0 0}#curveChart{touch-action:pan-y;cursor:ew-resize;-webkit-user-select:none;user-select:none;border-radius:6px;width:100%;height:160px;margin-top:8px;display:block}#curveChart:focus:not(:focus-visible){outline:none}.cv-line{fill:none;stroke:var(--accent);stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.cv-area{fill:url(#cvFade)}.cv-fade-0{stop-color:var(--accent);stop-opacity:.22}.cv-fade-1{stop-color:var(--accent);stop-opacity:0}.cv-line.est{stroke-dasharray:3 3}.cv-share{fill:var(--sel);fill-opacity:.3}.scoped .cv-line{stroke:var(--sel)}.scoped .cv-fade-0,.scoped .cv-fade-1{stop-color:var(--sel)}.cv-cursor{stroke:var(--sel);stroke-width:1.25px}.cv-dot{fill:var(--sel);stroke:var(--knob-ring);stroke-width:2px}.rows{margin:0;padding:0;list-style:none}.rows li+li{border-top:1px solid var(--line)}.row{text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nm val""bar bar";align-items:baseline;gap:6px 10px;width:100%;padding:9px 6px 10px;display:grid}.row:hover{background:var(--hover)}.row:focus-visible{outline-offset:-2px}.row .nm{font-family:var(--f-mono);font-size:var(--t-s);grid-area:nm;font-weight:500}.val{font-size:var(--t-s);font-variant-numeric:tabular-nums;font-weight:600}.row .val{grid-area:val}.bar{background:var(--track);border-radius:2px;grid-area:bar;height:3px;position:relative;overflow:hidden}.bar i{background:var(--accent);border-radius:2px;transition:width .25s;position:absolute;inset:0 auto 0 0}.row.on .nm{color:var(--sel-ink)}.row.none .val,.grp>summary.none .val{color:var(--ink-3);font-weight:500}.row.none .bar{visibility:hidden}.own{font-family:var(--f-sans);font-size:var(--t-xs);color:var(--accent-ink);white-space:nowrap;margin-left:8px;font-weight:650}.mine{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:6px}.mine-label{font-size:var(--t-xs);color:var(--ink-3);margin:2px 6px}.row.mine-row{grid-template-areas:"nm val""meta meta";gap:2px 10px}.row.mine-row:not(:has(.mine-meta)){grid-template-areas:"nm val"}.mine-meta{font-size:var(--t-xs);color:var(--ink-2);grid-area:meta}.row.on .bar i{background:var(--sel)}.grp+.grp,.grp+.rows{border-top:1px solid var(--line)}.grp>summary{cursor:pointer;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 6px 10px 24px;list-style:none;display:grid;position:relative}.grp>summary::-webkit-details-marker{display:none}.grp>summary:before{content:"";border-right:1.5px solid var(--ink-3);border-bottom:1.5px solid var(--ink-3);width:6px;height:6px;margin-top:-4px;transition:transform .15s;position:absolute;top:50%;left:8px;transform:rotate(-45deg)}.grp[open]>summary:before{margin-top:-5px;transform:rotate(45deg)}.grp>summary:hover{background:var(--hover)}.grp>summary.on .nm{color:var(--sel-ink)}.grp>summary:focus-visible{outline-offset:-2px}.g-name{min-width:0;display:grid}.g-name .nm{font-size:var(--t-m);font-weight:600}.g-meta{font-size:var(--t-xs);color:var(--ink-2)}.grp .rows{padding:0 0 6px 18px}.inv-d>summary{cursor:pointer;padding-left:24px;list-style:none;position:relative}.inv-d>summary::-webkit-details-marker{display:none}.inv-d>summary:before{content:"";border-right:1.5px solid var(--ink-3);border-bottom:1.5px solid var(--ink-3);width:5px;height:5px;transition:transform .15s;position:absolute;top:14px;left:8px;transform:rotate(-45deg)}.inv-d[open]>summary:before{top:12px;transform:rotate(45deg)}.strs{margin:0 0 6px;padding:0 0 0 24px;list-style:none}.strs.flat{padding-left:0}.strs li+li{border-top:1px solid var(--line)}.row.str{gap:4px 10px;padding:6px 6px 7px}.row.str .nm,.row.str .val{font-size:var(--t-xs)}.row.str .nm{color:var(--ink-2)}.row.str.on .nm{color:var(--sel-ink)}.row.str .bar{height:2px}.plate{font-size:var(--t-s);grid-template-columns:auto minmax(0,1fr);margin:0;display:grid}.plate dt,.plate dd{border-top:1px solid var(--line);margin:0;padding:9px 0}.plate dt:first-of-type,.plate dd:first-of-type{border-top:0}.plate dt{color:var(--ink-2);padding-right:16px}.plate dd{white-space:pre-line;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.checks{font-size:var(--t-s);gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.checks li{grid-template-columns:18px minmax(0,1fr);column-gap:8px;display:grid}.checks li:before{content:"";border-left:1.6px solid var(--accent-ink);border-bottom:1.6px solid var(--accent-ink);grid-row:1/span 2;width:9px;height:5px;margin:6px 0 0 3px;transform:rotate(-45deg)}.checks li.no:before{content:"!";width:auto;height:auto;color:var(--warn);border:0;margin:0 0 0 4px;font-weight:700;transform:none}.checks b{font-weight:600}.checks span{color:var(--ink-2);overflow-wrap:anywhere;display:block}.src{border-bottom:1px solid var(--line);padding:14px 0}.src:first-child{padding-top:2px}.src-device{border:1px solid var(--glass-line);border-radius:var(--r-card);background:var(--field);align-items:center;gap:12px;margin:10px 0 12px;padding:11px 12px;display:flex}.src-device svg{fill:none;width:22px;height:22px;stroke:var(--accent-ink);stroke-width:1.4px;stroke-linecap:round}.src-device .lamp{fill:var(--accent);stroke:none}.src-device b{font-size:var(--t-s);font-weight:600;display:block}.src-device span{font-size:var(--t-xs);color:var(--ink-2);display:block}.src:last-child{border-bottom:0}.src h3{font-size:var(--t-m);margin:0 0 6px;font-weight:600}.src .hint{line-height:1.5}.src .checks{margin:10px 0 0}.zoom{z-index:3;left:var(--gutter);bottom:var(--safe-b,12px);gap:6px;display:grid;position:absolute}.zoom button{border:1px solid var(--glass-line);background:var(--glass);width:38px;height:38px;color:var(--ink);box-shadow:var(--glass-shadow);border-radius:50%;place-items:center;padding:0;display:grid}.zoom button:hover:not(:disabled){border-color:var(--glass-line-strong)}.zoom button:disabled{color:var(--ink-3);cursor:default}.zoom svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.caption{z-index:3;right:var(--safe-r,12px);bottom:var(--safe-b,12px);border:1px solid var(--glass-line);background:var(--glass);font-size:var(--t-xs);color:var(--ink-2);pointer-events:none;font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:16px;padding:7px 12px;display:flex;position:absolute}.ramp-wrap{align-items:center;gap:8px;display:flex}.ramp{background:linear-gradient(90deg, var(--panel-0), var(--panel-mid), var(--panel-1));border-radius:3px;width:64px;height:6px;display:block}.scalebar{align-items:center;gap:8px;display:flex}.key{align-items:center;gap:7px;display:flex}.swatch{border-radius:1.5px;width:11px;height:7px;display:block}.swatch.none{background:var(--m-nodata)}.swatch.own{background:var(--panel-mid);box-shadow:0 0 0 2px var(--m-own)}.scalebar i{border:1.25px solid var(--ink-2);border-top:0;height:6px;display:block}.tag{z-index:4;will-change:transform;border:1px solid var(--glass-line);background:var(--glass-strong);box-shadow:var(--glass-shadow);font-size:var(--t-s);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:5px 11px 5px 9px;display:inline-flex;position:absolute;top:0;left:0}.tag:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.tag-id{font-family:var(--f-mono);font-weight:500}.tag-val{color:var(--ink-2);font-variant-numeric:tabular-nums}.tag.pin{border-color:var(--sel-line)}.tag.pin:before{background:var(--sel)}.tag.pin:after{content:"";background:linear-gradient(var(--sel), transparent);width:1px;height:14px;position:absolute;top:100%;left:50%}.pop{border:1px solid var(--glass-line);background:var(--glass-strong);min-width:268px;max-width:calc(100vw - 24px);color:var(--ink);box-shadow:var(--pop-shadow);border-radius:16px;margin:0;padding:8px;position:fixed;inset:auto}.pm-group+.pm-group{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}.pm-label{font-size:var(--t-xs);color:var(--ink-3);margin:4px 10px}.pm-row{align-items:center;gap:4px;display:flex}.pm-park{text-align:left;background:0 0;border:0;border-radius:10px;flex:1;gap:1px;min-width:0;padding:8px 10px;display:grid}.pm-park:hover{background:var(--hover)}.pm-park[aria-current=true]{background:var(--accent-soft)}.pm-name{font-weight:600}.pm-meta{font-size:var(--t-xs);color:var(--ink-2)}.hh-menu{min-width:240px}.day-menu{width:292px;padding:12px}.quick{gap:6px;margin-bottom:10px;display:flex}.quick button{border:1px solid var(--glass-line);background:var(--field);height:32px;font-size:var(--t-s);border-radius:999px;flex:1;font-weight:600}.quick button:hover{border-color:var(--glass-line-strong)}.cal-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.cal-head span{font-size:var(--t-m);font-weight:600}.icon{width:30px;height:30px;color:var(--ink-2);background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.icon:hover:not(:disabled){background:var(--hover);color:var(--ink)}.icon:disabled{opacity:.35;cursor:default}.cal{gap:2px;display:grid}.cal-row{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-wd{font-size:var(--t-xs);color:var(--ink-3);text-align:center;padding:4px 0}.cal-day{height:34px;font-size:var(--t-s);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:10px;padding:0;font-weight:550}.cal-day:hover:not(:disabled){background:var(--hover)}.cal-day.today{box-shadow:inset 0 0 0 1px var(--accent-line)}.cal-day.on{background:var(--accent);color:var(--on-accent);font-weight:700}.cal-day:disabled{color:var(--ink-3);opacity:.45;cursor:default}.btn{border:1px solid var(--glass-line-strong);height:34px;font-size:var(--t-s);white-space:nowrap;background:0 0;border-radius:999px;padding:0 14px;font-weight:600}.btn:hover:not(:disabled){background:var(--hover)}.btn:disabled{color:var(--ink-3);cursor:default}.btn.primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.primary:disabled{border-color:var(--line-strong);background:var(--field);color:var(--ink-3)}.perf-panel{z-index:30;border:1px solid var(--glass-line);border-radius:var(--r-ctl);background:var(--glass-strong);min-width:260px;box-shadow:var(--pop-shadow);font:500 var(--t-xs)/1.4 var(--f-mono);color:var(--ink-2);gap:4px;padding:8px 10px;display:grid;position:fixed;top:10px;left:50%;transform:translate(-50%)}.perf-panel summary{cursor:pointer;color:var(--ink)}.perf-panel label{justify-content:space-between;align-items:center;gap:10px;display:flex}.perf-panel select{border:1px solid var(--glass-line);background:var(--field);height:24px;font-size:var(--t-xs);border-radius:6px}.perf-panel pre{font:inherit;white-space:pre;margin:4px 0 0}@media (max-width:1180px){:root{--side-w:300px;--fleet-w:300px;--t-3xl:32px}.detail{width:260px}}@media (max-width:860px){.app{height:auto;padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;overflow:visible}.hud{display:contents}.stage{border-block:1px solid var(--line);order:5;height:min(132vw,88vh);margin-top:16px;position:relative;inset:auto}.topbar{padding:12px max(14px, env(safe-area-inset-left,0px)) 0;order:1}.ident,.gate{order:2;padding:14px 16px 0}.app.gated .stage{display:none}.notice{order:3;max-width:none;margin:16px 16px 0}.band{order:4;padding:14px 16px 0;display:block}.day{padding:14px 14px 6px}.day-head{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;display:grid}.week-nav{grid-area:1/2;align-self:start;margin:-2px -4px 0 0;display:inline-flex}.cv-switch.band-scope{grid-column:1/-1;justify-self:start;margin:0}.day-energy{text-align:left;flex-wrap:wrap;grid-column:1/-1;gap:4px 16px;margin:0;display:flex}#daysChart{flex:none;height:128px;margin-top:12px}.fleet{order:6;margin:14px 16px 24px;padding-bottom:0}.panel{overflow:visible}#panelInv{padding-bottom:16px;display:block}#panelInv>.inv{margin:0;padding:0;overflow:visible}.detail{z-index:20;left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom,0px));background:var(--glass-strong);width:auto;max-width:460px;margin-inline:auto;transition:transform .42s cubic-bezier(.22,.8,.24,1),opacity .3s ease-out;position:fixed}.detail.away{opacity:0;pointer-events:none;transition-duration:.26s,.22s;transition-timing-function:cubic-bezier(.4,0,1,1),ease-in;transform:translateY(calc(100% + 24px))}.zoom{bottom:12px;left:12px}.caption{border-radius:var(--r-card);flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;max-width:calc(100% - 74px);padding:6px 10px;bottom:12px;right:12px}.caption>*{white-space:nowrap}.ramp{width:44px}.brand span{display:none}.ghost{padding:0 10px}}@media (prefers-reduced-motion:reduce){.bar i,.db-bar,.grp>summary:before,.inv-d>summary:before,.week-nav button,.detail{transition:none}.status .dot,.gen-progress:before{animation:none}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1517;--ground:#161c1e;--glass:#1e252885;--glass-strong:#242a2df5;--glass-hi:#e1f0f20f;--glass-line:#dfeaed1a;--glass-line-strong:#dfeaed33;--glass-filter:blur(24px) saturate(150%) brightness(.68);--glass-shadow:inset 0 1px 0 #e1f0f20f, 0 24px 50px -28px #000c;--pop-shadow:inset 0 1px 0 #e1f0f20d, 0 30px 70px -20px #000000bf, 0 2px 8px #0000004d;--field:#dfeaed0d;--hover:#dfeaed0f;--tab-on:#dfeaed1a;--tab-shadow:inset 0 1px 0 #e1f0f20f;--scrim:#0306089e;--vig-color:#0f1517c7;--vig-from:50%;--vig-size:130% 110%;--vig-at:50% 44%;--vig-top:#0f15178c;--vig-top-h:96px;--glow:#6ae9bd14;--ink:#eaf0f1;--ink-2:#aab3b6;--ink-3:#7c8588;--line:#dfeaed14;--line-strong:#dfeaed29;--track:#dfeaed17;--accent:#6ae9bd;--accent-hover:#90f6d0;--accent-ink:#7ceec5;--accent-soft:#6ae9bd1f;--accent-line:#6ae9bd5c;--accent-ring:#6ae9bd73;--on-accent:#032e24;--sel:#f8b14e;--sel-ink:#fcc777;--sel-soft:#f8b14e24;--sel-line:#f8b14e80;--sel-glow:14;--warn:#f19299;--warn-soft:#f1929924;--focus:#6ae9bd;--knob-ring:#1f2527;--bar:#4fcaa6;--panel-0:#2d4f57;--panel-mid:#23a991;--panel-1:#6df6c6;--wire:#24170a;--tag:#eaf0f1;--tag-halo:#070c0ed1;--dim:.4;--m-ground:#161c1e;--m-row:#1c2124;--m-g1:#181d20;--m-g1r:#1d2326;--m-g2:#141a1d;--m-g2r:#1a1f22;--m-g3:#1a1f22;--m-g3r:#202528;--m-verge:#1d2326;--m-road:#292f32;--m-road-edge:#32383b;--m-track:#23292c;--m-grass:#1c2124;--m-mown:#1f2527;--m-hedge:#22272a;--m-belt:#252b2e;--m-meadow:#1d2326;--m-flower:#30363a;--m-shrub:#252b2e;--m-crown:#262c2f;--m-crown-hi:#32383b;--m-shadow:#04080a80;--m-fence:#427465;--m-cad:#383e41;--m-berm:#242a2d;--m-cable:#449880;--m-building:#34665a;--m-tech:#242a2d;--m-water:#152631;--m-line:#33393c;--m-label:#697073;--m-glint:#d2ffee4d;--m-nodata:#3b4245;--m-own:#5b686e}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e4e8ed;--ground:#d3dae0;--glass:#f7f9fc99;--glass-strong:#f7f9fcf2;--glass-hi:#ffffff8c;--glass-line:#1b222c1a;--glass-line-strong:#1b222c30;--glass-filter:blur(24px) saturate(120%) brightness(1.22);--glass-shadow:0 1px 2px #1b222c0d, 0 20px 44px -24px #1b222c4d;--pop-shadow:0 30px 64px -22px #1b222c57, 0 2px 8px #1b222c14;--field:#1b222c0d;--hover:#1b222c0d;--tab-on:#fafcfe;--tab-shadow:0 1px 2px #1b222c1f, 0 0 0 .5px #1b222c14;--scrim:#1b222c4d;--vig-color:#e4e8edb3;--vig-from:52%;--vig-size:78.959% 71.063%;--vig-at:50% 45%;--vig-top:#e4e8ed00;--vig-top-h:0px;--glow:#2d4c910f;--ink:#1b222c;--ink-2:#4f565f;--ink-3:#737982;--line:#1b222c1a;--line-strong:#1b222c30;--track:#1b222c17;--accent:#2d4c91;--accent-hover:#203d81;--accent-ink:#2d4c91;--accent-soft:#2d4c911a;--accent-line:#2d4c915c;--accent-ring:#2d4c915c;--on-accent:#fff;--sel:#e59e0f;--sel-ink:#925b00;--sel-soft:#e59e0f29;--sel-line:#e59e0f8c;--sel-glow:8;--warn:#bc363e;--warn-soft:#bc363e1c;--focus:#2d4c91;--knob-ring:#e9edf1;--bar:#37538f;--panel-0:#45576e;--panel-mid:#27416f;--panel-1:#142b6b;--wire:#171f2e;--tag:#1b222c;--tag-halo:#f7f9fce0;--dim:.7;--m-ground:#d9dfe4;--m-row:#d4dadf;--m-g1:#dce0e4;--m-g1r:#d6dce1;--m-g2:#d6dce1;--m-g2r:#d0d6dc;--m-g3:#dfe2e6;--m-g3r:#d8dde1;--m-verge:#cfd5da;--m-road:#eef0f3;--m-road-edge:#b9bec4;--m-track:#e5e8ec;--m-grass:#ced5dc;--m-mown:#bdc5cd;--m-hedge:#b6bfc7;--m-belt:#acb5bd;--m-meadow:#cbd2d9;--m-flower:#ebeff3;--m-shrub:#b0b9c1;--m-crown:#a9b3bb;--m-crown-hi:#bdc5cc;--m-shadow:#1b222c29;--m-fence:#5f7698;--m-cad:#9fa6ac;--m-berm:#abb2b9;--m-cable:#5d7caa;--m-building:#728eb7;--m-tech:#b8bfc4;--m-water:#b5c7d2;--m-line:#9fa6ab;--m-label:#6e757c;--m-glint:#ffffff47;--m-nodata:#a6aeb6;--m-own:#fdfeff}
