/* Проект: ZVUMO — плеер зала на телефоне и страница проверки подписки. Цвета и шрифты — из bookings.css. */
.hall-app { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; max-width: 520px; margin: 0 auto;
  padding: calc(14px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom)); }
.hall-top { display: flex; align-items: center; gap: 10px; }
.hall-top .pill { margin-left: auto; }
.hall-body { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 14px; padding: 20px 0; }
.hall-body h1 { font: 600 24px/1.25 var(--display); max-width: 18ch; overflow-wrap: anywhere; }
.hall-note { color: var(--soft); max-width: 36ch; }
.hall-small { color: var(--dim); font-size: 13px; max-width: 40ch; }
.hall-err { color: #FFB3C7; }
.hall-venue { color: var(--muted); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.hall-ring { width: 200px; height: 200px; border-radius: 50%; display: grid; place-items: center; margin-bottom: 8px;
  background: radial-gradient(circle, rgba(124,92,255,.22), rgba(7,7,26,0) 70%); border: 2px solid rgba(124,92,255,.45);
  box-shadow: 0 0 60px -14px rgba(124,92,255,.8), inset 0 0 40px -10px rgba(34,211,238,.4); }
.hall-ring.on { border-color: rgba(94,242,199,.6); box-shadow: 0 0 70px -10px rgba(94,242,199,.6), inset 0 0 40px -10px rgba(94,242,199,.4); }
.logo.big { height: 74px; gap: 8px; }
.logo.big i { width: 10px; border-radius: 10px; }
.hall-play { width: 150px; height: 150px; border-radius: 50%; border: 0; display: grid; place-items: center; color: #fff; background: var(--btn);
  box-shadow: 0 0 70px -10px rgba(124,92,255,.95), inset 0 2px 0 rgba(255,255,255,.3); margin: 8px 0; }
.hall-play svg { width: 60px; height: 60px; fill: currentColor; margin-left: 8px; }
.hall-btn { width: 100%; max-width: 320px; height: 54px; font-size: 16px; }
.hall-field { display: grid; gap: 6px; width: 100%; max-width: 320px; text-align: left; font-weight: 600; font-size: 14px; color: var(--soft); }
.hall-field input { height: 48px; padding: 0 14px; border-radius: 14px; border: 1px solid var(--line-2); background: rgba(255,255,255,.04); color: var(--text); font: inherit; }
.hall-forget { margin-top: 12px; }

.check-card { max-width: 460px; margin: 10vh auto; padding: 30px 26px; text-align: center; display: grid; gap: 12px; justify-items: center; }
.check-card h1 { font: 600 24px/1.25 var(--display); }
.check-card .big { font: 600 20px/1.3 var(--display); }
.check-card.ok { border-color: rgba(94,242,199,.5); box-shadow: 0 0 60px -20px rgba(94,242,199,.6); }
.check-card.ok .big { color: var(--mint); }
.check-card.no { border-color: rgba(255,77,126,.5); }
.check-card.no .big { color: #FFB3C7; }
.check-card small { color: var(--muted); }
