.bingo-stage{align-content:start;justify-items:stretch;gap:18px}.bingo-top{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(14px,3vw,28px);display:grid}.bingo-ball{--ring:var(--accent);aspect-ratio:1;background:var(--hub-bg);width:clamp(118px,30vw,188px);color:var(--hub-ink);box-shadow:0 0 0 clamp(6px, 5cqi, 10px) var(--ring), 0 12px 28px #16142b4d;-webkit-user-select:none;user-select:none;border-radius:50%;place-content:center;justify-items:center;margin:10px;display:grid;position:relative;container-type:inline-size}.bingo-ball[data-state=idle]{background:var(--surface);color:var(--ink-3);box-shadow:0 0 0 clamp(6px, 5cqi, 10px) var(--line-strong), var(--shadow-1)}.bingo-ball__letter{opacity:.85;font-size:17cqi;font-weight:800;line-height:1}.bingo-ball__letter:empty{display:none}.bingo-ball__num{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:46cqi;font-weight:800;line-height:1}.bingo-ball.is-landed{animation:ball-land .5s var(--ease-out)}@keyframes ball-land{0%{transform:scale(.7)rotate(-25deg)}60%{transform:scale(1.06)rotate(4deg)}to{transform:none}}@media (prefers-reduced-motion:reduce){.bingo-ball.is-landed{animation:none}}.bingo-side{gap:12px;min-width:0;display:grid}.bingo-count{font-variant-numeric:tabular-nums;font-size:clamp(1rem,2vw,1.2rem);font-weight:720}.bingo-recent-wrap{gap:4px;display:grid}.bingo-recent-label{color:var(--ink-2);font-size:.85rem;font-weight:620}.bingo-recent-wrap:has(.bingo-recent:empty){display:none}.bingo-recent{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bingo-recent li{--ring:var(--line-strong);background:var(--surface);min-width:40px;height:34px;box-shadow:inset 0 0 0 2px var(--ring);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;place-items:center;padding:0 9px;font-size:.95rem;font-weight:720;display:grid}.bingo-recent li:first-child{font-size:1.05rem}.bingo-actions{flex-wrap:wrap;gap:8px;display:flex}.bingo-actions .btn--draw{flex:auto;min-width:0}.bingo-auto.is-on{background:var(--accent);color:#16142b;box-shadow:none}.bingo-auto-bar{background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:999px;height:6px;overflow:hidden}.bingo-auto-bar i{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.bingo-board{border-radius:var(--radius-m);background:var(--surface);box-shadow:var(--shadow-1);font-variant-numeric:tabular-nums;gap:clamp(3px,.5vw,6px);margin:0;padding:clamp(8px,1.4vw,14px);list-style:none;display:grid}.bingo-board li{grid-row:var(--r);grid-column:var(--c);background:var(--surface-2);min-height:clamp(28px,5vw,42px);color:var(--ink-3);border-radius:8px;place-items:center;font-size:clamp(.8rem,1.8vw,1.05rem);font-weight:650;transition:background-color .25s,color .25s;display:grid}.bingo-board li.is-called{background:var(--btn-bg);color:var(--btn-ink);font-weight:760}.bingo-board li.is-last{background:var(--accent);color:#16142b;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.bingo-board li.bingo-head{color:var(--ink);background:0 0;font-size:clamp(1rem,2.2vw,1.35rem);font-weight:800}.bingo-board[data-mode="90"]{grid-template-rows:repeat(3,auto) clamp(4px,1vw,10px) repeat(3,auto) clamp(4px,1vw,10px) repeat(3,auto);grid-template-columns:repeat(5,minmax(0,1fr)) clamp(4px,1vw,10px) repeat(5,minmax(0,1fr))}.bingo-board[data-mode="75"]{grid-template-columns:minmax(28px,.8fr) repeat(15,minmax(0,1fr))}@media (max-width:599px){.bingo-board[data-mode="75"]{grid-template-columns:repeat(5,minmax(0,1fr))}.bingo-board[data-mode="75"] li{grid-row:var(--c);grid-column:var(--r);min-height:28px}.bingo-board[data-mode="90"] li{border-radius:6px}.bingo-actions .btn--draw{min-height:56px;padding:0 18px;font-size:1.1rem}.bingo-auto{flex:auto}}.choice-row--stack{flex-direction:column;align-items:stretch}.choice--wide{justify-items:start;padding:0 18px}.bingo-called{counter-reset:call;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.bingo-called li{background:var(--surface-2);font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 10px;font-weight:680}.bingo-called li:last-child{background:var(--accent);color:#16142b}.stage.is-present.bingo-stage{grid-template-columns:minmax(0,.7fr) minmax(0,2fr);align-content:stretch;align-items:center;gap:3vw;padding-top:68px}.stage.is-present .bingo-top{text-align:center;grid-template-columns:1fr;justify-items:center}.stage.is-present .bingo-ball{width:min(26vw,40vh)}.stage.is-present .bingo-side{justify-items:center}.stage.is-present .bingo-count{font-size:clamp(1.2rem,3vh,2rem)}.stage.is-present .bingo-recent{justify-content:center}.stage.is-present .bingo-recent li{min-width:clamp(40px,6vh,70px);height:clamp(34px,5vh,56px);font-size:clamp(1rem,2.6vh,1.6rem)}.stage.is-present .bingo-board{grid-auto-rows:1fr;height:calc(97.5vh - 68px)}.stage.is-present .bingo-board[data-mode="90"]{grid-template-rows:repeat(3,1fr) 1.2vh repeat(3,1fr) 1.2vh repeat(3,1fr)}.stage.is-present .bingo-board li{border-radius:10px;font-size:clamp(1rem,4.2vh,2.8rem)}@media (orientation:portrait){.stage.is-present.bingo-stage{grid-template-columns:1fr;align-content:center}.stage.is-present .bingo-board{height:auto}.stage.is-present .bingo-ball{width:min(36vw,26vh)}}
