/* stylelint-disable at-rule-no-vendor-prefix,property-no-vendor-prefix */
.app {
  display: block;
  min-height: 100vh;
}

.app-loader-container {
  z-index: 99999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
}

.app-loader-container__content {
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  align-items: center;
  justify-content: center;
}

.app-loading-spinner__path {
  transform-origin: center;
  -webkit-animation:
    app-spinner-rotation 1.4s linear infinite,
    app-spinner-dash 1.4s ease-in-out infinite,
    app-spinner-coloration 5.6s ease-in-out infinite;
  animation:
    app-spinner-rotation 1.4s linear infinite,
    app-spinner-dash 1.4s ease-in-out infinite,
    app-spinner-coloration 5.6s ease-in-out infinite;
  stroke-dasharray: 180;
  stroke-dashoffset: 0;
}

@-webkit-keyframes app-spinner-rotation {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(270deg);
  }
}

@keyframes app-spinner-rotation {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(270deg);
  }
}

@-webkit-keyframes app-spinner-dash {
  0% {
    stroke-dashoffset: 180px;
  }

  50% {
    transform: rotate(135deg);
    stroke-dashoffset: 45px;
  }

  100% {
    transform: rotate(450deg);
    stroke-dashoffset: 180px;
  }
}

@keyframes app-spinner-dash {
  0% {
    stroke-dashoffset: 180px;
  }

  50% {
    transform: rotate(135deg);
    stroke-dashoffset: 45px;
  }

  100% {
    transform: rotate(450deg);
    stroke-dashoffset: 180px;
  }
}

@-webkit-keyframes app-spinner-coloration {
  0% {
    stroke: #fe000f;
  }

  25% {
    stroke: #de3e35;
  }

  50% {
    stroke: #f7c223;
  }

  75% {
    stroke: #1b9a59;
  }

  100% {
    stroke: #4285f4;
  }
}

@keyframes app-spinner-coloration {
  0% {
    stroke: #fe000f;
  }

  25% {
    stroke: #de3e35;
  }

  50% {
    stroke: #f7c223;
  }

  75% {
    stroke: #1b9a59;
  }

  100% {
    stroke: #4285f4;
  }
}
