/* Demonstration equipment states on public Córdoba geographic references. */
.monitor-real-map{position:relative;width:100%;height:400px;margin:12px 0 15px;overflow:hidden;border:1px solid var(--line,#dbe2eb);border-radius:20px;background:#e7edf1;isolation:isolate;touch-action:pan-y}
.monitor-real-map.leaflet-container{font-family:inherit;z-index:0}
.monitor-real-map .leaflet-control-zoom{overflow:hidden;border:1px solid #d1dbe5!important;border-radius:14px;box-shadow:0 5px 20px #1b2e4419}
.monitor-real-map .leaflet-control-zoom a{display:grid;place-items:center;width:44px;height:44px;line-height:1;font-size:23px;background:#fffffff5;color:#24364d;border-color:#dbe3ec}
.monitor-real-map .leaflet-control-zoom a:hover{background:#f1f5fa;color:#10243c}
.monitor-real-map .leaflet-control-zoom a:focus-visible,.monitor-real-map .leaflet-popup-close-button:focus-visible,.monitor-real-map .leaflet-marker-icon:focus-visible{outline:3px solid #84304c;outline-offset:-3px}
.monitor-real-map .leaflet-control-attribution{max-width:calc(100% - 14px);padding:4px 7px;background:#ffffffed;color:#425469;border-radius:8px 0 0;font-size:10px;line-height:1.45;white-space:normal}
.monitor-real-map .leaflet-control-attribution a{color:#2e526c;text-decoration:underline;text-underline-offset:2px}
.monitor-map-marker{border:0;background:none}
.monitor-map-pin{position:relative;display:grid;place-items:center;width:24px;height:24px}
.monitor-map-pin .monitor-halo{position:absolute;inset:2px;display:block;background:currentColor;border-radius:50%;transform-origin:center;transform-box:border-box;animation:monitor-geographic-pulse 3.3s ease-out infinite;animation-delay:var(--delay,0s);pointer-events:none}
.monitor-map-dot{position:relative;display:block;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:currentColor;box-shadow:0 2px 7px #172e4d38}
.monitor-map-pin[data-state=offline] .monitor-halo{animation:none;opacity:.12;transform:scale(1.05)}
.monitor-map-pin[data-state=offline] .monitor-map-dot{background:#8493a4}
@keyframes monitor-geographic-pulse{0%{transform:scale(.7);opacity:.23}80%,100%{transform:scale(2);opacity:0}}
.monitor-preview[data-paused=true] .monitor-halo,.monitor-preview.is-map-offscreen .monitor-halo,.monitor-preview.is-map-hidden .monitor-halo{animation-play-state:paused}
.monitor-real-map .monitor-place-label{padding:7px 10px;border:1px solid #ffffffa6;border-radius:11px;background:#ffffffed;color:#26394f;box-shadow:0 3px 12px #18304a12;font-family:inherit;font-weight:650;font-size:11px;line-height:1.35;white-space:nowrap;pointer-events:none}
.monitor-real-map .monitor-place-label:before{display:none}
.monitor-real-map .leaflet-popup-content-wrapper,.monitor-real-map .leaflet-popup-tip{background:#fff;color:#26394f}
.monitor-real-map .leaflet-popup-content-wrapper{border-radius:16px;box-shadow:0 6px 22px #18304a20}
.monitor-real-map .leaflet-popup-content{min-width:105px;min-height:32px;margin:16px 44px 12px 16px;font-size:13px;line-height:1.5}
.monitor-real-map .leaflet-popup-close-button{display:grid;place-items:center;width:44px;height:44px;font-size:23px;border-radius:12px;color:#425469}
.monitor-equipment-description{display:grid;gap:4px}
.monitor-equipment-description strong{font-size:13px;font-weight:700}
.monitor-equipment-description small{display:block;max-width:220px;color:#526477;font-size:11px;line-height:1.4}
.monitor-description-state{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600}
.monitor-description-state:before{content:'';display:inline-block;width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#30d158}
.monitor-description-state[data-state=offline]:before{background:#8493a4}
.monitor-description-state[data-state=attention]:before{background:#ffb340}
.monitor-description-state[data-state=alarm]:before{background:#ff453a}
.monitor-map-fallback{position:absolute;inset:0;z-index:1000;display:grid;place-items:center;margin:0;padding:24px;text-align:center;background:#e7edf1;color:#334b62;font-size:13px;line-height:1.6}
.monitor-map-fallback[hidden]{display:none}
.monitor-map-fallback a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #a9bbc9;border-radius:15px;color:#29465d;background:#ffffffd9;text-decoration:none}
.monitor-places,.monitor-equipment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 0 12px}
.monitor-places button,.monitor-equipment-list button,[data-map-reset]{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;min-height:44px;padding:9px 11px;border:1px solid var(--line,#dbe2eb);border-radius:14px;background:var(--surface,#ffffffd9);color:var(--ink,#26394f);font-family:inherit;font-size:11px;font-weight:600;line-height:1.3;text-align:left;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
[data-map-place]:before{content:'';flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#30d158;box-shadow:0 0 0 3px #30d15812}
[data-map-place][data-map-state=offline]:before{background:#8493a4;box-shadow:0 0 0 3px #8493a412}
[data-map-place][data-map-state=attention]:before{background:#ffb340;box-shadow:0 0 0 3px #ffb34012}
[data-map-place][data-map-state=alarm]:before{background:#ff453a;box-shadow:0 0 0 3px #ff453a12}
.monitor-equipment-text{display:grid;gap:3px;min-width:0;flex:1}
.monitor-equipment-text strong{font-size:11px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.monitor-equipment-text small{font-size:10px;font-weight:450;color:var(--muted,#65758a);line-height:1.3}
.monitor-equipment-state{flex:0 1 auto;max-width:72px;font-size:9px;line-height:1.3;font-weight:550;text-align:right}
.monitor-places button:hover,.monitor-equipment-list button:hover,[data-map-reset]:hover{border-color:#8ca0b6}
[data-map-place][aria-pressed=true]{border-color:var(--wine,#84304c);box-shadow:inset 0 0 0 1px var(--wine,#84304c)}
[data-map-place][aria-disabled=true],[data-map-reset][aria-disabled=true]{opacity:.55;cursor:default}
[data-map-place]:focus-visible,[data-map-reset]:focus-visible{outline:2px solid var(--wine,#84304c);outline-offset:3px}
[data-map-reset]{justify-content:center;width:100%;font-size:11px}
@media(max-width:600px){.monitor-real-map{height:340px;border-radius:17px}.monitor-real-map .monitor-place-label{padding:6px 8px;font-size:10px}.monitor-places,.monitor-equipment-list{grid-template-columns:1fr;gap:6px}.monitor-places button,.monitor-equipment-list button{min-width:0;padding:9px 10px}.monitor-equipment-state{max-width:none;font-size:10px}.monitor-real-map .leaflet-control-attribution{font-size:9px;max-width:calc(100% - 12px)}}
@media(prefers-reduced-motion:reduce){.monitor-map-pin .monitor-halo{animation:none;opacity:.14;transform:none}.monitor-places button,.monitor-equipment-list button,[data-map-reset]{transition:none}}
@media print{.monitor-map-pin .monitor-halo{animation:none;opacity:.14}.monitor-places,.monitor-equipment-list,[data-map-reset],.monitor-real-map .leaflet-control-zoom{display:none}}
