#tokesu-loading {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  background: #f5f3ed;
  transition: opacity 0.22s ease;
  touch-action: none;
}
#tokesu-loading[hidden] {
  display: none;
}
#tokesu-loading.leaving {
  opacity: 0;
  pointer-events: none;
}
.tokesu-loading-track {
  width: min(180px, 48vw);
  height: 3px;
  background: #e4dce4;
  overflow: hidden;
  border-radius: 3px;
}
.tokesu-loading-fill {
  height: 100%;
  width: 100%;
  background: #a586b5;
  transform: scaleX(0.05);
  transform-origin: left;
  transition: transform 0.2s ease;
}
#tokesu-loading:not([data-progress]) .tokesu-loading-fill {
  width: 40%;
  animation: tokesu-loading-sweep 1.2s ease-in-out infinite;
  transform: none;
}
@keyframes tokesu-loading-sweep {
  from {
    translate: -110% 0;
  }
  to {
    translate: 360% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  #tokesu-loading,
  .tokesu-loading-fill {
    transition: none;
  }
  #tokesu-loading:not([data-progress]) .tokesu-loading-fill {
    animation: none;
    translate: 75% 0;
  }
}
