/* Materiais e movimento dos dez jogos originais. */
.palco { position:relative; isolation:isolate; overflow:hidden; }
.palco-dice,.palco-limbo,.palco-coin { background:radial-gradient(ellipse at 50% 35%,#263e5966,transparent 64%),#0d1826; }
.dice-display { position:relative; padding:34px 0 42px; }
.dice-display::before { content:'NÚMERO SORTEADO'; display:block; color:#7990ac; font-size:10px; font-weight:600; letter-spacing:2.5px; margin-bottom:20px; }
.dice-num { font-size:clamp(60px,7vw,112px); letter-spacing:-5px; text-shadow:0 8px 25px #0005; font-weight:800; }
.dice-num.win,#limboNum.win { color:#b7f34c; text-shadow:0 0 45px #b7f34c25; }
.dice-num.loss,#limboNum.loss { color:#ff7289; text-shadow:0 0 35px #ff728920; }
.dice-trilho-wrap { width:100%; padding:0 13px; }
.dice-trilho { height:22px; border:4px solid #2a3a50; background:#b7445b; box-shadow:0 8px 22px #0004,inset 0 2px 5px #0005; }
.dice-zona { top:0; bottom:0; background:linear-gradient(90deg,#81b63d,#b7f34c); box-shadow:none; }
.dice-alvo { top:-10px; bottom:-10px; width:3px; background:#c7d8e9; }
.dice-alvo b { color:#b7c8dc; top:-26px; font-size:12px; }
.dice-cursor { width:20px; height:32px; top:-9px; margin-left:-10px; border:3px solid #eef3fb; border-radius:6px; background:#425a76; box-shadow:0 3px 0 #0c1527,0 4px 15px #0008; }
.dice-cursor.win { background:#9acb46; box-shadow:0 2px 14px #b7f34c50; }.dice-cursor.loss { background:#e75472; box-shadow:0 2px 14px #ff5d7730; }
.dice-escala { padding-top:14px; color:#6e839d; }
#diceRange { padding:0 10px; margin:0; }#diceRange::-webkit-slider-runnable-track { background:#23364e; border:0; }#diceRange::-webkit-slider-thumb { background:#e1eaf6; border:3px solid #4e6380; border-radius:6px; }
.palco-dice.em-rodada .dice-num { filter:drop-shadow(0 0 20px #ccdfff28); }
.palco-dice .historico { justify-content:center; }
.limbo-display { position:relative; width:100%; min-height:280px; justify-content:center; margin-bottom:25px; }
.limbo-display::before { content:''; position:absolute; width:230px; height:230px; border-radius:50%; border:1px solid #37516c; box-shadow:0 0 0 18px #22364b35,0 0 0 40px #22364b1c,inset 0 0 70px #213c5244; z-index:-1; }
.limbo-display::after { content:''; position:absolute; width:230px; height:230px; border-radius:50%; background:conic-gradient(from -90deg,transparent 0deg,#c8f78788 calc(var(--limbo-progress,0) * 300deg),transparent calc(var(--limbo-progress,0) * 300deg + 3deg)); mask:radial-gradient(transparent 69%,#000 70%); z-index:-1; }
#limboNum { font-size:clamp(30px,4.8vw,80px); font-weight:800; letter-spacing:-2px; white-space:nowrap; text-shadow:0 5px 24px #0008; }
.palco-limbo .resultado-slot { margin:0; }
.palco-crash { background:radial-gradient(ellipse at 65% 30%,#19375055,transparent 68%),#0a1523; }
.crash-hud { padding:12px 10px 6px; flex-direction:column; align-items:center; gap:8px; }
.crash-num { font-size:clamp(48px,6vw,88px); letter-spacing:-3px; font-weight:800; }
.crash-tag { color:#93a8c4; font-size:11px; padding:5px 11px; border:1px solid #2e435d; border-radius:20px; background:#182a40; }
#crashCv { height:330px; border-radius:10px; background:linear-gradient(0deg,#142b3a20,transparent); }
.palco-crash .historico { justify-content:center; }
.coin-cena { height:230px; position:relative; }
.coin-cena::after { content:''; position:absolute; width:155px; height:25px; bottom:9px; left:50%; transform:translateX(-50%); border-radius:50%; background:#0006; filter:blur(9px); z-index:-1; }
.moeda { width:170px; height:170px; }
.moeda .face { border:8px double #9e6f24; background:radial-gradient(circle at 30% 24%,#fff0a9,#dfb44c 44%,#977025 95%); box-shadow:0 0 0 2px #f5d77b,0 0 0 6px #72521d,0 13px 22px #0006,inset 0 0 0 4px #fceaa444,inset 0 -10px 25px #5e3b2144; }
.moeda .face::after { content:''; position:absolute; inset:11px; border:1px dashed #8d682b88; border-radius:50%; }
.moeda .face svg { width:76px; height:76px; filter:drop-shadow(0 2px 0 #ffe9a9); }
.moeda .face svg path { fill:#80571f; }.moeda .face.coroa b { font:800 51px var(--f-corpo); color:#80571f; text-shadow:0 2px #ffe9a9; }
.coin-botoes .btn { background:#203148; border:1px solid #3f5570; color:#dce6f7; font-size:13px; box-shadow:0 3px #070f1b; }
.coin-botoes .btn:hover { background:#304665; border-color:#d7b566; }
.palco-mines { background:radial-gradient(ellipse at 50% 20%,#26443944,transparent 70%),#0d1a25; }
.mn-grade { width:min(460px,100%); gap:10px; padding:12px; border:1px solid #293e4c; border-radius:16px; background:#0a141f; box-shadow:0 22px 40px #0004; }
.mn-cel { position:relative; padding:20%; background:linear-gradient(150deg,#31475b,#213447); border:1px solid #3e566d; border-bottom:4px solid #152435; border-radius:10px; box-shadow:inset 0 1px 0 #a3c6e01a,0 3px 4px #0005; }
.mn-cel:empty::before { content:''; width:20%; aspect-ratio:1; border:2px solid #6e879f40; border-radius:3px; transform:rotate(45deg); }
.mn-cel:hover:not(:disabled) { background:linear-gradient(150deg,#45647d,#2b455c); border-color:#66879e; transform:translateY(-3px); }
.mn-cel.ok { background:radial-gradient(#628e363f,#172d2d); border-color:#6f9854; border-bottom-color:#345536; box-shadow:inset 0 0 28px #9aca4520,0 3px 4px #0005; animation:tileReveal .36s cubic-bezier(.2,.8,.2,1) both; }
.mn-cel.ok svg { filter:drop-shadow(0 3px 8px #b7f34c66); }.mn-cel.boleto { background:#382535; border-color:#744053; }
.mn-cel.boom { background:#6c273c; border-color:#fc6c88; animation:tileBurst .35s; }
.palco-tower { background:radial-gradient(ellipse at 50% 0,#493a5b44,transparent 70%),#111a2b; }
.tw-torre { width:min(430px,100%); gap:8px; padding:18px 14px 16px 6px; border:1px solid #354052; border-radius:13px; background:linear-gradient(180deg,#1e263846,#0a1421a8); box-shadow:0 15px 35px #0003; }
.tw-andar { gap:8px; opacity:.45; }.tw-andar.ativo { opacity:1; }
.tw-mult { width:65px; font-size:11px; color:#b6c4db; padding-right:3px; }
.tw-cel { height:42px; background:linear-gradient(150deg,#32445c,#203147); border-color:#4c5e76; border-bottom:3px solid #111e31; border-radius:7px; box-shadow:0 2px 4px #0005; }
.tw-andar.ativo .tw-cel:not(:disabled) { border-color:#9caf74; background:linear-gradient(150deg,#3c553f,#2b4038); box-shadow:0 0 13px #b7f34c0d; }
.tw-andar.ativo .tw-mult { color:#d7f7a8; }
.tw-cel.ok { background:#4a6c37; border-color:#b7f34c; color:#e0ffbb; animation:tileReveal .3s ease-out; }.tw-cel.bomba { background:#422936; color:#e77990; }.tw-cel.boom { background:#793448; border-color:#ff8099; }
.palco-plinko { background:radial-gradient(ellipse at 50% 25%,#283a572d,transparent 70%),#0c1725; justify-content:center; }
#plCv { height:450px; background:radial-gradient(ellipse at 50% 90%,#edb34b0c,transparent 50%); }
.palco-roleta { background:radial-gradient(ellipse at 50% 40%,#2354496b,transparent 85%),#10262a; }
.rl-topo { justify-content:center; padding:10px 0 15px; gap:28px; }
#rlCv { flex:none; border-radius:50%; box-shadow:0 0 0 3px #624f34,0 0 0 6px #c4a96f,0 0 0 10px #263333,0 12px 25px #0007; }
.rl-lado { max-width:210px; }.rl-num { font-size:68px; font-weight:800; letter-spacing:-2px; }
.rl-mesa { grid-auto-rows:39px; gap:4px; }.rl-cel { border-radius:4px; background:#162a30; border-color:#69827266; font-family:var(--f-corpo); font-size:12px; }
.rl-cel.verm { background:#8c3046; border-color:#c5748766; }.rl-cel.zero { background:#366447; }.rl-cel.lado,.rl-cel.faixa { background:#1d3b37; color:#bfd3c7; }
.rl-cel.venceu { box-shadow:0 0 0 2px #e8c475,0 0 14px #e8c47555; border-color:#f9d98e; }
.rl-badge { background:#e6c474; color:#3b2816; border:2px dashed #877145; font-size:10px; min-width:21px; min-height:21px; display:grid; place-items:center; }
.rl-badge[hidden] { display:none; }
.palco-slots { background:radial-gradient(ellipse at 50% 36%,#3c343f66,transparent 68%),#141b28; justify-content:center; }
.sl-maquina { width:min(440px,100%); border-radius:19px; padding:22px 20px; background:linear-gradient(130deg,#655339,#211e22 14%,#47404a 45%,#232029 80%,#9d8050); border:2px solid #b6975c; box-shadow:0 0 0 5px #1e1c28,0 0 0 6px #786348,0 18px 35px #0009,inset 0 1px 3px #ffecb864; }
.sl-janela { background:#ded7c7; border:3px solid #0d111c; border-radius:9px; gap:4px; box-shadow:0 0 0 1px #c9a868; }
.sl-reel { background:linear-gradient(90deg,#ddd7c5,#fffbea 50%,#e6deca); }.sl-cel svg { width:61px; height:61px; filter:drop-shadow(0 3px 1px #342a2520); }
.sl-janela::before { background:linear-gradient(180deg,#161327a8,transparent); height:43px; }.sl-janela::after { background:linear-gradient(0deg,#161327a8,transparent); height:43px; }
.sl-linhas polyline.on { stroke:#f3a82c; filter:drop-shadow(0 0 3px #fadd86); stroke-width:4; }
.sl-paytable { margin-top:8px; }.sl-pay { background:#1f2735; border-color:#3a4053; color:#97a6be; }.sl-pay b { color:#edce8b; }
.palco-rasp { background:radial-gradient(ellipse at 50% 40%,#53503230,transparent 75%),#121c2a; }
.rs-cartela { width:min(405px,100%); transform:rotate(-2deg); border-radius:14px; overflow:hidden; background:linear-gradient(130deg,#f3e8c9,#d3c28f); border:1px solid #f7e8ac; box-shadow:0 20px 35px #0006; }
.rs-cartela::before,.rs-cartela::after { display:none; }.rs-cabeca { padding:21px 17px 14px; color:#5c492b; }.rs-cabeca b { font:800 15px var(--f-corpo); letter-spacing:-.4px; }
.rs-area { margin:0 15px 18px; }.rs-cel { border:1px solid #aa9461; background:#fff4d080; }.rs-cel b { color:#564223; }
.rs-cartela.ganhou { box-shadow:0 18px 30px #0006,0 0 0 2px #e7cb65,0 0 50px #f6d74b1c; }
.forra-cartao.papelzinho { background:radial-gradient(ellipse at 50% 0,#72572544,transparent 70%),#152033; color:#eaf1fa; border:1px solid #947546; border-radius:18px; box-shadow:0 20px 100px #0009; }
.forra-cartao.papelzinho::before,.forra-cartao.papelzinho::after { display:none; }.forra-nome { color:#f5ce70; font-family:var(--f-corpo); letter-spacing:1px; }.forra-valor { color:#fff0bd; text-shadow:0 0 30px #e8ad3b22; }.forra-mult { color:#adc590; }.forra-tarja { background:#0c1625; color:#8b9eb5; border-color:#304259; }
@keyframes tileReveal { from { transform:scale(.78) rotateY(60deg); filter:brightness(1.5); } to { transform:scale(1); filter:brightness(1); } }
@keyframes tileBurst { 30% { transform:scale(1.13); filter:brightness(1.7); } 65% { transform:scale(.96); } }
@media(max-width:760px) {
  .jogo-grid .palco-dice,.jogo-grid .palco-limbo { min-height:260px; gap:14px; }
  .dice-display { padding:5px 0 24px; }.dice-display::before { margin-bottom:12px; }.dice-num { font-size:66px; }
  .palco-dice .resultado-slot:has(.resultado-linha:empty),.palco-limbo .resultado-slot:has(.resultado-linha:empty),.palco-dice .historico:empty,.palco-limbo .historico:empty { display:none; }
  .limbo-display { min-height:230px; margin-bottom:0; }.limbo-display::before,.limbo-display::after { width:190px; height:190px; }
  .coin-cena { height:210px; }.moeda { width:145px; height:145px; }.moeda .face.coroa b { font-size:44px; }
  .mn-grade { gap:8px; padding:9px; max-width:410px; }.mn-cel { border-radius:8px; }
  .tw-torre { padding:12px 10px 12px 0; gap:7px; }.tw-cel { height:36px; }.tw-mult { width:60px; font-size:10px; }
  #plCv { height:370px; }#crashCv { height:260px; }.rl-topo { flex-direction:row; gap:22px; flex-wrap:wrap; }.rl-lado { align-items:center; max-width:none; flex-basis:100%; }.rl-num { font-size:43px; }.rl-scroll { width:100%; }
  .sl-maquina { width:min(410px,calc(100% - 12px)); padding:16px 12px; }.sl-cel svg { width:54px; height:54px; }
  .rs-cartela { width:min(360px,calc(100% - 10px)); }.rs-cabeca b { font-size:13px; }
}
