.holo-container {
  perspective: 1000px;
  width: 100%;
  margin: 0 auto;
}

.holo-card {
  width: 100%;
  aspect-ratio: 808 / 632;
  transform-style: preserve-3d;
  transition: transform 0.1s ease-out;
  transform: scale(var(--scale, 1)) rotateY(var(--ry, 0deg)) rotateX(var(--rx, 0deg));
  overflow: hidden;
  border-radius: 8px;
  background-color: transparent !important;
  outline: 1px solid transparent;
  backface-visibility: hidden;
  position: relative;
  z-index: 1;
  -webkit-user-drag: none;
  user-select: none;
}

.holo-card .card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.03);
  -webkit-user-drag: none;
}

.holo-card .card-img-overlay {
  background: linear-gradient(to top, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 50%);
}

.holo-card::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient( 60deg, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0) 70% );
  background-size: 250% 250%;
  background-position: 10% 50%;
  transition: background-position 0.6s ease-out;
  pointer-events: none;
  z-index: 10;
}

.holo-card:hover::after {
  background-position: var(--x, 50%) var(--y, 50%);
  transition: 0.2s;
}

.holo-card:hover {
  --scale: 1.05;
  z-index: 10;
}

.holo-card:active {
  --scale: 0.95;
  filter: brightness(0.9);
}

