.game-hero{min-height:285px;padding:58px max(24px,calc((100% - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:32px;color:#fff;background:radial-gradient(circle at 82% 18%,#245fd766,transparent 28%),linear-gradient(135deg,#020b1b,#092f59)}.game-hero h1{font-size:40px;margin:10px 0}.game-hero p{color:#b6c8de}.game-balance{min-width:285px;padding:24px;border:1px solid #3570a8;border-radius:20px;background:#092241cc;box-shadow:0 20px 50px #0004}.game-balance small,.game-balance strong,.game-balance span{display:block}.game-balance strong{font-size:26px;margin:8px 0}.game-balance span{font-size:11px;color:#25e0b6}.game-wrap{max-width:1200px;margin:auto;padding:42px 24px 90px}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.game-card{position:relative;overflow:hidden;min-height:530px;padding:27px;border:1px solid #d6e2ef;border-radius:24px;background:#fff;box-shadow:0 16px 42px #0b315214}.game-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-90px;top:-90px;background:#1878ff15}.game-card>span{font-size:9px;letter-spacing:1.5px;color:#1780d9;font-weight:900}.game-card h2{font-size:27px;margin:10px 0}.game-card p{min-height:72px;color:#667890;line-height:1.65;font-size:13px}.game-icon{width:54px;height:54px;margin-bottom:22px;border-radius:17px;display:grid;place-items:center;color:#fff;font-weight:950;background:linear-gradient(145deg,#176cff,#20d6b0);box-shadow:0 10px 24px #167aff40}.roulette .game-icon{background:linear-gradient(145deg,#7650dc,#d350bb)}.jackpot .game-icon{background:linear-gradient(145deg,#ff9b16,#ff5b18)}.game-card form{position:absolute;left:27px;right:27px;bottom:27px;display:grid;gap:10px}.game-card label{font-size:11px;font-weight:850;color:#50637b}.game-card input[type=number],.game-card select{width:100%;margin-top:6px;padding:12px;border:1px solid #ccd9e8;border-radius:10px;background:#f8fbfe}.game-card button{padding:13px;border:0;border-radius:11px;background:linear-gradient(135deg,#176cff,#0faf8b);color:#fff;font-weight:900;cursor:pointer}.game-card button:disabled{background:#a8b6c5;cursor:not-allowed}.roulette-wheel{width:118px;height:118px;margin:10px auto 0;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#e94055 0 45deg,#101b2b 45deg 90deg,#e94055 90deg 135deg,#101b2b 135deg 180deg,#11ae7e 180deg 200deg,#e94055 200deg 270deg,#101b2b 270deg 360deg);box-shadow:inset 0 0 0 9px #fff,0 10px 28px #1b385c33;animation:wheelFloat 3s ease-in-out infinite}.roulette-wheel b{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#132841;font-size:22px}.choice-row{display:flex;gap:5px}.choice-row label{flex:1;padding:7px 3px;border:1px solid #d6e1ec;border-radius:8px;text-align:center;font-size:8px}.choice-row input{display:none}.choice-row i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:3px}.choice-row .red{background:#e94055}.choice-row .black{background:#172334}.choice-row .green{background:#12ad7e}.pool{position:relative;margin-top:30px;padding:25px 18px 18px;border-radius:16px;background:#fff5e7;border:1px solid #ffd29d;overflow:hidden}.pool strong{font-size:29px;color:#ed7b00}.pool span{color:#75869b}.pool i{position:absolute;left:0;bottom:0;height:6px;background:linear-gradient(90deg,#ff9d18,#ff5919)}.game-result{display:flex;align-items:center;gap:18px;margin-bottom:20px;padding:20px 24px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#09284e,#096e79);box-shadow:0 12px 35px #0b3f6630}.game-result strong{font-size:26px}.game-result span{flex:1}.game-result small{opacity:.72}.game-history{margin-top:22px;padding:24px;border:1px solid #d8e4ef;border-radius:20px;background:#fff;box-shadow:0 12px 34px #0a315010}.game-history h2{margin-top:0}.game-history table{width:100%;border-collapse:collapse}.game-history th,.game-history td{padding:12px;border-bottom:1px solid #e3ebf3;text-align:left;font-size:12px}.game-history th{color:#62758d;background:#f2f7fb}@keyframes wheelFloat{50%{transform:rotate(8deg) translateY(-3px)}}
@media(max-width:900px){.game-grid{grid-template-columns:1fr 1fr}.game-card:last-child{grid-column:1/-1}.game-hero{padding:42px 24px}.game-result{display:grid;gap:6px}}
@media(max-width:620px){.game-hero{display:block;min-height:auto;padding:40px 18px}.game-hero h1{font-size:31px}.game-balance{min-width:0;margin-top:24px}.game-wrap{padding:24px 14px 90px}.game-grid{grid-template-columns:1fr}.game-card,.game-card:last-child{grid-column:auto;min-height:500px}.game-history{padding:16px;overflow:auto}.game-history table{min-width:680px}.game-result{padding:17px}}
.game-platform-card{color:#10213a;border-color:#b8d6ee;background:radial-gradient(circle at 100% 0,#23d7ad22,transparent 28%),linear-gradient(145deg,#fff,#eef8ff)}.game-platform-card p{color:#60738b}.game-platform-card .platform-features span{color:#39546f;background:#e6f2fc}.game-platform-card>strong{color:#0879cf}

/* Keep the roulette wheel and controls in separate layout rows. */
.game-card.roulette{display:flex;flex-direction:column}.game-card.roulette>p{margin-bottom:5px}.game-card.roulette .roulette-wheel{flex:0 0 118px}.game-card.roulette form{position:static;margin-top:22px}.game-card.roulette .choice-row label{background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s}.game-card.roulette .choice-row label:has(input:checked){border-color:#3d8fe5;box-shadow:0 0 0 3px rgba(36,107,253,.09);transform:translateY(-1px)}
@media(max-width:620px){.game-card.roulette{min-height:555px}.game-card.roulette .roulette-wheel{margin-top:4px}.game-card.roulette form{margin-top:24px}}

/* Interactive lotto board and live jackpot stage */
.game-grid{align-items:stretch}.game-card.lotto,.game-card.jackpot{display:flex;flex-direction:column;min-height:680px}.game-card.lotto form,.game-card.jackpot form{position:static;margin-top:auto}.lotto-legend{display:flex;gap:13px;margin:0 0 10px;color:#6a7a8f;font-size:9px;font-weight:800}.lotto-legend span{display:flex;align-items:center;gap:5px}.lotto-legend i{width:8px;height:8px;border-radius:50%}.lotto-legend .mine{background:#227bff;box-shadow:0 0 8px #227bff}.lotto-legend .drawn{background:#ff7b16;box-shadow:0 0 8px #ff7b16}.lotto-board{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin-bottom:13px}.game-card .lotto-ball{position:relative;z-index:1;aspect-ratio:1;padding:0;border:1px solid #dae4ef;border-radius:50%;display:grid;place-items:center;color:#53657b;background:#f7faff;box-shadow:none;font-size:8px;font-weight:850;transition:.18s}.game-card .lotto-ball:hover{color:#126ece;border-color:#59a5ec;background:#eaf5ff;transform:scale(1.12)}.game-card .lotto-ball.is-mine{color:#fff;border-color:#2682ff;background:linear-gradient(145deg,#1b6cff,#2fb9eb);box-shadow:0 0 0 2px #fff,0 0 14px #2588ff;animation:lottoBlue 1.35s ease-in-out infinite}.game-card .lotto-ball.is-drawn{color:#fff;border-color:#ff7b17;background:linear-gradient(145deg,#ff9d19,#ff5d17);box-shadow:0 0 0 2px #fff,0 0 17px #ff741b;animation:lottoOrange .85s ease-in-out infinite}.game-card .lotto-ball.is-winner{background:linear-gradient(145deg,#ffe13b,#ff7b16);box-shadow:0 0 0 3px #fff,0 0 22px #ffae19;animation:lottoWinner .55s ease-in-out infinite alternate}.lotto-pick{height:44px;margin-bottom:9px;padding:0 13px;border:1px solid #d3e0ed;border-radius:10px;display:flex;align-items:center;justify-content:space-between;background:#f6faff}.lotto-pick small{color:#718197;font-size:10px}.lotto-pick strong{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#176cff,#22c0d6);font-size:12px}.jackpot-stage{position:relative;overflow:hidden;margin:4px 0 18px;padding:27px 18px 20px;border:1px solid #ffbf68;border-radius:20px;text-align:center;color:#fff;background:radial-gradient(circle at 50% 20%,rgba(255,174,38,.3),transparent 34%),linear-gradient(155deg,#25102f,#6b1c31 55%,#a63b18);box-shadow:inset 0 1px rgba(255,255,255,.18),0 16px 32px rgba(121,45,18,.2)}.jackpot-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.12) 48%,transparent 60%);transform:translateX(-120%);animation:jackpotShine 3.2s ease-in-out infinite}.jackpot-glow{position:absolute;left:50%;top:25px;width:150px;height:90px;transform:translateX(-50%);border-radius:50%;background:#ffb72e66;filter:blur(24px);animation:jackpotGlow 1.6s ease-in-out infinite}.jackpot-coins{position:relative;display:flex;justify-content:center;margin-bottom:7px}.jackpot-coins i{width:38px;height:38px;margin:0 -4px;border:2px solid #ffe098;border-radius:50%;display:grid;place-items:center;color:#7c3908;background:linear-gradient(145deg,#fff0a9,#f6a719);box-shadow:0 6px 14px rgba(0,0,0,.22);font-size:9px;font-style:normal;font-weight:950}.jackpot-coins i:nth-child(2){position:relative;z-index:2;transform:translateY(-7px)}.jackpot-stage>small,.jackpot-stage>strong,.jackpot-stage>b{position:relative;z-index:1;display:block}.jackpot-stage>small{color:#ffd58d;font-size:8px;letter-spacing:1.6px}.jackpot-stage>strong{margin-top:4px;font-size:34px;line-height:1.12;text-shadow:0 4px 18px rgba(0,0,0,.3)}.jackpot-stage>b{color:#ffc85b;font-size:11px}.jackpot-meter{position:relative;height:11px;margin-top:18px;border:1px solid rgba(255,255,255,.24);border-radius:99px;background:rgba(0,0,0,.25)}.jackpot-meter i{display:block;height:100%;min-width:3px;border-radius:99px;background:linear-gradient(90deg,#ff7a18,#ffe137);box-shadow:0 0 16px #ffae28}.jackpot-meter span{position:absolute;top:50%;width:17px;height:17px;border:3px solid #fff;border-radius:50%;transform:translate(-50%,-50%);background:#ffae20;box-shadow:0 0 15px #ffb52e}.jackpot-scale{display:flex;justify-content:space-between;margin-top:7px;color:#ffd8a1;font-size:8px}.jackpot-scale em{font-style:normal}.jackpot-stage>p{min-height:0;margin:14px 0 0;color:#ffe7c4;font-size:10px}.jackpot-stage>p b{color:#fff}.jackpot form select{margin-top:0}@keyframes lottoBlue{50%{box-shadow:0 0 0 2px #fff,0 0 21px #2588ff;transform:scale(1.08)}}@keyframes lottoOrange{50%{box-shadow:0 0 0 2px #fff,0 0 25px #ff741b;transform:scale(1.12)}}@keyframes lottoWinner{to{transform:scale(1.16) rotate(5deg)}}@keyframes jackpotGlow{50%{opacity:.55;transform:translateX(-50%) scale(1.18)}}@keyframes jackpotShine{55%,100%{transform:translateX(120%)}}
@media(max-width:900px){.game-card.lotto,.game-card.jackpot{min-height:660px}}
@media(max-width:620px){.game-card.lotto,.game-card.jackpot{min-height:650px}.lotto-board{gap:3px}.game-card .lotto-ball{font-size:7px}.jackpot-stage>strong{font-size:31px}}

/* Align all three game action rows and strengthen roulette choices. */
.game-card.roulette{min-height:680px}.game-card.roulette form{margin-top:auto}.game-card.roulette .choice-row{gap:8px}.game-card.roulette .choice-row label{position:relative;min-height:48px;padding:17px 5px 8px;border-width:1px;border-radius:11px;color:#26384e;background:#f8fbff;font-size:9px;font-weight:950;letter-spacing:.15px;cursor:pointer;overflow:hidden}.game-card.roulette .choice-row label:before{content:"";position:absolute;left:0;right:0;top:0;height:5px}.game-card.roulette .choice-row label:nth-child(1){border-color:#f2bdc5;background:#fff5f6}.game-card.roulette .choice-row label:nth-child(1):before{background:#ea4055}.game-card.roulette .choice-row label:nth-child(2){border-color:#bac3cf;background:#f3f5f8}.game-card.roulette .choice-row label:nth-child(2):before{background:#172334}.game-card.roulette .choice-row label:nth-child(3){border-color:#a9dfcf;background:#f0fbf7}.game-card.roulette .choice-row label:nth-child(3):before{background:#12ad7e}.game-card.roulette .choice-row label:has(input:checked){color:#10233d;border-color:#2784ea;box-shadow:0 0 0 3px rgba(39,132,234,.14),0 8px 17px rgba(15,75,130,.1);transform:translateY(-2px)}.game-card.roulette .choice-row i{width:9px;height:9px;margin-right:5px;box-shadow:0 0 0 2px #fff,0 1px 5px rgba(0,0,0,.18)}
@media(max-width:900px){.game-card.roulette{min-height:660px}}
@media(max-width:620px){.game-card.roulette{min-height:650px}.game-card.roulette form{margin-top:auto}.game-card.roulette .choice-row label{min-height:48px;font-size:9px}}

/* Larger roulette and public automatic-jackpot proof. */
.game-card.roulette .roulette-wheel{width:184px;height:184px;flex-basis:184px;margin-top:2px;box-shadow:inset 0 0 0 13px #fff,0 16px 35px rgba(27,56,92,.22)}.game-card.roulette .roulette-wheel b{width:86px;height:86px;font-size:31px}.jackpot-proof{margin:0 0 17px;border:1px solid #d9e4ef;border-radius:16px;overflow:hidden;background:#f7faff}.proof-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;color:#17314f;background:#eaf3fb;font-size:10px}.proof-head span{color:#079677;font-size:8px;font-weight:900}.proof-row{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:10px 13px;border-top:1px solid #e2eaf2}.proof-row strong{font-size:10px;color:#162b45}.proof-row small{grid-column:1/-1;color:#60758d;font-size:8px}.proof-row code{min-width:0;overflow:hidden;color:#0b77c9;font-size:8px;white-space:nowrap}.proof-row time{color:#8191a4;font-size:7px}.proof-empty{padding:18px 13px;text-align:center}.proof-empty b,.proof-empty small{display:block}.proof-empty b{font-size:10px}.proof-empty small{margin-top:4px;color:#708198;font-size:8px}.seed-commit{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 13px;border-top:1px dashed #cbd9e7;color:#6f8198;background:#fff;font-size:8px}.seed-commit code{color:#0877c7;font-size:8px}.game-card.jackpot{min-height:810px}
@media(max-width:900px){.game-card.roulette .roulette-wheel{width:170px;height:170px;flex-basis:170px}.game-card.roulette .roulette-wheel b{width:80px;height:80px}.game-card.jackpot{min-height:790px}}
@media(max-width:620px){.game-card.roulette .roulette-wheel{width:165px;height:165px;flex-basis:165px}.game-card.roulette .roulette-wheel b{width:76px;height:76px;font-size:28px}.game-card.jackpot{min-height:790px}.proof-row{padding:10px 11px}}
.proof-row time{grid-column:1/-1}.proof-row details{grid-column:1/-1;margin-top:3px}.proof-row summary{color:#0877c7;font-size:8px;font-weight:850;cursor:pointer}.proof-row details code{display:block;margin-top:5px;padding:6px;border-radius:6px;color:#39627f;background:#eef5fb;font-size:7px;line-height:1.4;overflow-wrap:anywhere;white-space:normal}.seed-commit{display:block}.seed-commit small{display:block;margin-bottom:4px}.seed-commit code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Game guide buttons and detail modal */
.game-card .game-help-btn{position:absolute;z-index:3;right:25px;top:123px;width:auto;min-height:31px;padding:6px 10px;border:1px solid #bdd5ea;border-radius:9px;display:inline-flex;align-items:center;gap:5px;color:#176fb9;background:#f1f8ff;box-shadow:none;font-size:9px;font-weight:900}.game-card .game-help-btn:hover{color:#fff;background:linear-gradient(135deg,#1676e9,#12ad91);transform:translateY(-1px)}.game-help-modal[hidden]{display:none}.game-help-modal{position:fixed;z-index:250;inset:0;padding:18px;display:grid;place-items:center;opacity:0;transition:opacity .2s}.game-help-modal.is-open{opacity:1}.game-help-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(1,10,24,.75);backdrop-filter:blur(7px)}.game-help-dialog{position:relative;width:min(520px,100%);padding:32px;border:1px solid #2f6a9a;border-radius:24px;color:#fff;background:radial-gradient(circle at 92% 0,rgba(37,213,180,.18),transparent 28%),linear-gradient(145deg,#06172f,#0a3d66);box-shadow:0 35px 90px rgba(0,0,0,.43);transform:translateY(16px) scale(.97);transition:transform .24s}.game-help-modal.is-open .game-help-dialog{transform:none}.game-help-dialog>span{color:#48dfc3;font-size:9px;font-weight:950;letter-spacing:1.6px}.game-help-dialog h2{margin:8px 0 18px;font-size:26px}.game-help-dialog ol{margin:0;padding:0;display:grid;gap:9px;list-style:none;counter-reset:guide}.game-help-dialog li{counter-increment:guide;position:relative;min-height:45px;padding:12px 12px 12px 47px;border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#d4e2f0;background:rgba(255,255,255,.055);font-size:12px}.game-help-dialog li:before{content:counter(guide);position:absolute;left:12px;top:9px;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#1776ef,#16b79b);font-size:10px;font-weight:950}.game-help-close{position:absolute;right:15px;top:14px;width:36px;height:36px;border:1px solid #416786;border-radius:11px;color:#fff;background:rgba(255,255,255,.07);font-size:22px}.game-help-notice{margin-top:16px;padding:10px 12px;border-radius:10px;color:#ffdb98;background:rgba(255,162,31,.1);font-size:10px}.game-help-confirm{width:100%;margin-top:13px;padding:12px;border:0;border-radius:11px;color:#fff;background:linear-gradient(135deg,#1677ef,#10af91);font-weight:900}.modal-open{overflow:hidden}
@media(max-width:620px){.game-card .game-help-btn{right:20px;top:118px}.game-help-dialog{padding:27px 18px 20px}.game-help-dialog h2{padding-right:35px;font-size:22px}.game-help-dialog li{font-size:11px}}
.game-card .game-help-btn{top:28px}@media(max-width:620px){.game-card .game-help-btn{top:25px}}
.game-operation-status{margin:0 0 18px;padding:15px 18px;border:1px solid;border-radius:15px;display:flex;align-items:center;gap:13px;box-shadow:0 9px 24px rgba(10,45,82,.07)}.game-operation-status>span{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:17px;font-weight:950}.game-operation-status b,.game-operation-status small{display:block}.game-operation-status b{font-size:14px}.game-operation-status small{margin-top:3px;font-size:10px}.game-operation-status.running{border-color:#afe4d4;color:#08775e;background:#eafbf5}.game-operation-status.running>span{background:linear-gradient(145deg,#08a97d,#1bc9a2)}.game-operation-status.maintenance{border-color:#efbec5;color:#a72c3d;background:#fff0f2}.game-operation-status.maintenance>span{background:linear-gradient(145deg,#e23f55,#bd263b)}
@media(max-width:620px){.game-operation-status{margin-bottom:14px;padding:13px}.game-operation-status b{font-size:13px}.game-operation-status small{font-size:9px;line-height:1.45}}

/* Full-screen play mode keeps wagers in one stable game workspace. */
.game-fullscreen-launch{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%;margin:18px 0 0;padding:12px!important;border:1px solid #b9d7ed!important;color:#096fb9!important;background:#eef8ff!important;box-shadow:none!important}.game-fullscreen-launch span{margin-right:7px}.game-focus-bar{display:none}.game-focus-result{display:none}.game-focus-mode{overflow:hidden}.game-focus-mode .game-card.is-game-focus{position:fixed;z-index:500;inset:0;width:100%;height:100dvh;min-height:0!important;padding:88px max(22px,calc((100% - 720px)/2)) 48px;border:0;border-radius:0;overflow-x:hidden;overflow-y:auto;background:radial-gradient(circle at 90% 0,#dff4ff 0,transparent 30%),#f8fbff;box-shadow:none}.game-focus-mode .game-card.is-game-focus:before{position:fixed;width:360px;height:360px;right:-160px;top:-170px}.game-focus-mode .game-card.is-game-focus .game-focus-bar{position:fixed;z-index:510;left:0;right:0;top:0;height:66px;padding:0 max(20px,calc((100% - 720px)/2));display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(120deg,#03152d,#0b4272);box-shadow:0 8px 28px #001b3440}.game-focus-bar b{font-size:13px;letter-spacing:1px}.game-focus-bar button{width:auto!important;padding:10px 16px!important;border:1px solid #4b7ba4!important;border-radius:10px!important;color:#fff!important;background:#ffffff12!important;font-size:12px!important}.game-focus-mode .game-card.is-game-focus .game-fullscreen-launch{display:none}.game-focus-mode .game-card.is-game-focus .game-focus-result{position:relative;display:grid;margin:0 0 22px;padding:15px 18px}.game-focus-mode .game-card.is-game-focus>p{min-height:0}.game-focus-mode .game-card.is-game-focus form{position:static!important;left:auto;right:auto;bottom:auto;margin-top:24px}.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{gap:7px}.game-focus-mode .game-card.is-game-focus .lotto-ball{font-size:10px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{width:260px;height:260px;flex-basis:260px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel b{width:116px;height:116px;font-size:38px}.game-focus-mode .game-card:not(.is-game-focus){visibility:hidden}
@media(max-width:620px){.game-fullscreen-launch{margin-top:14px}.game-focus-mode .game-card.is-game-focus{height:100svh;max-height:100svh;padding:78px 17px calc(150px + env(safe-area-inset-bottom));scroll-padding-bottom:170px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.game-focus-mode .game-card.is-game-focus .game-focus-bar{height:60px;padding:0 15px}.game-focus-bar b{font-size:10px}.game-focus-bar button{padding:8px 12px!important;font-size:11px!important}.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{gap:4px}.game-focus-mode .game-card.is-game-focus .lotto-ball{font-size:8px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{width:220px;height:220px;flex-basis:220px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel b{width:98px;height:98px;font-size:34px}.game-focus-mode .game-card.is-game-focus .game-focus-result{padding:13px 14px}.game-focus-mode .game-card.is-game-focus .game-focus-result small{overflow-wrap:anywhere}.game-focus-mode .game-card.is-game-focus form>button:last-child{position:sticky;z-index:8;bottom:calc(18px + env(safe-area-inset-bottom));min-height:54px;box-shadow:0 12px 32px rgba(3,38,72,.28)}.game-focus-mode .game-card.is-game-focus form>button:last-child:disabled{opacity:1}}

/* Mobile auto-fit: all controls stay inside one fixed screen without scrolling. */
.game-focus-content{display:contents}
@media(max-width:620px){.game-focus-mode .game-card.is-game-focus{height:100svh;max-height:100svh;padding:60px 0 0;overflow:hidden}.game-focus-mode .game-card.is-game-focus .game-focus-content{--game-fit-scale:1;position:absolute;left:50%;top:66px;width:calc(100% - 34px);display:flex;flex-direction:column;transform:translateX(-50%) scale(var(--game-fit-scale));transform-origin:top center}.game-focus-mode .game-card.is-game-focus form>button:last-child{position:static;bottom:auto;min-height:48px;box-shadow:0 10px 24px rgba(3,38,72,.2)}.game-focus-mode .game-card.is-game-focus .game-focus-result{margin-bottom:14px}.game-focus-mode .game-card.is-game-focus .game-icon{margin-bottom:12px}.game-focus-mode .game-card.is-game-focus h2{margin:6px 0}.game-focus-mode .game-card.is-game-focus>p,.game-focus-mode .game-card.is-game-focus .game-focus-content>p{min-height:0;margin:7px 0 10px}.game-focus-mode .game-card.is-game-focus form{margin-top:14px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{margin-top:0}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{margin-bottom:10px}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-proof{margin-bottom:10px}}
@media(max-width:620px){.game-focus-mode .game-card.is-game-focus .game-icon{display:none}.game-focus-mode .game-card.is-game-focus .game-focus-result{margin-bottom:10px}.game-focus-mode .game-card.is-game-focus .game-focus-content>span{margin-top:0}}

/* One-button launch and a fixed, auto-fitted play board on PC and mobile. */
.game-focus-mode .game-card.is-game-focus{height:100dvh;max-height:100dvh;padding:66px 0 0;overflow:hidden}.game-focus-mode .game-card.is-game-focus .game-focus-content{--game-fit-scale:1;position:absolute;left:50%;top:76px;width:min(820px,calc(100% - 40px));display:flex;flex-direction:column;transform:translateX(-50%) scale(var(--game-fit-scale));transform-origin:top center}.game-focus-mode .game-card.is-game-focus .game-icon,.game-focus-mode .game-card.is-game-focus .game-focus-content>span,.game-focus-mode .game-card.is-game-focus .game-focus-content>h2,.game-focus-mode .game-card.is-game-focus .game-focus-content>p{display:none}.game-focus-mode .game-card.is-game-focus .game-focus-result{margin-bottom:12px}.game-focus-mode .game-card.is-game-focus form{margin-top:14px}.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{gap:5px}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage,.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-proof{margin-bottom:9px}
@media(max-width:620px){.game-focus-mode .game-card.is-game-focus{height:100svh;max-height:100svh}.game-focus-mode .game-card.is-game-focus .game-focus-content{top:66px;width:calc(100% - 28px)}.game-focus-mode .game-card.is-game-focus .game-focus-result{margin-bottom:9px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{width:250px;height:250px;flex-basis:250px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel b{width:108px;height:108px}.game-focus-mode .game-card.is-game-focus form{margin-top:10px}}
.game-card:not(.is-game-focus) form button:disabled{pointer-events:none}
.game-focus-mode .game-card.is-game-focus>.game-help-btn{display:none!important}
@media(min-width:621px){.game-focus-mode .game-card.is-game-focus .game-focus-content{width:min(1100px,calc(100% - 70px))}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{width:370px;height:370px;flex-basis:370px}.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel b{width:158px;height:158px;font-size:48px}.game-focus-mode .game-card.is-game-focus.roulette form{width:min(100%,1000px);margin-left:auto;margin-right:auto}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{min-height:310px;padding-top:55px}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage>strong{font-size:58px}.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-proof{min-height:205px}.game-focus-mode .game-card.is-game-focus.jackpot form{width:min(100%,1000px);margin-left:auto;margin-right:auto}}
.game-submitting:after,.game-page-restoring:after{content:"결과 확인 중…";position:fixed;z-index:9999;inset:0;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 72% 18%,#1679c955,transparent 32%),linear-gradient(145deg,#03142d,#0b4771);font-size:15px;font-weight:900;letter-spacing:.5px;animation:gameSubmitPulse .8s ease-in-out infinite alternate}.game-page-restoring body{visibility:hidden}@keyframes gameSubmitPulse{to{opacity:.88}}
.roulette-result-animating .roulette-wheel{animation:rouletteResultSpin 2.8s cubic-bezier(.18,.72,.18,1) both!important}.roulette-result-animating .game-focus-result{visibility:hidden}.roulette-stop-status{width:min(100%,430px);margin:10px auto 2px;padding:10px 14px;border-radius:11px;text-align:center;font-size:12px;font-weight:950;letter-spacing:.5px}.roulette-stop-status.spinning{color:#0c6db9;background:#e9f5ff;animation:rouletteStatusPulse .55s ease-in-out infinite alternate}.roulette-stop-status.stopped{color:#087d61;background:#e6faf3;box-shadow:0 0 0 1px #a8e5d1}.roulette-result-stopped .roulette-wheel{animation:none!important;transform:rotate(1080deg)}@keyframes rouletteResultSpin{0%{transform:rotate(0)}72%{transform:rotate(970deg)}100%{transform:rotate(1080deg)}}@keyframes rouletteStatusPulse{to{color:#fff;background:#147fe1}}
@media(min-width:621px){.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{grid-template-columns:repeat(12,1fr);gap:6px}.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{font-size:9px}.game-focus-mode .game-card.is-game-focus.jackpot form{width:100%}.game-focus-mode .game-card.is-game-focus.jackpot form select{min-height:58px}.game-focus-mode .game-card.is-game-focus.jackpot form button{min-height:62px;font-size:16px}}

/* Lotto 35: multi-pick betting */
.game-card.lotto{min-height:810px}
.lotto-board{grid-template-columns:repeat(7,1fr);gap:8px;width:min(100%,520px);margin:4px auto 16px}
.game-card .lotto-ball{font-size:11px}
.lotto-controls{display:grid;grid-template-columns:minmax(135px,1fr) 1fr 1fr;gap:8px;margin-bottom:9px}
.lotto-controls label{min-width:0;padding:7px 10px;border:1px solid #d3e0ed;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#65798f;background:#f6faff;font-size:9px;font-weight:850}
.lotto-controls select{width:64px;min-height:34px;margin:0;padding:5px 8px;border-radius:8px}
.game-card .lotto-controls button{min-height:48px;margin:0;padding:8px 10px;border-radius:10px;font-size:10px}
.game-card .lotto-controls .lotto-clear{color:#39536d;background:#e8eff6}
.lotto-pick{height:auto;min-height:54px;gap:12px}
.lotto-pick small{flex:0 0 auto}
.lotto-pick strong{width:auto;height:auto;min-height:30px;padding:6px 10px;border-radius:9px;text-align:right;line-height:1.55}
.lotto-summary{margin-bottom:9px;padding:10px 13px;border:1px solid #c8dfef;border-radius:10px;display:flex;align-items:center;gap:10px;color:#587087;background:#edf8ff;font-size:10px}
.lotto-summary b{margin-left:auto;color:#086ebc;font-size:14px}
.lotto-summary i{font-style:normal}
.lotto-summary em{padding:4px 7px;border-radius:7px;color:#08785e;background:#dff8ef;font-size:9px;font-style:normal;font-weight:900}
.game-focus-mode .game-card.is-game-focus.lotto .game-focus-content{width:min(820px,calc(100% - 40px))}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{grid-template-columns:repeat(7,1fr);gap:8px;width:min(100%,560px)}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{font-size:12px}
.game-focus-mode .game-card.is-game-focus.lotto form{width:min(100%,820px);margin-left:auto;margin-right:auto}
@media(max-width:620px){.game-card.lotto{min-height:650px}.lotto-board{gap:5px;width:100%}.game-card .lotto-ball{font-size:9px}.lotto-controls{grid-template-columns:1.25fr 1fr 1fr;gap:5px}.lotto-controls label{padding:5px 7px;font-size:8px}.lotto-controls select{width:50px;min-height:32px}.game-card .lotto-controls button{min-height:43px;padding:6px 5px;font-size:8px}.lotto-pick{min-height:47px;padding:7px 9px}.lotto-pick strong{font-size:9px}.lotto-summary{padding:8px 9px;font-size:9px}.lotto-summary em{font-size:8px}.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{gap:5px;width:min(100%,430px)}.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{font-size:9px}}
@media(max-width:620px){.roulette-stop-status{margin-top:7px;padding:8px;font-size:10px}.game-focus-mode .game-card.is-game-focus.jackpot form button{min-height:54px}}
.roulette-wheel-stage{position:relative;width:max-content;margin:0 auto;display:grid;place-items:center}.roulette-wheel-stage .roulette-wheel{margin-left:auto!important;margin-right:auto!important}.roulette-stop-pointer{position:absolute;z-index:8;left:50%;top:-18px;transform:translateX(-50%);display:grid;justify-items:center;pointer-events:none}.roulette-stop-pointer b{padding:4px 9px;border-radius:7px;color:#fff;background:#ef324c;box-shadow:0 4px 13px #b10e2e55;font-size:9px;letter-spacing:.8px}.roulette-stop-pointer i{width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:16px solid #ef324c;filter:drop-shadow(0 3px 2px #85102744)}.roulette-result-animating .roulette-wheel{animation:rouletteResultStop 5.2s cubic-bezier(.08,.72,.08,1) both!important}.roulette-result-stopped .roulette-wheel{animation:none!important;transform:rotate(var(--roulette-stop-angle,1417.5deg))}.game-card.roulette form button[data-bet-color="red"]{background:linear-gradient(135deg,#ff5267,#d91f3b)}.game-card.roulette form button[data-bet-color="black"]{background:linear-gradient(135deg,#26364b,#080f1b)}.game-card.roulette form button[data-bet-color="green"]{background:linear-gradient(135deg,#18c493,#078361)}.game-card.roulette form button:disabled{background:#a8b6c5!important}@keyframes rouletteResultStop{0%{transform:rotate(0deg)}18%{transform:rotate(430deg)}55%{transform:rotate(930deg)}82%{transform:rotate(calc(var(--roulette-stop-angle,1417.5deg) - 55deg))}92%{transform:rotate(calc(var(--roulette-stop-angle,1417.5deg) + 11deg))}100%{transform:rotate(var(--roulette-stop-angle,1417.5deg))}}
@media(max-width:620px){.roulette-stop-pointer{top:-14px}.roulette-stop-pointer b{font-size:8px}.roulette-stop-pointer i{border-left-width:8px;border-right-width:8px;border-top-width:13px}}

/* The colored disc is the animated layer; the center counter stays readable. */
.roulette-wheel{position:relative;isolation:isolate;background:#fff!important;animation:none!important;overflow:hidden}
.roulette-wheel>i{position:absolute;z-index:0;inset:0;border-radius:50%;background:conic-gradient(#e94055 0 45deg,#101b2b 45deg 90deg,#e94055 90deg 135deg,#101b2b 135deg 180deg,#11ae7e 180deg 200deg,#e94055 200deg 270deg,#101b2b 270deg 360deg);box-shadow:inset 0 0 0 13px #fff;will-change:transform;transform:rotate(0deg)}
.roulette-wheel>b{position:relative;z-index:2}

/* 2026-08-20: larger equal game cards */
.game-wrap{max-width:1420px}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.game-card,.game-card.lotto,.game-card.roulette,.game-card.jackpot{min-height:880px;padding:34px}.game-card h2{font-size:31px}.game-card>p{min-height:78px;font-size:15px}.game-card .roulette-wheel{width:245px;height:245px;flex-basis:245px}.game-card .roulette-wheel b{width:102px;height:102px;font-size:38px}.jackpot-stage{min-height:265px}
@media(max-width:900px){.game-grid{grid-template-columns:1fr}.game-card,.game-card.lotto,.game-card.roulette,.game-card.jackpot{width:100%;min-height:730px}.game-card>p{min-height:0}}
@media(max-width:620px){.game-card,.game-card.lotto,.game-card.roulette,.game-card.jackpot{min-height:710px;padding:24px}.game-card h2{font-size:26px}.game-card .roulette-wheel{width:230px;height:230px;flex-basis:230px}}

/* Piano Roulette */
.piano-hero{min-height:315px;padding:58px max(24px,calc((100% - 1320px)/2));display:flex;align-items:center;justify-content:space-between;gap:30px;color:#fff;background:radial-gradient(circle at 86% 20%,rgba(129,72,255,.42),transparent 29%),radial-gradient(circle at 10% 90%,rgba(255,54,102,.2),transparent 25%),linear-gradient(135deg,#030716,#0b1734 58%,#242159)}.piano-hero>div:first-child>span{color:#68ead7;font-size:11px;font-weight:950;letter-spacing:2px}.piano-hero h1{margin:9px 0 8px;font-size:44px}.piano-hero p{margin:0;color:#bec9e1}.piano-balance{min-width:285px;padding:22px;border:1px solid #5666a0;border-radius:18px;background:rgba(6,16,45,.55);box-shadow:0 18px 42px rgba(0,0,0,.25)}.piano-balance small,.piano-balance strong{display:block}.piano-balance small{color:#aebbd7}.piano-balance strong{margin:5px 0 13px;font-size:27px}.piano-balance button{width:100%;padding:10px;border:1px solid #596ba2;border-radius:10px;color:#fff;background:#ffffff0d;font-weight:850;cursor:pointer}.piano-wrap{max-width:1320px;margin:auto;padding:34px 24px 85px}.piano-result{margin-bottom:18px;padding:19px 22px;border-radius:17px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px 20px;color:#fff;background:linear-gradient(135deg,#17274b,#244f82);box-shadow:0 12px 30px rgba(5,34,72,.16)}.piano-result small,.piano-result span,.piano-result code{display:block}.piano-result strong{grid-row:1/3;font-size:31px}.piano-result span{font-size:13px}.piano-result code{grid-column:3;grid-row:1/3;color:#b7cae4;font-size:10px}.piano-result.is-red{background:linear-gradient(135deg,#5a1027,#da2e52)}.piano-result.is-black{background:linear-gradient(135deg,#060b15,#28364c)}.piano-result.is-green{background:linear-gradient(135deg,#064b3d,#0bb78d)}
.piano-top-users{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:16px}.piano-top-users article{min-height:105px;padding:18px;border-radius:16px;color:#fff;box-shadow:0 10px 25px rgba(4,25,56,.13)}.piano-top-users span,.piano-top-users strong,.piano-top-users b{display:block}.piano-top-users span{font-size:9px;font-weight:900;letter-spacing:1px;opacity:.75}.piano-top-users strong{margin-top:8px;font-size:18px}.piano-top-users b{margin-top:2px;font-size:12px}.top-black{background:linear-gradient(145deg,#080d16,#2c3c52)}.top-red{background:linear-gradient(145deg,#72152e,#ef3a5f)}.top-green{background:linear-gradient(145deg,#075141,#0dc39a)}
.piano-console{padding:25px;border:1px solid #34435e;border-radius:23px;background:linear-gradient(145deg,#060a14,#111d32);box-shadow:0 24px 55px rgba(2,18,43,.22)}.piano-stage{position:relative;overflow:hidden;padding:25px;border:1px solid #2f425e;border-radius:18px;background:radial-gradient(circle at 50% 0,rgba(92,112,255,.18),transparent 36%),#080d18}.piano-lights{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-around}.piano-lights i{width:10px;height:10px;border-radius:50%;background:#62ecdb;box-shadow:0 0 18px #62ecdb}.piano-lights i:nth-child(even){background:#ff5275;box-shadow:0 0 18px #ff5275}.piano-display{padding:18px;margin-bottom:22px;border:1px solid #2d4161;border-radius:14px;text-align:center;background:#071426}.piano-display span,.piano-display strong,.piano-display small{display:block}.piano-display span{color:#6ce8da;font-size:9px;letter-spacing:1.8px}.piano-display strong{margin:7px 0;color:#fff;font-size:24px}.piano-display small{color:#8fa5c0}.piano-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.piano-key{position:relative;min-height:260px;padding:25px 15px 17px;border:0;border-radius:13px 13px 20px 20px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;color:#fff;cursor:pointer;transform-origin:top;transition:.16s;box-shadow:inset 0 -15px 22px rgba(0,0,0,.28),0 14px 0 #02050a,0 20px 30px rgba(0,0,0,.34)}.piano-key:active,.piano-key.is-selected{transform:perspective(500px) rotateX(-5deg) translateY(8px);box-shadow:inset 0 -8px 17px rgba(0,0,0,.3),0 6px 0 #02050a,0 11px 20px rgba(0,0,0,.3)}.piano-key i{position:absolute;left:12%;right:12%;top:14px;height:54%;border-radius:10px;background:linear-gradient(145deg,rgba(255,255,255,.3),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.17)}.piano-key b{font-size:23px;letter-spacing:1px}.piano-key span{font-size:13px}.piano-key.black{background:linear-gradient(145deg,#273449,#060a11 68%)}.piano-key.red{background:linear-gradient(145deg,#ff5472,#a50e34 68%)}.piano-key.green{background:linear-gradient(145deg,#29d9aa,#047c61 68%)}.piano-key.is-selected:after{content:'SELECTED';position:absolute;top:18px;padding:5px 9px;border-radius:99px;color:#071223;background:#fff;font-size:8px;font-weight:950;letter-spacing:1px}.piano-betbar{display:grid;grid-template-columns:230px 1fr;gap:12px;margin-top:23px}.piano-betbar label{padding:10px 13px;border:1px solid #344965;border-radius:13px;display:flex;align-items:center;gap:12px;color:#aabbd0;background:#0a1728}.piano-betbar label span{font-size:10px;font-weight:850}.piano-betbar select{margin-left:auto;min-height:42px;color:#fff;border-color:#405879;background:#10243e}.piano-betbar>button{border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,#8155ff,#ff3f70);font-size:15px;font-weight:950;cursor:pointer;box-shadow:0 12px 27px rgba(167,55,173,.24)}.piano-betbar>button:disabled{opacity:.45}.piano-live{margin-top:20px;padding:24px;border:1px solid #d4e2ef;border-radius:20px;background:#fff;box-shadow:0 13px 34px rgba(6,42,82,.07)}.piano-live-head{display:flex;align-items:center;justify-content:space-between}.piano-live-head span{color:#0788a9;font-size:9px;font-weight:950;letter-spacing:1.4px}.piano-live-head h2{margin:4px 0 0;font-size:21px}.piano-live-head>b{color:#0a9f7b;font-size:10px}.piano-bettors{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px}.piano-bettors article{padding:11px 12px;border:1px solid #e0e8f1;border-radius:11px;display:grid;grid-template-columns:11px 1fr auto;align-items:center;gap:3px 8px;background:#f8fbfe}.piano-bettors i{width:10px;height:10px;grid-row:1/3;border-radius:50%}.piano-bettors i.black{background:#101924}.piano-bettors i.red{background:#ee3156}.piano-bettors i.green{background:#0eb98e}.piano-bettors strong{font-size:12px}.piano-bettors span{color:#718399;font-size:8px}.piano-bettors b{font-size:10px}.piano-bettors time{color:#8291a4;font-size:8px;text-align:right}
@media(max-width:760px){.piano-hero{padding:38px 18px;display:block}.piano-hero h1{font-size:34px}.piano-balance{min-width:0;margin-top:22px}.piano-wrap{padding:22px 13px 75px}.piano-top-users{grid-template-columns:1fr}.piano-console{padding:13px}.piano-stage{padding:15px}.piano-keys{gap:7px}.piano-key{min-height:205px;padding:16px 5px}.piano-key b{font-size:15px}.piano-key span{font-size:11px}.piano-key.is-selected:after{font-size:6px}.piano-betbar{grid-template-columns:1fr}.piano-betbar>button{min-height:54px}.piano-bettors{grid-template-columns:1fr 1fr}.piano-result{grid-template-columns:1fr}.piano-result strong,.piano-result code{grid-column:auto;grid-row:auto}}
.game-focus-actions{display:flex;align-items:center;gap:8px}.game-focus-actions button{position:static!important;width:auto!important}.game-sound-toggle{color:#bfe9ff!important;background:#ffffff0c!important}@media(max-width:620px){.game-focus-actions{gap:5px}.game-sound-toggle{padding:8px!important;font-size:10px!important}.game-exit{padding:8px 10px!important}}
.roulette-result-animating .roulette-wheel{animation:rouletteSmoothStop 5.2s cubic-bezier(.12,.75,.18,1) both!important}@keyframes rouletteSmoothStop{from{transform:rotate(0deg)}to{transform:rotate(var(--roulette-stop-angle,1417.5deg))}}

/* 2026-08-19: unified three-game sizing, readable type and live jackpot gauge. */
.game-grid{gap:24px}
.game-card{padding:30px;min-height:810px}
.game-card.lotto,.game-card.roulette,.game-card.jackpot{min-height:810px}
.game-card>span{font-size:11px}
.game-card h2{font-size:29px}
.game-card p{font-size:15px;line-height:1.65}
.game-card label,.game-card select,.game-card button{font-size:13px}
.game-card form{gap:12px}
.game-card input[type=number],.game-card select{min-height:50px;padding:13px 14px}
.game-card form>button:last-child{min-height:54px;font-size:14px}
.lotto-legend{font-size:12px}
.game-card .lotto-ball{font-size:13px}
.lotto-controls label{font-size:11px}
.game-card .lotto-controls button{font-size:12px}
.lotto-pick small,.lotto-summary{font-size:12px}
.lotto-summary b{font-size:16px}
.lotto-summary em{font-size:11px}
.game-card.roulette .choice-row label{font-size:12px}
.proof-head,.proof-row strong,.proof-empty b{font-size:12px}
.proof-row small,.proof-empty small,.seed-commit,.seed-commit code{font-size:10px}
.jackpot-stage>small{font-size:10px}
.jackpot-stage>b{font-size:13px}
.jackpot-stage>p{font-size:12px}
.jackpot-scale{font-size:10px}
.jackpot-meter{height:15px;overflow:visible}
.jackpot-meter i{min-width:9px;transition:width 1.35s cubic-bezier(.18,.8,.24,1)}
.jackpot-meter span{width:21px;height:21px;transition:left 1.35s cubic-bezier(.18,.8,.24,1)}

/* Natural-size full-screen layout: same width for Lotto, Roulette and Jackpot. */
.game-focus-mode .game-card.is-game-focus{padding:66px 0 46px;overflow-x:hidden;overflow-y:auto}
.game-focus-mode .game-card.is-game-focus .game-focus-content,
.game-focus-mode .game-card.is-game-focus.lotto .game-focus-content{position:relative;left:auto;top:auto;width:min(1080px,calc(100% - 48px));margin:20px auto 0;transform:none!important}
.game-focus-mode .game-card.is-game-focus .game-focus-result{padding:22px 26px;gap:8px}
.game-focus-mode .game-card.is-game-focus .game-focus-result b{font-size:16px}
.game-focus-mode .game-card.is-game-focus .game-focus-result strong{font-size:28px}
.game-focus-mode .game-card.is-game-focus .game-focus-result span{font-size:15px}
.game-focus-mode .game-card.is-game-focus .game-focus-result small{font-size:12px}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{width:min(100%,650px);gap:10px}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{font-size:14px}
.game-focus-mode .game-card.is-game-focus.lotto form,
.game-focus-mode .game-card.is-game-focus.roulette form,
.game-focus-mode .game-card.is-game-focus.jackpot form{width:100%;margin:24px auto 0}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{min-height:330px;padding:55px 26px 30px}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-proof{min-height:210px}

@media(max-width:620px){
  .game-grid{gap:18px}
  .game-card{padding:22px;min-height:690px}
  .game-card.lotto,.game-card.roulette,.game-card.jackpot{min-height:690px}
  .game-card h2{font-size:25px}
  .game-card p{font-size:14px}
  .game-focus-mode .game-card.is-game-focus{padding:60px 0 34px;overflow-y:auto}
  .game-focus-mode .game-card.is-game-focus .game-focus-content,
  .game-focus-mode .game-card.is-game-focus.lotto .game-focus-content{position:relative;left:auto;top:auto;width:calc(100% - 28px);margin:14px auto 0;transform:none!important}
  .game-focus-mode .game-card.is-game-focus .game-focus-result{padding:16px 15px}
  .game-focus-mode .game-card.is-game-focus .game-focus-result b{font-size:13px}
  .game-focus-mode .game-card.is-game-focus .game-focus-result strong{font-size:23px}
  .game-focus-mode .game-card.is-game-focus .game-focus-result span{font-size:12px;line-height:1.55}
  .game-focus-mode .game-card.is-game-focus .game-focus-result small{font-size:10px}
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-board{width:100%;gap:6px}
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{font-size:11px}
  .game-focus-mode .game-card.is-game-focus form>button:last-child{position:static;min-height:54px}
  .lotto-controls{grid-template-columns:1fr 1fr;gap:7px}
  .lotto-controls label{grid-column:1/-1;min-height:48px;font-size:11px}
  .game-card .lotto-controls button{font-size:11px}
  .game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{min-height:280px;padding:38px 16px 24px}
}

/* 2026-08-21: piano key reel with a fixed winning line. */
.piano-reel-shell{position:relative;overflow:hidden;height:238px;border:1px solid #3b5274;border-radius:18px;background:linear-gradient(180deg,#02050b,#101a2a);box-shadow:inset 0 0 45px #000,0 17px 34px #0006}
.piano-reel-shell:before,.piano-reel-shell:after{content:"";position:absolute;z-index:5;top:0;bottom:0;width:12%;pointer-events:none}.piano-reel-shell:before{left:0;background:linear-gradient(90deg,#030711,transparent)}.piano-reel-shell:after{right:0;background:linear-gradient(-90deg,#030711,transparent)}
.piano-reel{height:100%;display:flex;align-items:stretch;will-change:transform}.reel-key{position:relative;flex:0 0 clamp(92px,10vw,132px);height:212px;margin:9px 3px 0;border:1px solid #ffffff24;border-radius:9px 9px 16px 16px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:20px;color:#fff;box-shadow:inset 0 -20px 25px #0007,0 10px 0 #010308,0 15px 22px #0008}.reel-key i{position:absolute;left:10px;right:10px;top:10px;height:60%;border:1px solid #ffffff24;border-radius:7px;background:linear-gradient(150deg,#ffffff3d,#ffffff05)}.reel-key b{font-size:13px;letter-spacing:1px}.reel-key.black{background:linear-gradient(145deg,#344258,#05080e 70%)}.reel-key.red{background:linear-gradient(145deg,#ff5a75,#9d0d31 70%)}.reel-key.green{background:linear-gradient(145deg,#2ce1b0,#04755d 70%)}.reel-key.is-winner{filter:brightness(1.22);box-shadow:inset 0 -20px 25px #0005,0 10px 0 #010308,0 0 30px #fff9}
.piano-win-frame{position:absolute;z-index:8;left:50%;top:6px;bottom:9px;width:clamp(98px,11vw,142px);transform:translateX(-50%);border:3px solid #fff;border-radius:12px;box-shadow:0 0 0 2px #54e5d9,0 0 28px #55e7d977,inset 0 0 20px #55e7d933;pointer-events:none}.piano-win-frame b{position:absolute;left:50%;top:8px;transform:translateX(-50%);padding:5px 10px;border-radius:99px;white-space:nowrap;color:#061323;background:#68ead7;font-size:9px;letter-spacing:.8px}.piano-win-frame i{position:absolute;left:50%;top:39px;bottom:16px;width:3px;transform:translateX(-50%);border-radius:9px;background:#fff;box-shadow:0 0 12px #fff,0 0 22px #55e7d9}.piano-reel-shell.is-spinning .piano-win-frame{animation:pianoLinePulse .5s ease-in-out infinite alternate}.piano-reel-shell.is-stopped .piano-win-frame{border-color:#ffe35a;box-shadow:0 0 0 2px #ff9e1d,0 0 35px #ffc32d}.piano-reel-shell.is-stopped .piano-win-frame i{background:#ffe970;box-shadow:0 0 18px #ffd447}
.piano-choice-title{margin:24px 0 10px;color:#98acc5;text-align:center;font-size:10px;font-weight:900;letter-spacing:1.2px}.piano-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.piano-choices button{min-height:64px;border:1px solid #ffffff20;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;cursor:pointer;opacity:.68;transition:.18s}.piano-choices button b{font-size:14px}.piano-choices button span{font-size:11px}.piano-choices .black{background:linear-gradient(145deg,#303d51,#080c13)}.piano-choices .red{background:linear-gradient(145deg,#f64f6d,#99102f)}.piano-choices .green{background:linear-gradient(145deg,#20d4a5,#05765e)}.piano-choices button.is-selected{opacity:1;transform:translateY(-3px);border-color:#fff;box-shadow:0 9px 24px #0007,0 0 0 2px #61e8db}.piano-stage .piano-result{margin:22px 0 0;animation:pianoResultIn .45s ease both}
@keyframes pianoLinePulse{to{filter:brightness(1.5)}}@keyframes pianoResultIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:760px){.piano-reel-shell{height:196px}.reel-key{flex-basis:82px;height:171px;padding-bottom:15px}.reel-key b{font-size:10px}.piano-win-frame{width:88px}.piano-win-frame b{font-size:7px}.piano-choices{gap:6px}.piano-choices button{min-height:58px}.piano-choices button b{font-size:11px}.piano-choices button span{font-size:9px}.piano-display strong{font-size:18px}.piano-betbar{margin-top:14px}}
.piano-stage .piano-result[hidden]{display:none}

/* Piano roulette opens as a dedicated full-screen game. */
.piano-focus-bar{display:none}.piano-focus-mode{overflow:hidden}.piano-focus-mode .site-header,.piano-focus-mode .piano-hero,.piano-focus-mode .notice-box,.piano-focus-mode footer{display:none!important}.piano-focus-mode main{padding:0}.piano-focus-mode .piano-wrap{max-width:none;padding:0}.piano-focus-mode .piano-console{position:fixed;z-index:700;inset:0;height:100dvh;padding:86px max(24px,calc((100% - 1240px)/2)) 32px;border:0;border-radius:0;overflow-y:auto;background:radial-gradient(circle at 82% 5%,#342d7855,transparent 27%),linear-gradient(145deg,#02050d,#09162b);box-shadow:none}.piano-focus-mode .piano-focus-bar{position:fixed;z-index:720;left:0;right:0;top:0;height:66px;padding:0 max(20px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(120deg,#03152d,#31205e);box-shadow:0 8px 28px #0007}.piano-focus-bar>b{font-size:13px;letter-spacing:1px}.piano-focus-bar>div{display:flex;gap:8px}.piano-focus-bar button,.piano-focus-bar a{min-height:40px;padding:0 15px;border:1px solid #586e9b;border-radius:10px;display:flex;align-items:center;color:#fff;background:#ffffff10;font-size:12px;font-weight:850;text-decoration:none}.piano-focus-mode .piano-stage{min-height:560px}.piano-focus-mode .piano-reel-shell{height:270px}.piano-focus-mode .reel-key{height:244px}.piano-focus-mode .piano-betbar{margin-bottom:25px}
@media(max-width:760px){.piano-focus-mode .piano-console{height:100svh;padding:72px 12px 22px}.piano-focus-mode .piano-focus-bar{height:60px;padding:0 12px}.piano-focus-bar>b{font-size:9px}.piano-focus-bar button,.piano-focus-bar a{min-height:36px;padding:0 10px;font-size:10px}.piano-focus-mode .piano-stage{min-height:0;padding:12px}.piano-focus-mode .piano-display{margin-bottom:12px;padding:11px}.piano-focus-mode .piano-display strong{margin:4px 0;font-size:15px}.piano-focus-mode .piano-reel-shell{height:183px}.piano-focus-mode .reel-key{height:158px}.piano-focus-mode .piano-choice-title{margin:14px 0 7px}.piano-focus-mode .piano-choices button{min-height:48px}.piano-focus-mode .piano-betbar{margin-top:10px}.piano-focus-mode .piano-betbar label{min-height:48px}.piano-focus-mode .piano-betbar>button{min-height:50px}}

.piano-history{margin:28px 0 18px;padding:24px;border:1px solid #304662;border-radius:18px;color:#fff;background:#081426;box-shadow:0 16px 36px #0005}.piano-history h2{margin:0 0 17px;font-size:22px}.piano-history>div{overflow-x:auto}.piano-history table{width:100%;min-width:760px;border-collapse:collapse}.piano-history th,.piano-history td{padding:13px 12px;border-bottom:1px solid #263b55;text-align:left;font-size:12px}.piano-history th{color:#8ea9c7;background:#102139}.piano-history td{color:#d7e2ef}.piano-history td i{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:50%}.piano-history td i.red{background:#ee3f60}.piano-history td i.black{background:#718099}.piano-history td i.green{background:#16c59a}.piano-history tbody tr:last-child td{border-bottom:0}
@media(max-width:760px){.piano-history{margin-top:18px;padding:15px}.piano-history h2{font-size:18px}.piano-history th,.piano-history td{padding:11px 9px;font-size:11px}}

/* 2026-08-21: endless piano reel and six-second automatic rounds. */
.piano-round-countdown{min-width:215px;padding:9px 15px;border:1px solid #5976a9;border-radius:999px;color:#d8e7ff;background:#ffffff0b;text-align:center;font-size:11px;font-weight:900;letter-spacing:.4px}.piano-round-countdown strong{display:inline-block;min-width:25px;margin:0 4px;color:#69f0d4;font-size:21px;line-height:1}.piano-round-countdown.is-running{color:#fff;border-color:#68ead7;background:#0db28a55;box-shadow:0 0 24px #50e9c655}.piano-reel{width:max-content}.piano-reel-shell:before,.piano-reel-shell:after{width:18%}.piano-betbar>button.is-queued{background:linear-gradient(135deg,#0fb783,#12a7d7);box-shadow:0 0 0 2px #69efd2,0 12px 28px #0ab79555}.piano-reel-shell.is-spinning~.piano-choices{pointer-events:none;opacity:.55}.piano-reel-shell.is-spinning{box-shadow:inset 0 0 55px #000,0 0 0 2px #6aebd855,0 17px 34px #0008}
@media(max-width:760px){.piano-focus-mode .piano-focus-bar{gap:7px}.piano-round-countdown{order:2;min-width:132px;padding:7px 8px;font-size:8px}.piano-round-countdown strong{min-width:18px;font-size:16px}.piano-focus-bar>div{order:3}.piano-focus-bar>div button{display:none}.piano-focus-bar>div a{padding:0 8px}.piano-reel-shell:before,.piano-reel-shell:after{width:11%}}
@media (max-width: 620px) {
  .game-focus-bar .game-sound-toggle {
    display: none !important;
  }
}

/* K20 2026-08-22 : 3D arcade visual upgrade (logic untouched) */
.game-card{perspective:1100px;background:linear-gradient(155deg,#ffffff 0%,#f5f9ff 58%,#edf5ff 100%);box-shadow:0 28px 70px rgba(4,35,74,.16),inset 0 1px 0 #fff;transform-style:preserve-3d}
.game-card:after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 0%,rgba(53,143,255,.16),transparent 27%),linear-gradient(120deg,transparent 42%,rgba(255,255,255,.72) 50%,transparent 58%);transform:translateZ(-1px)}
.game-card>*{position:relative;z-index:1}.game-icon{transform:translateZ(28px) rotateX(7deg);box-shadow:0 18px 28px rgba(19,103,214,.32),inset 0 2px 2px rgba(255,255,255,.55)}
.lotto-board{padding:15px;border-radius:22px;background:linear-gradient(145deg,#dfeafa,#fff);box-shadow:inset 7px 7px 18px rgba(26,67,112,.13),inset -7px -7px 18px #fff,0 15px 25px rgba(28,72,122,.12);transform:rotateX(4deg);transform-origin:center bottom}
.game-card .lotto-ball{border-color:#c7d6e8;background:linear-gradient(145deg,#fff,#dce8f5);box-shadow:inset 2px 2px 3px #fff,inset -3px -3px 5px rgba(58,87,121,.16),0 5px 8px rgba(24,63,108,.14);text-shadow:0 1px #fff}
.game-card .lotto-ball.is-mine,.game-card .lotto-ball.is-drawn,.game-card .lotto-ball.is-winner{transform:translateZ(12px) scale(1.08);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.roulette-wheel-stage,.roulette-wheel{perspective:900px}.game-card .roulette-wheel{border:10px solid #eaf1f8;transform:rotateX(12deg);box-shadow:inset 0 0 0 4px #7f93a8,inset 0 0 25px rgba(0,0,0,.3),0 28px 35px rgba(14,39,70,.28),0 5px 0 #9eafc1!important}
.roulette-wheel>i{box-shadow:inset 0 0 0 13px #e8eff7,inset 0 0 28px rgba(0,0,0,.34)!important}.roulette-wheel>b{border:4px solid #d8e4ef;background:radial-gradient(circle at 35% 28%,#fff,#dbe7f2)!important;box-shadow:inset 3px 3px 5px #fff,inset -5px -5px 10px rgba(35,63,92,.16),0 9px 15px rgba(0,0,0,.2)}
.jackpot-stage{transform:rotateX(3deg);border:2px solid #ffc45d;box-shadow:inset 0 2px rgba(255,255,255,.35),inset 0 -18px 35px rgba(50,0,0,.24),0 28px 40px rgba(111,40,11,.28)}
.jackpot-coins i{transform-style:preserve-3d;box-shadow:inset 3px 3px 5px #fff4b5,inset -5px -5px 8px #bd6a05,0 11px 14px rgba(0,0,0,.3);animation:k20CoinFloat 2.4s ease-in-out infinite}.jackpot-coins i:nth-child(2){animation-delay:-.7s}.jackpot-coins i:nth-child(3){animation-delay:-1.4s}
@keyframes k20CoinFloat{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:8deg}}
@media(max-width:620px){.lotto-board{padding:10px;border-radius:17px}.game-card .roulette-wheel{border-width:8px}}
/* 2026-08-22: remove excessive white shine/glare from 3D game cards */
.game-card:after{display:none!important;content:none!important;background:none!important;animation:none!important}
.jackpot-stage:before{display:none!important;content:none!important;background:none!important;animation:none!important}
.jackpot-glow{opacity:.22!important;filter:blur(30px)!important;animation:none!important}

/* 2026-08-22 K20: Piano-grade 3D stage for Lotto / Roulette / Jackpot.
   Visual-only upgrade: game rules, timers and payouts are untouched. */
.game-focus-mode .game-card.is-game-focus{
  color:#eef7ff!important;
  background:
    radial-gradient(circle at 82% 8%,rgba(96,76,255,.22),transparent 28%),
    radial-gradient(circle at 14% 88%,rgba(0,210,185,.13),transparent 27%),
    linear-gradient(145deg,#02050d 0%,#071326 54%,#111b39 100%)!important;
  perspective:1400px;
}
.game-focus-mode .game-card.is-game-focus .game-focus-bar{
  background:linear-gradient(120deg,#03152d,#29205d)!important;
  border-bottom:1px solid rgba(122,153,216,.23);
  box-shadow:0 10px 34px rgba(0,0,0,.5)!important;
}
.game-focus-mode .game-card.is-game-focus .game-focus-content{
  padding:24px;
  border:1px solid #314965;
  border-radius:24px;
  background:radial-gradient(circle at 50% 0,rgba(94,111,255,.11),transparent 35%),linear-gradient(150deg,#070d19,#0d1a2d);
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 30px 70px rgba(0,0,0,.4);
  transform-style:preserve-3d;
}
.game-focus-mode .game-card.is-game-focus .game-focus-result{
  color:#fff!important;border:1px solid #3c5c80!important;
  background:linear-gradient(135deg,#142443,#1f4a76)!important;
  box-shadow:0 16px 32px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.08)!important;
}
.game-focus-mode .game-card.is-game-focus form select,
.game-focus-mode .game-card.is-game-focus .lotto-controls label,
.game-focus-mode .game-card.is-game-focus .lotto-pick,
.game-focus-mode .game-card.is-game-focus .lotto-summary{
  color:#e9f4ff!important;border-color:#344d6b!important;background:linear-gradient(150deg,#0e1c31,#0a1424)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 9px 20px rgba(0,0,0,.25)!important;
}
.game-focus-mode .game-card.is-game-focus form select option{color:#0b1524;background:#fff}
.game-focus-mode .game-card.is-game-focus form>button:last-child,
.game-focus-mode .game-card.is-game-focus .lotto-auto{
  border:1px solid rgba(96,235,216,.5)!important;color:#fff!important;
  background:linear-gradient(135deg,#1478ff,#0bb79d)!important;
  box-shadow:0 12px 26px rgba(0,116,219,.3),inset 0 1px rgba(255,255,255,.2)!important;
}
.game-focus-mode .game-card.is-game-focus .lotto-clear{color:#c9dcf0!important;border-color:#425a75!important;background:#15243a!important}

/* Lotto: recessed cabinet + raised physical balls. */
.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{
  padding:22px!important;border:1px solid #344f70!important;border-radius:24px!important;
  background:linear-gradient(145deg,#06101e,#152943)!important;
  box-shadow:inset 12px 12px 30px rgba(0,0,0,.42),inset -8px -8px 24px rgba(93,135,182,.08),0 24px 44px rgba(0,0,0,.36)!important;
  transform:rotateX(5deg) translateZ(10px)!important;transform-origin:center bottom;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{
  color:#dceaff!important;border:1px solid #506985!important;
  background:radial-gradient(circle at 32% 25%,#eef7ff 0,#b4c9dc 28%,#627b95 68%,#26394f 100%)!important;
  box-shadow:inset 2px 2px 4px rgba(255,255,255,.82),inset -5px -6px 9px rgba(5,19,34,.44),0 8px 13px rgba(0,0,0,.42)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.5)!important;transition:.16s ease;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball:hover{transform:translateY(-3px) scale(1.04);filter:brightness(1.12)}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball.is-mine{
  color:#fff!important;border-color:#57b8ff!important;background:radial-gradient(circle at 30% 22%,#bfe6ff,#258bff 44%,#074fae 100%)!important;
  box-shadow:inset 2px 2px 5px #dff4ff,0 0 0 2px rgba(35,154,255,.25),0 9px 18px rgba(0,82,184,.5)!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball.is-drawn{
  color:#fff!important;border-color:#ffb866!important;background:radial-gradient(circle at 30% 22%,#ffe4bc,#ff8b2a 45%,#9d3c04 100%)!important;
  box-shadow:inset 2px 2px 5px #fff0d4,0 0 0 2px rgba(255,150,47,.24),0 0 26px rgba(255,118,20,.5)!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball.is-winner{animation:k20LottoWin .9s ease-in-out infinite alternate}
@keyframes k20LottoWin{to{transform:translateY(-5px) scale(1.11);filter:brightness(1.2)}}

/* Roulette: heavy 3D rim, sunken wheel, fixed pointer. */
.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel-stage{
  width:max-content;margin:10px auto 18px;padding:18px;border-radius:50%;perspective:1200px;
  background:radial-gradient(circle,#111e31 0 57%,#050a13 58% 100%);
  box-shadow:inset 0 0 34px rgba(0,0,0,.9),0 30px 50px rgba(0,0,0,.52),0 0 0 1px #344c69;
}
.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{
  border:13px solid #9fb3c7!important;
  background:#07101b!important;
  transform:rotateX(14deg) translateZ(16px)!important;
  box-shadow:inset 0 0 0 5px #33475a,inset 0 0 34px rgba(0,0,0,.82),0 16px 0 #45586a,0 35px 50px rgba(0,0,0,.5)!important;
}
.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel>i{
  box-shadow:inset 0 0 0 14px #d3dde7,inset 0 0 0 18px #53677a,inset 0 0 36px rgba(0,0,0,.75)!important;
}
.game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel>b{
  color:#e9f4ff!important;border:5px solid #8599ad!important;
  background:radial-gradient(circle at 34% 25%,#f5fbff,#9eb5ca 38%,#263b50 100%)!important;
  box-shadow:inset 3px 3px 7px rgba(255,255,255,.75),inset -7px -8px 12px rgba(0,0,0,.35),0 11px 20px rgba(0,0,0,.44)!important;
}
.game-focus-mode .game-card.is-game-focus.roulette .roulette-stop-pointer b{box-shadow:0 7px 16px rgba(0,0,0,.35)}
.game-focus-mode .game-card.is-game-focus.roulette .choice-row label{
  color:#d8e6f5!important;border-color:#3f5670!important;background:linear-gradient(145deg,#132238,#09131f)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.27)!important;
}
.game-focus-mode .game-card.is-game-focus.roulette .choice-row label:has(input:checked){border-color:#60e5d3!important;box-shadow:0 0 0 2px rgba(96,229,211,.22),0 12px 24px rgba(0,0,0,.32)!important;transform:translateY(-2px)}
.game-focus-mode .roulette-stop-status.spinning{color:#bcecff!important;background:#102c49!important}.game-focus-mode .roulette-stop-status.stopped{color:#7ef1d2!important;background:#0d322b!important}

/* Jackpot: 3D vault/slot cabinet without moving white glare. */
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{
  overflow:hidden;border:2px solid #d99a37!important;border-radius:24px!important;
  background:radial-gradient(circle at 50% 12%,rgba(255,190,72,.23),transparent 30%),linear-gradient(145deg,#24091d,#65172f 48%,#8b321b)!important;
  box-shadow:inset 0 2px rgba(255,255,255,.18),inset 0 -24px 45px rgba(28,0,0,.36),0 17px 0 #3b111b,0 36px 54px rgba(0,0,0,.5)!important;
  transform:rotateX(4deg) translateZ(14px)!important;
}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage:after{
  content:"";position:absolute;inset:10px;border:1px solid rgba(255,211,119,.18);border-radius:17px;pointer-events:none;
}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage>strong{color:#fff6dd;text-shadow:0 4px 10px rgba(0,0,0,.5),0 0 18px rgba(255,183,61,.18)}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-coins i{
  border:1px solid #ffe39a;color:#6d3900;background:radial-gradient(circle at 32% 25%,#fff7c6,#e9a92c 45%,#8f4d04 100%)!important;
  box-shadow:inset 3px 3px 5px rgba(255,255,255,.8),inset -5px -6px 8px rgba(105,49,0,.45),0 12px 18px rgba(0,0,0,.38)!important;
}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-meter{border-color:#b96925!important;background:#250d15!important;box-shadow:inset 0 4px 10px rgba(0,0,0,.52)!important}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-meter i{background:linear-gradient(90deg,#f78d24,#ffd15a)!important;box-shadow:0 0 18px rgba(255,170,48,.42)}
.game-focus-mode .game-card.is-game-focus.jackpot .jackpot-proof{
  color:#dce9f8!important;border-color:#354e6b!important;background:linear-gradient(145deg,#0b1728,#07111e)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 14px 28px rgba(0,0,0,.3)!important;
}
.game-focus-mode .game-card.is-game-focus.jackpot .proof-head,.game-focus-mode .game-card.is-game-focus.jackpot .proof-row,.game-focus-mode .game-card.is-game-focus.jackpot .proof-empty,.game-focus-mode .game-card.is-game-focus.jackpot .seed-commit{border-color:#29425d!important}

/* Keep the landing cards clean but add depth, never a moving white glare. */
.game-card.lotto,.game-card.roulette,.game-card.jackpot{border:1px solid #cfdfed;box-shadow:0 22px 55px rgba(11,52,92,.16),inset 0 1px #fff;transform-style:preserve-3d}
.game-card.lotto:hover,.game-card.roulette:hover,.game-card.jackpot:hover{transform:translateY(-3px)}

@media(max-width:620px){
  .game-focus-mode .game-card.is-game-focus .game-focus-content{padding:14px;border-radius:16px}
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-board{padding:12px!important;border-radius:17px!important;transform:none!important}
  .game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel-stage{padding:11px;margin-top:4px}
  .game-focus-mode .game-card.is-game-focus.roulette .roulette-wheel{border-width:9px!important;transform:rotateX(9deg)!important}
  .game-focus-mode .game-card.is-game-focus.jackpot .jackpot-stage{transform:none!important;box-shadow:inset 0 2px rgba(255,255,255,.15),inset 0 -18px 34px rgba(28,0,0,.32),0 10px 0 #3b111b,0 24px 36px rgba(0,0,0,.42)!important}
}

/* 2026-08-22 Lotto visibility/stability patch
   - PC: keep the complete 1-35 board in view (no clipping)
   - Mobile: darker metallic balls + stronger number contrast */
.game-focus-mode .game-card.is-game-focus.lotto{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scroll-behavior:auto!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .game-focus-content{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  width:min(980px,calc(100% - 48px))!important;
  margin:16px auto 40px!important;
  padding:20px!important;
  transform:none!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-board{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  width:min(100%,620px)!important;
  margin:8px auto 18px!important;
  padding:18px!important;
  gap:9px!important;
  transform:none!important;
  overflow:visible!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{
  min-width:0!important;
  color:#eef7ff!important;
  background:radial-gradient(circle at 30% 24%,#c9d9e8 0,#8199b0 30%,#455d75 65%,#203247 100%)!important;
  border-color:#607b96!important;
  font-weight:950!important;
  text-shadow:0 1px 2px rgba(0,0,0,.9),0 0 3px rgba(0,0,0,.45)!important;
}
.game-focus-mode .game-card.is-game-focus.lotto .lotto-ball.is-mine{
  color:#fff!important;
  text-shadow:0 1px 3px rgba(0,0,0,.7)!important;
}

@media(min-width:621px){
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-board{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
  }
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{
    font-size:14px!important;
  }
}

@media(max-width:620px){
  .game-focus-mode .game-card.is-game-focus.lotto{
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    padding-bottom:calc(22px + env(safe-area-inset-bottom))!important;
  }
  .game-focus-mode .game-card.is-game-focus.lotto .game-focus-content{
    width:calc(100% - 22px)!important;
    margin:10px auto 24px!important;
    padding:12px!important;
  }
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-board{
    width:100%!important;
    padding:10px!important;
    gap:6px!important;
    border-radius:18px!important;
  }
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-ball{
    font-size:12px!important;
    color:#f7fbff!important;
    background:radial-gradient(circle at 30% 24%,#b8cadc 0,#748da6 30%,#3d566f 66%,#1c2d41 100%)!important;
    border-color:#6f89a3!important;
    box-shadow:inset 2px 2px 4px rgba(255,255,255,.62),inset -5px -6px 8px rgba(3,14,28,.52),0 6px 10px rgba(0,0,0,.42)!important;
    text-shadow:0 1px 2px #000,0 0 4px rgba(0,0,0,.55)!important;
  }
  .game-focus-mode .game-card.is-game-focus.lotto .lotto-ball.is-mine{
    background:radial-gradient(circle at 30% 22%,#aee4ff,#168eff 44%,#064eae 100%)!important;
    border-color:#69c6ff!important;
    text-shadow:0 1px 3px rgba(0,0,0,.75)!important;
  }
}


/* 2026-08-23 Roulette result width fix: keep refreshed result inside the same centered game cabinet as Jackpot. */
.game-focus-mode .game-card.is-game-focus.roulette > .game-focus-result{
  width:min(1080px,calc(100% - 48px))!important;
  margin:20px auto 12px!important;
  box-sizing:border-box;
}
@media(max-width:620px){
  .game-focus-mode .game-card.is-game-focus.roulette > .game-focus-result{
    width:calc(100% - 28px)!important;
    margin:14px auto 9px!important;
  }
}
\n\n/* 2026-08-23 Roulette stable header/result fix.\n   The result panel keeps the same footprint during countdown, bet submit, spin and result refresh. */\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-content{\n  width:min(1080px,calc(100% - 48px))!important;\n  margin:20px auto 0!important;\n}\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-result{\n  display:grid!important;\n  width:100%!important;\n  min-height:154px!important;\n  height:154px!important;\n  max-height:154px!important;\n  margin:0 0 18px!important;\n  padding:20px 26px!important;\n  box-sizing:border-box!important;\n  overflow:hidden!important;\n  visibility:visible!important;\n  flex:0 0 154px!important;\n  align-content:center!important;\n}\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-result b,\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-result strong,\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-result span,\n.game-focus-mode .game-card.is-game-focus.roulette .game-focus-result small{\n  margin:0!important;\n  line-height:1.25!important;\n}\n.roulette-result-animating .game-card.is-game-focus.roulette .game-focus-result{visibility:visible!important;}\n@media(max-width:620px){\n  .game-focus-mode .game-card.is-game-focus.roulette .game-focus-content{\n    width:calc(100% - 28px)!important;\n    margin:14px auto 0!important;\n  }\n  .game-focus-mode .game-card.is-game-focus.roulette .game-focus-result{\n    min-height:132px!important;\n    height:132px!important;\n    max-height:132px!important;\n    flex-basis:132px!important;\n    margin-bottom:10px!important;\n    padding:14px 15px!important;\n  }\n}\n
/* K20 platform 04 crypto payment card visual */
.crypto-card-visual{height:128px;border-radius:18px;margin:-2px -2px 16px;padding:18px;position:relative;overflow:hidden;background:linear-gradient(135deg,#101d38,#315fe8 58%,#8c5cff);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);color:#fff}.crypto-card-visual:after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(255,255,255,.22);border-radius:50%;right:-48px;top:-58px}.crypto-card-visual b{display:block;font-size:22px;letter-spacing:.12em}.crypto-card-visual span{display:block;margin-top:5px;font-size:12px;opacity:.82;letter-spacing:.14em}.crypto-card-visual small{position:absolute;right:16px;bottom:14px;font-size:10px;font-weight:800;letter-spacing:.08em}.crypto-chip{width:31px;height:23px;border-radius:6px;background:linear-gradient(135deg,#f6d36c,#b98624);position:absolute;left:18px;bottom:16px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.game-focus-balance{
    display:flex;
    align-items:center;
    gap:8px;
    padding:7px 12px;
    margin-left:18px;
    border-radius:999px;
    background:rgba(8,20,38,.92);
    border:1px solid rgba(255,255,255,.18);
    white-space:nowrap;
}

.game-focus-balance span{
    font-size:11px;
    font-weight:800;
    color:#c2d0de;
}

.game-focus-balance strong{
    font-size:15px;
    font-weight:950;
    color:#fff;
}

.game-focus-actions{
    margin-left:auto;
}

@media(max-width:760px){
    .game-focus-balance{
        margin-left:8px;
        padding:6px 9px;
    }

    .game-focus-balance strong{
        font-size:13px;
    }
}


