:root{--sm-bg:#12141C;--sm-bg-2:#0d0f15;--sm-cyan:#FF8A00;--sm-green:#00E676;--sm-ok:#00E676;--sm-warn:#FFC83D;--sm-alert:#FF4D4D;--sm-info:#00B0FF;--sm-purple:#FF8A00;--sm-fallow:#5A616F;--sm-text:#ffffff;--sm-muted:rgba(255,255,255,0.60);--sm-dim:rgba(255,255,255,0.38);--sm-glass-bg:linear-gradient(158deg,#1A1D29,#12141C);--sm-glass-border:rgba(255,138,0,0.20);--sm-glass-shadow:0 14px 44px rgba(0,0,0,0.55),inset 0 1px 0 rgba(255,255,255,0.06);--sm-hairline:rgba(255,255,255,0.08);--sm-gap:14px;--sm-side-w:298px;--sm-right-w:316px;--sm-top-h:70px;--sm-tl-h:0px;--sm-dock-rail-w:300px;--sm-dock-panel-w:360px}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;background:var(--sm-bg);font-family:Inter,system-ui,sans-serif;color:var(--sm-text);-webkit-font-smoothing:antialiased}body.page-solar-mapa{position:relative;width:100%;height:100vh;overflow:hidden}[hidden]{display:none!important}#sm-map{position:fixed;inset:0;z-index:0;background:var(--sm-bg);cursor:grab}#sm-map.is-drawing{cursor:crosshair}#sm-map:active{cursor:grabbing}.sm-map-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,#0000 55%,#080b0e8c),linear-gradient(#080b0e73 0%,#0000 16% 78%,#080b0e80)}body.layer-thermal .leaflet-tile-pane{filter:saturate(2.45)contrast(1.34)brightness(.96)hue-rotate(-8deg);transition:filter.55s}body.layer-pr .leaflet-tile-pane{filter:saturate(1.7)hue-rotate(155deg)brightness(.74)contrast(1.16);transition:filter.55s}body.layer-real .leaflet-tile-pane{transition:filter.55s;filter:saturate(1.05)}body.layer-real[data-season=spring] .leaflet-tile-pane{filter:saturate(1.38)brightness(1.04)hue-rotate(-8deg)contrast(1.02)}body.layer-real[data-season=summer] .leaflet-tile-pane{filter:sepia(.42)saturate(1.5)hue-rotate(-12deg)brightness(1.12)contrast(1.04)}body.layer-real[data-season=autumn] .leaflet-tile-pane{filter:saturate(.7)brightness(.82)sepia(.18)contrast(1.12)}body.layer-real[data-season=winter] .leaflet-tile-pane{filter:saturate(.72)brightness(.86)hue-rotate(6deg)contrast(1.05)}.sm-flash{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 45%,#e1f2ff8c,#aacdeb00 62%)}.sm-flash.is-on{animation:sm-flash.55s}@keyframes sm-flash{0%{opacity:0}22%{opacity:.75}to{opacity:0}}.sm-thermal-patch{animation:sm-patch 2.6s ease-in-out infinite}@keyframes sm-patch{0%,to{opacity:.82}50%{opacity:1}}.sm-glass{background:var(--sm-glass-bg);border:1px solid var(--sm-glass-border);border-radius:14px;box-shadow:var(--sm-glass-shadow)}.sm-af-body::-webkit-scrollbar,.sm-dock-menu::-webkit-scrollbar,.sm-fleet-inv::-webkit-scrollbar,.sm-kpis-view::-webkit-scrollbar,.sm-tl-scroll::-webkit-scrollbar,.sm-tree::-webkit-scrollbar{width:7px;height:7px}.sm-af-body::-webkit-scrollbar-track,.sm-dock-menu::-webkit-scrollbar-track,.sm-fleet-inv::-webkit-scrollbar-track,.sm-kpis-view::-webkit-scrollbar-track,.sm-tl-scroll::-webkit-scrollbar-track,.sm-tree::-webkit-scrollbar-track{background:#0000}.sm-af-body::-webkit-scrollbar-thumb,.sm-dock-menu::-webkit-scrollbar-thumb,.sm-fleet-inv::-webkit-scrollbar-thumb,.sm-kpis-view::-webkit-scrollbar-thumb,.sm-tl-scroll::-webkit-scrollbar-thumb,.sm-tree::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:4px}.sm-af-body::-webkit-scrollbar-thumb:hover,.sm-dock-menu::-webkit-scrollbar-thumb:hover,.sm-fleet-inv::-webkit-scrollbar-thumb:hover,.sm-kpis-view::-webkit-scrollbar-thumb:hover,.sm-tl-scroll::-webkit-scrollbar-thumb:hover,.sm-tree::-webkit-scrollbar-thumb:hover{background:#ff8a0066}.sm-af-body,.sm-dock-menu,.sm-fleet-inv,.sm-kpis-view,.sm-tl-scroll,.sm-tree{scrollbar-width:thin;scrollbar-color:#ffffff24#0000}.sm-topbar{position:fixed;top:var(--sm-gap);right:var(--sm-gap);z-index:1200;height:var(--sm-top-h);display:flex;align-items:center;gap:14px;padding:0 16px}.sm-hierarchy{position:fixed;top:var(--sm-gap);left:var(--sm-gap);z-index:1200;padding:6px}.sm-hier-btn{display:grid;grid-template-columns:1fr;grid-template-areas:"main""crumb";align-items:center;min-width:256px;padding:7px 11px;background:#0000;border:1px solid#0000;border-radius:9px;cursor:default;text-align:left;color:var(--sm-text);font-family:inherit}.sm-hier-btn .sm-hier-main{grid-area:main;font-size:14px;font-weight:700}.sm-hier-btn .sm-hier-crumb{grid-area:crumb;font-size:10.5px;color:var(--sm-dim);margin-top:2px}.sm-clock{display:flex;flex-direction:column;align-items:flex-end;line-height:1.05;padding:0 14px}.sm-clock .sm-clock-live{display:flex;align-items:center;gap:5px;font-size:9px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--sm-green)}.sm-clock .sm-clock-live i{width:6px;height:6px;border-radius:50%;background:var(--sm-green);box-shadow:0 0 7px var(--sm-green);animation:sm-pulse 1.4s infinite}.sm-clock .sm-clock-time{font-family:JetBrains Mono,monospace;font-size:21px;font-weight:700;letter-spacing:1px;margin-top:1px}.sm-clock .sm-clock-date{font-size:10.5px;color:var(--sm-muted);text-transform:capitalize;margin-top:1px}.sm-time-mode{position:fixed;top:var(--sm-gap);left:50%;transform:translate(-50%);z-index:1200;display:flex;align-items:center;gap:9px;padding:8px 16px;background:linear-gradient(135deg,#4a3d1c,#1b242b 62%);border:1px solid#ffc83d80;border-radius:22px;box-shadow:0 8px 26px#00000080,0 0 18px#ffc83d2e;color:var(--sm-warn);animation:sm-hist-in.3s}.sm-time-mode svg{width:18px;height:18px;flex-shrink:0}.sm-time-mode span{font-size:12.5px;font-weight:700;color:#fff}.sm-time-mode span b{color:var(--sm-warn)}.sm-time-mode small{font-size:10.5px;color:var(--sm-muted);padding-left:9px;margin-left:3px;border-left:1px solid var(--sm-hairline)}@keyframes sm-hist-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.sm-clock-live.is-hist{color:var(--sm-warn)!important}.sm-clock-live.is-hist i{background:var(--sm-warn)!important;box-shadow:0 0 7px var(--sm-warn)!important}.sm-weather{display:flex;align-items:center;gap:14px;padding-left:14px;border-left:1px solid var(--sm-hairline)}.sm-weather .sm-weather-now{display:grid;grid-template-columns:auto auto;grid-template-areas:"icon temp""icon desc";align-items:center;column-gap:9px}.sm-weather .sm-weather-now .sm-weather-icon{grid-area:icon;color:var(--sm-cyan)}.sm-weather .sm-weather-now .sm-weather-icon svg{width:30px;height:30px}.sm-weather .sm-weather-now .sm-weather-temp{grid-area:temp;font-size:21px;font-weight:700;font-family:JetBrains Mono,monospace}.sm-weather .sm-weather-now .sm-weather-desc{grid-area:desc;font-size:10.5px;color:var(--sm-muted);max-width:120px}.sm-weather .sm-weather-meta{display:flex;flex-direction:column;gap:4px}.sm-weather .sm-weather-meta span{display:grid;grid-template-columns:56px auto;font-size:11px}.sm-weather .sm-weather-meta span i{color:var(--sm-dim);font-style:normal}.sm-weather .sm-weather-meta span b{color:var(--sm-text);font-weight:600;font-family:JetBrains Mono,monospace}.sm-dock{position:fixed;top:var(--sm-gap);left:var(--sm-gap);max-height:calc(100vh - var(--sm-tl-h) - var(--sm-gap)*3);z-index:1200;display:flex;align-items:stretch;background:var(--sm-glass-bg);border:1px solid var(--sm-glass-border);border-radius:14px;box-shadow:var(--sm-glass-shadow)}.sm-dock-rail{width:var(--sm-dock-rail-w);flex-shrink:0;display:flex;flex-direction:column;padding:12px;gap:12px;min-height:0}.sm-dock-head{position:relative}.sm-dock-head .sm-hierarchy{position:static;padding:0;z-index:auto}.sm-dock-head .sm-hier-btn{min-width:0;width:100%}.sm-dock-pinned{display:flex;flex-direction:column;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--sm-hairline)}.sm-dock-menu{flex:auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:5px;padding-right:2px}.sm-dock-row{display:grid;grid-template-columns:26px 1fr auto 16px;align-items:center;gap:10px;width:100%;padding:10px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:10px;color:var(--sm-text);font-family:inherit;cursor:pointer;text-align:left;transition:background.16s,border-color.16s}.sm-dock-row .sm-dock-row-ico{width:26px;height:26px;display:grid;place-items:center;color:var(--sm-cyan);background:#ff8a001a;border-radius:7px}.sm-dock-row .sm-dock-row-ico svg{width:16px;height:16px}.sm-dock-row .sm-dock-row-lbl{font-size:12.5px;font-weight:700}.sm-dock-row .sm-dock-row-sum{font-size:11px;font-weight:700;font-family:JetBrains Mono,monospace;color:var(--sm-muted)}.sm-dock-row .sm-dock-row-caret{width:15px;height:15px;color:var(--sm-dim);transition:transform.2s}.sm-dock-row:hover{background:#ff8a0012;border-color:#ff8a004d}.sm-dock-row.is-active{background:#ff8a001f;border-color:#ff8a0080;box-shadow:inset 0 0 14px#ff8a001a}.sm-dock-row.is-active .sm-dock-row-lbl{color:var(--sm-cyan)}.sm-dock-row.is-active .sm-dock-row-caret{transform:rotate(90deg);color:var(--sm-cyan)}.sm-dock-panel{position:relative;flex-shrink:0;width:0;min-width:0;overflow:hidden;height:0;transition:width.32s cubic-bezier(.4,0,.2,1)}.sm-dock.is-open .sm-dock-panel{width:var(--sm-dock-panel-w);height:auto}.sm-dock-panel-body{width:var(--sm-dock-panel-w);height:auto;max-height:calc(100vh - var(--sm-tl-h) - var(--sm-gap)*3);box-sizing:border-box;padding:14px;display:flex;flex-direction:column}.sm-dock-panel-body>*{flex:auto;min-height:0}.sm-dock-panel-body>.sm-kpis-view{height:auto}.sm-dock-panel-body .sm-block-head,.sm-dock-panel-body .sm-kpis-head,.sm-dock-panel-body .sm-subhead{padding-right:30px}.sm-dock-panel-close{position:absolute;top:12px;right:12px;z-index:5;width:26px;height:26px;display:grid;place-items:center;background:#202a33;border:1px solid var(--sm-hairline);border-radius:8px;color:var(--sm-muted);cursor:pointer}.sm-dock-panel-close svg{width:14px;height:14px}.sm-dock-panel-close:hover{color:#fff;background:#2b3742}.sm-block{display:flex;flex-direction:column}.sm-block-grow{flex:auto;min-height:0}.sm-block-head{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--sm-cyan);padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--sm-hairline)}.sm-block-head svg{width:18px;height:18px}.sm-subhead{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--sm-muted);margin-bottom:9px}.sm-subhead svg{width:15px;height:15px;color:var(--sm-dim)}.sm-layers{display:flex;flex-direction:column;gap:6px}.sm-layer{display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:11px;padding:7px 9px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:9px;cursor:pointer;font-family:inherit;text-align:left;color:var(--sm-text);transition:background.16s,border-color.16s}.sm-layer:hover{background:#ffffff0f}.sm-layer.is-active{background:#ff8a001a;border-color:#ff8a0080;box-shadow:inset 0 0 14px#ff8a001a}.sm-layer.is-active .sm-layer-radio{border-color:var(--sm-cyan)}.sm-layer.is-active .sm-layer-radio:after{transform:scale(1)}.sm-layer.is-active .sm-layer-txt strong{color:var(--sm-cyan)}.sm-layer .sm-layer-thumb{width:40px;height:30px;border-radius:6px;border:1px solid#ffffff1f;background-size:cover;background-position:50%}.sm-layer .sm-layer-thumb.thumb-real{background:linear-gradient(135deg,#3a4150,#5a6373 45%,#8a8f9c 70%,#4a5160)}.sm-layer .sm-layer-thumb.thumb-thermal{background:linear-gradient(120deg,#1c46b4,#14a096 38%,#f0d23c 72%,#e62820)}.sm-layer .sm-layer-thumb.thumb-pr{background:linear-gradient(120deg,#962020,#e0aa3c 45%,#2bc86e 78%,#00e676)}.sm-layer .sm-layer-txt{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sm-layer .sm-layer-txt strong{font-size:12.5px;font-weight:700}.sm-layer .sm-layer-txt small{font-size:10.5px;color:var(--sm-dim)}.sm-layer .sm-layer-radio{width:17px;height:17px;border-radius:50%;border:2px solid#ffffff4d;position:relative;justify-self:center}.sm-layer .sm-layer-radio:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--sm-cyan);transform:scale(0);transition:transform.18s}.sm-search{display:flex;align-items:center;gap:8px;padding:8px 11px;margin-bottom:10px;background:#00000047;border:1px solid var(--sm-hairline);border-radius:9px}.sm-search svg{width:15px;height:15px;color:var(--sm-dim);flex-shrink:0}.sm-search input{flex:1;min-width:0;background:none;border:0;outline:none;color:var(--sm-text);font-family:inherit;font-size:12.5px}.sm-search input::placeholder{color:var(--sm-dim)}.sm-search:focus-within{border-color:#ff8a0066}.sm-tree{flex:auto;min-height:0;overflow-y:auto;padding-right:4px}.sm-tree-group{margin-bottom:4px}.sm-tree-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:7px 6px;background:none;border:0;border-radius:7px;color:var(--sm-text);font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.2px;cursor:pointer;text-align:left;transition:background.15s}.sm-tree-toggle:hover{background:#ffffff0d}.sm-tree-toggle .sm-tree-caret{width:15px;height:15px;color:var(--sm-dim);transition:transform.2s;flex-shrink:0}.sm-tree-group.is-open>.sm-tree-toggle .sm-tree-caret{transform:rotate(90deg)}.sm-tree-children{display:none;padding:2px 0 4px 8px;margin-left:7px;border-left:1px solid var(--sm-hairline)}.sm-tree-group.is-open>.sm-tree-children{display:block}.sm-tree-item{display:flex;align-items:center;gap:9px;width:100%;padding:6px 8px;margin-bottom:1px;background:none;border:0;border-radius:7px;color:var(--sm-text);font-family:inherit;font-size:12px;cursor:pointer;text-align:left;transition:background.15s}.sm-tree-item:hover{background:#ff8a0014}.sm-tree-item.is-active{background:#ff8a0024;box-shadow:inset 2px 0 0 var(--sm-cyan)}.sm-tree-item .sm-tree-ico{width:17px;height:17px;color:var(--sm-muted);flex-shrink:0}.sm-tree-item .sm-tree-ico svg{width:17px;height:17px}.sm-tree-item .sm-tree-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-tree-item .sm-tree-go{width:22px;height:22px;flex-shrink:0;display:grid;place-items:center;border-radius:6px;color:var(--sm-muted);opacity:.35;transition:opacity.15s,background.15s,color.15s}.sm-tree-item .sm-tree-go svg{width:14px;height:14px}.sm-tree-item .sm-tree-go:hover{background:#ff8a0029;color:var(--sm-cyan)}.sm-tree-item:hover .sm-tree-go{opacity:1}.sm-tree-item .sm-tree-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.sm-tree-item .sm-tree-dot.state-ok{background:var(--sm-ok);box-shadow:0 0 7px var(--sm-ok)}.sm-tree-item .sm-tree-dot.state-warn{background:var(--sm-warn);box-shadow:0 0 7px var(--sm-warn)}.sm-tree-item .sm-tree-dot.state-alert{background:var(--sm-alert);box-shadow:0 0 7px var(--sm-alert)}.sm-legend{display:flex;flex-wrap:wrap;gap:6px 14px}.sm-legend-item{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--sm-muted)}.sm-legend-item .sm-legend-line{width:16px;height:3px;border-radius:2px;background:var(--c);box-shadow:0 0 6px var(--c)}.sm-tools{position:relative}.sm-tools-tab{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:10px;color:var(--sm-text);font-family:inherit;font-size:12.5px;font-weight:700;letter-spacing:.2px;cursor:pointer}.sm-tools-tab .sm-tools-tab-ico{width:18px;height:18px;color:var(--sm-cyan)}.sm-tools-tab .sm-tools-tab-lbl{flex:1;text-align:left}.sm-tools-tab .sm-tools-tab-caret{width:15px;height:15px;color:var(--sm-dim);transition:transform.2s}.sm-tools-tab:hover{background:#ff8a0012;border-color:#ff8a004d}.sm-tools.is-open .sm-tools-tab{background:#ff8a001f;border-color:#ff8a0080;color:var(--sm-cyan)}.sm-tools.is-open .sm-tools-tab .sm-tools-tab-ico{color:var(--sm-cyan)}.sm-tools.is-open .sm-tools-tab-caret{transform:rotate(90deg);color:var(--sm-cyan)}.sm-tools-body{display:none;position:absolute;top:-4px;left:calc(100% + 14px);flex-direction:row;gap:6px;padding:8px;background:var(--sm-glass-bg);border:1px solid var(--sm-glass-border);border-radius:12px;box-shadow:var(--sm-glass-shadow);z-index:30}.sm-tools.is-open .sm-tools-body{display:flex}.sm-dock.is-open~.sm-draw-readout{left:calc(var(--sm-gap) + var(--sm-dock-rail-w) + var(--sm-gap) + var(--sm-dock-panel-w) + 16px)}.sm-tool{width:64px;padding:9px 4px 7px;display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:1px solid#0000;border-radius:9px;color:var(--sm-muted);font-family:inherit;cursor:pointer;transition:background.15s,color.15s,border-color.15s}.sm-tool svg{width:22px;height:22px}.sm-tool .sm-tool-lbl{font-size:10px;font-weight:600;letter-spacing:.2px}.sm-tool:hover{background:#ffffff0f;color:#fff}.sm-tool.is-active{background:#ff8a0029;border-color:#ff8a0080;color:var(--sm-cyan);box-shadow:inset 0 0 12px#ff8a001f}.sm-tool.sm-tool-danger:hover{color:var(--sm-alert);background:#ff4d4d1a}.sm-draw-readout{position:fixed;top:calc(var(--sm-top-h) + var(--sm-gap)*2 + 8px);left:calc(var(--sm-gap) + var(--sm-dock-rail-w) + 150px);z-index:1100;transition:left.32s cubic-bezier(.4,0,.2,1);width:300px;padding:12px 14px}.sm-draw-readout .sm-draw-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sm-draw-readout .sm-draw-metrics div{display:flex;flex-direction:column;gap:2px}.sm-draw-readout .sm-draw-metrics div span{font-size:10px;color:var(--sm-dim);text-transform:uppercase;letter-spacing:.4px}.sm-draw-readout .sm-draw-metrics div strong{font-size:17px;font-weight:800;font-family:JetBrains Mono,monospace;color:#fff}.sm-draw-readout .sm-draw-metrics div strong i{font-size:11px;font-style:normal;color:var(--sm-muted);font-weight:500}.sm-draw-readout .sm-draw-snap{margin-top:10px;padding-top:9px;border-top:1px solid var(--sm-hairline);font-size:11px;color:var(--sm-green);display:flex;align-items:center;gap:7px}.sm-draw-readout .sm-draw-snap .sm-snap-dot{width:8px;height:8px;border-radius:50%;background:var(--sm-green);box-shadow:0 0 8px var(--sm-green);animation:sm-pulse 1.2s ease-in-out infinite}.sm-draw-readout .sm-draw-actions{display:flex;gap:8px;margin-top:11px}.sm-draw-readout .sm-draw-btn{flex:1;padding:9px;border-radius:8px;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;border:1px solid#0000;background:linear-gradient(135deg,var(--sm-green),#2ecc71);color:#082a06;transition:transform.14s,box-shadow.16s}.sm-draw-readout .sm-draw-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px#ff8a004d}.sm-draw-readout .sm-draw-btn.is-ghost{background:#ffffff0f;border-color:var(--sm-hairline);color:var(--sm-text)}.sm-draw-readout .sm-draw-btn.is-ghost:hover{background:#ffffff1f;box-shadow:none}.sm-kpis-view{height:100%;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px}.sm-kpis-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:4px}.sm-kpis-head .sm-kpis-title{font-size:13px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:#fff}.sm-score{background:#ffffff06;border:1px solid var(--sm-hairline);border-radius:12px;padding:13px}.sm-score-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.sm-score-top .sm-score-name{font-size:12px;font-weight:700;color:#ffffffd9}.sm-score-top .sm-score-tag{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:20px}.sm-score-top .sm-score-tag b{font-family:JetBrains Mono,monospace}.sm-score-top .sm-score-tag.tsm-ok{background:#00e67624;color:var(--sm-ok)}.sm-score-top .sm-score-tag.tsm-info{background:#00b0ff24;color:var(--sm-info)}.sm-score-top .sm-score-tag.tsm-warn{background:#ffc83d29;color:var(--sm-warn)}.sm-score-top .sm-score-tag.tsm-alert{background:#ff4d4d29;color:var(--sm-alert)}.sm-score-top .sm-score-tag.tsm-fallow{background:#8a98a32e;color:var(--sm-fallow)}.sm-score-top .sm-score-tag.is-link{cursor:pointer}.sm-score-top .sm-score-tag.is-link:hover{filter:brightness(1.3)}.sm-score-main{display:flex;align-items:center;gap:16px}.sm-ring{position:relative;width:92px;height:92px;flex-shrink:0}.sm-ring svg{width:92px;height:92px;transform:rotate(-90deg)}.sm-ring .sm-ring-bg{fill:none;stroke:#ffffff14;stroke-width:7}.sm-ring .sm-ring-val{fill:none;stroke:var(--sm-green);stroke-width:7;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.4,0,.2,1),stroke.5s}.sm-ring .sm-ring-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:2px}.sm-ring .sm-ring-num b{font-size:26px;font-weight:800;font-family:JetBrains Mono,monospace;line-height:1}.sm-ring .sm-ring-num i{font-size:14px;font-style:normal;color:var(--sm-muted);line-height:1}.sm-score-detail{flex:1;display:flex;flex-direction:column;gap:7px}.sm-score-bar{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--sm-muted);padding-bottom:6px;border-bottom:1px dashed var(--sm-hairline)}.sm-score-bar:last-child{border-bottom:0;padding-bottom:0}.sm-score-bar b{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700;color:#fff}.sm-score-water-body .sm-water-num{display:flex;align-items:baseline;gap:2px;margin-bottom:9px}.sm-score-water-body .sm-water-num b{font-size:30px;font-weight:800;font-family:JetBrains Mono,monospace;color:var(--sm-info)}.sm-score-water-body .sm-water-num i{font-size:15px;font-style:normal;color:var(--sm-muted)}.sm-water-track{height:10px;border-radius:6px;background:#ffffff12;overflow:hidden;position:relative}.sm-water-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,#1f6fd6,#00b0ff 60%,#00e5ff);box-shadow:0 0 12px#00b0ff80;transition:width 1s}.sm-water-scale{display:flex;justify-content:space-between;margin-top:5px}.sm-water-scale span{font-size:9.5px;color:var(--sm-dim)}.sm-spectral{border-color:#ff8a0047}.sm-spectral .sm-spectral-num{display:flex;align-items:baseline;gap:4px;margin:2px 0 10px}.sm-spectral .sm-spectral-num b{font-size:30px;font-weight:800;font-family:JetBrains Mono,monospace;color:#fff}.sm-spectral .sm-spectral-num i{font-size:12px;font-style:normal;color:var(--sm-muted)}.sm-spectral .sm-spectral-bar{height:11px;border-radius:6px;background:#ffffff12;overflow:hidden;box-shadow:inset 0 0 0 1px#ffffff14}.sm-spectral .sm-spectral-fill{height:100%;border-radius:6px;transition:width.6s,background.4s}.sm-spectral .sm-spectral-scale{display:flex;justify-content:space-between;margin-top:5px}.sm-spectral .sm-spectral-scale span{font-size:9.5px;color:var(--sm-dim)}.sm-spectral .sm-spectral-foot{margin-top:11px;padding-top:10px;border-top:1px solid var(--sm-hairline);font-size:11.5px;font-weight:600;color:#ffffffc7}.sm-fleet-list{display:flex;flex-direction:column;gap:6px}.sm-fleet-item{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:7px 9px;background:#ffffff08;border-radius:8px;border:1px solid var(--sm-hairline)}.sm-fleet-item .sm-fleet-ico{width:26px;height:26px;display:grid;place-items:center;color:var(--sm-green);background:#ff8a001f;border-radius:7px}.sm-fleet-item .sm-fleet-ico svg{width:18px;height:18px}.sm-fleet-item .sm-fleet-info{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sm-fleet-item .sm-fleet-info b{font-size:12.5px;font-weight:700}.sm-fleet-item .sm-fleet-info small{font-size:10.5px;color:var(--sm-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-fleet-item .sm-fleet-state{font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px}.sm-fleet-item .sm-fleet-state.state-ok{background:#00e67624;color:var(--sm-ok)}.sm-fleet-item .sm-fleet-state.state-idle{background:#ffffff14;color:var(--sm-dim)}.sm-fleet-item.is-idle{opacity:.62}.sm-fleet-item.is-idle .sm-fleet-ico{color:var(--sm-dim);background:#ffffff0d}.sm-telemetry{position:relative}.sm-tele-close{position:absolute;top:-2px;right:0;z-index:3;width:28px;height:28px;display:grid;place-items:center;background:#ffffff0f;border:1px solid var(--sm-hairline);border-radius:8px;color:var(--sm-muted);cursor:pointer}.sm-tele-close svg{width:15px;height:15px}.sm-tele-close:hover{color:#fff;background:#ffffff1f}.sm-tele-head{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--sm-hairline);display:grid;grid-template-columns:auto 1fr;grid-template-areas:"badge badge""title title""state task";gap:4px 8px}.sm-tele-head .sm-tele-badge{grid-area:badge;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--sm-cyan)}.sm-tele-head .sm-tele-title{grid-area:title;font-size:19px;font-weight:800}.sm-tele-head .sm-tele-state{grid-area:state;display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--sm-green)}.sm-tele-head .sm-tele-state b{font-weight:600}.sm-tele-head .sm-tele-task{grid-area:task;font-size:11px;color:var(--sm-muted);text-align:right;align-self:center}.sm-dot-pulse{width:8px;height:8px;border-radius:50%;background:var(--sm-green);box-shadow:0 0 8px var(--sm-green);animation:sm-pulse 1.3s infinite}.sm-tele-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.sm-gauge-card{background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:10px;padding:10px 8px 8px;display:flex;flex-direction:column;align-items:center;gap:2px}.sm-gauge-card .sm-g-label{font-size:10.5px;color:var(--sm-muted)}.sm-gauge-card .sm-gauge,.sm-gauge-card .sm-gauge svg{width:80px;height:56px}.sm-gauge-card .sm-g-val{display:flex;align-items:baseline;gap:3px;margin-top:-8px}.sm-gauge-card .sm-g-val b{font-size:19px;font-weight:800;font-family:JetBrains Mono,monospace}.sm-gauge-card .sm-g-val i{font-size:10px;font-style:normal;color:var(--sm-dim)}.sm-tele-tile{background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:10px;padding:9px 11px;display:flex;flex-direction:column;gap:5px}.sm-tele-tile .sm-t-label{font-size:10.5px;color:var(--sm-muted)}.sm-tele-tile .sm-t-val{display:flex;align-items:baseline;gap:3px}.sm-tele-tile .sm-t-val b{font-size:18px;font-weight:800;font-family:JetBrains Mono,monospace}.sm-tele-tile .sm-t-val i{font-size:10px;font-style:normal;color:var(--sm-dim)}.sm-tele-tile .sm-t-bar{height:4px;border-radius:3px;background:#ffffff14;overflow:hidden}.sm-tele-tile .sm-t-bar span{display:block;height:100%;border-radius:3px;background:var(--sm-cyan);box-shadow:0 0 6px var(--sm-cyan)}.sm-tele-tile.is-accent{background:#ff8a0012;border-color:#ff8a0040}.sm-tele-tile.is-accent .sm-t-val b{color:var(--sm-cyan)}.sm-tele-alert-btn{margin-top:12px;padding:10px;display:flex;align-items:center;justify-content:center;gap:8px;background:#ff4d4d1a;border:1px solid#ff4d4d66;border-radius:10px;color:var(--sm-alert);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background.16s}.sm-tele-alert-btn svg{width:16px;height:16px}.sm-tele-alert-btn:hover{background:#ff4d4d33}.sm-smart{position:fixed;z-index:1300;width:304px;padding:14px;opacity:0;transform:scale(.95)translateY(6px);transition:opacity.2s,transform.2s}.sm-smart.is-in{opacity:1;transform:scale(1)translateY(0)}.sm-smart-close{position:absolute;top:10px;right:10px;width:24px;height:24px;display:grid;place-items:center;background:#ffffff0f;border:0;border-radius:7px;color:var(--sm-muted);cursor:pointer}.sm-smart-close svg{width:14px;height:14px}.sm-smart-close:hover{color:#fff;background:#ffffff24}.sm-smart-del{position:absolute;top:10px;right:40px;width:24px;height:24px;display:grid;place-items:center;background:#ff4d4d1a;border:0;border-radius:7px;color:var(--sm-alert);cursor:pointer}.sm-smart-del svg{width:14px;height:14px}.sm-smart-del:hover{background:#ff4d4d3d}.sm-smart-head{display:flex;align-items:flex-start;gap:10px;padding:0 58px 12px 0;margin-bottom:12px;border-bottom:1px solid var(--sm-hairline)}.sm-smart-head .sm-smart-status{width:12px;height:12px;border-radius:50%;flex-shrink:0;margin-top:5px}.sm-smart-head .sm-smart-titles{display:flex;flex-direction:column;align-items:flex-start;gap:4px;line-height:1.25;flex:1;min-width:0}.sm-smart-head .sm-smart-titles strong{font-size:16px;font-weight:800}.sm-smart-head .sm-smart-titles small{font-size:11.5px;color:var(--sm-muted)}.sm-smart-head .sm-smart-phase{align-self:flex-start;font-size:9.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--sm-cyan);background:#ff8a001f;border:1px solid#ff8a004d;padding:3px 8px;border-radius:20px;white-space:nowrap}.sm-smart-health{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:11px}.sm-smart-health .sm-sh-num{display:flex;align-items:baseline;gap:1px}.sm-smart-health .sm-sh-num b{font-size:30px;font-weight:800;font-family:JetBrains Mono,monospace;line-height:1}.sm-smart-health .sm-sh-num i{font-size:14px;font-style:normal;color:var(--sm-muted)}.sm-smart-health .sm-sh-meta{display:flex;flex-direction:column;line-height:1.25}.sm-smart-health .sm-sh-meta .sm-sh-lbl{font-size:10px;color:var(--sm-dim);text-transform:uppercase;letter-spacing:.4px}.sm-smart-health .sm-sh-meta .sm-sh-state{font-size:14px;font-weight:800}.sm-smart-banner{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;padding:9px 11px;border-radius:10px;font-size:11.5px;line-height:1.4}.sm-smart-banner svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.sm-smart-banner.is-pathogen{background:#ff4d4d1f;border:1px solid#ff4d4d66;color:#ffd9d9}.sm-smart-banner.is-pathogen svg{color:var(--sm-alert)}.sm-smart-banner.is-pathogen{animation:sm-banner-pulse 1.8s ease-in-out infinite}.sm-smart-banner.is-warn{background:#ffc83d1a;border:1px solid#ffc83d59;color:#ffe7bd}.sm-smart-banner.is-warn svg{color:var(--sm-warn)}@keyframes sm-banner-pulse{0%,to{border-color:#ff4d4d59}50%{border-color:#ff4d4dbf}}.sm-fact{background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:9px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.sm-fact span{font-size:10px;color:var(--sm-dim);text-transform:uppercase;letter-spacing:.3px}.sm-fact strong{font-size:15px;font-weight:800;font-family:JetBrains Mono,monospace}.sm-fact strong.is-ok{color:var(--sm-ok)}.sm-fact strong.is-warn{color:var(--sm-warn)}.sm-fact strong.is-alert{color:var(--sm-alert)}.sm-fact em{font-size:9.5px;font-style:normal;color:var(--sm-muted);text-transform:capitalize}.sm-smart-detail{width:100%;margin-top:8px;padding:10px;display:flex;align-items:center;justify-content:center;gap:8px;background:#ff8a0029;border:1px solid#ff8a008c;border-radius:10px;color:var(--sm-cyan);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background.16s,transform.14s}.sm-smart-detail svg{width:16px;height:16px;flex-shrink:0}.sm-smart-detail:hover{background:#ff8a0042;transform:translateY(-1px)}.sm-smart-arrow{position:absolute;width:14px;height:14px;background:inherit;border-left:1px solid var(--sm-glass-border);border-bottom:1px solid var(--sm-glass-border);background:#10161ae6}.sm-smart[data-side=left] .sm-smart-arrow{left:-8px;transform:rotate(45deg)}.sm-smart[data-side=right] .sm-smart-arrow{right:-8px;transform:rotate(-135deg)}.sm-timeline{position:fixed;left:calc(var(--sm-gap) + var(--svm-fab-clear,0px));right:var(--sm-gap);bottom:var(--sm-gap);height:var(--sm-tl-h);z-index:1100;display:grid;grid-template-columns:188px 1fr;grid-template-rows:1fr;grid-template-areas:"side strip";gap:0 16px;padding:11px 16px}.sm-tl-side{grid-area:side;display:flex;align-items:center;gap:12px;padding-right:16px;border-right:1px solid var(--sm-hairline)}.sm-tl-play{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,#ff8a0033,#ff8a001f);border:1px solid#ff8a0080;border-radius:12px;color:var(--sm-cyan);cursor:pointer;box-shadow:0 0 18px#ff8a002e;transition:transform.15s,background.18s}.sm-tl-play svg{width:22px;height:22px}.sm-tl-play:hover{transform:scale(1.05)}.sm-tl-play.is-playing{background:linear-gradient(135deg,#ff8a0038,#2ecc7124);border-color:#ff8a0080;color:var(--sm-green);box-shadow:0 0 20px#ff8a0040}.sm-tl-caption{display:flex;flex-direction:column;line-height:1.2}.sm-tl-caption .sm-tl-eyebrow{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--sm-dim)}.sm-tl-caption .sm-tl-current{font-size:17px;font-weight:800;color:var(--sm-cyan);margin-top:2px}.sm-tl-scroll{grid-area:strip;overflow:auto hidden}.sm-tl-strip{display:flex;align-items:stretch;gap:14px;height:100%;padding-bottom:4px}.sm-tl-year{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.sm-tl-year .sm-tl-year-lbl{font-size:11px;font-weight:800;color:var(--sm-muted);letter-spacing:.5px;padding-left:2px}.sm-tl-year .sm-tl-months{display:flex;gap:4px}.sm-tl-month{display:flex;flex-direction:column;align-items:center;gap:3px;padding:3px;background:none;border:1px solid#0000;border-radius:7px;cursor:pointer;font-family:inherit;transition:background.14s,border-color.14s,transform.14s}.sm-tl-month .sm-tl-thumb{width:36px;height:27px;border-radius:4px;overflow:hidden;border:1px solid#ffffff1a;display:block}.sm-tl-month .sm-tl-thumb svg{width:100%;height:100%;display:block}.sm-tl-month .sm-tl-mlbl{font-size:9.5px;color:var(--sm-dim)}.sm-tl-month:hover{background:#ffffff0d;transform:translateY(-2px)}.sm-tl-month.is-active{border-color:var(--sm-cyan);background:#ff8a001f}.sm-tl-month.is-active .sm-tl-thumb{box-shadow:0 0 0 1px var(--sm-cyan),0 0 12px #ff8a0080}.sm-tl-month.is-active .sm-tl-mlbl{color:var(--sm-cyan);font-weight:700}.sm-tl-foot{grid-area:foot;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;border-top:1px solid var(--sm-hairline)}.sm-tl-grad{display:grid;grid-template-columns:auto 220px;grid-template-areas:"lbl bar""lbl scale";align-items:center;gap:3px 9px}.sm-tl-grad .sm-tl-grad-lbl{grid-area:lbl;font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--sm-muted)}.sm-tl-grad .sm-tl-grad-bar{grid-area:bar;width:220px;height:9px;border-radius:5px;background:linear-gradient(90deg,#c0392b,#e0aa46 35%,#f5f0a0 50%,#a6d96a 70%,#168228);box-shadow:inset 0 0 0 1px#ffffff1a}.sm-tl-grad .sm-tl-grad-scale{grid-area:scale;display:flex;justify-content:space-between}.sm-tl-grad .sm-tl-grad-scale i{font-size:9px;color:var(--sm-dim);font-style:normal}.sm-tl-date{font-size:13px;font-weight:700;font-family:JetBrains Mono,monospace;color:#fff;background:#0000004d;padding:5px 12px;border-radius:8px;border:1px solid var(--sm-hairline)}.leaflet-container{background:var(--sm-bg);font-family:Inter,sans-serif}.leaflet-control-zoom{border:0!important;box-shadow:0 6px 20px#0006!important}.leaflet-control-zoom a{background:#11171c!important;color:#fff!important;border:1px solid var(--sm-glass-border)!important}.leaflet-control-zoom a:hover{background:#ff8a0033!important}.leaflet-bottom.leaflet-right{bottom:calc(var(--sm-tl-h) + var(--sm-gap)*2);right:var(--sm-gap)}.sm-plabel-wrap{background:none!important;border:0!important}.sm-plabel{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1.1;padding:4px 10px;background:#0f151a;border:1px solid;border-radius:8px;white-space:nowrap;box-shadow:0 4px 14px#00000073}.sm-plabel b{font-size:12px;font-weight:700;color:#fff}.sm-plabel span{font-size:10px;display:flex;align-items:center;gap:5px;color:#fffc}.sm-plabel span i{width:6px;height:6px;border-radius:50%}.sm-plabel.state-ok{border-color:var(--sm-ok);box-shadow:0 0 14px#00e67647}.sm-plabel.state-ok span i{background:var(--sm-ok)}.sm-plabel.state-warn{border-color:var(--sm-warn);box-shadow:0 0 14px#ffc83d47}.sm-plabel.state-warn span i{background:var(--sm-warn)}.sm-plabel.state-fallow{border-color:var(--sm-fallow);box-shadow:0 0 12px#8a98a338}.sm-plabel.state-fallow span i{background:var(--sm-fallow)}.sm-plabel.state-alert{border-color:var(--sm-alert);box-shadow:0 0 14px#ff4d4d4d}.sm-plabel.state-alert span i{background:var(--sm-alert)}.sm-plabel.state-alert{animation:sm-alert-glow 1.6s ease-in-out infinite}.sm-plabel.is-draft{border-style:dashed}.sm-plabel.is-draft:after{content:"aprox.";position:absolute;top:-8px;right:-8px;font-size:8px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;color:#1b140a;background:var(--sm-warn);padding:1px 5px;border-radius:6px;box-shadow:0 0 8px#ffc83d8c}@keyframes sm-alert-glow{0%,to{box-shadow:0 0 12px#ff4d4d40}50%{box-shadow:0 0 22px#ff4d4d99}}.sm-node-wrap{background:none!important;border:0!important}.sm-node{width:30px;height:30px;display:grid;place-items:center;background:#0f151a;border:1.5px solid;border-radius:50%;box-shadow:0 4px 12px#00000080}.sm-node svg{width:17px;height:17px}.sm-node.node-probe{color:var(--sm-cyan);border-color:var(--sm-cyan)}.sm-node.node-weather{color:var(--sm-cyan);border-color:var(--sm-cyan);width:34px;height:34px}.sm-node.node-weather svg{width:20px;height:20px}.sm-node-cap{margin-top:3px;text-align:center;white-space:nowrap;width:max-content;font-size:9.5px;font-weight:600;color:#ffffffc7;background:#0c1014b3;padding:1px 6px;border-radius:5px;transform:translate(calc(-50% + 15px))}.sm-tractor-wrap{background:none!important;border:0!important}.sm-tractor{position:relative;width:36px;height:36px;display:grid;place-items:center;background:radial-gradient(circle,#00e676,#2bbf0f);border:2px solid#fff;border-radius:50%;box-shadow:0 0 0 3px#ff8a0040,0 4px 14px#00000080}.sm-tractor svg{width:22px;height:22px}.sm-tractor .sm-tractor-pulse{position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--sm-green);animation:sm-ring-pulse 1.8s ease-out infinite}.sm-tractor.is-selected{box-shadow:0 0 0 4px #ff8a0066,0 0 22px var(--sm-cyan);border-color:var(--sm-cyan)}.sm-tractor.is-alarm{background:radial-gradient(circle,#ff4d4d,#c0392b)}.sm-tractor.is-alarm .sm-tractor-pulse{border-color:var(--sm-alert);animation-duration:.7s}@keyframes sm-ring-pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(2.4);opacity:0}}@keyframes sm-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.25);opacity:.6}}.sm-route{animation:sm-dash 1s linear infinite}@keyframes sm-dash{to{stroke-dashoffset:-18}}.sm-draw-vertex-wrap{background:none!important;border:0!important}.sm-draw-vertex{display:block;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--sm-cyan);box-shadow:0 0 8px var(--sm-cyan)}.sm-draft{animation:sm-dash 1s linear infinite}.leaflet-tooltip.sm-tip{background:#11181e!important;border:1px solid var(--sm-glass-border)!important;border-radius:9px!important;box-shadow:0 8px 24px#00000080!important;color:#fff!important;padding:9px 11px!important;display:flex;flex-direction:column;gap:3px;white-space:nowrap}.leaflet-tooltip.sm-tip:before{display:none!important}.leaflet-tooltip.sm-tip .sm-tip-crop{font-size:13px;font-weight:800;color:var(--c,#fff);margin-bottom:3px}.leaflet-tooltip.sm-tip .sm-tip-row{font-size:11px;color:var(--sm-muted);display:grid;grid-template-columns:64px auto;gap:8px}.leaflet-tooltip.sm-tip .sm-tip-row i{font-style:normal;color:var(--sm-dim)}.leaflet-tooltip.sm-tip .sm-tip-row b{color:#fff;font-family:JetBrains Mono,monospace}.sm-modal{position:fixed;inset:0;z-index:1500;display:grid;place-items:center}.sm-modal.is-in .sm-modal-backdrop{opacity:1}.sm-modal.is-in .sm-modal-card{opacity:1;transform:scale(1)translateY(0)}.sm-modal-backdrop{position:absolute;inset:0;background:#06090bb8;opacity:0;transition:opacity.25s}.sm-modal-card{position:relative;width:460px;max-width:calc(100vw - 40px);padding:22px;opacity:0;transform:scale(.96)translateY(10px);transition:opacity.25s,transform.25s}.sm-modal-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}.sm-modal-head .sm-modal-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--sm-cyan)}.sm-modal-head strong{display:block;font-size:20px;font-weight:800;margin-top:3px}.sm-modal-x{width:30px;height:30px;display:grid;place-items:center;background:#ffffff0f;border:0;border-radius:8px;color:var(--sm-muted);cursor:pointer}.sm-modal-x svg{width:16px;height:16px}.sm-modal-x:hover{color:#fff;background:#ffffff21}.sm-modal-lead{font-size:12.5px;color:var(--sm-muted);line-height:1.5;margin:0 0 18px}.sm-form-grid{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:11px}.sm-field{display:flex;flex-direction:column;gap:5px;min-width:0}.sm-field span{font-size:11px;font-weight:600;color:var(--sm-muted)}.sm-field input,.sm-field select{width:100%;min-width:0;box-sizing:border-box;padding:9px 11px;background:#0000004d;border:1px solid var(--sm-hairline);border-radius:8px;color:#fff;font-family:inherit;font-size:13px;outline:none}.sm-field input:focus,.sm-field select:focus{border-color:#ff8a0080}.sm-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff80' stroke-width='2.4'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 9px center;background-size:15px;padding-right:30px}.sm-field option{background:#12161a}.sm-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.sm-meteo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:14px}.sm-meteo-chart .sm-meteo-chart-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.sm-meteo-chart .sm-meteo-chart-head span{font-size:11px;color:var(--sm-muted)}.sm-meteo-chart .sm-meteo-chart-head b{font-size:14px;font-weight:800;font-family:JetBrains Mono,monospace;color:var(--sm-cyan)}.sm-meteo-chart canvas{width:100%!important;height:110px!important}.sm-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;border-radius:9px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;border:1px solid#0000;transition:background.16s,transform.14s}.sm-btn svg{width:16px;height:16px}.sm-btn:hover{transform:translateY(-1px)}.sm-btn-ghost{background:#ffffff0d;border-color:var(--sm-hairline);color:var(--sm-text)}.sm-btn-ghost:hover{background:#ffffff1a}.sm-btn-primary{background:linear-gradient(135deg,var(--sm-cyan),#2ecc71);color:#052a06;box-shadow:0 6px 18px#ff8a004d}.sm-btn-primary:hover{box-shadow:0 9px 24px#ff8a0073}.sm-btn-doc{background:#ff8a001f;border-color:#ff8a0073;color:var(--sm-cyan)}.sm-btn-doc:hover{background:#ff8a0033}.sm-asset-form{position:fixed;top:calc(var(--sm-top-h) + var(--sm-gap)*2);right:var(--sm-gap);bottom:calc(var(--sm-tl-h) + var(--sm-gap)*2);width:340px;z-index:1400;display:flex;flex-direction:column;transform:translate(calc(100% + 20px));opacity:0;transition:transform.32s cubic-bezier(.4,0,.2,1),opacity.32s}.sm-asset-form.is-in{transform:translate(0);opacity:1}.sm-af-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px;border-bottom:1px solid var(--sm-hairline)}.sm-af-head .sm-af-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--sm-green)}.sm-af-head .sm-af-titles strong{display:block;font-size:18px;font-weight:800;margin-top:3px}.sm-af-head .sm-af-titles small{font-size:11.5px;color:var(--sm-cyan);font-family:JetBrains Mono,monospace}.sm-af-x{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;background:#ffffff0f;border:0;border-radius:8px;color:var(--sm-muted);cursor:pointer}.sm-af-x svg{width:15px;height:15px}.sm-af-x:hover{color:#fff}.sm-af-body{flex:1;overflow:hidden auto;padding:16px;display:flex;flex-direction:column;gap:12px}.sm-af-section{font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--sm-muted);padding-bottom:6px;border-bottom:1px solid var(--sm-hairline);margin-top:4px}.sm-af-sensors{display:flex;flex-direction:column;gap:8px}.sm-check{display:flex;align-items:center;gap:10px;padding:9px 11px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:8px;cursor:pointer;font-size:12.5px;transition:background.15s}.sm-check:hover{background:#ffffff0f}.sm-check input{appearance:none;width:18px;height:18px;border-radius:5px;border:2px solid#ffffff4d;position:relative;cursor:pointer;flex-shrink:0}.sm-check input:checked{background:var(--sm-green);border-color:var(--sm-green)}.sm-check input:checked:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid#082a06;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}.sm-af-foot{display:flex;gap:10px;padding:14px 16px;border-top:1px solid var(--sm-hairline)}.sm-af-foot .sm-btn{flex:1;justify-content:center}.sm-toast-wrap{position:fixed;top:calc(var(--sm-top-h) + var(--sm-gap));right:var(--sm-gap);z-index:1600;display:flex;flex-direction:column;gap:10px;align-items:flex-end;pointer-events:none}.sm-toast{display:flex;align-items:stretch;gap:0;min-width:300px;max-width:440px;background:#131a20;border:1px solid var(--sm-glass-border);border-radius:11px;overflow:hidden;box-shadow:0 12px 36px#0000008c;opacity:0;transform:translateY(-14px)scale(.97);transition:opacity.3s,transform.3s}.sm-toast.is-in{opacity:1;transform:translateY(0)scale(1)}.sm-toast .sm-toast-bar{width:4px;flex-shrink:0}.sm-toast .sm-toast-body{padding:11px 16px;display:flex;flex-direction:column;gap:2px}.sm-toast .sm-toast-body strong{font-size:13px;font-weight:800}.sm-toast .sm-toast-body span{font-size:11.5px;color:var(--sm-muted);line-height:1.4}.sm-toast.type-ok .sm-toast-bar{background:var(--sm-ok)}.sm-toast.type-ok strong{color:var(--sm-ok)}.sm-toast.type-info .sm-toast-bar{background:var(--sm-cyan)}.sm-toast.type-info strong{color:var(--sm-cyan)}.sm-toast.type-warn .sm-toast-bar{background:var(--sm-warn)}.sm-toast.type-warn strong{color:var(--sm-warn)}.sm-toast.type-alert .sm-toast-bar{background:var(--sm-alert)}.sm-toast.type-alert strong{color:var(--sm-alert)}.sm-toast.type-alert{border-color:#ff4d4d66}@media (height<=960px){:root{--sm-top-h:62px;--sm-tl-h:0px;--sm-side-w:280px;--sm-right-w:300px;--sm-dock-rail-w:280px;--sm-dock-panel-w:332px;--sm-gap:11px}.sm-clock .sm-clock-time{font-size:19px}.sm-weather .sm-weather-now .sm-weather-temp{font-size:18px}.sm-brand .sm-brand-text strong{font-size:15px}.sm-time-mode{padding:6px 12px}.sm-time-mode span{font-size:11.5px}.sm-time-mode small{display:none}.sm-topbar{gap:10px;padding:0 12px}.sm-weather{gap:10px;padding-left:10px}.sm-weather .sm-weather-now .sm-weather-desc{display:none}.sm-dock-panel-body,.sm-dock-rail{padding:11px;gap:11px}.sm-block-head{padding-bottom:9px;margin-bottom:9px}.sm-ring,.sm-ring svg{width:78px;height:78px}.sm-ring .sm-ring-num b{font-size:23px}.sm-score{padding:10px}.sm-score-top{margin-bottom:9px}.sm-gauge-card .sm-gauge,.sm-gauge-card .sm-gauge svg{width:70px;height:48px}.sm-gauge-card .sm-g-val b{font-size:16px}.sm-tele-grid{gap:7px}.sm-tele-tile{padding:7px 9px}.sm-tele-tile .sm-t-val b{font-size:15px}.sm-tl-play{width:42px;height:42px}.sm-tl-caption .sm-tl-current{font-size:15px}.sm-tl-month .sm-tl-thumb{width:30px;height:23px}.sm-tl-grad{grid-template-columns:auto 170px}.sm-tl-grad .sm-tl-grad-bar{width:170px}.sm-timeline{grid-template-columns:168px 1fr;padding:10px 14px}}@media (width<=1600px){:root{--sm-right-w:300px}.sm-draw-readout{width:264px}}.is-iframe body.page-solar-mapa{font-size:100%}.is-iframe .sm-node-cap{background:#0c1014}.is-iframe .sm-smart .sm-smart-arrow{background:#10161a}.is-iframe .sm-time-mode{border-color:#ffc83dd9}.is-iframe .sm-tl-date{background:#0b1116;border-color:#ffffff29}.sm-pest-fill{background:linear-gradient(90deg,#2ecc71,#ffc83d 55%,#ff4d4d)!important;box-shadow:0 0 12px#ff4d4d66!important}.sm-clin-alerts,.sm-clin-safety{display:flex;flex-direction:column;gap:6px}.sm-clin-row{display:flex;align-items:center;gap:9px;padding:8px 10px;background:#ffffff08;border:1px solid var(--sm-hairline);border-left:3px solid var(--sm-fallow);border-radius:8px;width:100%;font-family:inherit;text-align:left;color:var(--sm-text);cursor:pointer;transition:border-color.15s,transform.15s}.sm-clin-row:hover{border-color:#ff8a0073;transform:translate(2px)}.sm-clin-row.lvl-alert{border-left-color:var(--sm-alert);background:#ff4d4d12}.sm-clin-row.lvl-warn{border-left-color:var(--sm-warn)}.sm-clin-row .sm-clin-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--sm-alert);box-shadow:0 0 7px var(--sm-alert)}.sm-clin-row.lvl-warn .sm-clin-dot{background:var(--sm-warn);box-shadow:0 0 7px var(--sm-warn)}.sm-clin-row .sm-clin-txt{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sm-clin-row .sm-clin-txt b{font-size:12.5px;font-weight:700}.sm-clin-row .sm-clin-txt small{font-size:10.5px;color:var(--sm-muted)}.sm-clin-row .sm-clin-days{margin-left:auto;font-size:13px;font-weight:800;font-family:JetBrains Mono,monospace;padding:3px 9px;border-radius:7px;flex-shrink:0}.sm-clin-row .sm-clin-days.lvl-alert{color:var(--sm-alert);background:#ff4d4d1f}.sm-clin-row .sm-clin-days.lvl-warn{color:var(--sm-warn);background:#ffc83d1f}.sm-clin-empty{font-size:11.5px;color:var(--sm-muted);padding:8px 4px}.sm-pest-summary{display:flex;flex-direction:column;gap:6px}.sm-pest-sum-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 11px;background:#ffffff08;border:1px solid var(--sm-hairline);border-left:3px solid var(--c,var(--sm-ok));border-radius:8px}.sm-pest-sum-row .sm-pest-name{font-size:12.5px;font-weight:700}.sm-pest-sum-row .sm-pest-stats{display:flex;align-items:center;gap:8px}.sm-pest-sum-row .sm-pest-stats small{font-size:10.5px;color:var(--sm-dim)}.sm-pest-sum-row .sm-pest-count{display:inline-flex;align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:12.5px;font-weight:800}.sm-pest-sum-row .sm-pest-count i{width:8px;height:8px;border-radius:50%}.sm-pest-sum-row .sm-pest-count.lvl-alert{color:var(--sm-alert)}.sm-pest-sum-row .sm-pest-count.lvl-alert i{background:var(--sm-alert);box-shadow:0 0 6px var(--sm-alert)}.sm-pest-sum-row .sm-pest-count.lvl-warn{color:var(--sm-warn)}.sm-pest-sum-row .sm-pest-count.lvl-warn i{background:var(--sm-warn);box-shadow:0 0 6px var(--sm-warn)}.sm-pest-sum-row .sm-pest-free{font-size:11.5px;font-weight:700;color:var(--sm-ok)}.sm-smart-pests{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}.sm-smart-pests .sm-pests-head{flex:0 0 100%;font-size:11px;font-weight:700;color:var(--sm-muted);margin-bottom:1px}.sm-pest-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:20px;font-size:10.5px;font-weight:500;color:var(--sm-muted);background:#ffffff0a;border:1px solid var(--sm-hairline)}.sm-pest-chip i{width:6px;height:6px;border-radius:50%;background:var(--sm-dim);flex-shrink:0}.sm-pest-chip small{font-size:9.5px;font-weight:700}.sm-pest-chip.lvl-warn i{background:var(--sm-warn)}.sm-pest-chip.lvl-warn small{color:var(--sm-warn)}.sm-pest-chip.lvl-alert i{background:var(--sm-alert)}.sm-pest-chip.lvl-alert small{color:var(--sm-alert)}.sm-heat-trail{stroke-linecap:round}.sm-vehicle-wrap{background:none!important;border:0!important}.sm-vehicle{width:34px;height:34px;display:grid;place-items:center;background:radial-gradient(circle,#00e676,#2bbf0f);border:2px solid#fff;border-radius:50%;box-shadow:0 0 0 2px#ff8a0033,0 4px 12px#00000080}.sm-vehicle svg{width:22px;height:22px}.sm-vehicle.kind-harvester{background:radial-gradient(circle,#1fe3b0,#14a085);box-shadow:0 0 0 2px#ff8a0033,0 4px 12px#00000080}.sm-vehicle.is-parked{background:radial-gradient(circle,#8a98a3,#5a6670);box-shadow:0 0 0 2px#8a98a32e,0 4px 12px#00000080}.sm-vehicle.is-selected{border-color:var(--sm-cyan);box-shadow:0 0 0 4px #ff8a0066,0 0 22px var(--sm-cyan)}.sm-tractor.is-speeding{background:radial-gradient(circle,#ff8a1e,#c75e00);border-color:#ff8a1e;animation:sm-speed-blink.75s ease-in-out infinite}.sm-tractor.is-speeding .sm-tractor-pulse{border-color:#ff8a1e;animation-duration:.75s}@keyframes sm-speed-blink{0%,to{box-shadow:0 0 0 3px#ff8a1e47,0 0 14px#ff8a1e}50%{box-shadow:0 0 0 7px#ff8a1e8c,0 0 28px#ff8a1e}}.sm-tele-alert-btn.is-warn{background:#ff8a1e24;border-color:#ff8a1e80;color:#ff8a1e}.sm-tele-alert-btn.is-warn:hover{background:#ff8a1e3d}.sm-fleet-inv{display:flex;flex-direction:column;gap:7px;overflow-y:auto;padding-right:4px}.sm-fleet-row{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;width:100%;padding:9px 10px;background:#ffffff08;border:1px solid var(--sm-hairline);border-radius:9px;cursor:pointer;font-family:inherit;text-align:left;color:var(--sm-text);transition:background.15s,border-color.15s}.sm-fleet-row:hover{background:#ff8a0014;border-color:#ff8a004d}.sm-fleet-row .sm-fleet-ico{width:26px;height:26px;display:grid;place-items:center;color:var(--sm-green);background:#ff8a001f;border-radius:7px}.sm-fleet-row .sm-fleet-ico svg{width:18px;height:18px}.sm-fleet-row .sm-fleet-info{display:flex;flex-direction:column;line-height:1.2;min-width:0}.sm-fleet-row .sm-fleet-info b{font-size:12.5px;font-weight:700}.sm-fleet-row .sm-fleet-info small{font-size:10.5px;color:var(--sm-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-fleet-row .sm-fleet-state{font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px}.sm-fleet-row .sm-fleet-state.state-ok{background:#00e67624;color:var(--sm-ok)}.sm-fleet-row .sm-fleet-state.state-idle{background:#ffffff14;color:var(--sm-dim)}.sm-fleet-row.is-idle{opacity:.62}.sm-fleet-row.is-idle .sm-fleet-ico{color:var(--sm-dim);background:#ffffff0d}.sm-node.node-inverter{color:var(--sm-ok);border-color:var(--sm-ok)}.sm-node.node-inverter.state-warn{color:var(--sm-warn);border-color:var(--sm-warn)}.sm-node.node-inverter.state-alert{color:var(--sm-alert);border-color:var(--sm-alert)}.sm-node.node-inverter.is-tripped{color:var(--sm-alert);border-color:var(--sm-alert);background:#1a0f12;box-shadow:0 0 0 2px#ff4d4d40,0 4px 12px#00000080;animation:sm-inv-trip.9s ease-in-out infinite}@keyframes sm-inv-trip{0%,to{box-shadow:0 0 0 2px#ff4d4d33,0 0 6px#ff4d4d4d}50%{box-shadow:0 0 0 3px#ff4d4d8c,0 0 18px#ff4d4dcc}}.sm-node.node-cam{color:var(--sm-info);border-color:var(--sm-info)}.sm-node.node-cam.is-lost{color:#7e8494;border-color:#7e8494;opacity:.75}.sm-cam-focus .sm-node.node-cam{animation:sm-cam-focus-pulse 1.4s ease-in-out infinite}@keyframes sm-cam-focus-pulse{0%,to{box-shadow:0 0 0 2px#00e5ff59,0 4px 12px#00000080}50%{box-shadow:0 0 0 8px#00e5ff1f,0 0 22px#00e5ff8c}}.sm-node.node-substation{color:var(--sm-ok);border-color:var(--sm-ok);width:34px;height:34px;background:#0e1a12;box-shadow:0 0 0 2px#00e6762e,0 4px 14px#00000080}.sm-node.node-substation svg{width:20px;height:20px}.sm-irr-cap b{display:block;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;color:var(--sm-warn)}.sm-irr-cap small{display:block;font-size:8px;letter-spacing:.6px;text-transform:uppercase;color:#fff9}.sm-mt-line{stroke-linecap:round}.sm-mt-line.is-live{stroke-dasharray:1 9;animation:sm-mt-flow 1.1s linear infinite}@keyframes sm-mt-flow{to{stroke-dashoffset:-20}}path.leaflet-interactive.is-fault{animation:sm-block-fault 1.1s ease-in-out infinite}@keyframes sm-block-fault{0%,to{filter:drop-shadow(0 0 2px #ff4d4d8c)}50%{filter:drop-shadow(0 0 9px #ff4d4df2)}}path.leaflet-interactive:focus{outline:none}path.leaflet-interactive.sm-parcel-blink{animation:sm-parcel-blink 1.8s ease-in-out infinite}path.leaflet-interactive.is-fault.sm-parcel-blink{animation:sm-parcel-blink 1.8s ease-in-out infinite,sm-block-fault 1.1s ease-in-out infinite}@keyframes sm-parcel-blink{50%{fill-opacity:.36}}.sm-cctv-fov{pointer-events:none}.sm-layerctrl{position:absolute;z-index:700;right:var(--sm-gap);bottom:calc(var(--sm-gap) + 96px);width:182px;padding:8px;border-radius:12px;display:flex;flex-direction:column;gap:3px;font-family:Inter,sans-serif}.sm-kpi-stack{position:fixed;z-index:1100;right:var(--sm-gap);top:calc(var(--sm-gap) + var(--sm-top-h) + 12px);width:182px;padding:8px;border-radius:12px;display:flex;flex-direction:column}.sm-kpi-stack-head{font-size:10px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--sm-dim);padding:2px 4px 5px}.sm-kpi-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;padding:6px 4px 7px}.sm-kpi-row+.sm-kpi-row{border-top:1px solid var(--sm-hairline)}.sm-kpi-row .sm-kpi-txt{display:flex;flex-direction:column;gap:1px;min-width:0}.sm-kpi-row .sm-kpi-lbl{font-size:10px;color:var(--sm-muted);letter-spacing:.2px}.sm-kpi-row .sm-kpi-val{font-family:JetBrains Mono,monospace;font-size:17px;font-weight:800;line-height:1.1}.sm-kpi-row .sm-kpi-val i{font-style:normal;font-size:10.5px;font-weight:600;color:var(--sm-muted);margin-left:4px}.sm-kpi-row .sm-kpi-eye{width:24px;height:24px;flex-shrink:0;display:grid;place-items:center;background:none;border:0;border-radius:6px;color:var(--sm-muted);opacity:.45;cursor:pointer;transition:opacity.15s,background.15s,color.15s}.sm-kpi-row .sm-kpi-eye svg{width:14px;height:14px}.sm-kpi-row .sm-kpi-eye:hover{background:#ff8a0029;color:var(--sm-cyan);opacity:1}.sm-kpi-row:hover .sm-kpi-eye{opacity:1}.sm-kpim-now{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:-6px 0 12px}.sm-kpim-now span{font-size:11.5px;color:var(--sm-muted)}.sm-kpim-now b{font-family:JetBrains Mono,monospace;font-size:21px;font-weight:800;color:var(--sm-cyan);white-space:nowrap}.sm-kpim-chart canvas{width:100%!important;height:216px!important}#sm-kpi-modal{place-items:start end}#sm-kpi-modal .sm-modal-card{width:400px;max-width:calc(100vw - 40px);margin-top:calc(var(--sm-gap) + var(--sm-top-h) + 12px);margin-right:calc(var(--sm-gap) + 182px + 10px);transform-origin:100%0%}.sm-layerctrl-head{font-size:10px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--sm-dim);padding:2px 4px 5px}.sm-lyr{display:grid;grid-template-columns:20px 1fr 30px;align-items:center;gap:8px;background:none;border:0;cursor:pointer;padding:6px;border-radius:8px;color:var(--sm-muted);font:inherit;font-size:12px;font-weight:600;text-align:left}.sm-lyr:hover{background:#ffffff0d}.sm-lyr .sm-lyr-ico{display:grid;place-items:center}.sm-lyr .sm-lyr-ico svg{width:17px;height:17px}.sm-lyr .sm-lyr-lbl{white-space:nowrap}.sm-lyr .sm-lyr-sw{justify-self:end;width:28px;height:16px;border-radius:9px;background:#ffffff29;position:relative;transition:background.2s}.sm-lyr .sm-lyr-sw:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform.2s}.sm-lyr.is-on{color:var(--sm-text)}.sm-lyr.is-on .sm-lyr-ico{color:var(--sm-cyan)}.sm-lyr.is-on .sm-lyr-sw{background:var(--sm-cyan)}.sm-lyr.is-on .sm-lyr-sw:after{transform:translate(12px)}