/* Presentation only. Preserve the v2465 viewport/scroll/action-dock contract. */
body:is(.bingo-screen,.sports-screen){
 --plum-900:#2a1a3a;--plum-700:#3a2058;--plum-600:#4b0082;
 --gold-hi:#fff5ca;--gold-mid:#efcd76;--gold-deep:#986020;--gold-rim:#f4d98b;
 --gold-polish:linear-gradient(135deg,#fff5ca 0%,#efcd76 35%,#986020 70%,#f4d98b 100%);
 --plum-panel:linear-gradient(160deg,#3a2058a8,#2a1a3af5 72%);
 --hairline-gold:1px solid #e9c37c8c;--lux-radius:18px;
}
html body:is(.bingo-screen,.sports-screen) #app>main.wrap.game-wrap{background:#080e19!important}
html body:is(.bingo-screen,.sports-screen) #app .sports-toolbar{background:#080e19!important;border-bottom:var(--hairline-gold)!important}
html body:is(.bingo-screen,.sports-screen) #app .sports-toolbar h1{font-family:Georgia,serif!important;color:#f4d98b!important;text-shadow:0 1px 1px #000}
html body:is(.bingo-screen,.sports-screen) #app .sports-toolbar button{border:var(--hairline-gold)!important;border-radius:9px!important;background:linear-gradient(#161322,#080e19)!important;color:#fff0bc!important;box-shadow:inset 0 1px #fff5ca33}
/* Bingo: keep all real labels, board selectors and betting controls. */
html body #app #pl-bingo-game .phone{background:var(--plum-panel),url('assets/luxury-v2466/velvet.webp') center/390px;border:var(--hairline-gold);border-radius:18px;color:#f5e7c8}
html body #app #pl-bingo-game :is(.room h2,.wager-bar strong,.number,.letter,.ticket-head,.cell){font-family:Georgia,serif!important}
html body #app #pl-bingo-game .room h2{color:#fff0bc!important;text-shadow:0 2px 3px #000}
html body #app #pl-bingo-game :is(.room p,.wager-bar small,.board-count>span,.bet-summary,.board-bets label,.count,.pattern){color:#e9d8ed!important}
html body #app #pl-bingo-game .wager-bar{background:linear-gradient(120deg,#34233ce8,#170f24ed)!important;border:var(--hairline-gold)!important;box-shadow:inset 0 1px #fff5ca24,0 3px 9px #0005;border-radius:12px}
html body #app #pl-bingo-game :is(.board-count button,.card-tabs button,.board-bets select,.sound){background:var(--plum-panel)!important;border:var(--hairline-gold)!important;box-shadow:inset 0 1px #fff5ca33,0 2px 4px #0006;color:#f5e7c8!important}
html body #app #pl-bingo-game :is(.card-tabs button.active,.board-count button[aria-pressed=true]){background:var(--gold-polish)!important;color:#291927!important;border-color:#fff5ca!important;box-shadow:inset 0 2px #fff9,inset 0 -2px #986020,0 0 0 1px #986020}
html body #app #pl-bingo-game .stage{background:linear-gradient(90deg,#1a112115,#1c142a22),url('assets/luxury-v2466/bingo-bokeh.webp') center/cover!important;box-shadow:inset 0 -8px 12px #190e2599,inset 0 1px #fff5ca33!important;border-block:1px solid #edc77677;border-radius:12px;isolation:isolate}
html body #app #pl-bingo-game .spotlight{background:radial-gradient(ellipse at 50% 45%,#ffdf9b22,transparent 70%);inset:0;width:100%;height:100%}
html body #app #pl-bingo-game .call-ball{position:relative;box-shadow:inset 0 2px 3px #fff9,inset -5px -7px 10px #43132c77,0 0 0 1px #f4d98b,0 0 0 3px #98602099,0 7px 12px #0009!important}
html body #app #pl-bingo-game .call-ball:after{content:'';position:absolute;inset:7px;border-radius:50%;border:1px solid #fff8;box-shadow:inset 0 1px 2px #fff9;pointer-events:none}
html body #app #pl-bingo-game .call-face{background:radial-gradient(ellipse at 30% 15%,#ffffffcc,#ffffff33 45%,#fff0)!important;box-shadow:none!important;color:#291a2b!important}
html body #app #pl-bingo-game .call-panel>small{text-shadow:0 1px 4px #000;color:#fff5ca!important}
html body #app #pl-bingo-game .history{border:var(--hairline-gold)!important;background:linear-gradient(#21162de8,#0e101deb)!important;border-radius:12px;box-shadow:inset 0 1px #fff5ca22}
html body #app #pl-bingo-game .mini-ball{font-family:Georgia,serif!important;box-shadow:inset 0 1px #fffa,0 2px 4px #000a!important}
html body #app #pl-bingo-game .ticket{position:relative;background:var(--gold-polish)!important;border:2px solid #fff0b8!important;border-radius:16px!important;padding:6px!important;box-shadow:inset 0 0 0 2px #986020,inset 0 0 0 3px #ffefa9,0 0 0 2px #986020,0 0 0 3px #efcd76,0 5px 12px #000a!important;transform:none!important;margin-block:4px 8px}
html body #app #pl-bingo-game .ticket-head{background:linear-gradient(#181120,#0b0e1b)!important;color:#f4d98b!important;text-shadow:0 1px 2px #000;border-bottom:1px solid #efcd76;padding-block:3px!important}
html body #app #pl-bingo-game .ticket-head span:nth-child(1){color:#a4c8f1}
html body #app #pl-bingo-game .ticket-head span:nth-child(2){color:#dabbe5}
html body #app #pl-bingo-game .ticket-head span:nth-child(3){color:#f5b7c9}
html body #app #pl-bingo-game .ticket-head span:nth-child(4){color:#a0d9bc}
html body #app #pl-bingo-game .grid{background:#674728!important;gap:3px!important;padding:3px!important}
html body #app #pl-bingo-game .grid>button.cell{background:linear-gradient(135deg,#fffdf2,#f6eedc 62%,#e3d2aa)!important;color:#281c30!important;border:1px solid #d5bb88!important;border-radius:4px!important;box-shadow:inset 1px 1px #fff,inset -1px -2px #c4a36c!important;font-weight:700!important;text-shadow:0 1px #fff8;isolation:isolate}
html body #app #pl-bingo-game .grid>button.cell.hit{background:radial-gradient(circle at 43% 36%,#fff1b5 0%,#efcd76 22%,#be842e 38%,#986020 43%,#ffe09a 46%,transparent 49%),linear-gradient(135deg,#fffdf2,#f6eedc 62%,#e3d2aa)!important;color:#382018!important}
html body #app #pl-bingo-game .grid>button.cell.hit:after{content:none!important}
html body #app #pl-bingo-game .grid>button.cell.free{background:linear-gradient(135deg,#fff5ca,#efcd76,#b98232)!important;color:#503015!important}
html body #app #pl-bingo-game .grid>button.cell.free b{color:#674014!important}
html body #app #pl-bingo-game .grid>button.cell.win{box-shadow:inset 0 0 0 2px #fff3b8,inset 0 0 9px #f5bd4c!important}
html body #app #pl-bingo-game .grid>button.cell.daub-pop{animation:luxDaub .5s ease-out!important}
html body #app #pl-bingo-game .bingo-dock{background:linear-gradient(#24162e,#110c1a)!important;border-top:var(--hairline-gold)!important}
html body #app #pl-bingo-game .actions>button{border:var(--hairline-gold)!important;border-radius:11px!important;background:var(--plum-panel)!important;box-shadow:inset 0 1px #fff5,0 2px 5px #0008!important;color:#fff0df!important}
html body #app #pl-bingo-game .actions>:is(.bingo,.next:only-child),html body #app #pl-bingo-game .actions.round-finished>.next{background:var(--gold-polish)!important;color:#291b16!important;border:1px solid #fff5ca!important;box-shadow:inset 0 2px #fffc,inset 0 -2px #986020,0 2px 5px #0009!important}
html body #app #pl-bingo-game .actions .bingo{font:700 22px Georgia,serif!important;letter-spacing:.04em!important}
html body #app #pl-bingo-game .bingo.line-ready:not(:disabled){animation:luxBingoReady 1s ease-in-out infinite}
html body #app #pl-bingo-game .actions .bingo:not(.line-ready){animation:none!important}
html body #app #pl-bingo-game .bingo-footer button{color:#e5d1e9!important}
/* Pool: atmosphere remains behind the actual WebGL table and input canvas. */
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sports-scoreboard{background:linear-gradient(120deg,#291a37,#151222)!important;border:var(--hairline-gold)!important;border-radius:12px;box-shadow:inset 0 1px #fff5ca33,0 2px 5px #0008}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sport-player img{border:1px solid #efcd76;border-radius:50%;box-shadow:0 0 0 2px #98602077}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game :is(.sport-player strong,.sport-player span,.sport-versus){font-family:Georgia,serif!important;color:#fff0bc!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sport-versus{font-size:28px}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sports-meta{color:#efcd76;border-bottom:1px solid #98602066}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-arena{background:radial-gradient(ellipse at 58% 38%,#ffdc8a12,transparent 62%),url('assets/luxury-v2466/pool-room.webp') center/100% 100% no-repeat!important;border:var(--hairline-gold)!important;border-radius:12px;box-shadow:inset 0 0 12px #0006!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sports-stake-chip{background:#0b0d19ee;border:var(--hairline-gold);border-radius:7px;backdrop-filter:none!important;color:#fff0bc}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-power-rail{background:linear-gradient(#1e1728f5,#0c0c16ed)!important;border:var(--hairline-gold)!important;box-shadow:inset 0 1px #fff6,0 3px 7px #0009;backdrop-filter:none!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-power-rail :is(span,output){color:#fff0bc!important;font-family:Georgia,serif}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-power-rail input{accent-color:#efcd76}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-fine-control{background:linear-gradient(#25182eea,#0d101be8)!important;border:var(--hairline-gold);border-radius:10px}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-fine-control>button{background:transparent!important;color:#fff0bc!important;font-family:Georgia,serif!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-fine-control>button small{color:#d9c2df!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-shot-dock>button:not(.sports-primary){border-radius:12px!important;background:linear-gradient(#25182e,#0d101b)!important;border:var(--hairline-gold)!important;color:#efcd76!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-shot-dock>.sports-primary{background:var(--gold-polish)!important;border:1px solid #fff5ca!important;border-radius:12px!important;box-shadow:inset 0 2px #fffa,inset 0 -2px #986020,0 3px 6px #0008!important;color:#291b16!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-shot-dock>.sports-primary>span{font:700 24px/1 Georgia,serif;letter-spacing:.07em}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-shot-dock>.sports-primary:disabled{background:linear-gradient(#302b37,#17151f)!important;color:#c2b7c7!important;border-color:#776780!important;box-shadow:inset 0 1px #fff2!important;opacity:1!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .pool-shot-dock>.sports-primary:disabled>small{color:#c2b7c7!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game .sports-tools button{background:linear-gradient(#21162b,#0c101a)!important;border:var(--hairline-gold)!important;border-radius:8px!important;color:#fff0bc!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game :is(.sports-status,.pool-aim-info){background:linear-gradient(90deg,#080e1900,#0a0e19ee 15% 85%,#080e1900)!important;color:#fff0bc!important;text-shadow:0 1px 2px #000;border-block:1px solid #98602066}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game :is(.pool-arena,.sports-pause-tint,.sports-result,.sports-hit-toast) *{backdrop-filter:none!important}
html body.portrait-play #app .game-scene.scene-pool #pl-pool-game :is(.sports-panel,.pool-pocket-picker){background:linear-gradient(145deg,#2a1a3a,#0e101b)!important}
@keyframes luxDaub{0%{filter:brightness(1.8);transform:scale(.9)}45%{filter:brightness(1.3);transform:scale(1.06)}100%{filter:brightness(1);transform:none}}
@keyframes luxBingoReady{50%{box-shadow:inset 0 2px #fffc,0 0 14px #efcd7688}}
@media(prefers-reduced-motion:reduce){html body #app #pl-bingo-game *,html body.portrait-play #app .game-scene.scene-pool #pl-pool-game *{animation:none!important;transition:none!important}}

/* Compact the decorative header, retaining 44px tiles and the pinned action dock. */
html body #app #pl-bingo-game .room{padding:6px 12px 0!important;min-height:45px!important}
html body #app #pl-bingo-game .room h2{font-size:20px!important}
html body #app #pl-bingo-game .wager-bar{margin:5px 10px 0!important;padding:6px 10px!important;min-height:50px!important}
html body #app #pl-bingo-game .wager-bar strong{font-size:19px!important;margin-top:2px!important}
html body #app #pl-bingo-game .stage{height:145px!important;min-height:145px!important;margin:3px 5px 0!important}
html body #app #pl-bingo-game .call-panel{top:8px!important;right:10%!important}
html body #app #pl-bingo-game .call-ball{width:85px!important;height:85px!important;margin:7px auto 5px!important;padding:8px!important}
html body #app #pl-bingo-game .call-face{width:65px!important;height:65px!important}
html body #app #pl-bingo-game .history{min-height:34px!important;padding:4px 9px!important;margin:3px 10px 0!important}
html body #app #pl-bingo-game .card-bar{margin:5px 10px!important}
html body #app #pl-bingo-game .ticket-head{font-size:21px!important;line-height:24px!important;padding:2px 0!important}
html body #app #pl-bingo-game .grid>button.cell{height:44px!important;min-height:44px!important;font-size:24px!important}
html body #app #pl-bingo-game .fallback{inset:0!important;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;transform:none!important;box-shadow:none!important;background:url('assets/luxury-v2466/bingo-fallback.webp') center/cover!important}
html body #app #pl-bingo-game .fallback:before,html body #app #pl-bingo-game .fallback:after,html body #app #pl-bingo-game .fallback i,html body #app #pl-bingo-game .plinth{display:none!important}

html body.portrait-play #app #pl-pool-game :is(.sports-pause-tint,.sports-result,.sports-hit-toast){backdrop-filter:none!important}
