@keyframes pulse-soft {
  0%,100% { transform: scale(1); opacity: .25; }
  50% { transform: scale(1.08); opacity: .35; }
}
.animate-pulse-soft { animation: pulse-soft 6s ease-in-out infinite; }
.animation-delay-2500 { animation-delay: 2.5s; }
@keyframes bounce-soft { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
.animate-bounce-soft { animation: bounce-soft 2s ease-in-out infinite; }


  @keyframes fadeIn { from {opacity:0; transform:scale(0.95);} to {opacity:1; transform:scale(1);} }
  .animate-fadeIn { animation: fadeIn 0.25s ease-out forwards; }
  #modalPlanes button { cursor: pointer; }
  #contenedorPlanes .fx-plan-select-btn {
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  }
  #contenedorPlanes .fx-plan-select-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.05) saturate(1.08);
    box-shadow: 0 12px 30px rgba(37, 99, 235, 0.30), 0 8px 20px rgba(16, 185, 129, 0.22);
  }
  #contenedorPlanes .fx-plan-select-btn:active {
    transform: translateY(0);
    filter: brightness(1.02);
  }

  /* PayPal buttons: force full-width rendering inside our modal */
  #paypal-button-container {
    width: 100%;
  }
  #paypal-button-container > div {
    width: 100% !important;
    max-width: 100% !important;
  }
  #paypal-button-container .paypal-buttons,
  #paypal-button-container .paypal-buttons-context-iframe {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
  }
  #paypal-button-container .paypal-button {
    width: 100% !important;
    max-width: 100% !important;
  }
  #paypal-button-container iframe {
    width: 100% !important;
    min-width: 100% !important;
  }
