.guest-order-confirm-v1 {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: max(22px, env(safe-area-inset-top)) 22px max(22px, env(safe-area-inset-bottom));
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 22%, rgba(44, 255, 135, .22), transparent 32%),
    radial-gradient(circle at 14% 88%, rgba(37, 216, 255, .14), transparent 38%),
    linear-gradient(155deg, #07120d 0%, #07090d 55%, #10061a 100%);
  color: #fff;
  text-align: center;
  font-family: inherit;
}

.guest-order-confirm-v1[hidden] { display: none !important; }

.guest-order-confirm-v1::before,
.guest-order-confirm-v1::after {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  border: 1px solid rgba(67, 255, 155, .13);
  border-radius: 50%;
  animation: guest-confirm-pulse-v1 2.6s ease-out infinite;
}

.guest-order-confirm-v1::after { animation-delay: 1.3s; }

.guest-order-confirm-card-v1 {
  position: relative;
  z-index: 1;
  width: min(100%, 460px);
  padding: 30px 22px 26px;
  border: 1px solid rgba(108, 255, 173, .32);
  border-radius: 30px;
  background: rgba(10, 16, 17, .82);
  box-shadow: 0 0 55px rgba(42, 255, 135, .16), inset 0 1px rgba(255, 255, 255, .08);
  backdrop-filter: blur(18px);
}

.guest-order-confirm-thumb-v1 {
  display: grid;
  place-items: center;
  width: 168px;
  height: 168px;
  margin: 0 auto 18px;
  border: 3px solid #56ff9a;
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(54, 255, 143, .2), rgba(20, 151, 89, .34));
  box-shadow: 0 0 25px rgba(62, 255, 147, .55), 0 0 72px rgba(62, 255, 147, .25);
  font-size: 92px;
  line-height: 1;
  animation: guest-confirm-pop-v1 .5s cubic-bezier(.2, 1.55, .45, 1) both;
}

.guest-order-confirm-card-v1 small {
  display: block;
  color: #60ffa4;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .18em;
}

.guest-order-confirm-card-v1 h1 {
  margin: 8px 0 12px;
  color: #fff;
  font-size: clamp(30px, 8vw, 46px);
  line-height: .98;
}

.guest-order-confirm-drink-v1 {
  margin: 0;
  color: #f6eefe;
  font-size: 21px;
  font-weight: 800;
}

.guest-order-confirm-queue-v1 {
  min-height: 24px;
  margin: 7px 0 24px;
  color: #cbd8d1;
  font-size: 16px;
}

.guest-order-confirm-timer-v1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 18px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 18px;
  background: rgba(255, 255, 255, .045);
  color: #b9c5bf;
}

.guest-order-confirm-timer-v1 b {
  min-width: 48px;
  color: #60ffa4;
  font-size: 36px;
  line-height: 1;
}

.guest-order-confirm-progress-v1 {
  height: 5px;
  margin-top: 15px;
  overflow: hidden;
  border-radius: 99px;
  background: rgba(255, 255, 255, .08);
}

.guest-order-confirm-progress-v1 i {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #25dcff, #58ff98);
  transform-origin: left;
  transition: transform .9s linear;
  box-shadow: 0 0 16px rgba(74, 255, 158, .65);
}

body.guest-order-cooldown-v1 { overflow: hidden !important; }

@keyframes guest-confirm-pop-v1 {
  from { opacity: 0; transform: scale(.35) rotate(-12deg); }
  to { opacity: 1; transform: scale(1) rotate(0); }
}

@keyframes guest-confirm-pulse-v1 {
  0% { opacity: .55; transform: scale(.35); }
  100% { opacity: 0; transform: scale(1.8); }
}

@media (max-height: 650px) {
  .guest-order-confirm-card-v1 { padding: 18px; }
  .guest-order-confirm-thumb-v1 { width: 116px; height: 116px; margin-bottom: 12px; font-size: 66px; }
  .guest-order-confirm-card-v1 h1 { font-size: 30px; }
}

@media (prefers-reduced-motion: reduce) {
  .guest-order-confirm-v1::before,
  .guest-order-confirm-v1::after,
  .guest-order-confirm-thumb-v1 { animation: none; }
}

