/* Waitlist pages (public) — extends site.css tokens; no admin/kitchen styles here. */

/* ---------- join page ---------- */
.wl-queue-now {
  display: flex; align-items: center; gap: .55rem;
  max-width: 560px;
  background: var(--cream-deep);
  border: 1.5px solid var(--line);
  border-radius: 12px;
  padding: .75rem 1rem;
  margin-bottom: 1.4rem;
  font-size: 1.02rem;
}
.wl-queue-now svg { color: var(--teal); flex-shrink: 0; }

.wl-form { max-width: 560px; display: grid; gap: 1.15rem; }
.wl-field { display: grid; gap: .35rem; }
.wl-field label, .wl-field legend { font-weight: 700; font-size: .98rem; }
.wl-field fieldset, fieldset.wl-field { border: 0; padding: 0; margin: 0; }
.wl-field legend { margin-bottom: .45rem; padding: 0; }
.wl-optional { font-weight: 400; color: var(--ink-soft); font-size: .88rem; }

/* honeypot — visually gone, still in the DOM for bots */
.wl-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* party-size stepper */
.wl-stepper { display: flex; align-items: stretch; gap: .5rem; max-width: 230px; }
.wl-stepper input[type="number"] {
  text-align: center; font-weight: 800; font-size: 1.25rem;
  font-family: var(--font-display, inherit);
  -moz-appearance: textfield; appearance: textfield;
  min-height: 52px;
}
.wl-stepper input[type="number"]::-webkit-outer-spin-button,
.wl-stepper input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.wl-step {
  display: inline-flex; align-items: center; justify-content: center;
  width: 52px; min-height: 52px; flex-shrink: 0;
  border: 1.5px solid var(--line); border-radius: 12px;
  background: var(--shell); color: var(--ink); cursor: pointer;
  transition: border-color .12s ease, background .12s ease;
}
.wl-step:hover { border-color: var(--teal); color: var(--teal-deep); }
.wl-step:active { transform: translateY(1px); }

/* checkbox row (high chair) */
.wl-check {
  display: flex; align-items: center; gap: .65rem;
  min-height: 44px; cursor: pointer; font-weight: 600;
}
.wl-check input { width: 22px; height: 22px; accent-color: var(--red); cursor: pointer; flex-shrink: 0; }

/* ---------- status page ---------- */
.wl-status-wrap { max-width: 560px; }
.wl-big {
  font-size: clamp(2rem, 8vw, 3.1rem);
  line-height: 1.08;
  margin: .35rem 0 .8rem;
}
.wl-big-go { color: var(--red); }
.wl-est { font-size: 1.12rem; color: var(--ink-soft); margin-bottom: 1.4rem; }
.wl-est strong { color: var(--ink); }

.wl-party { margin: 1.6rem 0; }
.wl-party-head { font-size: 1.02rem; margin-bottom: .6rem; }
.wl-party-list { list-style: none; padding: 0; margin: 0; display: grid; gap: .5rem; }
.wl-party-list li { display: flex; align-items: center; gap: .55rem; }
.wl-party-list svg { color: var(--teal); flex-shrink: 0; }

.wl-actions { display: grid; gap: .7rem; margin: 1.4rem 0 .9rem; }
.wl-callus { margin-top: 1.6rem; color: var(--ink-soft); font-size: .95rem; }
