/* Recorded-device corrections. Native playing objects occupy a clear, still felt. */
html body.portrait-play #app .game-scene.realistic-table{background:radial-gradient(ellipse at top,#30271a55,#050809c9)!important}
html body.portrait-play #app .game-scene.realistic-table>.table-cinema{filter:blur(10px) brightness(.25)!important;opacity:.3!important}
html body.portrait-play #app :is(.bjstage,.poker-table,.dom-board-scroll,.scene-spades>.table){background:radial-gradient(ellipse at 48% 35%,#24231f,#101310 75%)!important}
html body.portrait-play #app .dom-board-scroll{box-shadow:inset 0 0 0 2px #c0a26655,inset 0 0 32px #0008!important}
/* Old seat grid coordinates must not survive inside the new opponent rail. */
html body.portrait-play.poker-screen #app .portrait-opponent-rail{width:100%!important;display:grid!important;grid-template-columns:repeat(var(--opponent-count,5),minmax(0,1fr))!important;grid-auto-flow:row!important;align-items:stretch!important;gap:5px!important;padding:12px 0 3px!important;min-height:96px!important;flex:none!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat{grid-column:auto!important;grid-row:auto!important;inset:auto!important;position:relative!important;transform:none!important;width:100%!important;max-width:none!important;min-height:76px!important;padding:4px 2px!important;align-self:stretch!important;justify-self:stretch!important;border-radius:12px!important;background:linear-gradient(#262a24,#101512)!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat.acting{border:2px solid #ffe59b!important;box-shadow:0 0 10px #e6bf5b55!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat strong{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat b{font-size:14px!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat-action{font-size:9px!important;min-height:13px!important;line-height:1.25!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat-bet{font-size:10px!important;position:static!important;display:block!important;margin:3px auto 0!important;padding:1px 3px!important;min-height:0!important}
html body.portrait-play.poker-screen #app .poker-info{display:flex!important;justify-content:space-between!important;flex-wrap:nowrap!important;font-size:12px!important;min-height:22px!important;white-space:nowrap!important}
html body.portrait-play.poker-screen #app .poker-table{border-radius:42px!important;padding:12px 9px 10px!important;gap:10px!important;overflow:hidden!important}
html body.portrait-play.poker-screen #app .poker-center{justify-content:center!important;gap:7px!important}
html body.portrait-play.poker-screen #app .poker-table-wordmark{font-size:25px!important;color:#d8bd81!important;opacity:.6!important}
html body.portrait-play.poker-screen #app .poker-pot{font-size:21px!important;line-height:1.25!important;padding:5px!important;background:#080c0a99!important;border-radius:20px!important;color:#ffe4a5!important}
html body.portrait-play.poker-screen #app .poker-private-hand>small{font-size:11px!important;color:#f3d995!important}
html body.portrait-play.poker-screen #app .poker-status{font-size:14px!important;line-height:1.25!important;min-height:25px!important;margin:3px 0!important}
html body.portrait-play.poker-screen #app .poker-action-buttons button{min-height:44px!important;font-size:14px!important}
html body.portrait-play.poker-screen #app .poker-wallet-note{font-size:10px!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Gentle arrival for a newly dealt card; existing cards never restart a flight. */
html body.portrait-play #app .card.piece-reveal{animation:card-arrive-v36 .22s ease-out both!important;animation-delay:var(--reveal-delay,0ms)!important}
@keyframes card-arrive-v36{from{opacity:0;transform:translateY(-12px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
html body.portrait-play #app .bjstage{border:1px solid #9c86543d!important;border-radius:28px!important;padding:8px 5px!important;overflow:hidden!important}
html body.portrait-play #app .bjstage .cardrow{overflow:visible!important}
html body.portrait-play #app .bjstage .cardrow .card{transition:none!important}
html body.portrait-play #app .blackjack-table .tableactions button{min-height:44px!important;font-size:14px!important}
/* Reels stay visible through every win. The balance has room for six digits. */
html body.portrait-play.slot-screen #app .scene-slots .slot-machine{background:linear-gradient(#10120fee,#080c0df5)!important;gap:6px!important}
html body.portrait-play.slot-screen #app .scene-slots .guardian-scene{opacity:.09!important}
html body.portrait-play.slot-screen #app .scene-slots .cabinet-atmosphere{opacity:.10!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-play-area{justify-content:flex-start!important;gap:6px!important;flex:1 1 auto!important;overflow:hidden!important}
html body.portrait-play.slot-screen #app .scene-slots .reel-frame{flex:0 1 auto!important;min-height:125px!important;border-width:4px!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-message{font-size:12px!important;line-height:1.25!important;min-height:20px!important;padding:2px!important;text-align:center!important;flex:none!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration{position:relative!important;inset:auto!important;transform:none!important;flex:none!important;width:100%!important;min-height:0!important;height:46px!important;max-height:46px!important;margin:0!important;padding:4px 10px!important;display:flex!important;align-items:center!important;gap:8px!important;background:linear-gradient(100deg,#2d2131,#151810)!important;border:1px solid #bea361!important;z-index:3!important;overflow:hidden!important;box-shadow:none!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration :is(.celebration-art,.celebration-video,video,img,.mascot-full-body){display:none!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration strong{font-size:17px!important;line-height:1.1!important;white-space:nowrap!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-big-win{position:relative!important;inset:auto!important;transform:none!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:38px!important;padding:3px 6px!important;flex:none!important;background:linear-gradient(100deg,#59412588,#261b2c88)!important;border:1px solid #d3b66866!important;border-radius:10px!important;font-size:12px!important;overflow:hidden!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-big-win strong{font-size:25px!important;line-height:1!important;white-space:nowrap!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-big-win small{display:none!important}
html body.portrait-play.slot-screen #app .scene-slots .winning-lines{min-height:28px!important;height:28px!important;font-size:10px!important;display:flex!important;align-items:center!important;gap:7px!important;flex:none!important;overflow-x:auto!important;overflow-y:hidden!important;white-space:nowrap!important}
html body.portrait-play.slot-screen #app .scene-slots .winning-lines button{min-height:25px!important;font-size:11px!important;padding:2px 7px!important;flex:none!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:42px 51px!important;gap:5px 8px!important;min-height:106px!important;padding:5px 8px!important;flex:none!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console>.console-stat:first-child{grid-column:1!important;grid-row:1!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console>.console-stat:nth-of-type(3){grid-column:2!important;grid-row:1!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console>.bet-switch{grid-column:1!important;grid-row:2!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console>.slot-spin{grid-column:2!important;grid-row:2!important;min-height:48px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console .console-stat{min-width:0!important;padding:0!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console .console-stat strong{font-size:clamp(18px,5vw,25px)!important;white-space:nowrap!important;overflow-wrap:normal!important;line-height:1.1!important;display:block!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-console .console-stat small{font-size:9px!important;letter-spacing:.08em!important}
html body.portrait-play.slot-screen #app .scene-slots .spin-net{font-size:10px!important;line-height:1!important}
html body.portrait-play.slot-screen #app .scene-slots .bet-switch>span{font-size:10px!important}
html body.portrait-play.slot-screen #app .scene-slots .bet-switch button{width:36px!important;min-height:40px!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-spin strong{font-size:24px!important;line-height:1!important;white-space:nowrap!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-spin small{font-size:10px!important;white-space:nowrap!important}
html body.portrait-play.slot-screen #app .scene-slots .vault-utilities button,html body.portrait-play.slot-screen #app .scene-slots .cash-tools button{min-height:38px!important;font-size:11px!important}
html body.portrait-play.slot-screen #app .scene-slots .progressive-meter strong{font-size:clamp(14px,3.8vw,20px)!important;white-space:nowrap!important;letter-spacing:0!important}
html body.portrait-play.slot-screen #app .scene-slots .progressive-meter small{font-size:9px!important;letter-spacing:.03em!important}
/* Full-screen bonus text must remain readable, with the actual scene contained. */
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .unique-hud strong{font-size:clamp(15px,4.3vw,22px)!important;line-height:1.2!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .unique-actions button{min-height:48px!important;font-size:12px!important;line-height:1.2!important;padding:6px 5px!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .unique-rule{font-size:11px!important;line-height:1.3!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .clear-action-frame :is(video,.signature-motion){object-fit:contain!important;object-position:center!important;background:#080c10!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .cinema-result strong{font-size:18px!important;line-height:1.2!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .cinema-objective strong{font-size:18px!important;line-height:1.15!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .bonus-choices{gap:8px!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .bonus-choices button strong{font-size:13px!important;line-height:1.2!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-machine .vault-bonus-overlay .bonus-choices button small{font-size:11px!important;line-height:1.25!important}
html body.portrait-play.slot-screen #app .scene-slots .bonus-wheel{background:var(--wheel-segments)!important;border:7px ridge #d4b365!important;box-shadow:inset 0 0 0 2px #2a1f15,0 4px 24px #0009!important}
html body.portrait-play.slot-screen #app .scene-slots .wheel-value{font:800 clamp(15px,4.2vw,22px)/1 system-ui!important;color:#fff3c7!important;text-shadow:0 2px 2px #000!important;min-width:50px!important;text-align:center!important}
html body.portrait-play.slot-screen #app .scene-slots .wheel-hub{width:23%!important;height:23%!important;background:#101610!important;border:3px solid #d2b06b!important;border-radius:50%!important;box-shadow:0 2px 12px #0008!important}
html body.portrait-play.slot-screen #app .scene-slots .wheel-hub :is(img,.slot-symbol,.wheel-hub-art){display:none!important}
html body.portrait-play.slot-screen #app .scene-slots .wheel-hub>b{display:grid!important;place-items:center!important;font:italic 700 30px Georgia!important;color:#f6dc99!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-column{background:linear-gradient(90deg,#0c0f10,#29261b 50%,#0c0f10)!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-inferno-column{background:radial-gradient(ellipse,#b62536,#3d0716 80%)!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-machine .cash-stage{flex:1 1 auto!important;min-height:170px!important;max-height:44dvh!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-drum-window{aspect-ratio:1/1.2!important;width:100%!important;max-width:160px!important;margin:auto!important;left:0!important;right:0!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-held{font-size:11px!important;letter-spacing:.1em!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-feature-counter{font-size:13px!important;line-height:1.2!important}
html body.portrait-play.slot-screen #app .scene-slots .cash-console small{font-size:10px!important}
/* Fallback dice remain easy to read and the last roll remains visible. */
html body.portrait-play #app .craps-table .casino-status{font-size:14px!important;line-height:1.3!important;min-height:35px!important;color:#f9e4ad!important}
html body.portrait-play #app .casino-recap{font-size:13px!important;line-height:1.3!important}
@media(max-height:680px){html body.portrait-play.slot-screen #app .scene-slots .vault-console{min-height:95px!important;grid-template-rows:36px 46px!important}html body.portrait-play.slot-screen #app .scene-slots .guardian-title{height:44px!important;min-height:44px!important}html body.portrait-play.slot-screen #app .scene-slots .vault-play-area{gap:3px!important}html body.portrait-play.slot-screen #app .scene-slots .slot-celebration{height:35px!important;max-height:35px!important}html body.portrait-play.slot-screen #app .scene-slots .slot-big-win{min-height:30px!important}html body.portrait-play.slot-screen #app .scene-slots .vault-utilities button{min-height:34px!important}html body.portrait-play.poker-screen #app .portrait-opponent-rail{min-height:80px!important}html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat{min-height:65px!important}html body.portrait-play #app .poker-table-wordmark{font-size:21px!important}}
@media(prefers-reduced-motion:reduce){html body.portrait-play #app .card.piece-reveal{animation:none!important}}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration .celebration-scene{display:none!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration .celebration-caption{position:static!important;inset:auto!important;transform:none!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex:1!important;padding:0 20px 0 0!important;background:none!important;text-align:center!important}
html body.portrait-play.slot-screen #app .scene-slots .slot-celebration .celebration-caption small{font-size:9px!important;letter-spacing:.06em!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat .poker-hole{display:flex!important;justify-content:center!important;gap:2px!important;min-height:32px!important;margin:3px 0 0!important}
html body.portrait-play.poker-screen #app .portrait-opponent-rail .poker-seat .poker-hole .card{--playing-card-w:19px!important;pointer-events:none!important}
html body.portrait-play.poker-screen #app .poker-game.poker-showdown .portrait-opponent-rail .poker-seat:not(.folded) .poker-hole .card{--playing-card-w:25px!important}
