.alert {
  background-color: #D5DCFF;
  border: 1.5px solid #8195FF;
  flex-direction: column;
  color: #191919;
  padding: 1rem 2rem;
  gap: 8px;
  overflow: hidden;
  width: 28.75em;
  position: fixed;
  right: 0;
  top: 10px;
  z-index: 99999;

  @media (max-width: 420px) {
    width: 310px;
  }

  & .alert-icon {
    position: relative;
    display: block;

    &::before {
      content: "\f27a";
      position: absolute;
      font-family: "Font Awesome 6 Free" !important;
      font-weight: 900;
      left: -25px;
      color: #2D4EFF;
      font-size: 20px;
    }
  }

  &.is-success {
    background-color: #EAF5DC;
    border-color: #94CC4E;

    & .alert-icon::before {
      content: "\f058" !important;
      color: #65942B;
      top: -4px;
    }
  }

  &.is-warning {
    background-color: #FFF5D2;
    border-color: #FFCE1E;

    & .alert-icon::before {
      content: "\f071" !important;
      color: #FFCE1E;
      top: -4px;
    }
  }

  &.is-danger {
    background-color: #F9DEDA;
    border-color: #DF5846;

    & .alert-icon::before {
      content: "\f06a" !important;
      color: #D43A25;
      top: -4px;
    }
  }

  &.is-active {
    display: flex;
    animation: show_slide 1s ease forwards;
  }

  &.is-hidden {
    display: flex;
    animation: hiden_slide 1s ease forwards;
  }

}



.loading {
  padding: 1rem;
  background-color: #fff;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  box-shadow: 0px 4px 8px 3px rgba(0, 0, 0, 0.15), 0px 1px 3px rgba(0, 0, 0, 0.3);
  min-width: 320px;
  min-height: 152px;
  border-radius: 8px;

  & .loading-content {
    margin-top: 3rem;
    display: flex;
    gap: 8px;
    flex-wrap: nowrap;
    flex-direction: column;
  }

  & .loading-tittle {
    font-weight: 600;
  }
}

.result {
  border-left: 2px solid #F66902;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1);
  padding: 12px 16px;
  color: #005392;
  font-size: 14px;
}

.loader {
  margin-top: 2rem;
  color: #F66902;
  font-size: 8px;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  animation: mulShdSpin 1.3s infinite linear;
  transform: translateZ(0);
}

@keyframes mulShdSpin {

  0%,
  100% {
    box-shadow: 0 -3em 0 0.2em,
      2em -2em 0 0em, 3em 0 0 -1em,
      2em 2em 0 -1em, 0 3em 0 -1em,
      -2em 2em 0 -1em, -3em 0 0 -1em,
      -2em -2em 0 0;
  }

  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em,
      3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em,
      -2em 2em 0 -1em, -3em 0 0 -1em,
      -2em -2em 0 -1em;
  }

  25% {
    box-shadow: 0 -3em 0 -0.5em,
      2em -2em 0 0, 3em 0 0 0.2em,
      2em 2em 0 0, 0 3em 0 -1em,
      -2em 2em 0 -1em, -3em 0 0 -1em,
      -2em -2em 0 -1em;
  }

  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
      3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em,
      -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }

  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
      3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em,
      -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }

  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em,
      3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0,
      -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }

  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em,
      3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
      -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }

  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em,
      3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em,
      -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}

@keyframes show_slide {
  0% {
    transform: translate(100%);
  }

  40% {
    transform: translate(-10%);
  }

  80% {
    transform: translate(0%);
  }

  100% {
    transform: translate(-10%);
  }
}

@keyframes hiden_slide {
  0% {
    transform: translate(-10%);
  }

  40% {
    transform: translate(0%);
  }

  80% {
    transform: translate(-10%);
  }

  100% {
    opacity: 0.5;
    transform: translate(100%);
  }
}
