.bounce-animation {
  animation: bounce 5s infinite;
}
@keyframes bounce {
  0% {transform: translateY(0);}
  10% {transform: translateY(-15px);}
  20% {transform: translateY(5px);}
  25% {transform: translateY(0px);}
  30% {transform: translateY(0px);}
  100% {transform: translateY(0);}
}

.flash-animation {
  animation: flash 5s infinite;
}
@keyframes flash {
  0%,20%,40% {opacity: 0.1;}
  10%,30%,50%,100% {opacity: 1;}
}

.flip-animation {
  backface-visibility: visible;
  animation: flip 5s infinite;
}
@keyframes flip {
  0% {transform: perspective(600px) translateZ(0) rotateY(0) scale(1);animation-timing-function: ease-out;}
  20% {transform: perspective(600px) translateZ(150px) rotateY(170deg) scale(1);animation-timing-function: ease-out;}
  25% {transform: perspective(600px) translateZ(150px) rotateY(190deg) scale(1);animation-timing-function: ease-in;}
  30% {transform: perspective(600px) translateZ(0) rotateY(360deg) scale(.95);animation-timing-function: ease-in;}
  35%, 100% {transform: perspective(600px) translateZ(0) rotateY(360deg) scale(1);animation-timing-function: ease-in;}
}

.lightSpeedIn-animation {
  animation: lightSpeedIn 5s infinite;
  animation-timing-function: ease-out;
}
@keyframes lightSpeedIn {
  10%,30% {transform: translateX(10%) skewX(-30deg);opacity: 1;}
  10%,20%,40% {transform: translateX(-10%) skewX(30deg);opacity: 1;}
  0%, 50%, 100% {transform: translateX(0%) skewX(0deg);opacity: 1;}
}

.pulse-animation {
  animation: pulse 5s infinite;
}
@keyframes pulse {
  0% {transform: scale(1);}
  10% {transform: scale(1.2);}
  20% {transform: scale(1);}
  30% {transform: scale(1.15);}
  40%, 100% {transform: scale(1);}
}

.rubberBand-animation {
  animation: rubberBand 5s infinite;
}
@keyframes rubberBand {
  0% {transform: scale(1);}
  10% {transform: scaleX(1.25) scaleY(0.75);}
  20% {transform: scaleX(0.75) scaleY(1.25);}
  30% {transform: scaleX(1.15) scaleY(0.85);}
  40%, 100% {transform: scale(1);}
}

.shake-animation {
  animation: shake 5s infinite;
}
@keyframes shake {
  0% {transform: translateX(0);}
  10%, 16%, 22%, 28%, 33% {transform: translateX(-5px);}
  13%, 19%, 25%, 31%, 37% {transform: translateX(5px);}
  40%, 100% {transform: translateX(0);}
}

.wobble-animation {
  animation: wobble 5s infinite;
}
@keyframes wobble {
  0% {transform: translateX(0%);}
  5% {transform: translateX(-25%) rotate(-5deg);}
  10% {transform: translateX(20%) rotate(3deg);}
  15% {transform: translateX(-15%) rotate(-3deg);}
  20% {transform: translateX(10%) rotate(2deg);}
  25% {transform: translateX(-5%) rotate(-1deg);}
  30%, 100% {transform: translateX(0%);}
}

.ginger-bar-message {
  @apply fixed w-full top-0 left-0 text-center align-middle break-all z-[10009] hidden text-[16px];
  .ginger-bar-inner-box {
    @apply flex items-center;
    .ginger-bar-message-text {
      @apply align-middle inline-block;
      p {
        @apply m-0 p-0;

      }
    }
    .ginger-bar-message-button {
      @apply inline-block w-max border-none py-[5px] px-2.5 align-middle ml-2.5 cursor-pointer rounded text-center font-normal tracking-normal normal-case;
      font-size: inherit;
      font-family: inherit;
    }
    .ginger-bar-close-button {
      @apply absolute right-[5px] top-[5px] w-2.5 h-2.5 block;
      a {
        @apply block w-2.5 h-2.5;
        svg {
          @apply w-full h-full block;
        }
      }
    }
  }
  &.active {
    @apply inline-block;
  }
  &.ginger-bar-shadow {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(50, 50, 50, 1);
    -moz-box-shadow:    0px 0px 10px 0px rgba(50, 50, 50, 1);
    box-shadow:         0px 0px 10px 0px rgba(50, 50, 50, 1);
  }
}
@media screen and (max-width:600px) {
  .ginger-bar-message.top-position:has(+ #wpadminbar) {
    top: 0 !important;
    position: sticky;
  }
}