/* Broadcast-style entrances stay on the unattended deck, away from /live. */
.kiosk-stage .kiosk-slide { padding-bottom: 8vh; }
.kiosk-stage .kiosk-slide.is-active .kiosk-title,
.kiosk-stage .kiosk-slide.is-active .kiosk-announcement-title,
.kiosk-stage .kiosk-slide.is-active .kiosk-beat-time,
.kiosk-stage .kiosk-slide.is-active .kiosk-shoutout {
  animation: kiosk-reveal 800ms ease-out both;
}
.kiosk-stage .kiosk-slide.is-active .kiosk-table tr { animation: kiosk-reveal 650ms ease-out both; }
.kiosk-stage .kiosk-slide.is-active .kiosk-table tr:nth-child(2) { animation-delay: 60ms; }
.kiosk-stage .kiosk-slide.is-active .kiosk-table tr:nth-child(3) { animation-delay: 120ms; }
.kiosk-stage .kiosk-slide.is-active .kiosk-table tr:nth-child(n+4) { animation-delay: 180ms; }
.kiosk-announcement::after { content: ""; position: absolute; width: 20vw; height: 120vh; right: 4vw; top: -10vh; transform: skewX(-20deg); border-inline: 1px solid var(--accent); background: linear-gradient(90deg, transparent, var(--accent-soft)); opacity: .35; pointer-events: none; z-index: -1; }
.kiosk-announcement { position: relative; isolation: isolate; }
.kiosk-deck-footer { position: absolute; inset: auto 3vw 2.5vh; display: flex; align-items: center; gap: 2vw; color: var(--ink-faint); font: 500 1.3vh var(--font-display); text-transform: uppercase; letter-spacing: .13em; }
.kiosk-deck-line { flex: 1; height: 2px; overflow: hidden; background: var(--edge); }
.kiosk-deck-line > span { display: block; height: 100%; background: var(--accent); transform-origin: left; transform: scaleX(0); }
@keyframes kiosk-reveal {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .kiosk-stage .kiosk-slide { transition: none; }
  .kiosk-stage .kiosk-slide.is-active :is(.kiosk-title, .kiosk-announcement-title, .kiosk-beat-time, .kiosk-shoutout, .kiosk-table tr) { animation: none; }
}
