/* Standalone map page intentionally loads only the production map UI. */
html,body{width:100%;height:100%}


/* Standalone map overlay layout v28 */
body.vxMapStandalone .vxMapHeadLiveInfo{display:none!important}
body.vxMapStandalone .vxMapWorkspace{grid-template-rows:minmax(0,1fr)!important;padding:10px!important}
body.vxMapStandalone .vxMapToolbar{display:none!important}
body.vxMapStandalone .vxMapStats{display:none!important}
body.vxMapStandalone .vxMapHost{border-radius:18px;min-height:0}
body.vxMapStandalone .vxMapStatus--overlay{top:68px!important;left:50%!important;width:min(520px,calc(100% - 560px))!important;min-width:260px;background:rgba(5,12,18,.9)!important;border-color:rgba(83,149,227,.24)!important}

body.vxMapStandalone .vxMapControlDock{position:absolute;z-index:82;top:12px;left:12px;display:flex;flex-direction:column;gap:8px;pointer-events:none}
body.vxMapStandalone .vxMapControlDock__row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(77,115,167,.34);border-radius:14px;background:rgba(6,14,22,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 18px 42px rgba(0,0,0,.32);pointer-events:auto}
body.vxMapStandalone .vxMapControlDock__icon,body.vxMapStandalone .vxMapControlDock__toggle{height:40px!important;min-height:40px!important;border-radius:10px!important;border:1px solid rgba(96,131,184,.26)!important;background:linear-gradient(180deg,rgba(22,33,48,.98),rgba(9,15,25,.96))!important;color:#eef4fc!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
body.vxMapStandalone .vxMapControlDock__icon{width:40px!important;min-width:40px!important;padding:0!important;font-size:18px!important;font-weight:800}
body.vxMapStandalone .vxMapControlDock__toggle{padding:0 15px!important;min-width:118px!important;font-size:13px!important;font-weight:800}
body.vxMapStandalone .vxMapControlDock__icon:hover,body.vxMapStandalone .vxMapControlDock__toggle:hover,body.vxMapStandalone .vxMapControlDock__toggle.is-active,body.vxMapStandalone .vxMapControlDock__icon.is-active{border-color:rgba(85,166,255,.65)!important;background:linear-gradient(180deg,rgba(23,54,93,.98),rgba(10,25,46,.96))!important;color:#ffffff!important}
body.vxMapStandalone .vxMapControlDock__toggle:not(.is-active){opacity:.88}

body.vxMapStandalone .vxMapDrawerChips{top:132px;right:12px;left:auto;display:flex;flex-direction:column;gap:8px}
body.vxMapStandalone .vxMapDrawerChips button{min-width:116px!important;justify-content:flex-start!important;padding:0 14px!important}
body.vxMapStandalone .vxMapDrawerPanels{top:176px;right:12px;left:auto}
body.vxMapStandalone .vxMapDrawerPanel,body.vxMapStandalone .vxMapDrawerPanel--objects,body.vxMapStandalone .vxMapDrawerPanel--logs{width:min(340px,calc(100vw - 34px))}

body.vxMapStandalone .vxMapMiniStatus--card{position:absolute;z-index:81;top:12px;right:12px;left:auto;bottom:auto;width:min(290px,calc(100% - 24px));padding:12px 14px;border:1px solid rgba(76,111,147,.34);border-radius:14px;background:rgba(6,14,21,.92);box-shadow:0 18px 44px rgba(0,0,0,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none}
body.vxMapStandalone .vxMapMiniStatus__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
body.vxMapStandalone .vxMapMiniStatus__title{display:flex;align-items:center;gap:8px;color:#b7d8c0}
body.vxMapStandalone .vxMapMiniStatus__title b{font-size:14px;color:#71e291;letter-spacing:.01em}
body.vxMapStandalone .vxMapMiniStatus__received{text-align:right}
body.vxMapStandalone .vxMapMiniStatus__received span{display:block;color:#93a8bc;font-size:11px}
body.vxMapStandalone .vxMapMiniStatus__received strong{display:block;margin-top:4px;color:#eef6ff;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}
body.vxMapStandalone .vxMapMiniStatus__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}
body.vxMapStandalone .vxMapMiniStatus__metrics div{min-width:0;padding:8px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.025)}
body.vxMapStandalone .vxMapMiniStatus__metrics span{display:block;color:#8ea2b8;font-size:10px}
body.vxMapStandalone .vxMapMiniStatus__metrics b{display:block;margin-top:6px;color:#f5f9ff;font-size:20px;line-height:1;font-variant-numeric:tabular-nums}
body.vxMapStandalone .vxMapMiniStatus--card small{display:block;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);color:#7f93a9;font-size:10px}
body.vxMapStandalone .vxMapMiniStatus__hidden{display:none!important}
body.vxMapStandalone .vxMapMiniStatus__dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#ef4444;box-shadow:0 0 10px rgba(239,68,68,.88)}
body.vxMapStandalone .vxMapMiniStatus__dot.is-fresh{background:#22c55e;box-shadow:0 0 10px rgba(34,197,94,.88)}
body.vxMapStandalone .vxMapMiniStatus__dot.is-stale{background:#ef4444;box-shadow:0 0 10px rgba(239,68,68,.88)}

@media(max-width:1100px){
  body.vxMapStandalone .vxMapStatus--overlay{top:118px!important;left:12px!important;transform:none!important;width:calc(100% - 24px)!important;min-width:0}
  body.vxMapStandalone .vxMapControlDock__row{flex-wrap:wrap}
  body.vxMapStandalone .vxMapMiniStatus--card{width:min(260px,calc(100% - 24px))}
}
@media(max-width:760px){
  body.vxMapStandalone .vxMapControlDock{right:8px;left:8px}
  body.vxMapStandalone .vxMapControlDock__row{gap:6px;padding:8px;flex-wrap:wrap}
  body.vxMapStandalone .vxMapControlDock__toggle{min-width:0!important;flex:1}
  body.vxMapStandalone .vxMapMiniStatus--card{top:74px;right:8px;left:8px;width:auto}
  body.vxMapStandalone .vxMapDrawerChips{top:222px;right:8px}
  body.vxMapStandalone .vxMapDrawerPanels{top:266px;right:8px;left:8px}
  body.vxMapStandalone .vxMapDrawerPanel,body.vxMapStandalone .vxMapDrawerPanel--objects,body.vxMapStandalone .vxMapDrawerPanel--logs{width:auto}
  body.vxMapStandalone .vxMapStatus--overlay{top:184px!important}
}


/* Standalone map refinements v29 */
body.vxMapStandalone .vxMapStatus--overlay{
  z-index:84!important;
  top:8px!important;
  left:50%!important;
  width:min(440px,calc(100% - 930px))!important;
  min-width:250px!important;
  min-height:38px!important;
  transform:translateX(-50%)!important;
  border-radius:11px!important;
}

body.vxMapStandalone .vxMapControlDock__toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}
body.vxMapStandalone .vxMapControlDock__toggle svg,
body.vxMapStandalone .vxMapDrawerChips button svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.vxMapStandalone .vxMapControlDock__settings{
  min-width:96px!important;
}

/* Logs settings: only in logs mode, at the very top-right. */
body.vxMapStandalone .vxMapDrawerChips{
  z-index:85;
  top:12px!important;
  right:12px!important;
  left:auto!important;
}
body.vxMapStandalone .vxMapDrawerChips button{
  min-width:112px!important;
  justify-content:center!important;
  gap:8px!important;
}
body.vxMapStandalone .vxMapDrawerChips button>span{display:none!important}

/* Drawer panels use their own positions depending on the active layer button. */
body.vxMapStandalone .vxMapDrawerPanels{
  position:absolute!important;
  z-index:83!important;
  inset:0!important;
  pointer-events:none!important;
}
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"]{
  position:absolute;
  top:58px;
  right:12px;
  pointer-events:auto;
}
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{
  position:absolute;
  top:72px;
  left:12px;
  pointer-events:auto;
}

/* Live status and controls form one right-side block. */
body.vxMapStandalone .vxMapMiniStatus--card{
  width:min(310px,calc(100% - 24px));
}
body.vxMapStandalone .vxMapMiniStatus__stale{
  margin-top:10px;
  padding:8px 9px;
  border:1px solid rgba(245,158,11,.25);
  border-radius:9px;
  background:rgba(146,64,14,.13);
  color:#f7c66f;
  font-size:10px;
  line-height:1.35;
}
body.vxMapStandalone .vxMapMiniStatus__stale[hidden]{display:none!important}
body.vxMapStandalone .vxMapMiniStatus__controls{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.07);
}
body.vxMapStandalone .vxMapMiniStatus__controls:empty{display:none}
body.vxMapStandalone .vxMapMiniStatus__controls .vxMapLiveControls{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  pointer-events:auto!important;
}
body.vxMapStandalone .vxMapMiniStatus__controls .vxMapLiveControls[hidden]{display:none!important}
body.vxMapStandalone .vxMapMiniStatus__controls .vxMapLiveControls__row{display:contents!important}
body.vxMapStandalone .vxMapMiniStatus__controls .vxMapLiveControlButton,
body.vxMapStandalone .vxMapMiniStatus__controls .vxMapLivePauseButton{
  min-height:34px!important;
  padding:7px 9px!important;
  justify-content:flex-start!important;
  border-radius:9px!important;
  font-size:9px!important;
  box-shadow:none!important;
}

@media(max-width:1280px){
  body.vxMapStandalone .vxMapStatus--overlay{
    top:64px!important;
    width:min(460px,calc(100% - 580px))!important;
  }
}
@media(max-width:900px){
  body.vxMapStandalone .vxMapStatus--overlay{
    top:64px!important;
    left:12px!important;
    width:calc(100% - 24px)!important;
    min-width:0!important;
    transform:none!important;
  }
}
@media(max-width:760px){
  body.vxMapStandalone .vxMapDrawerChips{top:226px!important;right:8px!important}
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"]{top:270px;right:8px;left:8px;width:auto}
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{top:270px;right:8px;left:8px;width:auto}
  body.vxMapStandalone .vxMapMiniStatus--card{top:128px!important}
  body.vxMapStandalone .vxMapStatus--overlay{top:82px!important}
}


/* Standalone map toolbar alignment v30 */
body.vxMapStandalone .vxMapStatus--overlay{
  top:2px!important;
}
body.vxMapStandalone .vxMapDrawerChips{
  display:none!important;
}
body.vxMapStandalone .vxMapControlDock__icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"],
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{
  position:absolute;
  top:72px;
  right:auto;
  left:12px;
  pointer-events:auto;
}
@media(max-width:1280px){
  body.vxMapStandalone .vxMapStatus--overlay{top:58px!important}
}
@media(max-width:900px){
  body.vxMapStandalone .vxMapStatus--overlay{top:58px!important}
}
@media(max-width:760px){
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"],
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{
    top:270px;
    right:8px;
    left:8px;
    width:auto;
  }
  body.vxMapStandalone .vxMapStatus--overlay{top:76px!important}
}


/* Standalone map status cards + cursor coordinates v31 */
body.vxMapStandalone .vxMapStatus--overlay{display:none!important}
body.vxMapStandalone .vxMapControlDock__icon{display:grid!important;place-items:center!important;line-height:1!important}
body.vxMapStandalone .vxMapControlDock__toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;line-height:1!important}
body.vxMapStandalone .vxMapControlDock__icon svg,
body.vxMapStandalone .vxMapControlDock__toggle svg{display:block!important;width:18px!important;height:18px!important;flex:0 0 18px!important;margin:0!important;transform:none!important;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.vxMapStandalone .vxMapControlDock__icon svg{width:20px!important;height:20px!important;flex-basis:20px!important}
body.vxMapStandalone .vxMapControlDock__toggle span{display:inline-flex;align-items:center;justify-content:center;line-height:1!important;margin:0!important}

body.vxMapStandalone .vxMapLogsStatus{position:absolute;z-index:81;top:12px;right:12px;left:auto;bottom:auto;width:min(360px,calc(100% - 24px));padding:12px 14px;border:1px solid rgba(76,111,147,.34);border-radius:14px;background:rgba(6,14,21,.92);box-shadow:0 18px 44px rgba(0,0,0,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none}
body.vxMapStandalone .vxMapLogsStatus[hidden]{display:none!important}
body.vxMapStandalone .vxMapLogsStatus__title b{color:#73b7ff!important}
body.vxMapStandalone .vxMapLogsStatus__dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#60a5fa;box-shadow:0 0 10px rgba(96,165,250,.9)}
body.vxMapStandalone .vxMapLogsStatus.is-loading .vxMapLogsStatus__dot{background:#f59e0b;box-shadow:0 0 10px rgba(245,158,11,.9)}
body.vxMapStandalone .vxMapLogsStatus.is-warn .vxMapLogsStatus__dot{background:#f59e0b;box-shadow:0 0 10px rgba(245,158,11,.9)}
body.vxMapStandalone .vxMapLogsStatus.is-error .vxMapLogsStatus__dot{background:#ef4444;box-shadow:0 0 10px rgba(239,68,68,.9)}
body.vxMapStandalone .vxMapLogsStatus__server{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07);color:#b7c6d6;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.vxMapStandalone .vxMapLogsStatus__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
body.vxMapStandalone .vxMapLogsStatus__metrics div{min-width:0;padding:8px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.025)}
body.vxMapStandalone .vxMapLogsStatus__metrics span{display:block;color:#8ea2b8;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.vxMapStandalone .vxMapLogsStatus__metrics b{display:block;margin-top:5px;color:#f5f9ff;font-size:17px;line-height:1;font-variant-numeric:tabular-nums}
body.vxMapStandalone .vxMapLogsStatus small{display:block;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06);color:#7f93a9;font-size:10px;line-height:1.35}

body.vxMapStandalone .vxMapCursorCoordinates{position:absolute;z-index:76;left:50%;bottom:12px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:9px;min-height:38px;padding:0 13px;border:1px solid rgba(81,129,175,.34);border-radius:11px;background:rgba(6,14,21,.9);box-shadow:0 14px 36px rgba(0,0,0,.38);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#eaf2fb;pointer-events:none;white-space:nowrap}
body.vxMapStandalone .vxMapCursorCoordinates svg{display:block;width:17px;height:17px;fill:none;stroke:#70b8ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.vxMapStandalone .vxMapCursorCoordinates b{font:700 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums}
body.vxMapStandalone .vxMapCursorCoordinates span{color:#8298ad;font-size:9px}
body.vxMapStandalone .vxMapCursorCoordinates.is-copied{border-color:rgba(34,197,94,.62);background:rgba(8,35,25,.94)}
body.vxMapStandalone .vxMapCursorCoordinates.is-copied span{color:#86efac}

@media(max-width:760px){
  body.vxMapStandalone .vxMapLogsStatus{top:74px;right:8px;left:8px;width:auto}
  body.vxMapStandalone .vxMapCursorCoordinates{right:8px;bottom:8px;left:8px;transform:none;gap:7px;padding:0 10px}
  body.vxMapStandalone .vxMapCursorCoordinates span{margin-left:auto}
}
@media(max-width:480px){
  body.vxMapStandalone .vxMapLogsStatus__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.vxMapStandalone .vxMapCursorCoordinates span{font-size:8px}
}


/* v32: move logs settings drawer to the right side */
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"]{
  top: 196px !important;
  right: 12px !important;
  left: auto !important;
  width: min(340px, calc(100vw - 34px));
}
@media(max-width:760px){
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"]{
    top: 270px !important;
    right: 8px !important;
    left: 8px !important;
    width: auto !important;
  }
}


/* v33 — persistent log filters, working map tools and stable panels */
:root{--vxops-line:rgba(148,163,184,.17);--vxops-muted:#8e9caf}
body.vxMapStandalone .vxMapLogsRightRail{
  position:absolute;z-index:81;top:12px;right:12px;left:auto;bottom:auto;
  width:min(360px,calc(100% - 24px));display:flex;flex-direction:column;gap:10px;
  pointer-events:none;
}
body.vxMapStandalone .vxMapLogsRightRail[hidden]{display:none!important}
body.vxMapStandalone .vxMapLogsRightRail .vxMapLogsStatus{
  position:static!important;inset:auto!important;width:100%!important;pointer-events:none!important;
}
body.vxMapStandalone .vxMapPinnedLogFilters{
  padding:12px 14px;border:1px solid rgba(76,111,147,.34);border-radius:14px;
  background:rgba(6,14,21,.94);box-shadow:0 18px 44px rgba(0,0,0,.4);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto;
}
body.vxMapStandalone .vxMapPinnedLogFilters__title{margin-bottom:10px;color:#dce8f4;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
body.vxMapStandalone .vxMapPinnedLogFilters .vxMapField{width:100%;min-width:0!important;margin-bottom:8px}
body.vxMapStandalone .vxMapPinnedLogFilters .vxMapActionPrimary{width:100%!important;min-height:38px!important}
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"],
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{
  top:72px!important;right:auto!important;left:12px!important;width:min(340px,calc(100vw - 34px))!important;
}
body.vxMapStandalone .vxMapControlDock__toggle[hidden]{display:none!important}
body.vxMapStandalone .vxMapControlDock__toggle.is-active{border-color:rgba(85,166,255,.72)!important;background:linear-gradient(180deg,rgba(23,54,93,.98),rgba(10,25,46,.96))!important}
body.vxMapStandalone .vxMapCursorCoordinates.is-copy-error{border-color:rgba(239,68,68,.62);background:rgba(55,12,17,.94)}
body.vxMapStandalone .vxMapCursorCoordinates.is-copy-error span{color:#fca5a5}

body.vxMapStandalone .vxMapOperationsPanel{
  position:absolute;right:12px;top:12px;bottom:12px;z-index:96;width:min(390px,calc(100% - 24px));
  border:1px solid var(--vxops-line);border-radius:14px;background:rgba(7,12,20,.97);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 18px 60px rgba(0,0,0,.5);
  overflow:auto;color:#edf3fb;pointer-events:auto;
}
body.vxMapStandalone .vxMapOperationsPanel[hidden]{display:none!important}
body.vxMapStandalone .vxMapOperationsHead{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-bottom:1px solid var(--vxops-line);background:rgba(10,16,26,.98)}
body.vxMapStandalone .vxMapOperationsHead h4{margin:0;font-size:13px}
body.vxMapStandalone .vxMapOperationsHead button{width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:20px!important;cursor:pointer}
body.vxMapStandalone .vxOpsButton{border:1px solid var(--vxops-line);border-radius:8px;padding:7px 10px;background:#101b2a;color:#eaf0f8;cursor:pointer;font-size:11px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
body.vxMapStandalone .vxOpsButton.primary{background:linear-gradient(135deg,#7354e9,#593acb);border-color:#8068e8}
body.vxMapStandalone .vxOpsButton.danger{color:#ff9aac;border-color:rgba(251,113,133,.24)}
body.vxMapStandalone .vxOpsButton:disabled{opacity:.55;cursor:wait}
body.vxMapStandalone .vxOpsEmpty{padding:24px;text-align:center;color:var(--vxops-muted)}
body.vxMapStandalone .vxOpsBoot{min-height:260px;display:grid;place-items:center;color:var(--vxops-muted)}
body.vxMapStandalone .vxOpsBoot span{width:30px;height:30px;border-radius:50%;border:3px solid rgba(117,87,238,.2);border-top-color:#8c72fb;animation:vxMapOpsSpin .8s linear infinite}
body.vxMapStandalone .vxOpsBoot b{display:block;margin-top:-95px}
@keyframes vxMapOpsSpin{to{transform:rotate(360deg)}}
body.vxMapStandalone .vxMapReplayControls{padding:10px;display:flex;gap:6px;align-items:center;border-bottom:1px solid rgba(148,163,184,.09)}
body.vxMapStandalone .vxMapReplayControls select{min-height:34px}
body.vxMapStandalone .vxMapEventItem{width:100%;border:0;background:transparent;color:#fff;display:grid;grid-template-columns:8px minmax(0,1fr);gap:9px;padding:10px 12px;text-align:left;border-bottom:1px solid rgba(148,163,184,.09);cursor:pointer}
body.vxMapStandalone .vxMapEventItem:hover{background:rgba(117,87,238,.09)}
body.vxMapStandalone .vxMapEventItem i{width:8px;height:8px;border-radius:50%;background:#63a9ff;margin-top:4px}
body.vxMapStandalone .vxMapEventItem b,body.vxMapStandalone .vxMapEventItem span{display:block}
body.vxMapStandalone .vxMapEventItem b{font-size:11px}
body.vxMapStandalone .vxMapEventItem span{font-size:10px;color:var(--vxops-muted);margin-top:3px}
body.vxMapStandalone .vxMapZoneLocked{padding:32px 20px;text-align:center}
body.vxMapStandalone .vxMapZoneLocked p{color:var(--vxops-muted)}
body.vxMapStandalone .vxMapZoneForm{padding:12px;display:grid;gap:8px;border-bottom:1px solid rgba(148,163,184,.12)}
body.vxMapStandalone .vxMapZoneForm input,body.vxMapStandalone .vxMapZoneForm select,body.vxMapStandalone .vxMapZoneForm textarea{width:100%;box-sizing:border-box;padding:8px;border:1px solid var(--vxops-line);border-radius:8px;background:#08111d;color:#fff}
body.vxMapStandalone .vxMapZoneForm textarea[readonly]{cursor:default;opacity:.94}
body.vxMapStandalone .vxMapZoneEditBanner{padding:9px 10px;border:1px solid rgba(96,165,250,.24);border-radius:8px;background:rgba(37,99,235,.09);font-size:10px;color:#bfdcff}
body.vxMapStandalone .vxMapZoneEditBanner[hidden]{display:none!important}
body.vxMapStandalone .vxMapZoneDrawTools{display:flex;flex-wrap:wrap;gap:7px}
body.vxMapStandalone .vxMapZoneRuleGrid{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:10px}
body.vxMapStandalone .vxMapZoneRuleGrid label{display:flex;align-items:center;gap:6px}
body.vxMapStandalone .vxMapZoneRuleGrid input{width:15px!important;height:15px!important;padding:0!important}
body.vxMapStandalone .vxMapZoneFormActions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
body.vxMapStandalone .vxMapZoneList{padding:10px;display:grid;gap:8px}
body.vxMapStandalone .vxMapZoneCard{padding:10px;border:1px solid rgba(148,163,184,.14);border-radius:9px;background:rgba(255,255,255,.018)}
body.vxMapStandalone .vxMapZoneCard b,body.vxMapStandalone .vxMapZoneCard small{display:block}
body.vxMapStandalone .vxMapZoneCard small{color:var(--vxops-muted);margin-top:4px}
body.vxMapStandalone .vxMapZoneCardActions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
body.vxMapStandalone #vxmap-host.is-zone-drawing,body.vxMapStandalone #vxmap-host.is-zone-drawing canvas{cursor:crosshair!important}

@media(max-width:760px){
  body.vxMapStandalone .vxMapLogsRightRail{top:128px;right:8px;left:8px;width:auto;max-height:calc(100% - 144px);overflow:auto}
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="logs"],
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel="objects"]{top:270px!important;right:8px!important;left:8px!important;width:auto!important}
  body.vxMapStandalone .vxMapOperationsPanel{top:8px;right:8px;bottom:8px;left:8px;width:auto}
}


/* v35 bottom map readouts + shared live indicator */
body.vxMapStandalone .vxMapBottomReadouts{position:absolute;z-index:76;left:50%;bottom:12px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;pointer-events:none;white-space:nowrap}
body.vxMapStandalone .vxMapBottomReadouts .vxMapCursorCoordinates{position:static!important;inset:auto!important;transform:none!important}
body.vxMapStandalone .vxMapZoomReadout{display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 12px;border:1px solid rgba(81,129,175,.34);border-radius:11px;background:rgba(6,14,21,.9);box-shadow:0 14px 36px rgba(0,0,0,.38);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#eaf2fb}
body.vxMapStandalone .vxMapZoomReadout svg{display:block;width:17px;height:17px;fill:none;stroke:#70b8ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.vxMapStandalone .vxMapZoomReadout span{color:#8298ad;font-size:9px}
body.vxMapStandalone .vxMapZoomReadout b{font:800 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums}
body.vxMapStandalone .vxMapMiniStatus__dot{position:relative!important;display:inline-block!important;width:9px!important;height:9px!important;min-width:9px!important;border-radius:50%!important;background:#ef4444!important;box-shadow:0 0 0 4px rgba(239,68,68,.12),0 0 13px rgba(239,68,68,.85)!important;animation:vxLiveHealthRedPulse 1.35s ease-in-out infinite!important}
body.vxMapStandalone .vxMapMiniStatus__dot.is-fresh{background:#22c55e!important;box-shadow:0 0 0 4px rgba(34,197,94,.12),0 0 13px rgba(34,197,94,.85)!important;animation:vxLiveHealthGreenPulse 1.35s ease-in-out infinite!important}
@keyframes vxLiveStatusPulseGreen{0%,100%{opacity:.72;transform:scale(.92)}50%{opacity:1;transform:scale(1.12)}}
@keyframes vxLiveStatusPulseRed{0%,100%{opacity:.68;transform:scale(.92)}50%{opacity:1;transform:scale(1.12)}}
@media(max-width:760px){body.vxMapStandalone .vxMapBottomReadouts{right:8px;bottom:8px;left:8px;transform:none;align-items:stretch}body.vxMapStandalone .vxMapZoomReadout{flex:0 0 auto}body.vxMapStandalone .vxMapBottomReadouts .vxMapCursorCoordinates{flex:1;min-width:0}}
@media(max-width:560px){body.vxMapStandalone .vxMapZoomReadout span{display:none}body.vxMapStandalone .vxMapBottomReadouts{gap:5px}}

/* v37: all map setting drawers stay below the top control dock, matching LIVE settings */
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{
  position:absolute!important;
  top:72px!important;
  right:auto!important;
  left:12px!important;
  width:min(340px,calc(100vw - 34px))!important;
  pointer-events:auto!important;
}
@media(max-width:760px){
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{
    top:270px!important;
    right:8px!important;
    left:8px!important;
    width:auto!important;
  }
}

/* v21: LiveMap is server-only */
.vxLiveMapTitleLine{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.vxLiveMapTitleLine h3{margin:4px 0 8px}.vxLiveMapServerBadge,.vxMapServerOnlyBadge{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border:1px solid rgba(255,171,64,.48);border-radius:999px;background:rgba(255,145,38,.13);color:#ffc06e;font-size:9px;font-weight:900;letter-spacing:.08em;line-height:1;white-space:nowrap}.vxMapLiveHintServerOnly{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.vxMapLiveHintServerOnly code{color:#ffd08d}

/* v31 — compact Г-shaped desktop controls + one-button mobile map menu */
body.vxMapStandalone .vxMapControlDock{top:12px!important;left:12px!important;right:auto!important;gap:0!important}
body.vxMapStandalone .vxMapControlDock__row{display:grid!important;grid-template-columns:max-content!important;grid-template-rows:repeat(6,32px)!important;grid-auto-columns:max-content!important;grid-auto-flow:column!important;align-items:center!important;gap:6px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.vxMapStandalone .vxMapControlDock__icon{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;border-radius:8px!important;padding:0!important}
body.vxMapStandalone .vxMapControlDock__icon svg{width:16px!important;height:16px!important;flex-basis:16px!important}
body.vxMapStandalone .vxMapControlDock__toggle{grid-row:1!important;height:34px!important;min-height:34px!important;min-width:88px!important;padding:0 11px!important;border-radius:9px!important;font-size:11px!important}
body.vxMapStandalone #vxmap-overlay-zoom-in{grid-column:1!important;grid-row:2!important}
body.vxMapStandalone #vxmap-overlay-zoom-out{grid-column:1!important;grid-row:3!important}
body.vxMapStandalone #vxmap-overlay-fit{grid-column:1!important;grid-row:4!important}
body.vxMapStandalone #vxmap-overlay-measure{grid-column:1!important;grid-row:5!important}
body.vxMapStandalone #vxmap-overlay-fullscreen{grid-column:1!important;grid-row:6!important}
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{top:52px!important;left:48px!important;right:auto!important;max-height:calc(100% - 66px)!important}
body.vxMapStandalone .vxMapOperationsPanel{top:52px!important;left:48px!important;right:auto!important;bottom:12px!important}
body.vxMapStandalone .vxMapControlDock__mobileMenu{display:none}

@media(max-width:900px){
  body.vxMapStandalone .vxMapControlDock{top:8px!important;left:8px!important;right:auto!important;z-index:92!important}
  body.vxMapStandalone .vxMapControlDock__mobileMenu{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;height:38px;min-height:38px;padding:0 12px;border:1px solid rgba(96,131,184,.34);border-radius:10px;background:linear-gradient(180deg,rgba(22,33,48,.98),rgba(9,15,25,.97));color:#eef4fc;box-shadow:0 12px 32px rgba(0,0,0,.38);font:800 11px/1 inherit;cursor:pointer;pointer-events:auto}
  body.vxMapStandalone .vxMapControlDock__mobileMenu svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
  body.vxMapStandalone .vxMapControlDock__row{display:none!important;position:absolute!important;top:44px!important;left:0!important;width:min(270px,calc(100vw - 16px))!important;grid-template-columns:repeat(5,32px)!important;grid-template-rows:auto!important;grid-auto-columns:auto!important;grid-auto-flow:row!important;justify-content:start!important;align-items:center!important;gap:7px!important;padding:9px!important;border:1px solid rgba(77,115,167,.38)!important;border-radius:12px!important;background:rgba(6,14,22,.96)!important;box-shadow:0 20px 48px rgba(0,0,0,.48)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}
  body.vxMapStandalone .vxMapControlDock.is-mobile-open .vxMapControlDock__row{display:grid!important}
  body.vxMapStandalone .vxMapControlDock__icon{grid-column:auto!important;grid-row:auto!important;width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important}
  body.vxMapStandalone .vxMapControlDock__toggle{grid-column:1 / -1!important;grid-row:auto!important;width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;justify-content:flex-start!important;padding:0 11px!important}
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{top:54px!important;left:8px!important;right:8px!important;width:auto!important;max-height:calc(100% - 70px)!important}
  body.vxMapStandalone .vxMapOperationsPanel{top:54px!important;left:8px!important;right:8px!important;bottom:8px!important;width:auto!important}
}


/* v32 — right rail fit, persistent collapsible panes, shifted drawers, compact Live Alerts */
body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{left:60px!important}
body.vxMapStandalone .vxMapOperationsPanel{left:60px!important}
body.vxMapStandalone .vxMapLogsRightRail{right:14px!important;width:min(348px,calc(100% - 28px))!important;box-sizing:border-box!important}
body.vxMapStandalone .vxMapLogsRightRail>*{max-width:100%!important;box-sizing:border-box!important}
body.vxMapStandalone .vxMapLogsRightRail .vxMapLogsStatus{width:100%!important;max-width:100%!important;box-sizing:border-box!important;pointer-events:auto!important}
body.vxMapStandalone .vxMapPinnedLogFilters{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
body.vxMapStandalone #vxmap-mini-status{pointer-events:auto!important;box-sizing:border-box!important}
body.vxMapStandalone .vxMapPaneCollapse{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:calc(100% + 12px)!important;height:25px!important;min-height:25px!important;margin:-6px -6px 8px!important;padding:0 8px!important;border:0!important;border-bottom:1px solid rgba(126,155,194,.16)!important;border-radius:8px 8px 4px 4px!important;background:rgba(34,52,76,.2)!important;color:#9fb4ca!important;font:800 9px/1 inherit!important;letter-spacing:.02em!important;cursor:pointer!important;pointer-events:auto!important}
body.vxMapStandalone .vxMapPaneCollapse:hover{background:rgba(45,70,102,.34)!important;color:#dceaff!important}
body.vxMapStandalone .vxMapPaneCollapse small{margin:0!important;padding:0!important;border:0!important;color:#72879d!important;font-size:8px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important}
body.vxMapStandalone .is-vx-collapsed>.vxMapPaneCollapse{margin-bottom:-1px!important;border-bottom:0!important}
body.vxMapStandalone .is-vx-collapsed>:not(.vxMapPaneCollapse){display:none!important}
body.vxMapStandalone .vxMapMiniStatus--card.is-vx-collapsed,
body.vxMapStandalone .vxMapLogsStatus.is-vx-collapsed,
body.vxMapStandalone .vxMapPinnedLogFilters.is-vx-collapsed{padding:6px!important;min-height:37px!important}
body.vxMapStandalone .vxLiveAlertsCompactActions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap!important;max-width:100%!important}
body.vxMapStandalone .vxLiveAlertsCompactControl{flex:0 0 auto!important;min-width:0!important;max-width:100%!important;white-space:nowrap!important}
body.vxMapStandalone .vxLiveAlertsCompactActions button{width:auto!important;min-width:0!important;min-height:28px!important;height:28px!important;padding:0 9px!important;font-size:9px!important}
body.vxMapStandalone .vxLiveAlertsCompactActions label{display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;font-size:9px!important}
body.vxMapStandalone .vxLiveAlertsPanel>header{gap:7px!important}
body.vxMapStandalone .vxLiveAlertsHeadActions{flex:0 0 auto!important;gap:5px!important;flex-wrap:nowrap!important}
body.vxMapStandalone .vxLiveAlertsHeadActions button{max-width:132px!important;overflow:hidden!important;text-overflow:ellipsis!important}
@media(max-width:900px){
  body.vxMapStandalone .vxMapDrawerPanels>[data-vxmap-drawer-panel]{left:8px!important}
  body.vxMapStandalone .vxMapOperationsPanel{left:8px!important}
  body.vxMapStandalone .vxMapLogsRightRail{right:8px!important;left:8px!important;width:auto!important}
  body.vxMapStandalone .vxLiveAlertsCompactActions{display:grid!important;grid-template-columns:1fr 1fr!important}
  body.vxMapStandalone .vxLiveAlertsCompactActions label{grid-column:1/-1!important}
}

/* v33 — real Live Alerts header controls */
body.vxMapStandalone .vxMapLiveAlertsPanel>header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important}
body.vxMapStandalone .vxMapLiveAlertsPanel>header>div:first-child{min-width:0!important;flex:1 1 auto!important}
body.vxMapStandalone .vxLiveAlertsHeadActions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;flex:0 0 auto!important;flex-wrap:nowrap!important}
body.vxMapStandalone .vxLiveAlertsHeadActions button{margin:0!important;box-sizing:border-box!important;white-space:nowrap!important}
body.vxMapStandalone .vxLiveAlertsReadAll{width:auto!important;max-width:none!important;height:32px!important;min-height:32px!important;padding:0 10px!important;font-size:9px!important}
body.vxMapStandalone .vxLiveAlertsAuto{width:auto!important;min-width:68px!important;height:32px!important;min-height:32px!important;padding:0 8px!important;border:1px solid rgba(82,117,158,.42)!important;border-radius:9px!important;background:rgba(19,32,48,.9)!important;color:#91a6bd!important;font-size:9px!important;font-weight:850!important;cursor:pointer!important}
body.vxMapStandalone .vxLiveAlertsAuto.is-active{border-color:rgba(53,190,128,.48)!important;background:rgba(28,108,78,.3)!important;color:#8fe4bd!important}
body.vxMapStandalone .vxLiveAlertsRefresh{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 32px!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;font-size:18px!important;line-height:1!important}
body.vxMapStandalone .vxLiveAlertsSummary{display:block!important;min-height:0!important}
body.vxMapStandalone .vxLiveAlertsSummary>[data-vx-live-alert-summary]{display:block!important;width:100%!important;min-width:0!important}
@media(max-width:560px){body.vxMapStandalone .vxMapLiveAlertsPanel>header{flex-wrap:wrap!important}body.vxMapStandalone .vxLiveAlertsHeadActions{width:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important}}


/* 20260821: allow map dragging through empty area occupied by the control-dock grid.
   Only the visible controls should receive pointer input. */
body.vxMapStandalone .vxMapControlDock__row{pointer-events:none!important}
body.vxMapStandalone .vxMapControlDock__row>button,
body.vxMapStandalone .vxMapControlDock__row>a,
body.vxMapStandalone .vxMapControlDock__row>label{pointer-events:auto!important}
