/*
  Waitlist form styles for the pre-launch CTA band.
*/

.waitlist {
  position: relative;
  width: min(100%, 28rem);
  display: grid;
  gap: 0.65rem;
  justify-items: center;
}

.waitlist__platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  border: 0;
  justify-content: center;
}

.waitlist__choice {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 2.4rem;
  padding: 0.35rem 0.95rem;
  border-radius: var(--radius-pill);
  background: rgba(255, 255, 255, 0.7);
  border: 1.5px solid rgba(61, 43, 47, 0.1);
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--color-ink-soft);
  cursor: pointer;
}

.waitlist__choice:has(input:checked) {
  border-color: rgba(219, 106, 131, 0.45);
  background: rgba(255, 255, 255, 0.95);
  color: var(--color-ink);
}

.waitlist__choice input {
  accent-color: var(--color-rose);
}

.waitlist__row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  justify-content: center;
}

.waitlist__input {
  flex: 1 1 12rem;
  min-height: 3.2rem;
  padding: 0.75rem 1.15rem;
  border-radius: var(--radius-pill);
  border: 1.5px solid rgba(61, 43, 47, 0.12);
  background: rgba(255, 255, 255, 0.88);
  color: var(--color-ink);
  font-family: var(--font-body);
  font-size: 1rem;
  outline: none;
  transition: border-color 0.2s var(--ease-out), box-shadow 0.2s var(--ease-out);
}

.waitlist__input::placeholder {
  color: var(--color-muted);
}

.waitlist__input:focus {
  border-color: var(--color-rose);
  box-shadow: 0 0 0 3px rgba(219, 106, 131, 0.18);
}

.waitlist__row .btn {
  flex: 0 1 auto;
  min-height: 3.2rem;
}

.waitlist__row .btn:disabled {
  opacity: 0.65;
  cursor: wait;
  transform: none;
}

.waitlist__honey {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.waitlist__hint,
.waitlist__status {
  margin: 0;
  font-size: 0.85rem;
  color: var(--color-muted);
  text-align: center;
}

.waitlist__status[data-kind="ok"] {
  color: #2f6b4f;
  font-weight: 600;
}

.waitlist__status[data-kind="error"] {
  color: #a33b3b;
  font-weight: 600;
}

.waitlist__status[data-kind="pending"] {
  color: var(--color-ink-soft);
}
