.switch-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 17svh;
  left: 50%;
  transform: translate(-50%, 50%);
}

.switch {
  pointer-events: all;
  margin-left: 2.2rem;
  transform: scale(1.2) translateX(-0.4rem);
}

.switch .hidden {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  border-radius: calc(14px * var(--scale));
}

.switch-text,
.progress,
.progress::after {
  font-size: calc(24px * var(--scale));
  line-height: 1;
  white-space: nowrap;
  transition: color 350ms ease;
}

.progress[aria-valuenow='100']::after,
.switch-text {
  color: rgba(255, 255, 255, 0.6);
}

.progress {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 50;
}

.progress::after {
  content: attr(aria-valuenow) '%';
  color: #555;
  display: block;
}

.progress[aria-valuenow='100'] {
  cursor: pointer;
  pointer-events: all;
  animation: pulse 2s infinite ease 1.3s;
}

.progress[aria-valuenow='100']::after {
  content: 'GO';
  cursor: pointer;
}

.progress[aria-valuenow='100']:hover::after {
  color: #fff;
}

@keyframes pulse {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }

  70% {
    transform: translate(-50%, -50%) scale(1.15);
  }

  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}

