#app {
  width: 400px;
  height: 400px;
  margin: 0 auto;
  position: relative;
}

.marker {
  position: absolute;
  width: 60px;
  left: 172px;
  top: -20px;
  z-index: 2;
}

.wheel {
  width: 100%;
  height: 100%;
}

.button {
  display: block;
  width: 250px;
  margin: 40px auto;
  cursor: pointer;
}

.button:hover {
  opacity: 0.8;
}

.blur {
  animation: blur 10s;
}

@keyframes blur {
  0% {
    filter: blur(1.5px);
  }

  80% {
    filter: blur(1.5px);
  }

  100% {
    filter: blur(0px);
  }
}

.blinking {
  animation: blinkingText 1.2s infinite;
}

@keyframes blinkingText {
  0% {
    color: #FFF;
  }

  49% {
    color: #FFF;
  }

  60% {
    color: transparent;
  }

  99% {
    color: transparent;
  }

  100% {
    color: #FFF;
  }
}

.submit,
.btn-back {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  /* Force full width in container */
}

.button-img {
  width: 100%;
  /* Adapts to col-6 or col-12 container */
  max-width: 100%;
  height: auto;
  cursor: pointer;
  transition: transform 0.2s ease-in-out;
}

.button-img:hover {
  transform: scale(1.05);
}

/* Responsive Sizing */
@media (min-width: 768px) {

  /* Desktop Sizing */
  .logo-pc {
    width: 100% !important;
    /* Enlarge Desktop Logo */
    max-width: 400px;
    margin-bottom: 15px;
  }

  .button-img {
    /* Desktop Buttons */
    width: 150%;
    max-width: 350px;
    /* Matches user snippet */
  }

  .marker {
    left: 172px;
    /* Ensure marker stays correct */
  }
}

@media (max-width: 767px) {

  /* Mobile Sizing */
  .logo-mobile {
    width: 75% !important;
    max-width: 250px;
    margin-bottom: 10px;
  }

  .button-img {
    width: 150%;
    max-width: 350px;
    /* Consistent button size on mobile too */
  }

  /* Force buttons to stack on mobile */
  .btn-container {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  #app {
    transform: scale(0.85);
    /* Slightly shrink wheel on small mobiles if needed */
    margin-top: -20px;
  }
}
