.loader {
  top: 50%;
  left: 48%;
  width: 100px;
  height: 100px;
  border-radius: 3px;
  position: absolute;
  text-align: center;
  margin: -50px 0 0 -50px;
  background-color: #fff;
}

.loader>span {
  top: 70%;
  left: -5px;
  color: #22303e;
  font-size: 12pt;
  position: relative;
}

/* SVG spinner icon animation */
.spinner {
  top: 40%;
  left: 50%;
  width: 50px;
  height: 50px;
  z-index: 1000;
  position: absolute;
  margin: -25px 0 0 -25px;
  -webkit-animation: rotate 2s linear infinite;
  animation: rotate 2s linear infinite;
}

.spinner .path {
  stroke: #2E94E3;
  stroke-linecap: round;
  -webkit-animation: dash 1.5s ease-in-out infinite;
  animation: dash 1.5s ease-in-out infinite;
}

@-webkit-keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }

  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}

@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }

  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }

  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}