/* Final card screenshot polish.
   Valorant inventory screenshots are 800x320, so they need a 2.5:1 frame to
   start at the real top-left without crop. Other games keep one consistent
   proof-preview frame so card heights do not jump. */

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 2.1 / 1 !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 12%,
      color-mix(in srgb, var(--card-game-color, var(--shop-page-game-color, var(--v2-gold))) 14%, transparent),
      transparent 54%),
    linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .008)),
    #05070b !important;
}

body[data-shop-game="valorant"].alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
  aspect-ratio: 2.5 / 1 !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img img:not(.alv-card-img-logo) {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 0% !important;
  padding: 0 !important;
  transform: none !important;
  transform-origin: 50% 0% !important;
  filter: saturate(1.06) contrast(1.035) brightness(.98) !important;
  transition: filter .18s var(--v2-ease) !important;
  background: transparent !important;
}

body[data-shop-game="valorant"].alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-badge-wrap {
  top: auto !important;
  bottom: 10px !important;
  left: 10px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-shop-card:hover .alv-card-img img:not(.alv-card-img-logo) {
  transform: none !important;
  filter: saturate(1.1) contrast(1.045) brightness(1) !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img::after {
  height: 18% !important;
  background: linear-gradient(180deg, transparent, rgba(5, 7, 11, .30)) !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-main {
  padding: 13px !important;
  gap: 9px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-body {
  gap: 8px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-title {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-snapshot {
  gap: 7px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-snapshot span {
  min-height: 42px !important;
  padding: 7px 8px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-footer {
  padding-top: 10px !important;
}

body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-price,
body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-actions .alv-card-btn,
body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-actions .alv-shop-btn {
  min-height: 40px !important;
}

@media (min-width: 1100px) {
  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-shop-card {
    min-height: 435px !important;
  }

  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
    height: auto !important;
    aspect-ratio: 2.1 / 1 !important;
    margin: 12px 12px 0 !important;
  }

  body[data-shop-game="valorant"].alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
    aspect-ratio: 2.5 / 1 !important;
  }

  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-snapshot span {
    min-height: 43px !important;
    padding: 7px 9px !important;
  }
}

@media (max-width: 599px) {
  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
    aspect-ratio: 2.1 / 1 !important;
  }

  body[data-shop-game="valorant"].alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-img {
    aspect-ratio: 2.5 / 1 !important;
  }

  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-main {
    padding: 12px !important;
    gap: 8px !important;
  }

  body.alv-shop-page #alv-shop-app:not(.alv-shop-picker-mode) .alv-card-snapshot span {
    min-height: 40px !important;
  }
}
