#overlay {
  background-image: radial-gradient(rgba(255, 255, 255, 0.18) 1px,#000000a3 1px),radial-gradient(rgb(255, 255, 255) 1.4px,#000 1px) !important;
  opacity: 0.9 !important;
  animation: none !important;
}

.wrapper {
  position: absolute;
  text-align: center;
  z-index: 50;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.boxes {
  position: relative;
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
}

.box {
  width: 120px;
  height: 100px;
  border: 3px solid #1a2a5a;
  background: #b8b8d8;
}

/* 🧍 sprite (simulado com emoji, mas pronto pra sprite real) */
.walker {
  position: absolute;
  top: 20px;
  left: 177px;
  width: 60px;
  height: 60px;
  font-size: 40px;
  animation: dial-up-move 26s steps(1) forwards;
  animation-play-state: paused;
}

.walker img:hover {
  opacity: 0;
  transition: .5s;
  animation: blink 2s forwards;
}

@keyframes dial-up-move {
  0%,22%   { transform: translateX(-146px); filter: brightness(1); }
  23%,24%   { transform: translateX(-146px); filter: brightness(0); }
  25%,26%   { transform: translateX(-146px); filter: hue-rotate(180deg); }
  27%,30%   { transform: translateX(-146px); filter: brightness(1); }
  35%,42%  { transform: translateX(0); filter: hue-rotate(180deg); }
  43%,47%  { transform: translateX(0); filter: brightness(0.6); }
  48%,51%  { transform: translateX(0); filter: hue-rotate(180deg); }
  52%,55%  { transform: translateX(0); filter: brightness(0); }
  62%,65%  { transform: translateX(0); filter: brightness(0.6); }
  66%,74%  { transform: translateX(146px); filter: brightness(0.9); }
  80%,85% { transform: translateX(146px);  filter: brightness(1.4);  }
  86%, 97% { transform: translateX(146px);  filter: brightness(0.9);  }
  98%, 100% { transform: translateX(146px);  filter: brightness(1.4);  }
}

.walker img {
  display: inline-block;
  animation: alive 3s steps(5) alternate-reverse infinite;
  /*animation-play-state: paused;*/
}

.walker.dial-up-done img {
  animation: hue 2s infinite;
}

button {
  margin-top: 10px;
  padding: 10px 20px;
  background: #1a2a5a;
  color: white;
  border: 1px solid var(--menu-border-color);
  border-radius: 5px;
  cursor: pointer;
}

@keyframes shadow-compress {
  0% { text-shadow: 3px 3px 5px rgba(12, 131, 144), -3px -3px 5px rgba(255, 255, 0, 0.3); }
  40% { text-shadow: 3px 3px 5px rgba(12, 131, 144), -3px -3px 5px rgba(255, 255, 0, 0.3); }
  50% {text-shadow: 5px 5px 5px rgba(12, 131, 144), -5px -5px 5px rgba(255, 255, 0, 0.3); }
  60% { text-shadow: -3px -3px 5px rgba(12, 131, 144), 3px 3px 5px rgba(255, 255, 0, 0.3); }
  100% { text-shadow: -3px -3px 5px rgba(12, 131, 144), 3px 3px 5px rgba(255, 255, 0, 0.3); }
}

.title {
	color: #022258;
	font-size: 45px;
	text-align: center;
	padding-bottom: 30px;
	text-shadow: 3px 3px 5px rgba(12, 131, 144), -3px -3px 5px rgba(255, 255, 0, 0.2);
	animation: shadow-compress 5s alternate infinite;
}
