/* Dedicated tables keep the lobby's chrome, with room for each game to breathe. */
[hidden]{display:none!important}
body.playing #lobby-view{display:none}
body.playing{--game-accent:#ffe078;--game-glow:#805424;--game-tint:#312137}
body.playing[data-game=rocket]{--game-accent:#dbc0ff;--game-glow:#603589;--game-tint:#281c3d}
body.playing[data-game=double]{--game-accent:#ffb9d2;--game-glow:#883b61;--game-tint:#341a30}
body.playing[data-game=mines]{--game-accent:#a4f3e6;--game-glow:#246a66;--game-tint:#192d32}
body.playing[data-game=plinko]{--game-accent:#ffdf93;--game-glow:#77518d;--game-tint:#30203c}
body.playing[data-game=blackjack]{--game-accent:#c5edb5;--game-glow:#367452;--game-tint:#1a302b}
body.playing[data-game=roulette]{--game-accent:#ffcca2;--game-glow:#8d5140;--game-tint:#33212f}

#game-page{padding-bottom:34px;min-width:0}
.game-breadcrumb{display:flex;align-items:center;gap:13px;min-height:44px;margin:0 0 14px;color:#a995bd;font-size:12px;line-height:1.5}
.game-breadcrumb a{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;color:#e2d4ed;min-height:40px}
.game-breadcrumb a:hover{color:var(--game-accent)}
.game-breadcrumb svg{width:17px;height:17px}
.game-breadcrumb [aria-current]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.game-page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:234px;border:1px solid #ffffff18;border-radius:16px;background:linear-gradient(110deg,#281634,var(--game-tint));box-shadow:inset 0 -2px 0 #ffffff06}
.game-page-hero:after{content:'';position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,var(--game-accent),transparent 72%);opacity:.65}
.game-page-hero-copy{position:relative;z-index:2;width:67%;padding:27px 30px 28px}
.game-page-tag{display:flex;align-items:center;gap:8px;margin:0 0 9px;font-size:12px;font-weight:600;color:var(--game-accent)}
.game-page-tag:before{content:'';height:7px;width:7px;border-radius:50%;background:var(--game-accent);box-shadow:0 0 13px var(--game-accent)}
#game-page-title{font:800 italic clamp(46px,4.2vw,66px)/.99 var(--display);letter-spacing:-.6px;margin:0;color:#fff1d7;text-shadow:2px 3px 0 #170d2380;text-wrap:balance;max-width:18ch;outline-offset:7px}
.game-page-description{max-width:47ch;color:#d5c3de;font-size:14px;line-height:1.65;margin:13px 0 17px;text-wrap:pretty}
.game-facts{display:flex;flex-wrap:wrap;gap:7px}
.game-facts span{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border:1px solid #ffffff1c;border-radius:5px;background:#140b2399;color:#d9c9e5;font-size:10px;line-height:1.35}
.game-page-cover{position:absolute;z-index:0;inset:0 0 0 auto;width:48%;height:100%;object-fit:cover;object-position:50% 40%;mask-image:linear-gradient(90deg,transparent,#000 32%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 32%)}

.game-page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 3px 13px}
.table-label{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:#efe2f7}
.table-label:before{content:'✦';color:var(--game-accent);font-size:17px}
.table-notice{font-size:11px;color:#a48caf;text-align:right;line-height:1.5}
#game-content{position:relative;isolation:isolate;padding:24px;border:1px solid #ffffff15;border-radius:18px;background:#1b1227;box-shadow:0 16px 55px #09041022;overflow:hidden;text-align:left}
#game-content .game-layout{grid-template-columns:minmax(0,1fr) 300px;gap:26px;align-items:start}
#game-content .game-stage{min-width:0;scroll-margin-top:22px}
#game-content .game-controls{padding:20px;border:1px solid #b98acd25;background:linear-gradient(155deg,#2b1a3c,#1e122c);border-radius:12px;box-shadow:0 4px 19px #10081b55}
.controls-heading{font:700 26px/1.1 var(--display);color:#fff0cf;margin:0 0 8px}
.controls-description{font-size:12px;line-height:1.6;color:#bda6cf;margin:0 0 16px}
#game-content .meme-reaction{gap:11px;min-height:70px;margin-bottom:19px;padding-bottom:18px}
#game-content .meme-reaction img{width:48px;height:48px;border-color:var(--game-accent)}
#game-content .meme-line{font-size:14px;line-height:1.5;color:#e4c8fb}
#game-content .stake-picker{margin-bottom:21px}
#game-content .stake-picker legend,#game-content .color-picker legend,#game-content .mine-setting,#game-content .roulette-picker legend{color:#d9c7e7;font-size:13px}
#game-content .stake-button{min-height:45px;font-size:16px}
#game-content .stake-button.selected{background:#71459e;border-color:#cda1f0}
#game-content .game-action{min-height:55px;font-size:14px;line-height:1.45}
#game-content .game-controls .game-result{min-height:82px;margin:20px 0 13px;color:#c9b4d9}
#game-content .game-result strong{font-size:29px;letter-spacing:.1px;margin-top:8px}
#game-content .inline-credit{min-height:40px;font-size:12px}
#game-content .cash-preview{padding:14px;margin-bottom:19px}
#game-content .cash-preview strong{font-size:37px}
#game-content .color-choice{font-size:12px;min-height:64px}
#game-content .color-choice b{font-size:22px}
#game-content .roulette-choice.roulette-zero{min-height:46px}
#game-content .mine-setting select{min-height:44px;margin-bottom:19px}
#game-content .session-history{padding:17px 2px 0}
#game-content .session-history>span{color:#bba3ce;font-size:11px;margin-bottom:9px}
#game-content .history-pill{min-height:29px;min-width:35px;font-size:12px}
#game-content #round-history{min-width:0;max-width:100%;scrollbar-width:thin;scrollbar-color:#63467a transparent}
#game-content .history-empty{line-height:1.7}

/* Bigger tables preserve the coordinates used by the animated games. */
#game-content .slots-cabinet{padding:22px;border-radius:17px;box-shadow:inset 0 0 0 4px #a474393a,0 0 28px #ad6d2614}
#game-content .cabinet-title{font-size:23px;padding:1px 0 18px;letter-spacing:1.2px}
#game-content .slot-window,#game-content .slot-column{height:300px}
#game-content .slot-cell{height:100px;font-size:57px}
#game-content .slot-payline-note{font-size:12px;margin:16px 0 12px}
#game-content .slot-prizes{gap:25px}
#game-content .slot-prizes span{font-size:27px}
#game-content .slot-prizes b{font-size:17px}
#game-content .crash-stage{height:430px;border-radius:14px}
#game-content .flight-readout{top:42px}
#game-content .flight-readout strong{font-size:105px}
#game-content .flight-readout span{font-size:14px}
#game-content .flight-plane{font-size:52px}
#game-content .flight-axis{font-size:11px;bottom:13px;left:18px}
#game-content .double-stage{height:430px;padding-top:45px}
#game-content .double-emblem{font-size:85px}
#game-content .double-lane{height:118px;margin-top:26px}
#game-content .double-track{top:27px}
#game-content .double-lane:before{top:24px;bottom:24px}
#game-content .double-outcome{font-size:29px;margin-top:31px}
#game-content .mines-stage{padding:24px 26px 20px}
#game-content .mines-grid{max-width:375px;gap:9px}
#game-content .mine-cell{font-size:31px;border-radius:9px}
#game-content .mine-progress{max-width:375px;margin-top:17px;font-size:13px}
#game-content .mine-progress strong{font-size:34px}
#game-content .plinko-stage{height:430px;aspect-ratio:auto}
#game-content .plinko-table-label{font-size:10px;top:3.5%}
#game-content .plinko-pin{width:8px;height:8px;margin:-4px}
#game-content .plinko-ball{width:17px;height:17px}
#game-content .plinko-pocket{font-size:14px}
#game-content .plinko-outcome{font-size:21px;margin-top:14px}
#game-content .blackjack-stage{padding:23px 25px 19px;min-height:430px}
#game-content .blackjack-hand-heading{font-size:11px;min-height:27px}
#game-content .blackjack-hand-heading strong{font-size:20px}
#game-content .blackjack-hand{min-height:109px;gap:8px}
#game-content .blackjack-card{width:66px;height:94px;flex-basis:66px}
#game-content .blackjack-corner{font-size:16px}
#game-content .blackjack-suit{font-size:36px}
#game-content .blackjack-table-mark{font-size:22px;padding:11px 0 16px;letter-spacing:5px}
#game-content .blackjack-table-mark>span{font-size:34px}
#game-content .blackjack-table-mark small{font-size:10px}
#game-content .blackjack-empty{padding:33px 12px}
#game-content .blackjack-actions{margin-top:14px;gap:11px}
#game-content .blackjack-actions button{min-height:48px;font-size:13px}
#game-content .blackjack-turn{margin-top:13px;font-size:12px}
#game-content .roulette-stage{padding:18px 20px 19px;min-height:430px}
#game-content .roulette-wheel-wrap{width:min(100%,365px)}
#game-content .roulette-outcome{margin-top:13px;font-size:23px}

#game-content .game-rules{display:grid;grid-template-columns:200px minmax(0,1fr);gap:25px;border-top:1px solid #ffffff16;margin-top:27px;padding-top:25px}
#game-content .game-rules h2{font:700 26px/1.1 var(--display);margin:3px 0 0;color:#ead9f5;max-width:14ch}
#game-content .game-rules p{font-size:12px;color:#b9a6c8;line-height:1.8;margin:0 0 12px;max-width:85ch}
#game-content .game-rules p:last-child{margin-bottom:0}
.related-games{margin:35px 0 0;padding-top:3px}
.related-games h2{font-size:22px;font-weight:800;letter-spacing:-.5px;margin:0 0 7px}
.related-games>div>p{font-size:13px;line-height:1.6;margin:0 0 17px;color:#a994bd}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.related-game{display:flex;align-items:center;gap:13px;padding:9px;border:1px solid #ffffff14;border-radius:10px;background:#21162f;min-width:0;transition:border-color .18s,background .18s}
.related-game:hover{background:#30213f;border-color:#ae81d4}
.related-game>img{width:86px;height:72px;object-fit:cover;object-position:center 38%;border-radius:6px;flex-shrink:0}
.related-game>span{display:block;min-width:0;padding-right:6px}
.related-game b{display:block;font-size:13px;line-height:1.4;font-weight:700;color:#f0e4f7}
.related-game small{display:block;margin-top:5px;font-size:11px;line-height:1.4;color:#b3a0c4}

@media(min-width:1700px){
  #game-page-title{font-size:72px}
  .game-page-hero-copy{padding:31px 36px}
  #game-content{padding:30px}
  #game-content .game-layout{gap:32px}
  #game-content .mines-grid,#game-content .mine-progress{max-width:400px}
  #game-content .crash-stage,#game-content .double-stage,#game-content .plinko-stage{height:455px}
}
@media(max-width:1200px){
  .game-page-hero-copy{padding:25px;width:69%}
  #game-page-title{font-size:54px}
  .game-page-description{font-size:13px;max-width:39ch}
  #game-content{padding:19px}
  #game-content .game-layout{grid-template-columns:minmax(0,1fr) 280px;gap:20px}
  #game-content .game-controls{padding:16px}
  #game-content .slots-cabinet{padding:17px}
  #game-content .slot-cell{font-size:49px}
  #game-content .slot-prizes{gap:18px}
  #game-content .mines-stage{padding:20px 17px}
  #game-content .blackjack-stage{padding-inline:18px}
  #game-content .game-rules{grid-template-columns:165px minmax(0,1fr);gap:20px}
  .related-grid{gap:10px}
  .related-game{gap:10px}
  .related-game>img{width:67px;height:69px}
  .related-game b{font-size:12px}
}
@media(max-width:900px){
  .game-page-hero-copy{width:71%}
  #game-page-title{font-size:49px}
  #game-content .game-layout{grid-template-columns:minmax(0,1fr) 255px;gap:17px}
  #game-content .game-controls{padding:14px}
  #game-content .meme-line{font-size:12px}
  #game-content .meme-reaction img{width:41px;height:41px}
  #game-content .slot-window,#game-content .slot-column{height:264px}
  #game-content .slot-cell{height:88px;font-size:42px}
  #game-content .cabinet-title{font-size:20px;letter-spacing:.5px}
  #game-content .slot-prizes{gap:16px}
  #game-content .slot-prizes span{font-size:24px}
  #game-content .blackjack-card{width:58px;height:84px;flex-basis:58px}
  #game-content .roulette-stage{min-height:0;padding-inline:12px}
  #game-content .roulette-outcome{font-size:20px}
  .related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .related-game{display:block;padding:8px}
  .related-game>img{width:100%;height:99px}
  .related-game>span{padding:8px 3px 4px}
}
@media(max-width:700px){
  .game-breadcrumb{margin-bottom:11px;gap:10px;font-size:11px}
  .game-page-hero{min-height:223px;border-radius:12px}
  .game-page-hero-copy{width:72%;padding:23px 20px}
  #game-page-title{font-size:45px;max-width:14ch}
  .game-page-cover{width:49%;object-position:54% 40%;opacity:.8;mask-image:linear-gradient(90deg,transparent,#000 50%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 50%)}
  .game-page-tag{font-size:10px;margin-bottom:10px}
  .game-page-description{font-size:12px;line-height:1.55;max-width:32ch;margin:12px 0 14px}
  .game-facts{gap:5px}
  .game-facts span{font-size:9px;min-height:23px;padding:4px 6px}
  .game-page-toolbar{padding-top:20px;gap:12px}
  .table-label{font-size:13px;flex-shrink:0}
  .table-notice{font-size:10px;max-width:22ch}
  #game-content{padding:14px;border-radius:13px}
  #game-content .game-layout{grid-template-columns:minmax(0,1fr);gap:20px}
  #game-content .game-stage{scroll-margin-top:16px}
  #game-content .game-controls{position:static;padding:18px}
  #game-content .meme-reaction{min-height:0;margin-bottom:17px;padding-bottom:15px}
  #game-content .meme-reaction img{width:42px;height:42px}
  #game-content .meme-line{font-size:13px}
  #game-content .stake-picker{margin-bottom:18px}
  #game-content .stake-button{min-height:44px}
  #game-content .game-action{min-height:51px}
  #game-content .game-controls .game-result{min-height:57px;margin:18px 0 12px}
  #game-content .game-result strong{font-size:27px}
  #game-content .stage-quick-action{display:block;margin-top:12px}
  #game-content .slots-cabinet{padding:17px}
  #game-content .slot-window,#game-content .slot-column{height:264px}
  #game-content .slot-cell{height:88px;font-size:47px}
  #game-content .slot-prizes{gap:24px}
  #game-content .slot-prizes span{font-size:25px}
  #game-content .slot-payline-note{font-size:11px}
  #game-content .crash-stage{height:330px}
  #game-content .flight-readout{top:29px}
  #game-content .flight-readout strong{font-size:86px}
  #game-content .flight-readout span{font-size:12px}
  #game-content .flight-plane{font-size:44px}
  #game-content .double-stage{height:318px;padding-top:23px}
  #game-content .double-emblem{font-size:65px}
  #game-content .double-lane{margin-top:19px}
  #game-content .double-outcome{font-size:24px;margin-top:20px}
  #game-content .mines-stage{padding:18px}
  #game-content .mines-grid{max-width:365px;gap:7px}
  #game-content .mine-cell{font-size:28px}
  #game-content .mine-progress{max-width:365px;font-size:12px}
  #game-content .plinko-stage{height:auto;aspect-ratio:1.05;max-height:430px}
  #game-content .plinko-table-label{font-size:9px}
  #game-content .plinko-pocket{font-size:12px}
  #game-content .plinko-outcome{font-size:18px;line-height:1.4}
  #game-content .blackjack-stage{min-height:0;padding:18px}
  #game-content .blackjack-hand{min-height:108px}
  #game-content .blackjack-card{width:64px;height:91px;flex-basis:64px}
  #game-content .blackjack-table-mark{padding:10px 0 17px}
  #game-content .blackjack-hand-heading{font-size:10px}
  #game-content .blackjack-table-mark small{font-size:9px}
  #game-content .roulette-stage{padding:15px 12px 16px}
  #game-content .roulette-wheel-wrap{max-width:355px}
  #game-content .roulette-outcome{font-size:21px}
  #game-content .roulette-picker>div{grid-template-columns:repeat(4,minmax(0,1fr))}
  #game-content .roulette-choice{font-size:11px}
  #game-content .roulette-choice.roulette-zero{grid-column:1/-1}
  #game-content .session-history{padding-top:14px}
  #game-content .game-rules{grid-template-columns:minmax(0,1fr);gap:13px;margin-top:23px;padding-top:21px}
  #game-content .game-rules h2{font-size:25px;max-width:none;margin:0}
  #game-content .game-rules p{font-size:12px;line-height:1.75}
  .related-games{margin-top:28px}
  .related-games h2{font-size:21px}
  .related-games>p{font-size:12px}
  .related-grid{gap:10px}
  .related-game>img{height:98px}
  .related-game small{font-size:10px}
}
@media(max-width:450px){
  .game-page-hero-copy{width:80%;padding:20px 17px}
  #game-page-title{font-size:42px;max-width:12ch}
  .game-page-description{max-width:25ch}
  .game-page-cover{width:58%;object-position:51% 40%;opacity:.65}
  .game-facts{max-width:27ch}
  .game-page-toolbar{align-items:flex-start}
  .table-notice{max-width:17ch;font-size:9px}
  #game-content{padding:10px}
  #game-content .game-controls{padding:15px}
  #game-content .slots-cabinet{padding:12px}
  #game-content .cabinet-title{font-size:18px;padding-bottom:13px}
  #game-content .slot-window,#game-content .slot-column{height:228px}
  #game-content .slot-cell{height:76px;font-size:40px}
  #game-content .slot-prizes{gap:19px}
  #game-content .slot-prizes span{font-size:22px}
  #game-content .slot-prizes b{font-size:15px}
  #game-content .slot-payline-note{font-size:10px}
  #game-content .crash-stage{height:293px}
  #game-content .flight-readout strong{font-size:79px}
  #game-content .double-stage{height:296px;padding-top:22px}
  #game-content .double-emblem{font-size:55px}
  #game-content .double-outcome{font-size:22px}
  #game-content .mines-stage{padding:12px}
  #game-content .mines-grid{gap:6px}
  #game-content .mine-cell{font-size:24px}
  #game-content .mine-progress{font-size:11px;gap:8px}
  #game-content .mine-progress strong{font-size:30px}
  #game-content .plinko-pocket{font-size:10px}
  #game-content .plinko-table-label{font-size:8px;letter-spacing:.4px}
  #game-content .plinko-pin{width:7px;height:7px;margin:-3.5px}
  #game-content .plinko-ball{width:15px;height:15px}
  #game-content .blackjack-stage{padding:15px 12px}
  #game-content .blackjack-hand{gap:6px;min-height:101px}
  #game-content .blackjack-card{width:56px;height:81px;flex-basis:56px}
  #game-content .blackjack-corner{font-size:14px}
  #game-content .blackjack-suit{font-size:31px}
  #game-content .blackjack-hand-heading{font-size:9px;letter-spacing:.6px}
  #game-content .blackjack-table-mark{padding-bottom:13px}
  #game-content .blackjack-actions button{font-size:12px}
  #game-content .blackjack-turn{font-size:11px}
  #game-content .roulette-outcome{font-size:19px}
  #game-content .roulette-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  #game-content .color-choice{font-size:11px;min-height:58px}
  #game-content .game-rules{padding:19px 4px 3px}
  .related-grid{grid-template-columns:1fr}
  .related-game{display:flex;padding:8px;gap:13px}
  .related-game>img{width:87px;height:68px}
  .related-game>span{padding:0 5px 0 0}
  .related-game b{font-size:13px}
  .related-game small{font-size:11px}
}
@media(max-width:350px){
  .game-breadcrumb{font-size:10px;gap:7px}
  #game-page-title{font-size:38px}
  .game-page-hero-copy{width:88%;padding-inline:14px}
  .game-page-description{font-size:11px}
  .game-facts span{font-size:8px}
  #game-content .slot-cell{font-size:34px}
  #game-content .slot-prizes{gap:15px}
  #game-content .cabinet-title{font-size:16px}
  #game-content .blackjack-card{width:51px;height:75px;flex-basis:51px}
  #game-content .blackjack-hand{gap:5px}
  #game-content .mine-cell{font-size:21px}
  #game-content .mine-progress{font-size:10px}
}
