@keyframes buffPulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.5);
    color: var(--buff-color, #10b981);
  }

  100% {
    transform: scale(1);
  }
}

.buff-pulse {
  animation: buffPulse 0.4s ease-out forwards;
  display: inline-block;
  /* 确保transform生效 */
}

.card-tap {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotateZ(90deg);
}

.card-stand {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transform: rotateZ(0deg);
}

/* 抽牌动画样式 */
.draw-card-animation {
  pointer-events: none;
  user-select: none;
}

@keyframes drawCardGlow {
  0% {
    box-shadow: 0 2px 8px #b3cfff;
  }

  50% {
    box-shadow: 0 4px 16px #0078d7, 0 0 20px #0078d755;
  }

  100% {
    box-shadow: 0 2px 8px #b3cfff;
  }
}

.draw-card-animation {
  animation: drawCardGlow 0.6s ease-out;
}

/* 弃牌动画样式 */
.discard-card-animation {
  pointer-events: none;
  user-select: none;
}

@keyframes discardCardFade {
  0% {
    box-shadow: 0 2px 8px #b3cfff;
    opacity: 1;
  }

  50% {
    box-shadow: 0 4px 16px #dc3545, 0 0 20px #dc354555;
    opacity: 0.8;
  }

  100% {
    box-shadow: 0 2px 8px #b3cfff;
    opacity: 0.7;
  }
}

.discard-card-animation {
  animation: discardCardFade 0.5s ease-out;
}