/* Fit the complete machine, including its controls, below the site header. */
.gates-page{container-type:inline-size}
.gates-stage{height:var(--slot-available-height,calc(100svh - 160px));max-height:calc(100cqw * 999 / 1777 + 107px);display:flex;flex-direction:column}
.gates-scene{flex:1 1 0;min-height:0;aspect-ratio:auto}
.gates-controls{flex:0 0 auto}
.gates-logo{width:min(18cqw,32cqh);top:max(43px,10cqh)}
.gates-stage:fullscreen{height:100dvh;max-height:none}

.topx-skin .fortune-stage.slot-machine:not(:fullscreen){width:min(100%,480px,calc(var(--slot-available-height,calc(100svh - 180px)) / 1.778));max-width:none}

.topx-skin .fiesta-stage.slot-machine:not(:fullscreen){--slot-height:min(800px,var(--slot-available-height,calc(100svh - 160px)));height:var(--slot-height);min-height:0;display:flex;flex-direction:column;justify-content:flex-start}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar{height:80px;min-height:0;flex:0 0 80px;padding-top:6px}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar>.fiesta-logo{height:74px;width:220px;top:0}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar>.local-game-wordmark{font-size:27px}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-playfield{flex:1 1 0;min-height:0;height:auto;padding-top:0;padding-bottom:0}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-reels-shell{max-width:min(100%,calc((var(--slot-height) - 230px) * var(--reel-aspect)));margin-bottom:24px}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-controls{height:86px;min-height:0;flex:0 0 86px;margin-top:0}
.topx-skin .fiesta-stage:not(:fullscreen) .fiesta-side{min-height:0;max-height:100%;overflow:hidden}

@media(max-width:760px){
 .topx-skin .fiesta-stage.slot-machine:not(:fullscreen){--slot-height:min(780px,var(--slot-available-height,calc(100svh - 170px)))}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar{height:88px;flex-basis:88px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar>.fiesta-logo{height:65px;width:200px;top:2px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-reels-shell{max-width:min(100%,calc((var(--slot-height) - 300px) * var(--reel-aspect)))}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-controls{height:116px;flex-basis:116px;padding-top:8px;padding-bottom:8px}
}
@media(max-width:600px){
 .gates-stage{max-height:calc(100cqw / .86 + 91px)}
 .gates-logo{width:43%;top:2%}
 .gates-stage:fullscreen{max-height:none}
}
@media(min-width:601px) and (max-height:700px){
 .gates-zeus{height:64%}
}
/* Keep the scene proportions on short laptops instead of stretching empty scenery. */
.gates-stage:not(:fullscreen){width:min(100%,calc((var(--slot-available-height,calc(100svh - 160px)) - 107px) * 1777 / 999));margin:0 auto}
@media(max-width:600px){.gates-stage:not(:fullscreen){width:100%}}
@media(max-width:600px){
 .gates-stage:not(:fullscreen){width:min(100%,calc((var(--slot-available-height,calc(100svh - 170px)) - 91px) * .86))}
 .gates-aside{top:23.5%}
 .gates-buy button{font-size:clamp(8px,2.7cqw,10px);padding:1.4cqw 2cqw}
 .gates-buy small{font-size:clamp(7px,2.4cqw,9px)}
 .gates-utility .icon-button{width:clamp(24px,7.5cqw,29px);height:clamp(24px,7.5cqw,29px)}
}
@media(max-width:600px){.gates-aside{top:22%}}
@media(max-width:760px) and (max-height:720px){
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-topbar{height:74px;flex-basis:74px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-reels-shell{max-width:min(100%,calc((var(--slot-height) - 252px) * var(--reel-aspect)))}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-controls{height:78px;flex-basis:78px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 62px minmax(0,1fr);gap:8px;padding:8px 10px;position:relative}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-balance{grid-area:1/1;min-width:0}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-bet{grid-area:1/2;min-width:0;padding:0;border:0;background:none}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-spin{grid-area:1/3;width:58px;height:58px;min-width:0;min-height:0;padding:0;border-radius:50%;gap:0}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-spin>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-spin kbd{display:none}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-spin .icon{width:29px;height:29px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-last-win{grid-area:1/4;text-align:left;min-width:0;align-self:center}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-last-win>strong{justify-content:flex-start}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-controls>div>strong{font-size:15px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-bet>div{gap:1px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-bet button{width:21px;height:28px;font-size:23px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-auto{position:absolute;right:10px;bottom:2px;width:21px;height:21px;min-width:0;min-height:0;border:0;background:none;grid-area:auto;padding:0}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-auto .icon{width:12px;height:12px}
 .topx-skin .fiesta-stage:not(:fullscreen) .fiesta-auto>span{display:none}
}
.slot-landscape-back{display:none}
/* Landscape phones have their own game layout, with controls on the right. */
@media(orientation:landscape) and (max-height:500px) and (max-width:1100px){
 body.tx-slot-game .sidebar,body.tx-slot-game .header,body.tx-slot-game .footer,body.tx-slot-game .tx-mobile-nav,body.tx-slot-game .game-page-heading,body.tx-slot-game .fortune-toolbar,body.tx-slot-game .game-underbar,body.tx-slot-game .fortune-underbar,body.tx-slot-game .game-description,body.tx-slot-game .recent-spins,body.tx-slot-game .local-version-note{display:none!important}
 body.tx-slot-game .main-shell{margin:0;padding:0}
 body.tx-slot-game main{padding:0;margin:0;max-width:none;min-height:0}
 body.tx-slot-game .game-page,body.tx-slot-game .gates-page,body.tx-slot-game .fortune-page{margin:0}
 body.tx-slot-game .slot-landscape-back{position:fixed;top:8px;left:8px;display:grid;place-items:center;width:28px;height:28px;background:#24192bd9;border:1px solid #e9d29266;border-radius:50%;color:#fff0bc;z-index:25}
 .slot-landscape-back svg{width:17px;height:17px}
 .tx-slot-game .gates-stage:not(:fullscreen){display:grid;grid-template-columns:minmax(0,1fr) 110px;grid-template-rows:minmax(0,1fr);width:100%;height:100svh;max-height:none;margin:0;border:0;border-radius:0}
 .tx-slot-game .gates-scene{width:100%;height:100%;min-width:0;grid-area:1/1;aspect-ratio:auto}
 .tx-slot-game .gates-board{left:13%;top:50%;bottom:auto;width:min(73cqw,132cqh);transform:translateY(-50%)}
 .tx-slot-game .gates-logo{left:auto;right:0;top:43px;width:min(19cqw,32cqh)}
 .tx-slot-game .gates-zeus{height:62%;top:auto;bottom:0;right:-2%;mask-image:none}
 .tx-slot-game .gates-utility{position:fixed;top:7px;right:5px;left:auto;display:grid;grid-template-columns:repeat(4,23px);gap:3px;max-width:none;z-index:20}
 .tx-slot-game .gates-utility .icon-button{width:23px;height:23px}.tx-slot-game .gates-utility .icon{width:13px;height:13px}
 .tx-slot-game .gates-aside{left:.5%;top:22%;width:12%;height:auto;flex-direction:column;gap:12px}
 .tx-slot-game .gates-buy button{font-size:clamp(7px,1.35cqw,10px);padding:6px 3px}.tx-slot-game .gates-buy small{font-size:7px;margin-top:3px}
 .tx-slot-game .gates-multiplier span,.tx-slot-game .gates-feature-counter small{font-size:8px}.tx-slot-game .gates-multiplier strong{font-size:15px}.tx-slot-game .gates-feature-counter strong{font-size:28px}.tx-slot-game .gates-feature-counter>span{font-size:8px}
 .tx-slot-game .gates-announcement{font-size:clamp(8px,1.5cqw,11px);white-space:normal;padding-bottom:1%}
 .tx-slot-game .gates-controls{grid-area:1/2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:43px 8px 8px;min-height:0;height:100%;border:0;border-left:1px solid #d9bc6960}
 .tx-slot-game .gates-controls>div>span{font-size:7px;text-align:center;margin-bottom:3px;letter-spacing:.5px}
 .tx-slot-game .gates-controls strong{font-size:18px;line-height:1.1;overflow-wrap:normal;white-space:nowrap}
 .tx-slot-game .gates-bet>div{gap:3px}.tx-slot-game .gates-bet button{width:22px;height:25px;font-size:23px}
 .tx-slot-game .gates-spin.spin-button{width:58px;height:58px;min-width:0;min-height:0;flex:none}.tx-slot-game .gates-spin .icon{width:33px;height:33px}
 .tx-slot-game .gates-win{align-self:auto;margin:0;text-align:center}.tx-slot-game .gates-auto{position:static;width:25px;height:25px;flex:none}.tx-slot-game .gates-auto .icon{width:13px;height:13px}.tx-slot-game .gates-auto span{display:none}
 .topx-skin.tx-slot-game .fortune-stage.slot-machine:not(:fullscreen){width:calc((100svh - 4px) / 1.778);max-width:100%;margin:2px auto;border:0;border-radius:0}
 .topx-skin.tx-slot-game .fiesta-stage.slot-machine:not(:fullscreen){--slot-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) 110px;grid-template-rows:55px 20px minmax(0,1fr);width:100%;height:100svh;min-height:0;max-height:none;border:0;border-radius:0}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-topbar{grid-area:1/1;height:55px;min-height:0;padding:0 40px}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-topbar>.fiesta-logo{width:170px;height:52px;top:0}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-topbar>.local-game-wordmark{font-size:23px;padding:8px 0 0}
 .topx-skin.tx-slot-game .fiesta-topbar .slot-top-actions{position:fixed;top:7px;right:5px;bottom:auto;display:grid;grid-template-columns:repeat(4,23px);gap:3px;z-index:20;flex-direction:row}
 .topx-skin.tx-slot-game .fiesta-topbar .slot-top-actions .icon-button{width:23px;height:23px}
 .topx-skin.tx-slot-game .fiesta-topbar .slot-top-actions .icon{width:13px;height:13px}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-announcement{grid-area:2/1;min-height:0;height:20px;margin:0;padding:0 6px;font-size:8px;line-height:20px}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-playfield{grid-area:3/1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;padding:0 8px}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-side{display:none}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-reels-shell{max-width:min(94%,calc((100svh - 117px) * var(--reel-aspect)));margin:0 auto 24px}
 .topx-skin.tx-slot-game .fiesta-stage:not(:fullscreen) .fiesta-controls{grid-area:1/2/4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;min-height:0;margin:0;padding:40px 6px 42px;border:0;border-radius:0;border-left:1px solid #e5c08855}
 .topx-skin.tx-slot-game .fiesta-controls>div{width:100%;min-width:0;text-align:center;padding:0;border:0;background:none}
 .topx-skin.tx-slot-game .fiesta-controls>div>span{font-size:7px;letter-spacing:.4px}
 .topx-skin.tx-slot-game .fiesta-controls>div>strong{justify-content:center;white-space:nowrap;overflow-wrap:normal;font-size:16px;margin-top:2px}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-bet>div{justify-content:center;gap:3px}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-bet button{width:23px;height:25px;font-size:23px}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-spin{width:55px;height:55px;min-width:0;min-height:0;flex:none;padding:0;border-radius:50%}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-spin>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-spin .icon{width:29px;height:29px}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-spin kbd{display:none}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-auto{position:static;width:21px;height:21px;min-width:0;min-height:0;flex:none;padding:0;border:0;background:none}
 .topx-skin.tx-slot-game .fiesta-controls .fiesta-auto .icon{width:12px;height:12px}.topx-skin.tx-slot-game .fiesta-controls .fiesta-auto span{display:none}
 .topx-skin.tx-slot-game .fiesta-mobile-feature{position:absolute;right:5px;bottom:5px;width:100px;display:flex;padding:0;z-index:16}
 .topx-skin.tx-slot-game .fiesta-mobile-feature button{width:100%;font-size:7px;line-height:1.3;padding:5px 3px;min-height:26px;gap:3px;flex-wrap:wrap}
 .topx-skin.tx-slot-game .fiesta-mobile-feature button .icon{display:none}
 .topx-skin.tx-slot-game .fiesta-mobile-feature #mobile-feature-progress{font-size:7px;text-align:center;line-height:1.4}
 .tx-slot-game .feature-overlay{padding:8px}.tx-slot-game .feature-dialog{max-height:calc(100% - 12px)}
}
