.wait-deck {
  position: relative;
  min-height: 330px;
  margin: 30px auto 0;
  max-width: 760px;
  text-align: left;
}
.wait-card {
  display: none;
  min-height: 290px;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 45px #20231d12;
  animation: wait-card-in .35s ease;
}
.wait-card.active { display: grid; align-content: center; }
.wait-card h2 { margin: 7px 0 10px; font-size: clamp(24px,5vw,38px); line-height: 1.02; letter-spacing: -.035em; }
.wait-card p { margin: 0; color: var(--muted); font-size: clamp(16px,2vw,20px); }
.wait-kind { color: var(--orange); font-size: 11px; font-weight: 950; letter-spacing: .16em; }
.visual-card { align-content: start !important; }
.visual-card svg { display: block; width: 100%; height: auto; margin: 10px 0; }
.diagram-lane { fill: #d8b477; }
.diagram-gutter { fill: #292d28; }
.diagram-foul { stroke: #ec5a2b; stroke-width: 3; }
.diagram-ball { fill: #ec5a2b; stroke: #10130f; stroke-width: 1; }
.diagram-pin-top,.diagram-pin { fill: #fff; stroke: #10130f; stroke-width: 1.4; }
.diagram-arrows { fill: #563c20; }
.diagram-measure { stroke: #696b63; stroke-width: 1; stroke-dasharray: 4 3; }
.wait-card svg text { fill: #696b63; font: 800 11px system-ui,sans-serif; }
.wait-dots { display: flex; justify-content: center; gap: 5px; margin: 14px auto; }
.wait-dots i { width: 5px; height: 5px; border-radius: 50%; background: #cbc7bd; }
.wait-dots i.active { width: 20px; border-radius: 5px; background: var(--orange); }
@keyframes wait-card-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media(max-width:620px) {
  .wait-deck { min-height: 350px; }
  .wait-card { min-height: 315px; padding: 20px; }
  .visual-card svg { margin: 15px 0; }
  .wait-dots { max-width: 220px; flex-wrap: wrap; }
}
