/* DMG Voice V4.0.0 - Chess PRO + Tombala PRO + Wheel */
.gameRuleFlash{position:fixed;z-index:1200;left:50%;top:18%;transform:translate(-50%,-50%);padding:4px;border-radius:20px;background:linear-gradient(135deg,#d5a33b,#fff1a4,#7d5420);box-shadow:0 25px 70px #000a;animation:rulePop .32s ease}.gameRuleFlash.hidden{display:none}.gameRuleFlash>div{min-width:270px;padding:20px 28px;border-radius:17px;background:#0c1420;text-align:center}.gameRuleFlash strong,.gameRuleFlash span{display:block}.gameRuleFlash strong{font-size:24px;letter-spacing:.04em}.gameRuleFlash span{font-size:10px;color:#aebdcd;margin-top:5px}.gameRuleFlash.check strong{color:#ffd85e}.gameRuleFlash.mate strong{color:#ff6a65}.gameRuleFlash.win strong{color:#7ff2a9}.gameRuleFlash.cinko strong{color:#73d7ff}@keyframes rulePop{from{opacity:0;transform:translate(-50%,-50%) scale(.55)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
/* CHESS */
.chessProWrap{position:relative;width:min(920px,100%);margin:auto;min-height:650px;padding:72px 190px 72px 70px;background:radial-gradient(circle at 45% 35%,#2a2320,#0b1016 64%);border-radius:22px;overflow:hidden}.chessWoodFrame{width:min(620px,68vh);aspect-ratio:1;padding:13px;border-radius:22px;background:linear-gradient(145deg,#6d3d25,#2c180f 40%,#7a4a2e);box-shadow:inset 0 0 0 3px #9f6846,0 25px 50px #0009}.chessProBoard{display:grid;grid-template-columns:repeat(8,1fr);width:100%;height:100%;border:2px solid #2a150c}.chessProSq{position:relative;border:0;display:grid;place-items:center;font-size:clamp(28px,4.3vw,55px);line-height:1;cursor:pointer;text-shadow:0 3px 2px #0005;transition:.12s}.chessProSq.light{background:#c7a17d}.chessProSq.dark{background:#774a38}.chessProSq:hover{box-shadow:inset 0 0 0 4px #fff5}.chessProSq.selected{box-shadow:inset 0 0 0 5px #4ee2a0;background:#92834d}.chessProSq.last:after{content:'';position:absolute;inset:5px;border:3px solid #f1c743aa;border-radius:5px}.chessProSq.kingCheck{animation:kingDanger .75s infinite alternate;background:#a23b38}.chessProSq i,.chessProSq em{position:absolute;font-size:7px;font-style:normal;font-weight:900;opacity:.7}.chessProSq i{left:3px;top:3px}.chessProSq em{right:3px;bottom:3px}@keyframes kingDanger{to{box-shadow:inset 0 0 25px #ff1f1f,0 0 18px #ff2828}}
.chessPlayer{position:absolute;left:80px;display:flex;align-items:center;gap:9px;min-width:190px;padding:8px 12px;border-radius:15px;background:#0b1723e8;border:1px solid #ffffff18;box-shadow:0 10px 25px #0006}.chessPlayer.top{top:10px}.chessPlayer.bottom{bottom:10px}.chessPlayer.active{border-color:#49e699;box-shadow:0 0 20px #49e69933}.chessPlayer .avatar{width:42px;height:42px}.chessPlayer b,.chessPlayer small{display:block}.chessPlayer b{font-size:10px}.chessPlayer small{font-size:7px;color:#9db0c5}.chessSide{position:absolute;right:18px;top:90px;width:160px;display:flex;flex-direction:column;gap:10px}.chessStateBox,.chessRuleBadges{padding:12px;border-radius:14px;background:#0b1621;border:1px solid #ffffff16}.chessStateBox b,.chessStateBox span{display:block}.chessStateBox b{font-size:12px;color:#f6d267}.chessStateBox span{font-size:7px;color:#a9b9c9;margin-top:5px}.chessRuleBadges{display:grid;gap:6px}.chessRuleBadges span{font-size:7px;color:#bcc9d6}
/* TOMBALA */
.tombalaPro{width:min(1040px,100%);margin:auto;padding:18px;border-radius:22px;background:linear-gradient(160deg,#15243a,#08111c);border:1px solid #ffffff13}.tombalaPro header{display:flex;align-items:center;gap:14px;padding:12px 15px;border-radius:16px;background:linear-gradient(90deg,#173d63,#12263c)}.tombalaPro h2{margin:0;font-size:22px;color:#f6d15e}.tombalaPro p{margin:3px 0 0;font-size:8px;color:#b2c4d5}.tbBall{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fff,#e8e8e8 38%,#a6a6a6);color:#10151c;font-weight:1000;box-shadow:0 5px 12px #0006}.tbBall.big{width:65px;height:65px;font-size:24px;border:4px solid #dfaf3e}.tbProgress{margin-left:auto;text-align:center}.tbProgress b,.tbProgress span{display:block}.tbProgress b{font-size:17px}.tbProgress span{font-size:6px;color:#9caec1}.tbBody{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;margin-top:14px}.tbTicket{padding:14px;border-radius:17px;background:linear-gradient(#f5d78f,#d79b38);box-shadow:0 12px 30px #0005}.tbTicketHead{font-size:8px;font-weight:1000;color:#704318;margin-bottom:8px}.tbGrid{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(3,70px);gap:4px}.tbProCell{position:relative;display:grid;place-items:center;border-radius:8px;background:#fff9e9;border:2px solid #d2b37e;color:#17202b}.tbProCell b{font-size:23px}.tbProCell.blank{background:#c89140;border-color:#bd8230}.tbProCell.drawn{background:#d7f9e5;border-color:#25b56b;box-shadow:inset 0 0 0 2px #fff}.tbProCell.drawn i{position:absolute;right:3px;top:2px;color:#159653;font-size:9px}.tbProCell.rowDone{animation:rowGlow .9s infinite alternate}@keyframes rowGlow{to{box-shadow:0 0 18px #64f0ac,inset 0 0 0 2px #34c47d}}.tbClaimBar{display:flex;gap:8px;margin-top:12px}.tbClaims{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.tbClaims span{padding:5px 8px;border-radius:999px;background:#101d2a;font-size:7px}.tbBody aside{padding:12px;border-radius:16px;background:#0a151f;border:1px solid #ffffff10}.tbBody aside>b{font-size:8px;color:#92a6bb}.tbBallHistory{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:9px;max-height:330px;overflow:auto}.tbBallHistory .last{background:radial-gradient(circle at 32% 28%,#fff7bf,#f0b52d 55%,#9e6614);transform:scale(1.08)}
/* WHEEL */
.wheelPro{width:min(1120px,100%);margin:auto;padding:18px;border-radius:23px;background:radial-gradient(circle at 25% 40%,#26305b,#11152a 52%,#080d17);border:1px solid #ffffff16;min-height:650px}.wheelTop{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.wheelTop>div:first-child>span{font-size:8px;padding:4px 8px;border-radius:999px;background:#6f4bd9;color:#fff}.wheelTop h2{font-size:18px;margin:8px 0 0}.wheelScores{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.wheelScore{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:6px;min-width:150px;padding:6px 8px;border-radius:12px;background:#0c1723;border:1px solid #ffffff14}.wheelScore.active{border-color:#58e6a2;box-shadow:0 0 16px #58e6a222}.wheelScore .avatar{width:32px;height:32px}.wheelScore b,.wheelScore small{display:block}.wheelScore b{font-size:8px}.wheelScore small{font-size:5px;color:#8395aa}.wheelScore strong{font-size:11px;color:#ffd05b}.wheelMain{display:grid;grid-template-columns:390px minmax(0,1fr);gap:22px;align-items:center;margin-top:25px}.wheelArea{position:relative;display:grid;place-items:center}.wheelDisc{position:relative;width:330px;height:330px;border-radius:50%;background:conic-gradient(#7049e8 0 30deg,#e84c5c 30deg 60deg,#e6a52d 60deg 90deg,#1c9ed9 90deg 120deg,#21a66c 120deg 150deg,#bd4ebc 150deg 180deg,#e87526 180deg 210deg,#3f6ed9 210deg 240deg,#e34d79 240deg 270deg,#26a89c 270deg 300deg,#9370e8 300deg 330deg,#c79d31 330deg);border:12px solid #e0b345;box-shadow:0 20px 45px #0008,inset 0 0 0 7px #493113}.wheelDisc:after{content:'★';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(#f4d476,#a97622);color:#5c3b0c;font-size:32px;border:6px solid #fff1ae}.wheelDisc span{position:absolute;left:50%;top:50%;font-size:9px;font-weight:1000;color:#fff;transform:rotate(calc(var(--i)*30deg + 15deg)) translateY(-135px) rotate(calc(var(--i)*-30deg - 15deg));transform-origin:center;text-shadow:0 2px 2px #0008}.wheelDisc.spinFx{animation:wheelSpin .95s cubic-bezier(.16,.75,.24,1)}@keyframes wheelSpin{from{transform:rotate(0)}to{transform:rotate(1080deg)}}.wheelPointer{position:absolute;z-index:3;top:-15px;color:#ffcf47;font-size:30px;text-shadow:0 4px 4px #000}.wheelArea>button{margin-top:15px;border:0;border-radius:13px;padding:12px 24px;background:linear-gradient(#7a54f2,#5630c7);color:#fff;font-weight:1000;cursor:pointer}.wheelArea>button:disabled{opacity:.4}.wheelLast{font-size:8px;margin-top:7px;color:#9dafc2}.wheelPuzzle{padding:18px;border-radius:20px;background:#0b1420;border:1px solid #ffffff12}.wheelPattern{min-height:115px;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;border-radius:14px;background:#f4eee0;color:#151515;font-family:Georgia,serif;font-weight:1000;font-size:clamp(20px,3vw,34px);letter-spacing:.15em;line-height:1.7}.wheelActionText{text-align:center;font-size:8px;color:#9ab0c6;margin:8px 0}.wheelKeyboard{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.wheelKeyboard button{height:35px;border-radius:7px;border:1px solid #ffffff13;background:#182436;color:#fff;font-weight:900;cursor:pointer}.wheelKeyboard button.good{background:#167749}.wheelKeyboard button.bad{background:#6a2630}.wheelKeyboard button:disabled{opacity:.4}.wheelGuess{display:flex;gap:7px;margin-top:10px}.wheelGuess input{flex:1;min-width:0;border:1px solid #ffffff18;background:#0a111a;color:#fff;border-radius:10px;padding:10px}
@media(max-width:980px){.chessProWrap{padding:62px 8px 150px;min-height:100dvh}.chessWoodFrame{width:min(94vw,620px);margin:auto}.chessPlayer{left:12px}.chessSide{left:12px;right:12px;top:auto;bottom:68px;width:auto;display:grid;grid-template-columns:1fr 1fr auto}.chessRuleBadges{display:none}.tbBody{grid-template-columns:1fr}.tbBody aside{max-height:180px}.tbGrid{grid-template-rows:repeat(3,52px)}.tbProCell b{font-size:18px}.wheelMain{grid-template-columns:1fr}.wheelDisc{width:270px;height:270px}.wheelDisc span{transform:rotate(calc(var(--i)*30deg + 15deg)) translateY(-108px) rotate(calc(var(--i)*-30deg - 15deg))}.wheelKeyboard{grid-template-columns:repeat(7,1fr)}}
@media(max-width:560px){.chessProSq{font-size:30px}.chessSide{grid-template-columns:1fr}.chessStateBox{padding:7px}.tbClaimBar{display:grid;grid-template-columns:1fr 1fr}.tbClaimBar .primary:last-child{grid-column:1/-1}.tbGrid{gap:2px;grid-template-rows:repeat(3,44px)}.tbProCell b{font-size:15px}.wheelPro{padding:9px}.wheelTop{display:block}.wheelScores{margin-top:8px;justify-content:flex-start}.wheelScore{min-width:120px}.wheelDisc{width:235px;height:235px}.wheelDisc span{font-size:7px;transform:rotate(calc(var(--i)*30deg + 15deg)) translateY(-93px) rotate(calc(var(--i)*-30deg - 15deg))}.wheelKeyboard{grid-template-columns:repeat(6,1fr)}.wheelPattern{font-size:18px}.wheelGuess{display:grid}}
