:root {
	--tn-loader-icon-width: 250px;
	--tn-loader-icon-height: 250px;
}

body .tn_loading_box {
	position: fixed;
	opacity: 0.9;
	width: 100%;
	height: 100vh;
	background-color: #f0f0f0;
	z-index: 10;
	left: 0;
	top: 0;
}

.tn_loading_box .box{
  position: absolute;
  left: calc(50% - 100px);
  top: calc( 50vh - 150px);
  border: none;
}

.tn_loading_box {
	text-align: center;
}

.box.active {
  margin: 4px;
  border-width: 2px;
  border-color: #2271b1;
}

.tn_loading_box button {
  display: inline-block;
  background: transparent;
  border: 2px solid #d95f3d;
  color: white;
  padding: 0.5em 1em;
  border-radius: 5px;
  font-size: calc(16px + 2vw);
}

.tn_loading_box [class*=loader-] {
  display: inline-block;
  width: var(--tn-loader-icon-width);
  height: var(--tn-loader-icon-height);
  color: inherit;
  vertical-align: middle;
  pointer-events: none;
}

.tn_loading_box .loader-1 {
  border: 0.2em dotted var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: 1s loader-1 linear infinite;
          animation: 1s loader-1 linear infinite;
}

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

@keyframes loader-1 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-2 {
  border: 0.2em solid transparent;
  border-left-color: var(--theme-color-red);
  border-right-color: var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: 1s loader-2 linear infinite;
          animation: 1s loader-2 linear infinite;
}

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

@keyframes loader-2 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-3 {
  border: 0.2em solid var(--theme-color-red);
  border-bottom-color: transparent;
  border-radius: 50%;
  -webkit-animation: 1s loader-3 linear infinite;
          animation: 1s loader-3 linear infinite;
  position: relative;
}

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

@keyframes loader-3 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-4 {
  border: 1px solid var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: 1s loader-4 linear infinite;
          animation: 1s loader-4 linear infinite;
  position: relative;
}
.tn_loading_box .loader-4:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -0.2em;
  left: 50%;
  border: 0.2em solid var(--theme-color-red);
  border-radius: 50%;
}

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

@keyframes loader-4 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-5 {
  border: 0.2em solid transparent;
  border-top-color: var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: 1s loader-5 linear infinite;
          animation: 1s loader-5 linear infinite;
  position: relative;
}
.tn_loading_box .loader-5:before {
  content: "";
  display: block;
  width: inherit;
  height: inherit;
  position: absolute;
  top: -0.2em;
  left: -0.2em;
  border: 0.2em solid var(--theme-color-red);
  border-radius: 50%;
  opacity: 0.5;
}

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

@keyframes loader-5 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-6 {
  border: 0.2em solid var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: loader-6 1s ease-out infinite;
          animation: loader-6 1s ease-out infinite;
}

@-webkit-keyframes loader-6 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

@keyframes loader-6 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.tn_loading_box .loader-7 {
  border: 0 solid transparent;
  border-radius: 50%;
  position: relative;
}
.tn_loading_box .loader-7:before, .loader-7:after {
  content: "";
  border: 0.2em solid var(--theme-color-red);
  border-radius: 50%;
  width: inherit;
  height: inherit;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: loader-7 1s linear infinite;
          animation: loader-7 1s linear infinite;
  opacity: 0;
}
.tn_loading_box .loader-7:before {
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
.tn_loading_box .loader-7:after {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

@-webkit-keyframes loader-7 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

@keyframes loader-7 {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.tn_loading_box .loader-8 {
  position: relative;
}
.tn_loading_box .loader-8:before, .loader-8:after {
  content: "";
  width: inherit;
  height: inherit;
  border-radius: 50%;
  background-color: var(--theme-color-red);
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: loader-8 2s infinite ease-in-out;
          animation: loader-8 2s infinite ease-in-out;
}
.tn_loading_box .loader-8:after {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}

@-webkit-keyframes loader-8 {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}

@keyframes loader-8 {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
.tn_loading_box .loader-9 {
  background-color: var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: loader-9 1s infinite ease-in-out;
          animation: loader-9 1s infinite ease-in-out;
}

@-webkit-keyframes loader-9 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

@keyframes loader-9 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.tn_loading_box .loader-10 {
  position: relative;
  -webkit-animation: loader-10-1 2s infinite linear;
          animation: loader-10-1 2s infinite linear;
}
.tn_loading_box .loader-10:before, .loader-10:after {
  content: "";
  width: 0;
  height: 0;
  border: 0.5em solid var(--theme-color-red);
  display: block;
  position: absolute;
  border-radius: 100%;
  -webkit-animation: loader-10-2 2s infinite ease-in-out;
          animation: loader-10-2 2s infinite ease-in-out;
}
.tn_loading_box .loader-10:before {
  top: 0;
  left: 50%;
}
.tn_loading_box .loader-10:after {
  bottom: 0;
  right: 50%;
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}

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

@keyframes loader-10-1 {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes loader-10-2 {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
@keyframes loader-10-2 {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
.tn_loading_box .loader-11 {
  background-color: var(--theme-color-red);
  -webkit-animation: loader-11 1.2s infinite ease-in-out;
          animation: loader-11 1.2s infinite ease-in-out;
}

@-webkit-keyframes loader-11 {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}

@keyframes loader-11 {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}
.tn_loading_box .loader-12 {
  position: relative;
}
.tn_loading_box .loader-12:before, .loader-12:after {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--theme-color-red);
  left: 50%;
  right: 0;
  top: 0;
  bottom: 50%;
  box-shadow: -0.5em 0 0 var(--theme-color-red);
  -webkit-animation: loader-12 1s linear infinite;
          animation: loader-12 1s linear infinite;
}
.tn_loading_box .loader-12:after {
  top: 50%;
  bottom: 0;
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}

@-webkit-keyframes loader-12 {
  0%, 100% {
    box-shadow: -0.5em 0 0 transparent;
    background-color: var(--theme-color-red);
  }
  50% {
    box-shadow: -0.5em 0 0 var(--theme-color-red);
    background-color: transparent;
  }
}

@keyframes loader-12 {
  0%, 100% {
    box-shadow: -0.5em 0 0 transparent;
    background-color: var(--theme-color-red);
  }
  50% {
    box-shadow: -0.5em 0 0 var(--theme-color-red);
    background-color: transparent;
  }
}
.tn_loading_box .loader-13:before,
.tn_loading_box .loader-13:after,
.tn_loading_box .loader-13 {
  border-radius: 50%;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation: loader-13 1.8s infinite ease-in-out;
          animation: loader-13 1.8s infinite ease-in-out;
}

.tn_loading_box .loader-13 {
  color: var(--theme-color-red);
  position: relative;
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
          animation-delay: -0.16s;
  top: -1em;
}
.tn_loading_box .loader-13:before {
  right: 100%;
  -webkit-animation-delay: -0.32s;
          animation-delay: -0.32s;
}
.tn_loading_box .loader-13:after {
  left: 100%;
}
.tn_loading_box .loader-13:before, .loader-13:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: inherit;
  height: inherit;
}

@-webkit-keyframes loader-13 {
  0%, 80%, 100% {
    box-shadow: 0 1em 0 -1em;
  }
  40% {
    box-shadow: 0 1em 0 -0.2em;
  }
}

@keyframes loader-13 {
  0%, 80%, 100% {
    box-shadow: 0 1em 0 -1em;
  }
  40% {
    box-shadow: 0 1em 0 -0.2em;
  }
}
.tn_loading_box .loader-14 {
  border-radius: 50%;
  box-shadow: 0 1em 0 -0.2em var(--theme-color-red);
  position: relative;
  -webkit-animation: loader-14 0.8s ease-in-out alternate infinite;
          animation: loader-14 0.8s ease-in-out alternate infinite;
  -webkit-animation-delay: 0.32s;
          animation-delay: 0.32s;
  top: -1em;
}
.tn_loading_box .loader-14:after, .loader-14:before {
  content: "";
  position: absolute;
  width: inherit;
  height: inherit;
  border-radius: inherit;
  box-shadow: inherit;
  -webkit-animation: inherit;
          animation: inherit;
}
.tn_loading_box .loader-14:before {
  left: -1em;
  -webkit-animation-delay: 0.48s;
          animation-delay: 0.48s;
}
.tn_loading_box .loader-14:after {
  right: -1em;
  -webkit-animation-delay: 0.16s;
          animation-delay: 0.16s;
}

@-webkit-keyframes loader-14 {
  0% {
    box-shadow: 0 2em 0 -0.2em var(--theme-color-red);
  }
  100% {
    box-shadow: 0 1em 0 -0.2em var(--theme-color-red);
  }
}

@keyframes loader-14 {
  0% {
    box-shadow: 0 2em 0 -0.2em var(--theme-color-red);
  }
  100% {
    box-shadow: 0 1em 0 -0.2em var(--theme-color-red);
  }
}
.tn_loading_box .loader-15 {
  background: var(--theme-color-red);
  position: relative;
  -webkit-animation: loader-15 1s ease-in-out infinite;
          animation: loader-15 1s ease-in-out infinite;
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
  width: 0.25em;
  height: 0.5em;
  margin: 0 0.5em;
}
.tn_loading_box .loader-15:after, .loader-15:before {
  content: "";
  position: absolute;
  width: inherit;
  height: inherit;
  background: inherit;
  -webkit-animation: inherit;
          animation: inherit;
}
.tn_loading_box .loader-15:before {
  right: 0.5em;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.tn_loading_box .loader-15:after {
  left: 0.5em;
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

@-webkit-keyframes loader-15 {
  0%, 100% {
    box-shadow: 0 0 0 var(--theme-color-red), 0 0 0 var(--theme-color-red);
  }
  50% {
    box-shadow: 0 -0.25em 0 var(--theme-color-red), 0 0.25em 0 var(--theme-color-red);
  }
}

@keyframes loader-15 {
  0%, 100% {
    box-shadow: 0 0 0 var(--theme-color-red), 0 0 0 var(--theme-color-red);
  }
  50% {
    box-shadow: 0 -0.25em 0 var(--theme-color-red), 0 0.25em 0 var(--theme-color-red);
  }
}
.tn_loading_box .loader-16 {
  transform: rotateZ(45deg);
  perspective: 1000px;
  border-radius: 50%;
}
.tn_loading_box .loader-16:before, .tn_loading_box .loader-16:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: inherit;
  border-radius: 50%;
  -webkit-animation: 1s spin linear infinite;
          animation: 1s spin linear infinite;
}
.tn_loading_box .loader-16:before {
  transform: rotateX(70deg);
}
.tn_loading_box .loader-16:after {
  transform: rotateY(70deg);
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

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

@keyframes rotate {
  0% {
    transform: translate(-50%, -50%) rotateZ(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotateZ(360deg);
  }
}
@-webkit-keyframes rotateccw {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@keyframes rotateccw {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@-webkit-keyframes spin {
  0%, 100% {
    box-shadow: 0.2em 0px 0 0px var(--theme-color-red);
  }
  12% {
    box-shadow: 0.2em 0.2em 0 0 var(--theme-color-red);
  }
  25% {
    box-shadow: 0 0.2em 0 0px var(--theme-color-red);
  }
  37% {
    box-shadow: -0.2em 0.2em 0 0 var(--theme-color-red);
  }
  50% {
    box-shadow: -0.2em 0 0 0 var(--theme-color-red);
  }
  62% {
    box-shadow: -0.2em -0.2em 0 0 var(--theme-color-red);
  }
  75% {
    box-shadow: 0px -0.2em 0 0 var(--theme-color-red);
  }
  87% {
    box-shadow: 0.2em -0.2em 0 0 var(--theme-color-red);
  }
}
@keyframes spin {
  0%, 100% {
    box-shadow: 0.2em 0px 0 0px var(--theme-color-red);
  }
  12% {
    box-shadow: 0.2em 0.2em 0 0 var(--theme-color-red);
  }
  25% {
    box-shadow: 0 0.2em 0 0px var(--theme-color-red);
  }
  37% {
    box-shadow: -0.2em 0.2em 0 0 var(--theme-color-red);
  }
  50% {
    box-shadow: -0.2em 0 0 0 var(--theme-color-red);
  }
  62% {
    box-shadow: -0.2em -0.2em 0 0 var(--theme-color-red);
  }
  75% {
    box-shadow: 0px -0.2em 0 0 var(--theme-color-red);
  }
  87% {
    box-shadow: 0.2em -0.2em 0 0 var(--theme-color-red);
  }
}
.tn_loading_box .loader-17 {
  position: relative;
  background-color: var(--theme-color-red);
  border-radius: 50%;
}
.tn_loading_box .loader-17:after,.tn_loading_box  .loader-17:before {
  content: "";
  position: absolute;
  width: 0.25em;
  height: 0.25em;
  border-radius: 50%;
  opacity: 0.8;
}
.tn_loading_box .loader-17:after {
  left: -0.5em;
  top: -0.25em;
  background-color: var(--theme-color-red);
  transform-origin: 0.75em 1em;
  -webkit-animation: loader-17 1s linear infinite;
          animation: loader-17 1s linear infinite;
  opacity: 0.6;
}
.tn_loading_box .loader-17:before {
  left: -1.25em;
  top: -0.75em;
  background-color: var(--theme-color-red);
  transform-origin: 1.5em 1em;
  -webkit-animation: loader-17 2s linear infinite;
          animation: loader-17 2s linear infinite;
}

@-webkit-keyframes loader-17 {
  0% {
    transform: rotateZ(0deg) translate3d(0, 0, 0);
  }
  100% {
    transform: rotateZ(360deg) translate3d(0, 0, 0);
  }
}

@keyframes loader-17 {
  0% {
    transform: rotateZ(0deg) translate3d(0, 0, 0);
  }
  100% {
    transform: rotateZ(360deg) translate3d(0, 0, 0);
  }
}
.tn_loading_box .loader-18 {
  position: relative;
}
.tn_loading_box .loader-18:before,.tn_loading_box  .loader-18:after {
  content: "";
  display: block;
  position: absolute;
  border-radius: 50%;
  border: 0.1em solid transparent;
  border-bottom-color: var(--theme-color-red);
  top: 0;
  left: 0;
  -webkit-animation: 1s loader-18 linear infinite;
          animation: 1s loader-18 linear infinite;
}
.tn_loading_box .loader-18:before {
  width: 1em;
  height: 1em;
}
.tn_loading_box .loader-18:after {
  width: 0.8em;
  height: 0.8em;
  top: 0.1em;
  left: 0.1em;
  animation-direction: reverse;
}

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

@keyframes loader-18 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-19 {
  border-top: 0.2em solid var(--theme-color-red);
  border-right: 0.2em solid transparent;
  -webkit-animation: loader-19 1s linear infinite;
          animation: loader-19 1s linear infinite;
  border-radius: 100%;
  position: relative;
}

@-webkit-keyframes loader-19 {
  to {
    transform: rotate(360deg);
  }
}

@keyframes loader-19 {
  to {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-20 {
  background-color: transparent;
  box-shadow: inset 0px 0px 0px 0.1em var(--theme-color-red);
  border-radius: 50%;
  position: relative;
}
.tn_loading_box .loader-20:after,.tn_loading_box  .loader-20:before {
  position: absolute;
  content: "";
  background-color: var(--theme-color-red);
  top: 0.5em;
  left: 0.5em;
  height: 0.1em;
  transform-origin: left center;
}
.tn_loading_box .loader-20:after {
  width: 0.4em;
  -webkit-animation: loader-20 2s linear infinite;
          animation: loader-20 2s linear infinite;
}
.tn_loading_box .loader-20:before {
  width: 0.3em;
  -webkit-animation: loader-20 8s linear infinite;
          animation: loader-20 8s linear infinite;
}

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

@keyframes loader-20 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tn_loading_box .loader-21 {
  position: relative;
}
.tn_loading_box .loader-21:before, .tn_loading_box .loader-21:after {
  position: absolute;
  content: "";
}
.tn_loading_box .loader-21:before {
  width: 80%;
  height: 80%;
  left: 10%;
  bottom: 10%;
  border-radius: 100% 100% 100% 0;
  box-shadow: 0px 0px 0px 0.1em var(--theme-color-red);
  -webkit-animation: loader-21 1s linear infinite;
          animation: loader-21 1s linear infinite;
  transform: rotate(-46deg);
}
.tn_loading_box .loader-21:after {
  width: 1em;
  height: 0.3em;
  border-radius: 100%;
  left: 0;
  background-color: rgba(255, 255, 255, 0.2);
  bottom: -0.2em;
  z-index: -1;
}

@-webkit-keyframes loader-21 {
  0% {
    top: 0;
  }
  50% {
    top: -5px;
  }
  100% {
    top: 0;
  }
}

@keyframes loader-21 {
  0% {
    top: 0;
  }
  50% {
    top: -5px;
  }
  100% {
    top: 0;
  }
}
.tn_loading_box .loader-22 {
  border: 0.1em var(--theme-color-red) solid;
  border-radius: 100%;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.tn_loading_box .loader-22:after, .tn_loading_box .loader-22:before {
  position: absolute;
  content: "";
  background-color: var(--theme-color-red);
}
.tn_loading_box .loader-22:after {
  width: 50%;
  height: 0.1em;
  left: 50%;
  top: 50%;
  transform-origin: left center;
  -webkit-animation: loader-22 2s linear infinite alternate;
          animation: loader-22 2s linear infinite alternate;
}
.tn_loading_box .loader-22:before {
  width: 100%;
  height: 40%;
  left: 0;
  bottom: 0;
}

@-webkit-keyframes loader-22 {
  0% {
    transform: rotate(-160deg);
  }
  100% {
    transform: rotate(-20deg);
  }
}

@keyframes loader-22 {
  0% {
    transform: rotate(-160deg);
  }
  100% {
    transform: rotate(-20deg);
  }
}
.tn_loading_box .loader-23 {
  height: 0.5em;
  border: 0.1em var(--theme-color-red) solid;
  border-radius: 0.1em;
  position: relative;
  -webkit-animation: loader-23 5s linear infinite;
          animation: loader-23 5s linear infinite;
}
.tn_loading_box .loader-23:after {
  width: 0.07em;
  height: 100%;
  background-color: var(--theme-color-red);
  border-radius: 0px 0.5em 0.5em 0px;
  position: absolute;
  content: "";
  top: 0;
  left: calc(100% + .1em);
}

@-webkit-keyframes loader-23 {
  0% {
    box-shadow: inset 0px 0px 0px var(--theme-color-red);
  }
  100% {
    box-shadow: inset 1em 0px 0px var(--theme-color-red);
  }
}

@keyframes loader-23 {
  0% {
    box-shadow: inset 0px 0px 0px var(--theme-color-red);
  }
  100% {
    box-shadow: inset 1em 0px 0px var(--theme-color-red);
  }
}
.tn_loading_box .loader-24 {
  width: 0.8em;
  height: 1em;
  border: 0.1em var(--theme-color-red) solid;
  border-radius: 0px 0px 0.2em 0.2em;
  position: relative;
}
.tn_loading_box .loader-24:after, .tn_loading_box .loader-24:before {
  position: absolute;
  content: "";
}
.tn_loading_box .loader-24:after {
  width: 0.2em;
  height: 50%;
  border: 0.1em var(--theme-color-red) solid;
  border-left: none;
  border-radius: 0px 0.5em 0.5em 0px;
  left: calc(100% + .1em);
  top: 0.1em;
}
.tn_loading_box .loader-24:before {
  width: 0.1em;
  height: 0.3em;
  background-color: var(--theme-color-red);
  top: -0.3em;
  left: 0.05em;
  box-shadow: 0.2em 0px 0px 0px var(--theme-color-red), 0.2em -0.2em 0px 0px var(--theme-color-red), 0.4em 0px 0px 0px var(--theme-color-red);
  -webkit-animation: loader-24 1s linear infinite alternate;
          animation: loader-24 1s linear infinite alternate;
}

@-webkit-keyframes loader-24 {
  0% {
    height: 0px;
  }
  100% {
    height: 6px;
  }
}

@keyframes loader-24 {
  0% {
    height: 0px;
  }
  100% {
    height: 6px;
  }
}
.tn_loading_box .loader-25 {
  border: 0.1em var(--theme-color-red) solid;
  position: relative;
  -webkit-animation: loader-25-1 5s linear infinite;
          animation: loader-25-1 5s linear infinite;
}
.tn_loading_box .loader-25:after {
  width: 0.2em;
  height: 0.2em;
  position: absolute;
  content: "";
  background-color: var(--theme-color-red);
  bottom: calc(100% + .2em);
  left: -0.4em;
  -webkit-animation: loader-25-2 1s ease-in-out infinite;
          animation: loader-25-2 1s ease-in-out infinite;
}

@-webkit-keyframes loader-25-1 {
  0% {
    box-shadow: inset 0 0 0 0 var(--theme-color-red);
  }
  100% {
    box-shadow: inset 0 -1em 0 0 var(--theme-color-red);
  }
}

@keyframes loader-25-1 {
  0% {
    box-shadow: inset 0 0 0 0 var(--theme-color-red);
  }
  100% {
    box-shadow: inset 0 -1em 0 0 var(--theme-color-red);
  }
}
@-webkit-keyframes loader-25-2 {
  25% {
    left: calc(100% + .2em);
    bottom: calc(100% + .2em);
  }
  50% {
    left: calc(100% + .2em);
    bottom: -0.4em;
  }
  75% {
    left: -0.4em;
    bottom: -0.4em;
  }
  100% {
    left: -0.4em;
    bottom: calc(100% + .2em);
  }
}
@keyframes loader-25-2 {
  25% {
    left: calc(100% + .2em);
    bottom: calc(100% + .2em);
  }
  50% {
    left: calc(100% + .2em);
    bottom: -0.4em;
  }
  75% {
    left: -0.4em;
    bottom: -0.4em;
  }
  100% {
    left: -0.4em;
    bottom: calc(100% + .2em);
  }
}
.tn_loading_box .loader-26 {
  width: 0.5em;
  height: 0.5em;
  background-color: var(--theme-color-red);
  box-shadow: 1em 0px 0px var(--theme-color-red);
  border-radius: 50%;
  -webkit-animation: loader-26 1s ease-in-out infinite alternate;
          animation: loader-26 1s ease-in-out infinite alternate;
}

@-webkit-keyframes loader-26 {
  0% {
    opacity: 0.1;
    transform: rotate(0deg) scale(0.5);
  }
  100% {
    opacity: 1;
    transform: rotate(360deg) scale(1.2);
  }
}

@keyframes loader-26 {
  0% {
    opacity: 0.1;
    transform: rotate(0deg) scale(0.5);
  }
  100% {
    opacity: 1;
    transform: rotate(360deg) scale(1.2);
  }
}
.tn_loading_box .loader-27 {
  box-shadow: inset 0 0 0 0.1em var(--theme-color-red);
  border-radius: 50%;
  position: relative;
  margin-left: 1.2em;
}
.tn_loading_box .loader-27:before {
  content: "";
  display: block;
  width: inherit;
  height: inherit;
  border-radius: 50%;
  position: absolute;
  right: 1.2em;
  top: 0;
  box-shadow: inset 0 0 0 0.1em var(--theme-color-red);
}
.tn_loading_box .loader-27:after {
  border: 0.2em solid var(--theme-color-red);
  box-shadow: -1.2em 0 0 0 var(--theme-color-red);
  width: 0;
  height: 0;
  border-radius: 50%;
  left: 50%;
  top: 25%;
  position: absolute;
  content: "";
  -webkit-animation: loader-27 2s linear infinite alternate;
          animation: loader-27 2s linear infinite alternate;
}

@-webkit-keyframes loader-27 {
  0% {
    left: 0;
  }
  100% {
    left: 0.5em;
  }
}

@keyframes loader-27 {
  0% {
    left: 0;
  }
  100% {
    left: 0.5em;
  }
}
.tn_loading_box .loader-28 {
  position: relative;
  -webkit-animation: 2s loader-28 infinite;
          animation: 2s loader-28 infinite;
}
.tn_loading_box .loader-28:before {
  content: "";
  display: block;
  width: inherit;
  height: inherit;
  border-radius: 80% 20%;
  border: 0.1em solid var(--theme-color-red);
  transform: rotate(45deg);
  border-width: 0.1em 0.05em 0.05em 0.1em;
}
.tn_loading_box .loader-28:after {
  content: "";
  display: block;
  width: 0.2em;
  height: 0.2em;
  position: absolute;
  top: 0.4em;
  left: 50%;
  border-radius: 50%;
  box-shadow: -0.07em 0.07em 0 0.1em var(--theme-color-red);
  -webkit-animation: 2s loader-28-2 linear infinite;
          animation: 2s loader-28-2 linear infinite;
}

@-webkit-keyframes loader-28 {
  0%, 100% {
    transform: scaleY(1);
  }
  10% {
    transform: scaleY(0);
  }
  20% {
    transform: scaleY(1);
  }
}

@keyframes loader-28 {
  0%, 100% {
    transform: scaleY(1);
  }
  10% {
    transform: scaleY(0);
  }
  20% {
    transform: scaleY(1);
  }
}
@-webkit-keyframes loader-28 {
  0%, 100% {
    transform: translateX(0);
  }
  30% {
    transform: translateX(-100%);
  }
  50% {
    transform: transalteX(200%);
  }
}
@keyframes loader-28 {
  0%, 100% {
    transform: translateX(0);
  }
  30% {
    transform: translateX(-100%);
  }
  50% {
    transform: transalteX(200%);
  }
}
.tn_loading_box .loader-29 {
  border-radius: 50%;
  box-shadow: inset 0 0 0 0.1em var(--theme-color-red), -0.5em -0.5em 0 -0.4em var(--theme-color-red), 0 -0.7em 0 -0.4em var(--theme-color-red), 0.5em -0.5em 0 -0.4em var(--theme-color-red), -0.5em 0.5em 0 -0.4em var(--theme-color-red), 0 0.7em 0 -0.4em var(--theme-color-red), 0.5em 0.5em 0 -0.4em var(--theme-color-red), -0.7em 0 0 -0.4em var(--theme-color-red), 0.7em 0 0 -0.4em var(--theme-color-red);
  -webkit-animation: 5s loader-29 linear infinite;
          animation: 5s loader-29 linear infinite;
}

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

@keyframes loader-29 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}