/** GENERALES **/

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

body{
    font-family: 'poppins' !important;
}

.bg-gradient-body {
  background: linear-gradient(-45deg, #ffffff, #ffe2d5, #ffffff, #3082f8);
  background-size: 800% 800%; /* Aumentamos el tamaño del degradado */
  animation: gradient 20s ease infinite; /* Extendemos la duración de la animación */
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

:focus-visible {
    outline: -webkit-focus-ring-color auto 0px !important;
}

.badge.badge-pill{
    cursor: pointer!important;
}

.desborde-texto-1-linea{
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/** SVG ICONOS ANIMADOS **/

.icon {
  display: inline-block;
  transition: transform 0.3s ease-in-out;
}

.icon:hover {
  transform: scale(1.28) rotate(360deg);
}

.icon:visited {
  transform: scale(1.28) rotate(360deg);
}

/** ANIMACION DE IMAGEN **/
.image-container-animacion {
    position: relative;
    width: 250px;
    height: 250px;
    cursor: pointer;
    overflow: hidden;
}

.image-animacion {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: opacity 0.7s ease-in-out, transform 0.5s ease-in-out; /* Añadimos transición para transform */
}

.fonrt-animacion {
    opacity: 1;
    transform: scale(1); /* Escala normal */
}

.back-animacion {
    opacity: 0;
    transform: scale(0.9); /* Escala ligeramente reducida */
}

.image-container-animacion:hover .fonrt-animacion {
    opacity: 0;
    transform: scale(0.9); /* Escala ligeramente reducida */
}

.image-container-animacion:hover .back-animacion {
    opacity: 1;
    transform: scale(1); /* Escala normal */
}
.blur{
    backdrop-filter: blur(10px) !important;
    background-color: rgb(255 255 255 / 79%) !important;
}

/** ANIMACION ENCONTRADO**/

@keyframes confetti-fall {
    0% { transform: translateY(0); opacity: 1; }
    100% { transform: translateY(100vh); opacity: 0; }
}

.confetti {
    position: fixed;
    top: 0;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: #f00;
    opacity: 0;
    animation: confetti-fall 3s linear;
    z-index: 1300; /* Asegúrate de que el z-index sea más alto que el del modal */
}

.confetti:nth-child(odd) {
    background-color: #ff6000;
}

.confetti:nth-child(even) {
    background-color: #00abff;
}

/** animacion de botones en recordatorios**/

@keyframes slide-up {
  0% {
    opacity: 0;
    transform: translateY(100px) scale(2.5);
  }
  100% {
    opacity: 1;
    transform: translateY(0) transform: scale(1);
  }
}

.animated-div {
  animation: slide-up 1s ease-out;
}

.img-animated {
  transition: transform 0.3s ease-out, width 0.5s ease-out;
}

.img-animated:hover {
  transform: scale(2) rotate(10deg);
  width: 190px; /* Tamaño mayor al hacer hover */
}


.custom-div {
  width: 96%;
  max-width: 390px;
  position: fixed;
  bottom: 15px;
  z-index: 1;
  margin: 0 auto;
  left: 0;
  right: 0;
  backdrop-filter: blur(10px);
  cursor: pointer;
}

.campos {
    border: 0px;
    border-bottom: 3px solid;
    padding-bottom: 5px;
    border-radius: 0px;
    font-size: 20px;
    margin-top: 5px;
    background: transparent;
}
.campos:focus {
    border-color: #000000;
    outline: 0;
    box-shadow: none;
    background: #212529;
    color: white;
    border-radius: 40px;
}