/* Original 1920 × 1080 proportions, fitted uniformly; no stretched card or ball. */
#beach-bingo-game.bbg-reference{overflow:hidden;background:#000}
#beach-bingo-game.bbg-reference .bbg-surface{position:absolute;left:50%;top:50%;width:1920px;min-width:1920px;max-width:none;height:1080px;min-height:1080px;max-height:none;padding:0;margin:0;display:block;transform:translate(-50%,-50%) scale(var(--cabinet-scale,1));background:url('img/beach_bingo/background.png') center/100% 100%;isolation:isolate}
#beach-bingo-game.bbg-reference .bbg-viewport{position:absolute;inset:0;width:100%;height:100%;z-index:2}#beach-bingo-game.bbg-reference .bbg-stage{padding:0;display:block;width:100%;height:100%}
#beach-bingo-game.bbg-reference .bbg-cards{position:absolute;left:194px;right:194px;top:150px;height:710px;display:grid;grid-template-columns:612px 306px 612px;grid-template-rows:326px 326px;gap:58px 0}
#beach-bingo-game.bbg-reference .bbg-card{position:relative;border:3px solid #fbd634;border-radius:2px;box-shadow:0 3px 5px #00253dbb,inset 0 0 0 2px #8c691d;background:white;overflow:visible;perspective:1100px}
#beach-bingo-game.bbg-reference .bbg-card header,#beach-bingo-game.bbg-reference .bbg-card footer{display:none}#beach-bingo-game.bbg-reference .bbg-numbers{height:100%;width:100%;flex:1;gap:1.5px;background:#7e6942;border:2px solid #8e774c}
#beach-bingo-game.bbg-reference .bbg-numbers>span{font-size:86px;line-height:1;letter-spacing:-4px;color:#000;background:#fff;font-family:BeachNumerals,'Arial Black',sans-serif;text-shadow:none}
#beach-bingo-game.bbg-reference .bbg-numbers>span.marked{background:white;color:#777}#beach-bingo-game.bbg-reference .bbg-numbers>span.marked:after{content:'×';inset:0;display:grid;place-items:center;border:0;box-shadow:none;color:#f32618b8;font:900 116px/1 Arial;z-index:1;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-numbers>span.winning{background:#0721bf;color:#ffe32b}#beach-bingo-game.bbg-reference .bbg-numbers>span.winning:after{display:none}
#beach-bingo-game.bbg-reference .bbg-card-cover{inset:0;border-radius:0;background:#0576b8;color:#83cbe5}#beach-bingo-game.bbg-reference .bbg-card-seal{font-size:86px}
#beach-bingo-game.bbg-reference .bbg-machine{position:absolute;left:50%;top:430px;bottom:auto;transform:translateX(-50%);width:280px;height:560px;display:block;z-index:3;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-drum{position:absolute;left:0;top:0;width:280px;height:280px;max-width:none;min-height:0;aspect-ratio:1;z-index:4}#beach-bingo-game.bbg-reference .bbg-drum canvas{background:transparent;border:0;border-radius:0;width:100%;height:100%}
#beach-bingo-game.bbg-reference .bbg-chute{position:absolute;left:106px;top:260px;width:68px;height:190px;margin:0;border:0;background:none;box-shadow:none;z-index:1}#beach-bingo-game.bbg-reference .bbg-chute:after,#beach-bingo-game.bbg-reference .bbg-gate{display:none}
#beach-bingo-game.bbg-reference .bbg-catch{position:absolute;left:102px;top:443px;display:grid;place-items:center;width:76px;height:76px;max-width:none;min-height:0;padding:0;margin:0;border:0!important;border-radius:0;background:none;box-shadow:none!important;z-index:3}
#beach-bingo-game.bbg-reference .bbg-catch:after,#beach-bingo-game.bbg-reference .bbg-catch-label{display:none}#beach-bingo-game.bbg-reference .bbg-current-ball{width:68px;height:68px;font-size:38px;background:transparent;box-shadow:none;margin:0}#beach-bingo-game.bbg-reference .bbg-current-ball:empty:after{display:none}
#beach-bingo-game.bbg-reference .bbg-machine-status{position:absolute;top:310px;left:111px;width:58px;font-size:8px;z-index:0;opacity:.7}#beach-bingo-game.bbg-reference .bbg-machine-status>small,#beach-bingo-game.bbg-reference .bbg-progress{display:none}#beach-bingo-game.bbg-reference[data-phase='ready'] .bbg-machine-status{visibility:hidden}
.bbg-reference-trough{position:absolute;inset:0;width:1920px;height:1080px;z-index:1;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-rack-wrap{position:absolute;left:476px;top:913px;width:968px;height:84px;min-height:0;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;z-index:4;display:block}
#beach-bingo-game.bbg-reference .bbg-rack-caption{display:none}#beach-bingo-game.bbg-reference .bbg-rack{display:grid;width:100%;height:100%;grid-template-columns:repeat(20,minmax(0,1fr));grid-template-rows:repeat(2,40px);gap:2px 3px;align-items:center;justify-items:center}
#beach-bingo-game.bbg-reference .bbg-rack>span{width:40px;height:40px;border:0;background:transparent;box-shadow:none;outline:0}#beach-bingo-game.bbg-reference .bbg-rack>span:empty:after{display:none}#beach-bingo-game.bbg-reference .bbg-rack>span.called{font-size:23px;background-image:var(--ball-image);background-size:contain}
#beach-bingo-game.bbg-reference .bbg-toolbar{position:absolute;inset:0;height:116px;display:block;z-index:5;pointer-events:none}#beach-bingo-game.bbg-reference .bbg-toolbar>*{pointer-events:auto}
#beach-bingo-game.bbg-reference .bbg-heading,#beach-bingo-game.bbg-reference .bbg-prize-title,#beach-bingo-game.bbg-reference .bbg-disclosure-footer{display:none}
#beach-bingo-game.bbg-reference .bbg-back{position:absolute;left:8px;top:29px;width:65px;height:65px;padding:0!important;background:none;border:0;box-shadow:none}#beach-bingo-game.bbg-reference .bbg-back svg{width:100%;height:100%;filter:drop-shadow(0 3px 2px #003a76)}
#beach-bingo-game.bbg-reference .bbg-brand{position:absolute;right:58px;top:14px;width:143px;height:90px}
#beach-bingo-game.bbg-reference .bbg-prize-strip{position:absolute;left:195px;top:25px;width:1515px;height:88px;padding:0;border:0;box-shadow:none;background:none;z-index:5}
#beach-bingo-game.bbg-reference .bbg-paytable{display:grid;grid-template-columns:repeat(7,70px) 328px repeat(7,70px);gap:14px;padding:0;overflow:visible;flex:none;width:100%;height:100%;align-items:start}
#beach-bingo-game.bbg-reference .bbg-figure:nth-child(n+8){grid-column:auto}#beach-bingo-game.bbg-reference .bbg-figure:nth-child(8){grid-column:9}
#beach-bingo-game.bbg-reference .bbg-figure{position:relative;width:64px;min-width:0;max-width:none;text-align:center;line-height:1.1}#beach-bingo-game.bbg-reference .bbg-figure>div{display:grid;width:60px;height:38px;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(3,1fr);gap:1px;background:#726553;margin:0 auto 8px;box-shadow:none}
#beach-bingo-game.bbg-reference .bbg-figure i{background:#fffdef}#beach-bingo-game.bbg-reference .bbg-figure i.on{background:var(--figure-color)}#beach-bingo-game.bbg-reference .bbg-figure b{font:900 17px/1 BeachUI,Arial;color:white;text-shadow:2px 2px #000,-1px -1px #000;white-space:nowrap}
.bbg-reference .bbg-figure em{position:absolute;left:0;right:0;top:12px;color:#fff329;text-shadow:2px 2px #000,-1px -1px #000;font:900 17px/1 Arial}
.bbg-reference-jackpot{position:absolute;top:17px;left:803px;width:314px;text-align:center;z-index:5;color:#ffe22a;text-shadow:2px 3px #003362,-1px -1px #654600}.bbg-reference-jackpot small{font:900 19px/1.3 Arial}.bbg-reference-jackpot strong{display:block;font:900 57px/1.15 BeachUI,Arial}
#beach-bingo-game.bbg-reference .bbg-console{position:absolute;left:0;right:0;bottom:0;height:66px;display:flex;align-items:center;justify-content:flex-start;padding:5px 14px;gap:20px;border:0;border-radius:0;background:linear-gradient(#43daff,#00a2f4 12%,#078cde);box-shadow:inset 0 2px #87e9ff;z-index:10}
#beach-bingo-game.bbg-reference .bbg-console label{font:900 15px/1 Arial;color:white;text-shadow:1px 2px #000;letter-spacing:0;margin:0;text-align:center}
#beach-bingo-game.bbg-reference .bbg-console .bbg-adjuster{width:165px;flex:none}#beach-bingo-game.bbg-reference .bbg-console .bbg-adjuster>span{display:flex;align-items:center;margin:0;gap:5px;height:38px}
#beach-bingo-game.bbg-reference .bbg-console [data-adjust]{width:32px;min-height:28px;height:32px;padding:0!important;background:transparent;box-shadow:none;border:0;font-size:30px;color:#ffe200}
#beach-bingo-game.bbg-reference .bbg-console select{width:100px;height:36px;padding:0 3px;background:#073c75;color:white;text-align:center;border:1px solid #065490;border-radius:6px;font:900 24px/1 Arial!important;appearance:none}
#beach-bingo-game.bbg-reference .bbg-meter{width:148px;min-width:0;flex:none;text-align:center}#beach-bingo-game.bbg-reference .bbg-meter>span{display:block;color:white;text-shadow:1px 2px #000;font-size:15px;line-height:1;letter-spacing:0}#beach-bingo-game.bbg-reference .bbg-meter>b{display:block;background:#063970;border:1px solid #012c50;border-radius:6px;padding:5px;margin:0;height:38px;font-size:23px;color:white;white-space:nowrap}
#beach-bingo-game.bbg-reference .bbg-credit{order:4;margin-left:20px}#beach-bingo-game.bbg-reference .bbg-earned{order:5}#beach-bingo-game.bbg-reference .bbg-adjuster{order:2}#beach-bingo-game.bbg-reference .bbg-card-control{order:3}#beach-bingo-game.bbg-reference .bbg-total{display:none}
#beach-bingo-game.bbg-reference #bbg-menu{order:0;width:110px;height:50px;padding:5px;font-size:25px;border:2px solid #0067b1;border-radius:8px;color:#002b59;background:linear-gradient(#2fcaff,#0e8ad7);box-shadow:none}
#beach-bingo-game.bbg-reference #bbg-speed{order:7;margin-left:auto;height:44px;padding:7px 12px;font-size:15px;border-radius:24px}
#beach-bingo-game.bbg-reference #bbg-play{order:9;width:190px;min-width:190px;height:83px;margin-top:-19px;padding:10px;font:900 40px/1 Arial;color:white;background:linear-gradient(#ff7869,#ef1004 30%,#b30000 85%,#f22);border:3px solid #fe6b45;border-radius:17px;box-shadow:inset 0 2px 4px #ffb49c,0 3px 4px #034e87;text-shadow:0 2px #80261d}
/* Keep the muted appearance opaque so the console highlight cannot cross it. */
#beach-bingo-game.bbg-reference #bbg-play:disabled{opacity:1;color:#88c9f5;background:linear-gradient(#7294b2,#6686ac 30%,#4e729f 85%,#6289b1);border-color:#819fb9;box-shadow:inset 0 2px 4px #abc3d4,0 3px 4px #034e87;text-shadow:0 2px #496f98}
#beach-bingo-game.bbg-reference .bbg-result{position:absolute;left:995px;bottom:6px;width:540px;height:53px;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:7px;z-index:11;border:0;box-shadow:none;background:none;flex-wrap:nowrap}
#beach-bingo-game.bbg-reference #bbg-status{font:900 16px/1.2 Arial;color:white;text-shadow:1px 2px #002244;max-width:250px;text-align:center}#beach-bingo-game.bbg-reference #bbg-breakdown{display:none}#beach-bingo-game.bbg-reference .bbg-result button{min-height:35px;font-size:12px;padding:5px 8px}
#beach-bingo-game.bbg-reference #bbg-extra-controls{position:absolute;bottom:74px;left:-470px;width:1040px;display:flex;flex-direction:row;gap:12px;padding:8px;background:#032957f5;border:2px solid #ffe43c;box-shadow:0 4px 16px #0008;z-index:20}#beach-bingo-game.bbg-reference #bbg-extra-info{font-size:14px;max-width:650px}#beach-bingo-game.bbg-reference #bbg-extra-buy{font-size:15px!important;min-height:38px;padding:6px 10px!important}
#beach-bingo-game.bbg-reference .bbg-toolbar-actions{display:none;position:absolute;right:20px;top:112px;padding:12px;gap:10px;border:2px solid #ffe26a;border-radius:8px;background:#023664;box-shadow:0 5px 20px #0008}#beach-bingo-game.bbg-reference.bbg-tools-open .bbg-toolbar-actions{display:flex}#beach-bingo-game.bbg-reference .bbg-toolbar-actions button{font-size:16px!important;min-height:38px;padding:7px 10px!important}
#beach-bingo-game.bbg-reference .bbg-reference-more{position:absolute;left:134px;bottom:7px;width:55px;height:49px;font-size:35px;padding:0;z-index:12}#beach-bingo-game.bbg-reference .bbg-reference-full{position:absolute;right:5px;top:31px;width:50px;height:55px;padding:0;font-size:47px;color:#ffd52e;background:none;border:0;box-shadow:none;z-index:6}
#beach-bingo-game.bbg-reference .bbg-flight{z-index:30}

#beach-bingo-game.bbg-reference .bbg-console .bbg-reference-more{position:relative;left:auto;bottom:auto;order:1;flex:none}

#beach-bingo-game.bbg-reference .bbg-drum{background:url("img/beach_bingo/premium/main-atlas.png") 98.8827% .3976% / 719.9134% 317.7489% no-repeat;border-radius:50%}

/* Balls settle against the lower rail; extras retain their own ten positions. */
#beach-bingo-game.bbg-reference .bbg-rack-wrap{left:426px;top:876px;width:1068px;height:126px;overflow:visible;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-rack{display:block;position:relative;overflow:visible}
#beach-bingo-game.bbg-reference .bbg-rack>span{position:absolute;width:64px;height:64px;margin:0;transition:none;border:0;outline:0}
#beach-bingo-game.bbg-reference .bbg-rack>span.called{font-size:38px;animation:bbg-settle .22s ease-out;background-color:transparent}
#beach-bingo-game.bbg-reference .bbg-reference-call{position:absolute;inset:0 auto auto 0;width:280px;height:280px;z-index:12;font-size:160px;background-size:contain;pointer-events:none;transform-origin:center;filter:drop-shadow(0 4px 3px #001a4180)}
#beach-bingo-game.bbg-reference .bbg-reference-roll{position:fixed;z-index:30;background-size:contain;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-extra-board{display:none;position:absolute;left:844px;top:148px;width:232px;height:294px;grid-template-columns:repeat(3,64px);grid-template-rows:repeat(4,64px);gap:6px;padding:10px;background:#0b3971;border:2px solid #d3a516;border-radius:38px;clip-path:none;z-index:2}
#beach-bingo-game.bbg-reference .bbg-extra-board>span{display:grid;place-items:center;background:#07346a;border-radius:50%;color:#12447d;font:900 45px Arial;border:2px solid #0b3060}
#beach-bingo-game.bbg-reference .bbg-extra-board>span:last-child{grid-column:2}
#beach-bingo-game.bbg-reference-extras .bbg-extra-board{display:grid}
#beach-bingo-game.bbg-reference .bbg-extra-price{position:absolute;left:0;top:0;width:280px;height:280px;border-radius:50%;border:3px solid #e6aa0c;background:radial-gradient(circle at 50% 40%,#154d8f,#093369 70%,#032047);z-index:10;color:#fffdd5;pointer-events:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;box-shadow:inset 0 0 25px #00193a}
#beach-bingo-game.bbg-reference .bbg-extra-price b{font:900 40px Arial;color:#ffb11f;text-shadow:2px 3px #001531;transform:rotate(-7deg)}
#beach-bingo-game.bbg-reference .bbg-extra-price strong{font:900 40px Arial;max-width:258px;overflow-wrap:anywhere;text-shadow:2px 2px #000}
#beach-bingo-game.bbg-reference .bbg-extra-price small{font:700 12px Arial;color:#d7eaff}
#beach-bingo-game.bbg-reference .bbg-extra-price:disabled{opacity:.65;cursor:not-allowed}
#beach-bingo-game.bbg-reference .bbg-machine-status{display:none}
#beach-bingo-game.bbg-reference #bbg-extra-controls{bottom:80px;left:740px;right:auto;width:170px;flex-direction:column;padding:7px;gap:5px}
#beach-bingo-game.bbg-reference #bbg-extra-info{font-size:12px}
#beach-bingo-game.bbg-reference #bbg-extra-buy{font-size:12px!important;min-height:30px}
#beach-bingo-game.bbg-reference .bbg-reference-award{position:absolute;left:22%;right:22%;top:-34px;height:32px;display:grid;place-items:center;background:linear-gradient(#ffe332,#efbc00);border:2px solid #ffe764;border-bottom:0;border-radius:18px 18px 0 0;color:#171300;font:900 21px Arial;text-shadow:1px 1px #fff288;z-index:5}
#beach-bingo-game.bbg-reference .bbg-numbers>span.marked{background:#e0e0e0;color:#999}
#beach-bingo-game.bbg-reference .bbg-numbers>span.winning{background:repeating-linear-gradient(45deg,#de0d00,#de0d00 2px,#c90b00 2px,#c90b00 4px);color:white;-webkit-text-stroke:1.5px #151515;animation:bbg-prize-flash 1.2s steps(2,end) infinite}
#beach-bingo-game.bbg-reference .bbg-numbers>span.bbg-reference-near{background:#ffec00;color:#000;position:relative;z-index:8;box-shadow:0 0 0 2px #685508;animation:bbg-near-flash 1s steps(1,end) infinite}
#beach-bingo-game.bbg-reference .bbg-numbers>span.bbg-reference-near:after{content:attr(data-possible);position:absolute;right:4px;bottom:2px;top:auto;left:auto;display:block;color:#141000;font:900 15px Arial;background:none;border:0;box-shadow:none;letter-spacing:0}
#beach-bingo-game.bbg-reference .bbg-reference-traces{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none;overflow:visible}
#beach-bingo-game.bbg-reference .bbg-reference-traces path{stroke-width:9;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(1px 2px 1px #000);stroke-dasharray:700;animation:bbg-trace-in .35s ease-out}
#beach-bingo-game.bbg-reference .bbg-figure.bbg-reference-paid>div{outline:3px solid red;animation:bbg-prize-flash 1s steps(2,end) infinite}
@keyframes bbg-settle{0%{transform:translateY(-8px)}65%{transform:translateY(1px)}100%{transform:none}}
@keyframes bbg-prize-flash{50%{filter:brightness(1.3)}}
@keyframes bbg-near-flash{50%{background:#d81604;color:white;-webkit-text-stroke:1px #111}}
@keyframes bbg-trace-in{from{stroke-dashoffset:700}to{stroke-dashoffset:0}}
#beach-bingo-game.bbg-reference .bbg-extra-shell{position:absolute;inset:-40px -15px 0;z-index:3;pointer-events:none}
#beach-bingo-game.bbg-reference .bbg-extra-shell canvas{width:100%!important;height:100%!important;background:transparent!important;border:0!important}
#beach-bingo-game.bbg-reference .bbg-numbers>span.marked:after{content:'';inset:4px;display:block;transform:none;opacity:1;border:0;border-radius:0;box-shadow:none;background:url('img/beach_bingo/extra-reveal/cards.png') 68.0261% 93.6393% / 1514.6154% 2485.3448% no-repeat}
#beach-bingo-game.bbg-reference .bbg-numbers>span.winning:after{display:none}
#beach-bingo-game.bbg-reference .bbg-numbers>span.bbg-reference-near:after{content:attr(data-possible);inset:auto 4px 2px auto;display:block;background:none}
#beach-bingo-game.bbg-reference:not(.bbg-reference-extras) #bbg-rack .bbg-extra-slot{visibility:hidden}
#beach-bingo-game.bbg-reference .bbg-numbers>span.bbg-reference-hit{z-index:9;animation:bbg-line-hit .6s ease-out;background:#ff8600;color:white}
@keyframes bbg-line-hit{0%{transform:scale(.9);filter:brightness(1)}40%{transform:scale(1.16);filter:brightness(1.6);box-shadow:0 0 22px #ffff35}100%{transform:scale(1);filter:brightness(1)}}
@media(prefers-reduced-motion:reduce){#beach-bingo-game.bbg-reference .bbg-numbers>span.bbg-reference-hit{animation:none}}
@media(prefers-reduced-motion:reduce){#beach-bingo-game.bbg-reference .bbg-rack>span.called,#beach-bingo-game.bbg-reference .bbg-reference-traces path,#beach-bingo-game.bbg-reference .bbg-numbers>span,#beach-bingo-game.bbg-reference .bbg-figure>div{animation:none}}
