:root {
  --time-animation: spin 2s linear infinite;
}
#overlay-spinner {
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
}
.loader-spinner {
  border-radius: 50%;
  width: 120px;
  height: 120px;
  -webkit-animation: var(--time-animation);
  animation: var(--time-animation);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 2000;
}
@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
:root {
  --time-animation: load7 0.7s infinite ease-in-out;
}
#overlay-dots {
  background-color: #343a40;
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
}
.loader-dots,
.loader-dots:after,
.loader-dots:before {
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: var(--time-animation);
  animation: var(--time-animation);
}
.loader-dots {
  color: #000;
  font-size: 10px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 2000;
  text-indent: -9999em;
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader-dots:after,
.loader-dots:before {
  content: "";
  position: absolute;
  top: 0;
}
.loader-dots:before {
  left: -3.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader-dots:after {
  left: 3.5em;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  to {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  to {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
:root {
  --color-animation1: #9370db;
  --color-animation2: #9370db;
  --color-animation3: #9370db;
  --border-size: 3px solid transparent;
  --time-animation1: spin-circular 1.5s linear infinite;
  --time-animation2: spin-circular 2s linear infinite;
  --time-animation3: spin-circular 3s linear infinite;
}
#overlay-circular {
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
}
.loader-circular {
  display: block;
  position: relative;
  left: 50%;
  top: 50%;
  width: 150px;
  height: 150px;
  margin: -75px 0 0 -75px;
  border-radius: 50%;
  border: var(--border-size);
  border-top-color: var(--color-animation1);
  -webkit-animation: var(--time-animation2);
  animation: var(--time-animation2);
}
.loader-circular:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border-radius: 50%;
  border: var(--border-size);
  border-top-color: var(--color-animation2);
  -webkit-animation: var(--time-animation3);
  animation: var(--time-animation3);
}
.loader-circular:after {
  content: "";
  position: absolute;
  top: 15px;
  left: 15px;
  right: 15px;
  bottom: 15px;
  border-radius: 50%;
  border: var(--border-size);
  border-top-color: var(--color-animation3);
  -webkit-animation: var(--time-animation1);
  animation: var(--time-animation1);
}
@-webkit-keyframes spin-circular {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
@keyframes spin-circular {
  0% {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1turn);
  }
}
:root {
  --time-animation: load 0.7s infinite alternate ease-in-out;
  --color-bar: #ffbb0f;
}
#overlay-bar {
  background-color: #343a40;
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
}
.loader-bar {
  width: 250px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-transform: uppercase;
  font-weight: 900;
  color: #ce4233;
  letter-spacing: 0.2em;
}
.loader-bar:after,
.loader-bar:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: var(--color-bar);
  position: absolute;
  -webkit-animation: var(--time-animation);
  animation: var(--time-animation);
}
.loader-bar:before {
  top: 0;
}
.loader-bar:after {
  bottom: 0;
}
@-webkit-keyframes load {
  0% {
    left: 0;
    height: 30px;
    width: 15px;
  }
  50% {
    height: 8px;
    width: 40px;
  }
  to {
    left: 235px;
    height: 30px;
    width: 15px;
  }
}
@keyframes load {
  0% {
    left: 0;
    height: 30px;
    width: 15px;
  }
  50% {
    height: 8px;
    width: 40px;
  }
  to {
    left: 235px;
    height: 30px;
    width: 15px;
  }
}
:root {
  --time-animation: loading 2s linear infinite;
}
#overlay-box {
  background-color: #343a40;
  width: 100%;
  position: fixed;
  z-index: 1000;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  perspective: 200px;
}
#overlay-box,
.load-box {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.load-box {
  border-radius: 15px;
  -webkit-animation: var(--time-animation);
  animation: var(--time-animation);
  position: absolute;
  margin: auto;
  z-index: 2000;
}
@-webkit-keyframes loading {
  0% {
    transform: rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: rotateX(0deg) rotateY(180deg);
  }
  to {
    transform: rotateX(180deg) rotateY(180deg);
  }
}
@keyframes loading {
  0% {
    transform: rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: rotateX(0deg) rotateY(180deg);
  }
  to {
    transform: rotateX(180deg) rotateY(180deg);
  }
}
body.overflowHidden {
  overflow: hidden !important;
}
