.bingo-hero{margin:0 auto;max-width:860px;padding:1.5rem 1rem .5rem;text-align:center}.bingo-intro{line-height:1.55;margin:.75rem auto 0;max-width:720px}.bingo-lastcall-row{display:flex;flex-direction:column;gap:.25rem}.bingo-lastcall-row[hidden]{display:none}.bingo-lastcall{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem}.bingo-lastcall-label{font-size:.85rem;font-weight:600;opacity:.7}.bingo-lastcall-value{color:#2563eb;font-size:2.1rem;font-variant-numeric:tabular-nums;font-weight:800;line-height:1.1}.bingo-lastcall-nickname{font-size:.95rem;font-style:italic;opacity:.8}.bingo-recent{font-size:.8rem;font-variant-numeric:tabular-nums;margin:0;opacity:.65}.bingo-setup{gap:.9rem;margin-bottom:.85rem}.bingo-group,.bingo-setup{display:flex;flex-direction:column}.bingo-group{gap:.4rem}.bingo-group[hidden]{display:none}.bingo-group-label{font-size:.7rem;font-weight:700;letter-spacing:.05em;opacity:.55;text-transform:uppercase}.bingo-mode-primary{display:grid;gap:.4rem;grid-template-columns:1fr 1fr}.bingo-mode-extra{display:grid;gap:.4rem;grid-template-columns:repeat(3,1fr)}.bingo-mode-btn{align-items:center;background:#fff;border:1.5px solid rgba(0,0,0,.13);border-radius:10px;color:#1e293b;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;justify-content:center;padding:.5rem .4rem;transition:border-color .15s ease,background-color .15s ease;width:100%}.bingo-mode-extra .bingo-mode-btn{font-size:.8rem;font-weight:500;padding:.35rem .3rem}.bingo-mode-btn:hover:not(:disabled){border-color:#2563eb}.bingo-mode-btn.bingo-mode-active{background:#2563eb;border-color:#2563eb;color:#fff;font-weight:700}.bingo-custom-row{align-items:center;display:grid;gap:.4rem;grid-template-columns:1fr auto 1fr auto}.bingo-range-input{-moz-appearance:textfield;background:#fff;border:1.5px solid rgba(0,0,0,.13);border-radius:10px;font-weight:700;height:2.1rem;min-width:0;text-align:center;width:100%}.bingo-range-dash{opacity:.45}.bingo-apply-btn{font-size:.85rem;padding:.45rem .9rem;white-space:nowrap}.bingo-nickname-toggle{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:space-between}.bingo-game-actions{gap:.4rem}.bingo-autocall-btn{font-weight:700;padding:.55rem .8rem;width:100%}.bingo-autocall-btn.bingo-autocall-on{background:#111;color:#fff}.bingo-secondary-actions{display:grid;gap:.4rem;grid-template-columns:1fr 1fr}.bingo-secondary-actions .btn{font-size:.82rem;padding:.45rem .5rem;white-space:nowrap}.bingo-undo:disabled{cursor:not-allowed;opacity:.4}.bingo-undo:disabled:hover{background:transparent;color:var(--color-btn-blue)}.bingo-status{background:rgba(37,99,235,.07);border-radius:8px;color:#1e3a8a;font-size:.85rem;font-variant-numeric:tabular-nums;font-weight:700;margin:0;padding:.45rem .6rem}.bingo-board-wrap{margin:2rem auto 0;max-width:60rem;padding:0 1rem;text-align:center}.bingo-board-intro{line-height:1.55;margin:.5rem auto 1rem;max-width:46rem}.bingo-board-scroll{overflow-x:auto}.bingo-board{display:grid;gap:.25rem;grid-template-columns:repeat(var(--bingo-cols,10),minmax(0,1fr));margin:0 auto;max-width:calc(var(--bingo-cols, 10)*3.75rem)}.bingo-board.has-row-labels{grid-template-columns:1.75rem repeat(var(--bingo-cols,15),minmax(0,1fr));max-width:calc(1.75rem + var(--bingo-cols, 15)*3.75rem)}.bingo-cell{align-items:center;aspect-ratio:1;background:#eef2f7;border-radius:6px;color:#111;display:flex;font-size:clamp(.6rem,1.5vw,1rem);font-variant-numeric:tabular-nums;font-weight:700;justify-content:center;transition:background-color .2s ease,transform .2s ease}.bingo-cell.is-called{background:#2563eb;color:#fff}.bingo-cell.is-last{background:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.45);color:#111;transform:scale(1.08)}.bingo-row-label{align-items:center;color:#2563eb;display:flex;font-weight:800;justify-content:center}.bingo-board-status{font-variant-numeric:tabular-nums;font-weight:600;margin:.75rem 0 0}.bingo-board-actions{display:flex;gap:.5rem;justify-content:center;margin-top:.75rem}@media(max-width:560px){.bingo-board{min-width:22rem}}@media(prefers-reduced-motion:reduce){.bingo-cell{transition:none}.bingo-cell.is-last{transform:none}}.bingo-section{line-height:1.6;margin:2rem auto 0;max-width:860px;padding:0 1rem}.bingo-section h2{margin-bottom:.5rem}.bingo-section table{border-collapse:collapse;font-size:.95rem;margin:1rem 0;width:100%}.bingo-section td,.bingo-section th{border:1px solid rgba(0,0,0,.12);padding:.4rem .6rem;text-align:left}.bingo-section th{background:#eef2f7}.bingo-calls-table{column-count:2;column-gap:2rem;font-size:.9rem;margin-top:1rem}.bingo-calls-table p{break-inside:avoid;margin:0 0 .3rem}@media(min-width:700px){.bingo-calls-table{column-count:3}}.bingo-faq article{margin-bottom:1rem}.bingo-faq h3{margin-bottom:.25rem}.bingo-stage{background:#fff;box-sizing:border-box;display:grid;gap:1vh 1.5vw;grid-template-areas:"callbar callbar" "wheel   board" "actions actions";grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;height:100%;inset:0;padding:1.5vh 2vw;position:fixed;width:100%;z-index:9999}.bingo-stage[hidden]{display:none}body.bingo-stage-fallback{overflow:hidden}body.bingo-stage-on #winnerModal{display:none!important}.bingo-stage-callbar{align-items:baseline;display:flex;gap:2vw;grid-area:callbar;justify-content:center;text-align:center}.bingo-stage-wheel{grid-area:wheel}.bingo-stage-board{grid-area:board}.bingo-stage-board,.bingo-stage-wheel{align-items:center;display:flex;justify-content:center;min-height:0;min-width:0}.bingo-stage-actions{align-items:center;display:flex;gap:1vw;grid-area:actions;justify-content:center}.bingo-stage.is-wheel{grid-template-areas:"callbar callbar" "wheel   wheel" "actions actions"}.bingo-stage.is-wheel .bingo-stage-board{display:none}.bingo-stage.is-board{--stage-board-vw:94vw;--stage-board-vh:76vh;grid-template-areas:"callbar callbar" "board   board" "actions actions"}.bingo-stage.is-board .bingo-stage-wheel{display:none}.bingo-stage.is-both{--stage-board-vw:63vw;--stage-board-vh:70vh;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.bingo-stage .canvas-container{height:100%;min-height:0;min-width:0;overflow:hidden;width:100%}.bingo-stage .bingo-board{--stage-gap:0.4vh;--cell:max(min(calc(var(--stage-board-vw, 90vw)/var(--bingo-cols, 10) - var(--stage-gap)),calc(var(--stage-board-vh, 60vh)/var(--bingo-rows, 9) - var(--stage-gap))),var(--cell-min,0px));gap:var(--stage-gap);grid-template-columns:repeat(var(--bingo-cols,10),var(--cell));max-width:none;min-width:0}.bingo-stage .bingo-board.has-row-labels{--cell:max(min(calc((var(--stage-board-vw, 90vw) - 3vw)/var(--bingo-cols, 15) - var(--stage-gap)),calc(var(--stage-board-vh, 60vh)/var(--bingo-rows, 5) - var(--stage-gap))),var(--cell-min,0px));grid-template-columns:3vw repeat(var(--bingo-cols,15),var(--cell))}.bingo-stage .bingo-cell{border-radius:calc(var(--cell)*.14);font-size:calc(var(--cell)*.42)}.bingo-stage .bingo-row-label{font-size:calc(var(--cell)*.5)}.bingo-stage .bingo-board-scroll{max-width:100%}.bingo-stage .bingo-lastcall-row{align-items:baseline;flex-direction:row;gap:1.5vw}.bingo-stage .bingo-lastcall-value{font-size:clamp(2rem,6vw,6rem)}.bingo-stage .bingo-lastcall-nickname{font-size:clamp(1rem,2vw,2.2rem)}.bingo-stage .bingo-lastcall-label,.bingo-stage .bingo-recent{font-size:clamp(.8rem,1.2vw,1.4rem)}.bingo-stage-countdown{color:#1e3a8a;font-size:clamp(.9rem,1.4vw,1.6rem);font-variant-numeric:tabular-nums;font-weight:700;margin:0}.bingo-stage-countdown[hidden]{display:none}.bingo-stage #rotateButton{font-size:clamp(1rem,1.4vw,1.6rem);padding:1.1vh 2.5vw;white-space:nowrap;width:auto}.bingo-stage .bingo-autocall-btn,.bingo-stage .bingo-stage-undo{font-size:clamp(.85rem,1vw,1.2rem);padding:1.1vh 1.6vw;white-space:nowrap;width:auto}.bingo-stage-toolbar{background:hsla(0,0%,100%,.92);border-radius:999px;box-shadow:0 2px 14px rgba(0,0,0,.16);display:flex;gap:.4rem;opacity:1;padding:.4rem;position:absolute;right:1.5vw;top:1.2vh;transition:opacity .4s ease;z-index:2}.bingo-stage-toolbar.is-faded{opacity:.15}.bingo-stage-toolbar:focus-within,.bingo-stage-toolbar:hover{opacity:1}.bingo-stage-exit-btn,.bingo-stage-layout-btn{background:#fff;border:1.5px solid rgba(0,0,0,.13);border-radius:999px;color:#1e293b;cursor:pointer;font-size:.85rem;font-weight:600;padding:.4rem .9rem}.bingo-stage-layout-btn.is-active{background:#2563eb;border-color:#2563eb;color:#fff}.bingo-stage-exit-btn{background:#111;border-color:#111;color:#fff}@media(prefers-reduced-motion:reduce){.bingo-stage-toolbar{transition:none}}@media(max-aspect-ratio:1/1),(max-width:700px){.bingo-stage{--cell-min:1.9rem;grid-template-areas:"callbar" "wheel" "board" "toolbar" "actions";grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;padding:1vh 2vw}.bingo-stage.is-board,.bingo-stage.is-wheel{grid-template-rows:auto minmax(0,1fr) auto auto}.bingo-stage.is-wheel{grid-template-areas:"callbar" "wheel" "toolbar" "actions"}.bingo-stage.is-board{--stage-board-vw:94vw;--stage-board-vh:62vh;grid-template-areas:"callbar" "board" "toolbar" "actions"}.bingo-stage.is-both{--stage-board-vw:94vw;--stage-board-vh:34vh;grid-template-columns:minmax(0,1fr)}.bingo-stage .bingo-board-scroll{overflow-x:auto;width:100%}.bingo-stage-toolbar{flex-wrap:wrap;grid-area:toolbar;justify-content:center;justify-self:center;max-width:96vw;opacity:1;position:static;transform:none}.bingo-stage-toolbar.is-faded{opacity:1}.bingo-stage-actions,.bingo-stage-callbar{flex-wrap:wrap;gap:.5rem 3vw}.bingo-stage .bingo-lastcall-row{flex-wrap:wrap;justify-content:center}.bingo-stage #rotateButton{padding:1.2vh 6vw}.bingo-stage-exit-btn,.bingo-stage-layout-btn{font-size:.78rem;padding:.35rem .7rem}}