.bb-root{--bb-night:oklch(16% .06 262);--bb-deep:oklch(22% .09 262);--bb-blue:oklch(62% .2 255);--bb-blue-bright:oklch(78% .15 230);--bb-cyan:oklch(86% .15 200);--bb-turquoise:oklch(85% .16 190);--bb-purple:oklch(58% .27 305);--bb-magenta:oklch(62% .29 330);--bb-gold:oklch(82% .16 80);--bb-text:oklch(97% .01 250);--bb-muted:oklch(80% .04 250);--bb-glass:oklab(30% -.0139173 -.0990268/.55);--bb-glass-edge:color-mix(in oklab, var(--bb-blue-bright) 45%, transparent);--bb-cell:oklch(97% .005 260);--bb-cell-ink:oklch(20% .05 265);--bb-blank:oklch(82% .03 270);color:var(--bb-text);font-family:var(--font-display);background:radial-gradient(60% 45% at 50% 42%, color-mix(in oklab, var(--bb-blue) 28%, transparent), transparent 70%), radial-gradient(40% 30% at 15% 10%, oklch(32% .1 258/.7), transparent 70%), radial-gradient(45% 35% at 85% 15%, oklch(30% .09 265/.7), transparent 70%), radial-gradient(70% 40% at 30% 90%, oklch(26% .09 262/.8), transparent 70%), radial-gradient(50% 30% at 80% 85%, oklch(24% .08 270/.8), transparent 70%), linear-gradient(180deg, var(--bb-deep), var(--bb-night));min-height:100dvh}.bb-glass{background:linear-gradient(180deg, oklab(38% -.0167008 -.118832/.5), var(--bb-glass));border:1px solid var(--bb-glass-edge);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;box-shadow:inset 0 1px oklch(100% 0 0/.12),0 8px 24px -12px oklch(0% 0 0/.6)}.bb-label{letter-spacing:.08em;text-transform:uppercase;color:var(--bb-muted)}.bb-logo{-webkit-user-select:none;user-select:none;height:auto;display:block}.bb-ball{--s:48px;width:var(--s);height:var(--s);background:radial-gradient(circle at 35% 28%, var(--bb-blue-bright), var(--bb-blue) 55%, oklch(38% .17 262));font-family:var(--font-ticket,var(--font-display));font-size:calc(var(--s) * .48);color:var(--bb-text);border-radius:50%;flex:none;place-items:center;line-height:1;display:inline-grid;box-shadow:inset 0 -3px 6px oklch(0% 0 0/.3),inset 0 2px 3px oklch(100% 0 0/.35)}.bb-ball--hero{background:radial-gradient(circle at 50% 50%, var(--bb-cell) 0 52%, transparent 53%), radial-gradient(circle at 35% 28%, var(--bb-blue-bright), var(--bb-blue) 55%, oklch(32% .17 262));color:var(--bb-cell-ink);font-size:calc(var(--s) * .4);box-shadow:0 0 0 calc(var(--s) * .02) color-mix(in oklab, var(--bb-blue-bright) 60%, transparent), 0 0 calc(var(--s) * .35) color-mix(in oklab, var(--bb-blue) 55%, transparent), inset 0 -6px 14px oklch(0% 0 0/.35)}.bb-ball--empty{box-shadow:inset 0 0 0 2px var(--bb-glass-edge);background:0 0}.bb-ball--enter{animation:.42s cubic-bezier(.2,.9,.3,1.2) bb-pop}@keyframes bb-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.bb-stages{justify-content:center;align-items:center;gap:0;display:flex}.bb-stage-dot{--d:40px;width:var(--d);height:var(--d);font-size:calc(var(--d) * .5);border:2px solid var(--bb-glass-edge);background:var(--bb-night);color:var(--bb-muted);border-radius:50%;place-items:center;display:grid}.bb-stage-dot[data-state=done]{background:var(--bb-blue);color:var(--bb-text);border-color:var(--bb-blue-bright)}.bb-stage-dot[data-state=now]{background:radial-gradient(circle at 35% 30%, oklch(90% .14 85), var(--bb-gold));color:var(--bb-cell-ink);box-shadow:0 0 14px color-mix(in oklab, var(--bb-gold) 60%, transparent);border-color:oklch(95% .08 90)}.bb-stage-bar{background:var(--bb-glass-edge);width:22px;height:3px}.bb-stage-bar[data-on=true]{background:var(--bb-gold)}.bb-history{grid-template-columns:repeat(10,1fr);gap:.35em;display:grid}.bb-history span{aspect-ratio:1;font-family:var(--font-ticket,var(--font-display));color:var(--bb-muted);background:oklch(20% .06 262);border-radius:50%;place-items:center;line-height:1;display:grid;box-shadow:inset 0 0 0 1px oklch(100% 0 0/.12)}.bb-history span[data-called=true]{background:radial-gradient(circle at 35% 28%, var(--bb-blue-bright), var(--bb-blue) 60%);color:var(--bb-text);box-shadow:0 0 6px color-mix(in oklab, var(--bb-blue) 60%, transparent)}.bb-lb-row{background:oklch(24% .08 262/.7);border:1px solid oklch(100% 0 0/.1);border-radius:10px;align-items:center;gap:.6em;padding:.35em .6em;display:flex}.bb-lb-seat{text-align:center;width:1.6em;color:var(--bb-cyan)}.bb-tv{place-items:center;height:100dvh;display:grid;overflow:hidden}.bb-tv-stage{aspect-ratio:16/9;grid-template-columns:27cqw 1fr 23cqw;gap:2cqw;width:min(100vw,177.778dvh);padding:2.5cqw;display:grid;container-type:size}.bb-tv-left,.bb-tv-right{flex-direction:column;gap:1.6cqw;min-height:0;display:flex}.bb-tv-centre{grid-template-rows:auto 1fr auto;place-items:center;min-height:0;display:grid;position:relative}.bb-tv .bb-history{padding:1cqw;font-size:1.05cqw}.bb-tv .bb-stage-dot{--d:3.4cqw}.bb-tv .bb-stage-bar{width:2cqw;height:.3cqw}.bb-tv-stagebox{text-align:center;padding:.8cqw 2.4cqw 1cqw}.bb-tv-stagebox h2{letter-spacing:.05em;margin-bottom:.6cqw;font-size:1.9cqw}.bb-tv .bb-ball--hero{--s:25cqw}.bb-tv-recent{text-align:center;padding:.8cqw 1.6cqw 1.1cqw}.bb-tv-recent .bb-ball{--s:4.4cqw}.bb-tv-small{font-size:1.2cqw}.bb-tv-calls{text-align:center;padding:.9cqw 1.4cqw}.bb-tv-calls strong{font-size:3.2cqw;line-height:1}.bb-tv-overlay{text-align:center;padding:1.4cqw;position:absolute;inset:auto 0 0}.bb-tv-btn{background:linear-gradient(180deg, var(--bb-blue-bright), var(--bb-blue));color:var(--bb-text);border-radius:999px;margin-top:.8cqw;padding:.7cqw 2cqw;font-size:1.4cqw}.bb-tv-btn:disabled{opacity:.45}.bb-tv-btn:focus-visible,.bb-btn:focus-visible{outline:3px solid var(--bb-cyan);outline-offset:3px}.bb-phone{flex-direction:column;gap:10px;max-width:480px;margin:0 auto;padding:10px 12px 20px;display:flex}.bb-phone-top{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:8px;display:grid}.bb-phone-top>.bb-glass{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:8px;display:flex}.bb-phone .bb-ball--hero{--s:84px}.bb-meter{border:1px solid var(--bb-glass-edge);background:oklch(15% .05 262);border-radius:999px;height:14px;overflow:hidden}.bb-meter>i{background:linear-gradient(90deg, var(--bb-turquoise), var(--bb-cyan));width:0;height:100%;display:block}.bb-ticket{padding:6px 8px 8px}.bb-ticket-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.bb-cell{min-height:42px;font-family:var(--font-ticket,var(--font-display));background:var(--bb-cell);color:var(--bb-cell-ink);border-radius:4px;place-items:center;font-size:20px;transition:transform .12s;display:grid}.bb-cell:active:not(:disabled){transform:scale(.94)}.bb-cell--blank{background:var(--bb-blank);opacity:.55}.bb-cell[data-called=true]{box-shadow:inset 0 0 0 2px var(--bb-blue)}.bb-cell[data-dabbed=true]{background:linear-gradient(160deg, var(--bb-magenta), var(--bb-purple));color:var(--bb-text);box-shadow:0 0 8px color-mix(in oklab, var(--bb-magenta) 55%, transparent)}.bb-btn{background:linear-gradient(180deg, var(--bb-blue-bright), var(--bb-blue));width:100%;min-height:48px;color:var(--bb-text);border-radius:12px;font-size:18px}.bb-btn:disabled{opacity:.45}.bb-btn--ghost{border:1px solid var(--bb-glass-edge);background:0 0}.bb-bingo{letter-spacing:.04em;background:linear-gradient(180deg, oklch(75% .24 330), var(--bb-magenta) 55%, var(--bb-purple));width:100%;min-height:64px;color:var(--bb-text);box-shadow:inset 0 2px 0 oklch(100% 0 0/.35), 0 0 18px color-mix(in oklab, var(--bb-magenta) 50%, transparent);border:2px solid oklch(85% .15 330);border-radius:999px;font-size:30px}.bb-bingo:disabled{opacity:.5}.bb-bingo:focus-visible{outline:3px solid var(--bb-cyan);outline-offset:3px}.bb-chip{border:1px solid var(--bb-glass-edge);color:var(--bb-muted);border-radius:999px;padding:1px 8px;font-size:12px}@media (prefers-reduced-motion:reduce){.bb-ball--enter{animation:none}.bb-cell{transition:none}}.bb-root{isolation:isolate;position:relative}.bb-root:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(18% 12% at 12% 22%, oklch(42% .12 258/.35), transparent 70%), radial-gradient(22% 14% at 30% 12%, oklch(38% .11 260/.3), transparent 70%), radial-gradient(20% 13% at 72% 10%, oklch(40% .12 256/.32), transparent 70%), radial-gradient(26% 16% at 90% 30%, oklch(34% .1 262/.35), transparent 70%), radial-gradient(30% 14% at 20% 70%, oklch(30% .1 262/.35), transparent 70%), radial-gradient(34% 16% at 78% 78%, oklch(30% .1 264/.35), transparent 70%), radial-gradient(40% 22% at 50% 100%, color-mix(in oklab, var(--bb-blue) 18%, transparent), transparent 75%);filter:blur(6px);position:fixed;inset:0}.bb-glass{border:1px solid color-mix(in oklab, var(--bb-blue-bright) 55%, transparent);box-shadow:inset 0 1px 0 oklch(100% 0 0/.18), inset 0 0 18px color-mix(in oklab, var(--bb-blue) 14%, transparent), 0 0 14px -4px color-mix(in oklab, var(--bb-blue) 55%, transparent), 0 10px 28px -14px oklch(0% 0 0/.7);background:linear-gradient(oklch(100% 0 0/.07),#0000 40%),linear-gradient(oklab(30% -.0153091 -.108929/.7),oklab(18% -.00974213 -.0693188/.8))}.bb-ball--hero{background:radial-gradient(circle at 50% 50%, oklch(99% 0 0) 0 40%, oklch(90% .02 255) 50%, transparent 51%), radial-gradient(circle at 50% 50%, transparent 0 51%, oklch(50% .2 258) 52%, var(--bb-blue-bright) 60%, var(--bb-blue) 72%, oklch(30% .16 262) 100%);box-shadow:0 0 0 calc(var(--s) * .015) color-mix(in oklab, var(--bb-blue-bright) 80%, transparent), 0 0 calc(var(--s) * .12) color-mix(in oklab, var(--bb-blue-bright) 60%, transparent), 0 0 calc(var(--s) * .4) color-mix(in oklab, var(--bb-blue) 50%, transparent), inset 0 calc(var(--s) * -.04) calc(var(--s) * .08) oklch(0% 0 0/.35);font-weight:700;font-size:calc(var(--s) * .42);position:relative}.bb-ball--hero:after{content:"";pointer-events:none;background:linear-gradient(oklch(100% 0 0/.55),#0000);border-radius:50%;width:56%;height:26%;position:absolute;top:8%;left:22%}.bb-plinth{background:radial-gradient(50% 50% at 50% 40%, color-mix(in oklab, var(--bb-blue-bright) 45%, transparent), oklch(18% .06 262/.9) 70%, transparent 72%);width:34cqw;height:4cqw;box-shadow:0 0 3cqw color-mix(in oklab, var(--bb-blue) 35%, transparent);border-radius:50%;margin-top:-2.4cqw}.bb-ball:not(.bb-ball--hero):not(.bb-ball--empty){position:relative}.bb-ball:not(.bb-ball--hero):not(.bb-ball--empty):after{content:"";background:linear-gradient(oklch(100% 0 0/.45),#0000);border-radius:50%;width:56%;height:30%;position:absolute;top:8%;left:22%}.bb-tv-right{padding-top:2cqw}.bb-tv-rightrow{grid-template-columns:9cqw 1fr;align-items:start;gap:1cqw;display:grid}.bb-tv-stage{grid-template-columns:24cqw 1fr 28cqw}.bb-tv .bb-lb-row{font-size:1.3cqw}.bb-lb-row[data-rank="1"]{background:linear-gradient(180deg, oklch(86% .15 85), var(--bb-gold));color:var(--bb-cell-ink)}.bb-lb-score{background:oklch(0% 0 0/.25);border:1px solid oklch(100% 0 0/.4);border-radius:50%;place-items:center;min-width:2.2em;height:2.2em;font-size:.85em;display:grid}.bb-lobby{aspect-ratio:16/9;grid-template-columns:1fr 1fr;align-items:center;gap:3cqw;width:min(100vw,177.778dvh);padding:4cqw 5cqw;display:grid;container-type:size}.bb-lobby-code{letter-spacing:.12em;color:var(--bb-text);text-shadow:0 0 2cqw color-mix(in oklab, var(--bb-blue-bright) 60%, transparent);font-size:10cqw;line-height:1}.bb-lobby-names{flex-wrap:wrap;gap:.8cqw;display:flex}.bb-lobby-names li{border-radius:999px;padding:.5cqw 1.2cqw;font-size:1.5cqw}.bb-howto{padding:1cqw 1.4cqw;font-size:1.3cqw}.bb-howto summary{cursor:pointer;font-size:1.5cqw}.bb-howto ul{gap:.3cqw;margin-top:.6cqw;padding-left:1.4em;list-style:outside;display:grid}.bb-superballs{grid-template-columns:repeat(2,auto);justify-items:center;gap:1.4cqw 2.4cqw;display:grid}.bb-superballs>:first-child{grid-column:1/-1}.bb-tv .bb-superballs .bb-ball--hero{--s:12cqw}.bb-phone-top{grid-template-columns:1fr 1fr}.bb-phone-top>.bb-glass{flex-direction:row;gap:8px;min-height:64px}.bb-streak-x{color:var(--bb-gold);font-size:26px}.bb-ticket{position:relative}.bb-preview-tag{background:var(--bb-gold);color:var(--bb-cell-ink);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:1px 8px;font-size:11px}.bb-power-choice{grid-template-columns:1fr 1fr;gap:8px;display:grid}.bb-power-btn{border:1px solid var(--bb-glass-edge);min-height:92px;color:var(--bb-text);background:oklch(20% .07 262/.8);border-radius:12px;place-items:center;gap:4px;padding:8px;font-size:15px;display:grid}.bb-power-btn[aria-pressed=true]{border-color:var(--bb-cyan);box-shadow:0 0 12px color-mix(in oklab, var(--bb-cyan) 50%, transparent)}.bb-target{flex-wrap:wrap;gap:6px;display:flex}.bb-target button{border:1px solid var(--bb-glass-edge);background:oklch(20% .07 262/.8);border-radius:999px;min-height:44px;padding:0 14px}.bb-attacked{pointer-events:none;background:linear-gradient(180deg, color-mix(in oklab, var(--bb-cyan) 30%, transparent), color-mix(in oklab, var(--bb-blue-bright) 22%, transparent));border:2px solid var(--bb-cyan);border-radius:14px;place-items:center;display:grid;position:absolute;inset:0}.bb-attacked span{background:oklch(16% .06 262/.9);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:15px;display:flex}.bb-cell[data-frozen=true]{filter:blur(1.5px)saturate(.4)}.bb-ticket[data-effect=drink] .bb-attacked,.bb-ticket[data-effect=shuffle] .bb-attacked{background:0 0;place-items:start end;padding:2px 6px}.bb-ticket[data-effect=drink] .bb-attacked{border-color:var(--bb-gold)}.bb-ticket[data-effect=shuffle] .bb-attacked{border-color:var(--bb-purple)}.bb-ticket[data-effect=drink] .bb-attacked span,.bb-ticket[data-effect=shuffle] .bb-attacked span{padding:2px 8px;font-size:12px}.bb-spill{pointer-events:none;background:radial-gradient(ellipse 45% 70% at 28% 45%, color-mix(in oklab, var(--bb-gold) 92%, var(--bb-cell-ink)), transparent 75%), radial-gradient(ellipse 42% 75% at 74% 58%, color-mix(in oklab, var(--bb-gold) 88%, var(--bb-cell-ink)), transparent 76%);opacity:.82;border-radius:0 0 14px 14px;position:absolute;inset:18px 0 0}.bb-power-btn:disabled{opacity:.5}.bb-power-event{align-items:center;gap:.8cqw;display:flex}.bb-lb-fx{gap:2px;display:inline-flex}.bb-tv--lobby{background-position:50%;background-repeat:no-repeat;background-size:cover}.bb-tv--lobby:before{display:none}.bb-lobby-logo{width:40%;margin-bottom:.6cqw}.bb-lobby .bb-lobby-code{font-size:11.5cqw}.bb-photo{background-image:var(--bb-photo);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}.bb-photo:before{display:none}.bb-photo--phone:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(oklch(14% .05 262/.35),oklch(12% .05 262/.6));position:fixed;inset:0}.bb-tv-left .bb-logo{max-width:62%}.bb-spill{opacity:1;-webkit-backdrop-filter:blur(1.2px);backdrop-filter:blur(1.2px);background:radial-gradient(30% 40% at 30% 40%,oklch(97% .03 220/.55),#0000 60%),radial-gradient(50% 70% at 28% 48%,oklch(80% .09 225/.42),#0000 72%),radial-gradient(45% 75% at 72% 58%,oklch(76% .1 230/.38),#0000 74%),radial-gradient(circle,#0000 55%,oklch(90% .06 220/.25) 58%,#0000 62%);animation:3.2s ease-in-out infinite alternate bb-ripple;inset:18px 0 0;box-shadow:inset 0 0 24px oklch(85% .08 225/.35)}@keyframes bb-ripple{0%{background-position:0 0,0 0,0 0,0 0}to{background-position:4px -3px,-3px 2px,3px 3px,0 0}}.bb-celebrate{z-index:60;pointer-events:none;border:1px solid var(--bb-glass-edge);box-shadow:0 0 40px color-mix(in oklab, var(--bb-cyan) 40%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:linear-gradient(oklch(24% .09 262/.82),oklch(14% .06 262/.88));border-radius:24px;flex-direction:column;align-items:center;gap:4px;padding:18px 32px;animation:.4s ease-out bb-pop;display:flex;position:fixed;top:14%;left:50%;transform:translate(-50%)}.bb-celebrate--tv{padding:2cqw 4cqw;top:8%}.bb-celebrate-bolt{width:54px;fill:var(--bb-gold);filter:drop-shadow(0 0 14px var(--bb-gold));animation:1.2s ease-in-out infinite bb-flash}.bb-celebrate--tv .bb-celebrate-bolt{width:6cqw}.bb-celebrate-stage{font-family:var(--font-display);text-transform:uppercase;color:var(--bb-cyan);font-size:22px}.bb-celebrate-name{font-family:var(--font-display);font-size:34px;font-weight:800}.bb-celebrate--tv .bb-celebrate-stage{font-size:2.6cqw}.bb-celebrate--tv .bb-celebrate-name{font-size:5cqw}.bb-countdown{font-family:var(--font-display);color:var(--bb-gold);font-size:72px;font-weight:900;line-height:1;animation:.35s ease-out bb-pop}.bb-celebrate--tv .bb-countdown{font-size:10cqw}.bb-celebrate{animation-name:bb-pop-x}@keyframes bb-pop-x{0%{opacity:0;transform:translate(-50%)scale(.7)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes bb-flash{50%{opacity:.6}}@media (prefers-reduced-motion:reduce){.bb-spill,.bb-celebrate,.bb-celebrate-bolt,.bb-countdown{animation:none}}
