.loader {
    transform: rotateZ(45deg);
    perspective: 1000px;
    border-radius: 50%;
    width: 58px;
    height: 58px;
    color: var(--themeColor);
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    left: 225px;
    top: 45vh;
  }
    .loader:before,
    .loader:after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: inherit;
      height: inherit;
      border-radius: 50%;
      transform: rotateX(70deg);
      animation: 1s spin linear infinite;
    }
    .loader:after {
      color: var(--themeColor);
      transform: rotateY(70deg);
      animation-delay: .4s;
    }

  @keyframes rotate {
    0% {
      transform: translate(-50%, -50%) rotateZ(0deg);
    }
    100% {
      transform: translate(-50%, -50%) rotateZ(360deg);
    }
  }

  @keyframes rotateccw {
    0% {
      transform: translate(-50%, -50%) rotate(0deg);
    }
    100% {
      transform: translate(-50%, -50%) rotate(-360deg);
    }
  }

  @keyframes spin {
    0%,
    100% {
      box-shadow: .2em 0px 0 0px currentcolor;
    }
    12% {
      box-shadow: .2em .2em 0 0 currentcolor;
    }
    25% {
      box-shadow: 0 .2em 0 0px currentcolor;
    }
    37% {
      box-shadow: -.2em .2em 0 0 currentcolor;
    }
    50% {
      box-shadow: -.2em 0 0 0 currentcolor;
    }
    62% {
      box-shadow: -.2em -.2em 0 0 currentcolor;
    }
    75% {
      box-shadow: 0px -.2em 0 0 currentcolor;
    }
    87% {
      box-shadow: .2em -.2em 0 0 currentcolor;
    }
  }






.chat-loader {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    display: block;
    margin: 15px auto;
    position: absolute;
    color: var(--themeColor);
    box-sizing: border-box;
    animation: shadowRolling 2s linear infinite;
    bottom: 47px;
    right: 250px;
    margin: auto;
}



.main-loader-cont{
  background: var(--mod);
  height: 98px;
  width: 300px;
  position: fixed;
  left: 225px;
  right: 0;
  margin: auto;
  top: 41vh;
  border-radius: 4px;
}

.main-loader-text{
  position: absolute;
  left: 0;
  margin: auto;
  text-align: center;
  top: 15px;
  margin-top: 45px;
  color: var(--text);
  opacity: .6;
  right: 0;
}

.main-loader {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: block;
  margin: 15px auto;
  position: relative;
  color: var(--themeColor);
  box-sizing: border-box;
  animation: shadowRolling 2s linear infinite;
  left: -115px;
  right: 0;
  top: 20px;
}
  
  @keyframes shadowRolling {
    0% {
      box-shadow: 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
    }
    12% {
      box-shadow: 100px 0 var(--themeColor), 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
    }
    25% {
      box-shadow: 110px 0 var(--themeColor), 100px 0 var(--themeColor), 0px 0 rgba(255, 255, 255, 0), 0px 0 rgba(255, 255, 255, 0);
    }
    36% {
      box-shadow: 120px 0 var(--themeColor), 110px 0 var(--themeColor), 100px 0 var(--themeColor), 0px 0 rgba(255, 255, 255, 0);
    }
    50% {
      box-shadow: 130px 0 var(--themeColor), 120px 0 var(--themeColor), 110px 0 var(--themeColor), 100px 0 var(--themeColor);
    }
    62% {
      box-shadow: 200px 0 rgba(255, 255, 255, 0), 130px 0 var(--themeColor), 120px 0 var(--themeColor), 110px 0 var(--themeColor);
    }
    75% {
      box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0), 130px 0 var(--themeColor), 120px 0 var(--themeColor);
    }
    87% {
      box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0), 130px 0 var(--themeColor);
    }
    100% {
      box-shadow: 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0), 200px 0 rgba(255, 255, 255, 0);
    }
  }