/* ============================================================
   VELOCITY SERVER MAP LIVE V79
   Exactly ONE visual map renderer: .vc79-map-art <img>.
   ============================================================ */

.v9-server-card[data-server]{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;

  /* Kill old inline / class-level AI artwork. */
  background-image:none!important;
}

/*
 * Old V9/V10/V23 map art lives in ::before.
 * Disable it permanently so it can never flash over the live image.
 */
.v9-server-card[data-server]::before{
  content:none!important;
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  background:none!important;
  background-image:none!important;
}

/* The only map artwork layer. */
.v9-server-card[data-server] > .vc79-map-art{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;

  display:block!important;
  width:100%!important;
  height:100%!important;

  object-fit:cover!important;
  object-position:center center!important;

  opacity:1!important;
  visibility:visible!important;

  filter:saturate(1.04) contrast(1.06) brightness(.72)!important;

  pointer-events:none!important;
  user-select:none!important;

  transition:
    opacity .22s ease,
    filter .22s ease,
    transform .28s ease!important;
}

/* While new image is loading, keep current image visible. */
.v9-server-card[data-server] > .vc79-map-art.is-loading{
  opacity:.86!important;
}

.v9-server-card[data-server]:hover > .vc79-map-art{
  transform:scale(1.018)!important;
  filter:saturate(1.10) contrast(1.08) brightness(.80)!important;
}

/* Existing dark overlay must sit above map image. */
.v9-server-card[data-server] > .v9-server-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
}

/* Content / badges / buttons always above art. */
.v9-server-card[data-server] > .v9-server-content,
.v9-server-card[data-server] .v9-server-content{
  position:relative!important;
  z-index:2!important;
}

/*
 * If Deathrun artwork for a brand-new Workshop map has not been cached yet,
 * show a clean neutral background instead of the old fake AI picture.
 */
.v9-server-card[data-server="deathrun"].vc79-no-art{
  background:
    radial-gradient(circle at 76% 35%,rgba(28,113,176,.18),transparent 35%),
    linear-gradient(135deg,#071725,#03101a)!important;
}

.v9-server-card[data-server="deathrun"].vc79-no-art > .vc79-map-art{
  opacity:0!important;
}

/* Mobile keeps the same real image layer. */
@media (max-width:860px){
  .v9-server-card[data-server] > .vc79-map-art{
    object-position:center center!important;
    filter:saturate(1.02) contrast(1.05) brightness(.68)!important;
  }
}

.v9-server-card[data-server="zombieescape"].vc79-no-art > .vc79-map-art{opacity:0!important}
