:root {
  --min-hotspot-opacity: 1;
}

.viwer-bottom-info,
.image-bottom-info {
  position: absolute;
  z-index: 100;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: auto;
  bottom: 0px;
  left: 0px;
  padding: 0.5rem 1.25rem;
  gap: 0.5rem;
}

.image-bottom-info {
  position: relative;
}

#loader {
  top: 0px;
  display: flex;
  position: absolute;
  width: 100%;
  height: 100%;
  color: var(--color-titular);
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  pointer-events: none;
  touch-action: none;
  z-index: 1;
}

#loading-svg {
  position: absolute;
  width: 100px;
  height: 100px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  animation: loading 2s linear infinite;
}

@keyframes loading {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}

.namebox {
  display: flex;
  padding: 0.25rem 0.5rem;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
  align-self: stretch;
  background-color: var(--color-fondo-cta);
  color: var(--color-titular);
}

.perfil-button {
  display: flex;
  padding: 0.5rem 1.25rem;
  align-items: flex-start;
  gap: 0.5rem;
  border-radius: 0.125rem;
  background: var(--color-cuaternario);
  border: 0;
}

.viwer-buttonary {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  justify-content: space-evenly;
}

.top-banner {
  display: flex;
  padding: 0.5rem 0.75rem;
  width: 100%;
  height: auto;
  justify-content: space-between;
  align-items: center;
  background: var(--color-modo);
  z-index: 103;
}

.top-bar {
  position: relative;
  z-index: 150;
  padding: 0.5rem;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: stretch;
  height: auto;
  width: 100%;
}

.viewer-box {
  top: 0px;
  display: flex;
  position: relative;
  background-image: var(--image-fondo);
  background-repeat: repeat;
  background-size: contain;
  width: 100%;
  height: auto;
  border: 1px solid var(--color-terciario);
  flex-grow: 1;
}

.bounceAnim {
  animation: bounceAndShake 0.2s ease forwards;
}

.HotspotAnnotation {
  display: flex;
  flex-direction: row;
  align-content: center;
  align-items: center;
  gap: 0.2rem;
  touch-action: none;
  pointer-events: none;
}

.HotspotAnnotation font {
  color: var(--color-primario);
}

poi-button:not([data-visible]) {
  opacity: 0.1;
  pointer-events: none;
  touch-action: none;
}

.o-0 {
  opacity: 0 !important;
  touch-action: none;
  pointer-events: none;
}

@keyframes bounceAndShake {
  0% {
    transform: translateY(-5px);
  }
  80% {
    transform: translateY(0);
  }
  90% {
    transform: translateY(1px);
  }
  100% {
    transform: translateY(0);
  }
}

.fade-out-anim {
  animation: fadeOutRotate 0.4s ease forwards; /* Duración de 2 segundos, repite infinitamente */
}
.fade-in-anim {
  animation: fadeInRotate 0.4s ease forwards; /* Duración de 2 segundos, repite infinitamente */
}

/* Definición de la animación */
@keyframes fadeOutRotate {
  0% {
    opacity: 0.7; /* Comienza y termina completamente transparente */
    transform: translate(-50%, -50%) rotate(0deg); /* Comienza sin rotación */
  }
  100% {
    opacity: 0; /* Opacidad completa a la mitad del tiempo */
    transform: translate(-50%, -50%) rotate(180deg); /* Rota 180 grados a la mitad de la animación */
  }
}
@keyframes fadeInRotate {
  0% {
    opacity: 0; /* Comienza y termina completamente transparente */
    transform: translate(-50%, -50%) rotate(180deg); /* Comienza sin rotación */
  }
  100% {
    opacity: 0.7; /* Opacidad completa a la mitad del tiempo */
    transform: translate(-50%, -50%) rotate(0deg); /* Rota 180 grados a la mitad de la animación */
  }
}

.tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.25rem 0;
}

.tag {
  color: var(--color-primario);
  border: solid 1px var(--color-primario);
  padding: 0.25rem 0.5rem;
  border-radius: 1rem;
}

.miga-pan {
  z-index: 1;
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
}

.miga-tag {
  background-color: transparent;
}
