/* ===== Advanced Payment UI v2 ===== */
.pm-cat-btn {
  position: relative;
  overflow: hidden;
}
.pm-cat-btn::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.15), transparent);
  transition: left .5s;
}
.pm-cat-btn:hover::before { left: 100%; }
.pm-cat-btn:hover {
  transform: translateY(-4px) scale(1.02);
}
.pm-cat-btn:active { transform: scale(.98); }

.pm-method {
  transition: all .25s cubic-bezier(.4,0,.2,1);
  position: relative;
}
.pm-method:hover {
  border-color: #ffd700 !important;
  transform: translateX(4px);
  box-shadow: 0 4px 20px rgba(255,215,0,.15);
}
.pm-method.selected {
  border-color: #ffd700 !important;
  background: linear-gradient(135deg, rgba(255,215,0,.08), rgba(255,215,0,.02)) !important;
  box-shadow: 0 0 0 1px #ffd700, 0 8px 24px rgba(255,215,0,.2);
}

.pm-wallet {
  transition: all .2s;
  position: relative;
}
.pm-wallet:hover {
  border-color: #ffd700 !important;
  background: rgba(255,215,0,.05) !important;
}
.pm-wallet:active { transform: scale(.99); }

.pm-copy, .pm-copy-btn {
  transition: all .2s;
  position: relative;
  overflow: hidden;
}
.pm-copy:hover, .pm-copy-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255,215,0,.3);
}
.pm-copy:active, .pm-copy-btn:active { transform: scale(.97); }

.pm-copy-msg {
  animation: pmFadeIn .3s ease;
  font-weight: 700;
  padding: 8px 16px;
  border-radius: 20px;
  background: rgba(74,222,128,.15);
  border: 1px solid rgba(74,222,128,.4);
  display: inline-block;
}
@keyframes pmFadeIn {
  from { opacity: 0; transform: translateY(-8px) scale(.95); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.pay-modal-box {
  animation: pmSlideUp .35s cubic-bezier(.34,1.56,.64,1);
}
@keyframes pmSlideUp {
  from { opacity: 0; transform: translateY(40px) scale(.95); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Shimmer effect on category cards */
.pm-cat-btn::after {
  content: '';
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(circle, rgba(255,255,255,.1) 0%, transparent 60%);
  opacity: 0;
  transition: opacity .3s;
  pointer-events: none;
}
.pm-cat-btn:hover::after { opacity: 1; }

/* Pulse on crypto icon */
.pm-cat-btn[data-cat="crypto"] > div:first-child {
  animation: pmPulse 2s ease-in-out infinite;
}
@keyframes pmPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}

/* Method card entrance */
.pm-method {
  animation: pmSlideIn .3s ease backwards;
}
.pm-method:nth-child(2) { animation-delay: .05s; }
.pm-method:nth-child(3) { animation-delay: .1s; }
.pm-method:nth-child(4) { animation-delay: .15s; }
.pm-method:nth-child(5) { animation-delay: .2s; }
@keyframes pmSlideIn {
  from { opacity: 0; transform: translateX(-20px); }
  to { opacity: 1; transform: translateX(0); }
}
