.games-hub{display:flex;flex-direction:column;gap:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.games-hero,.game-menu,.game-stage,.game-panel{border:1px solid color-mix(in srgb,var(--accent,#0f766e) 55%,#334155);border-radius:18px;background:linear-gradient(135deg,rgba(15,118,110,.16),rgba(2,6,23,.04));padding:16px}
.games-hero{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.games-hero h3{margin:0;color:#5eead4;font-size:1.35rem}.games-hero h3 small{font-size:.7rem;color:#86efac}.games-hero p{margin:.4rem 0;color:var(--muted)}
.games-badge{margin-left:auto;padding:8px 14px;border:1px solid #22c55e;border-radius:999px;color:#86efac}.game-score-bar{width:100%;display:flex;gap:9px;flex-wrap:wrap}.game-score-bar span{padding:5px 10px;border:1px solid #155e75;border-radius:999px;font-size:.75rem}
.game-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px}.game-menu button,.game-actions button,.bet-row button{border:1px solid #075985;background:rgba(8,47,73,.25);color:inherit;border-radius:10px;padding:11px;cursor:pointer;font:inherit}.game-menu button:hover,.game-actions button:hover,.bet-row button:hover{border-color:#2dd4bf;transform:translateY(-1px)}.game-menu button span{display:block;font-size:1.15rem;margin-bottom:3px}
.game-stage{min-height:390px}.game-panel-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px}.game-panel-head h3{margin:0;color:#5eead4}.game-status{color:#facc15;font-weight:700}.game-status.win{color:#34d399}.game-status.lose{color:#fb7185}.game-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:14px}
.ttt-board{display:grid;grid-template-columns:repeat(3,90px);justify-content:center}.ttt-board button{height:90px;font-size:2rem;background:#07111f;color:#f8fafc;border:1px solid #0e7490}
.hangman-word{text-align:center;font-size:2rem;letter-spacing:.18em;margin:25px}.hangman-wrong{text-align:center;margin:10px}.letter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:5px}.letter-grid button,.quiz-answer{padding:10px;border:1px solid #0e7490;background:#07111f;color:#f8fafc;border-radius:8px}.quiz-question{font-size:1.2rem;margin:18px 0}.quiz-answer{display:block;width:100%;text-align:left;margin:7px 0}
.memory-grid{display:grid;grid-template-columns:repeat(6,minmax(48px,1fr));gap:5px;max-width:760px}.memory-grid button{height:68px;border:1px solid #0f766e;border-radius:9px;background:#082f49;color:white;font-size:1.4rem}.memory-grid button.open{background:#f8fafc;color:#111827}
.bingo-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:16px}.bingo-card{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.bingo-card b,.bingo-card button{text-align:center;padding:10px;border:1px solid #0e7490;border-radius:6px}.bingo-card b{background:#075985;color:#5eead4}.bingo-card button{background:#f8fafc;color:#111827}.bingo-card button.marked{background:#facc15}.bingo-ball{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #155e75;border-radius:15px}.bingo-ball strong{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:white;color:#111827;font-size:2rem;border:5px solid #2dd4bf}
.playing-cards{display:flex;gap:8px;align-items:center;min-height:80px}.playing-card{width:55px;height:72px;display:grid;place-items:center;background:white;color:#111827;border-radius:8px;font-size:1.15rem}.playing-card.red{color:#dc2626}.dice-area{display:flex;justify-content:center;gap:25px;font-size:7rem}.uno-table{display:grid;grid-template-columns:1fr 2fr;gap:25px}.uno-hand{display:flex;flex-wrap:wrap;gap:7px}.uno-card{width:58px;height:84px;border:4px solid white!important;border-radius:12px;color:white;font-size:1.4rem}.uno-card.red{background:#dc2626}.uno-card.blue{background:#2563eb}.uno-card.green{background:#16a34a}.uno-card.yellow{background:#ca8a04}
.slot-head{text-align:right;color:#facc15}.slot-reels{display:flex;justify-content:center;gap:14px;margin:25px 0}.slot-reels div{width:105px;height:105px;display:grid;place-items:center;background:#f8fafc;border-radius:18px;font-size:3rem;box-shadow:0 8px 24px #0004}.bet-row{display:flex;gap:8px;flex-wrap:wrap}.shooter-field{height:360px;position:relative;border:1px solid #155e75;border-radius:14px;overflow:hidden;background:radial-gradient(circle,#0c4a6e,#020617)}.shooter-field button{position:absolute;font-size:2rem;background:none;border:0;cursor:crosshair}
.sudoku-grid{display:grid;grid-template-columns:repeat(9,42px);justify-content:center}.sudoku-grid span,.sudoku-grid input{width:42px;height:42px;text-align:center;border:1px solid #475569;background:#07111f;color:#f8fafc}.sudoku-grid :nth-child(3n){border-right:2px solid #f59e0b}.sudoku-grid :nth-child(n+19):nth-child(-n+27),.sudoku-grid :nth-child(n+46):nth-child(-n+54){border-bottom:2px solid #f59e0b}.chess-board{display:grid;grid-template-columns:repeat(8,56px);justify-content:center}.chess-board button{width:56px;height:56px;border:0;font-size:1.8rem;background:#d6d3d1}.chess-board button:nth-child(16n+1),.chess-board button:nth-child(16n+3),.chess-board button:nth-child(16n+5),.chess-board button:nth-child(16n+7),.chess-board button:nth-child(16n+10),.chess-board button:nth-child(16n+12),.chess-board button:nth-child(16n+14),.chess-board button:nth-child(16n+16){background:#64748b}.chess-board button.selected{outline:4px solid #facc15;z-index:1}
#snakeCanvas,#tetrisCanvas,#marketCanvas{display:block;max-width:100%;margin:auto;background:#07111f;border:1px solid #155e75}.mine-grid{display:grid;grid-template-columns:repeat(8,45px);justify-content:center}.mine-grid button{height:45px;background:#164e63;color:white;border:1px solid #0e7490}.mine-grid button.open{background:#e2e8f0;color:#111827}.battle-grid{display:grid;grid-template-columns:repeat(10,38px);justify-content:center}.battle-grid button{height:38px;border:1px solid #075985;background:#082f49;color:white}.battle-grid button.hit{background:#991b1b}.battle-grid button.miss{background:#1e3a8a}.market-quote{text-align:center;font-size:1.6rem;margin:8px}.market-stats{text-align:center;margin:12px}.math-question{text-align:center;font-size:2rem;margin:30px}.game-panel input,.game-panel textarea{max-width:100%}.game-panel blockquote{padding:14px;border-left:4px solid #f59e0b;background:#07111f;color:#f8fafc}
@media(max-width:700px){.bingo-layout,.uno-table{grid-template-columns:1fr}.memory-grid{grid-template-columns:repeat(4,1fr)}.sudoku-grid{grid-template-columns:repeat(9,32px)}.sudoku-grid span,.sudoku-grid input{width:32px;height:32px}.chess-board{grid-template-columns:repeat(8,38px)}.chess-board button{width:38px;height:38px;font-size:1.2rem}.battle-grid{grid-template-columns:repeat(10,28px)}.battle-grid button{height:28px}.ttt-board{grid-template-columns:repeat(3,72px)}.ttt-board button{height:72px}}


/* Game Center v3.4 — visual and Bingo based on the old SPMC model */
.games-hub{
  background:linear-gradient(180deg,#07111f,#020617);
  border:1px solid rgba(57,255,20,.22);
}
.game-menu{
  gap:6px;
  align-items:center;
}
.game-menu button{
  min-height:35px;
  padding:7px 9px;
  border-radius:9px;
  font-size:.74rem;
  white-space:nowrap;
  background:#020617;
  border-color:rgba(57,255,20,.25);
  color:#d7ffe2;
}
.game-menu button:hover{
  border-color:#39ff14;
  color:#ffd21f;
  transform:translateY(-1px);
}
.game-stage,.game-panel{
  background:#000;
  color:#d7ffe2;
  border-color:rgba(57,255,20,.25);
  font-family:"Courier New",ui-monospace,monospace;
}
.game-panel-head h3,.game-panel h4{color:#ffd21f}
.game-actions button.selected{
  outline:2px solid #ffd21f;
  background:rgba(250,204,21,.16);
  color:#ffd21f;
}

.bingo-premium-top{
  display:grid;
  grid-template-columns:minmax(270px,360px) minmax(280px,1fr);
  gap:14px;
  margin-bottom:15px;
}
.bingo-premium-control,.bingo-premium-drawn{
  background:#000;
  border:1px solid rgba(57,255,20,.28);
  border-radius:14px;
  padding:13px;
}
.bingo-mode-badge{
  display:inline-block;
  border:1px solid rgba(84,215,255,.42);
  color:#54d7ff;
  border-radius:999px;
  padding:4px 9px;
  font-size:.72rem;
  margin-bottom:7px;
}
.bingo-last-ball{
  width:118px;
  height:118px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 30% 25%,#fff,#eef2ff 58%,#cbd5e1 100%);
  color:#0f172a;
  border:6px solid #fff;
  box-shadow:0 0 22px rgba(255,255,255,.25),inset -8px -12px 18px rgba(15,23,42,.18);
  font:900 42px "Courier New",monospace;
  margin:9px 0 12px;
}
.bingo-premium-drawn h4{
  display:flex;
  justify-content:space-between;
  gap:10px;
}
.bingo-premium-ball-strip{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  align-content:flex-start;
  min-height:118px;
  max-height:178px;
  overflow:auto;
  padding:9px;
  background:#020617;
  border:1px dashed rgba(148,163,184,.3);
  border-radius:12px;
}
.bingo-premium-ball{
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 30% 25%,#fff,#f8fafc 62%,#cbd5e1);
  color:#111827;
  border:2px solid #fff;
  font:900 13px "Courier New",monospace;
  box-shadow:0 3px 10px rgba(0,0,0,.28);
}
.bingo-four-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(260px,1fr));
  gap:13px;
}
.bingo-premium-card{
  border-radius:14px;
  padding:11px;
  background:#020617;
  border:1px solid rgba(84,215,255,.3);
}
.bingo-premium-card.computer-card{
  border-color:rgba(248,113,113,.38);
}
.bingo-premium-card h4{
  margin:0 0 8px;
  display:flex;
  align-items:center;
  gap:7px;
}
.bingo-premium-card.player-card h4:before{content:"👤"}
.bingo-premium-card.computer-card h4:before{content:"💻"}
.bingo-premium-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
}
.bingo-premium-grid b,
.bingo-premium-grid button{
  min-width:0;
  min-height:38px;
  display:grid;
  place-items:center;
  padding:5px;
  border-radius:7px;
  font:900 13px "Courier New",monospace;
}
.bingo-premium-grid b{
  color:#111827;
  background:#ffd21f;
  border:1px solid #f59e0b;
}
.bingo-premium-grid button{
  background:#f8fafc;
  color:#111827;
  border:1px solid #94a3b8;
}
.bingo-premium-grid button.hit{
  background:linear-gradient(135deg,#16a34a,#facc15);
  border-color:#facc15;
  color:#111;
  box-shadow:0 0 12px rgba(250,204,21,.22);
}
.bingo-premium-grid button.can-mark{
  cursor:pointer;
  outline:2px solid rgba(56,189,248,.52);
  animation:bingoPulse 1.1s infinite alternate;
}
.bingo-premium-grid button.free{
  font-size:.65rem;
}
.bingo-legend{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:12px;
  color:#94a3b8;
  font-size:.72rem;
}
.bingo-legend span{display:flex;align-items:center;gap:5px}
.bingo-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}
.legend-player{border:2px solid #38bdf8}
.legend-computer{border:2px solid #f87171}
.legend-hit{background:linear-gradient(135deg,#16a34a,#facc15)}
@keyframes bingoPulse{
  from{box-shadow:0 0 0 rgba(56,189,248,0)}
  to{box-shadow:0 0 13px rgba(56,189,248,.48)}
}
@media(max-width:850px){
  .bingo-premium-top,.bingo-four-cards{grid-template-columns:1fr}
}
@media(max-width:460px){
  .bingo-premium-grid b,.bingo-premium-grid button{min-height:34px;font-size:.72rem}
}


/* v3.5 Premium Arcade */
.game-mode-row,.arcade-toolbar,.roulette-summary,.battle-stats{
  display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px
}
.game-mode-row button,.arcade-toolbar button,.arcade-toolbar select{min-height:34px}
.game-mode-row button.selected{border-color:#facc15;color:#facc15;box-shadow:0 0 0 1px #facc15 inset}
.arcade-toolbar{justify-content:space-between;border:1px solid rgba(84,215,255,.24);padding:9px;border-radius:11px;background:#020617}
#snakeCanvas,#tetrisCanvas,#shooterCanvas{display:block;max-width:100%;height:auto;border:2px solid #38bdf8;border-radius:12px;background:#07111f}
.direction-pad{text-align:center;margin-top:10px}.direction-pad button{min-width:58px;margin:3px}
.tetris-premium-layout{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:16px;align-items:start}
.tetris-side{display:grid;gap:14px}.tetris-side canvas{border:1px solid rgba(84,215,255,.3);border-radius:10px}
.tetris-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.tetris-stats span{padding:10px;background:#020617;border:1px solid #334155;border-radius:8px;text-align:center}
.tetris-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tetris-controls button:last-child{grid-column:1/-1}
.mines-classic{display:inline-block;background:#c0c0c0;padding:10px;border:4px outset #f1f1f1;color:#111;max-width:100%;overflow:auto}
.mine-topbar{display:flex;justify-content:space-between;align-items:center;border:4px inset #e5e7eb;padding:6px;margin-bottom:8px}
.mine-counter{font:900 30px "Courier New";background:#100;color:#f00;padding:2px 7px;min-width:70px;text-align:center}
.mine-face{font-size:25px;width:44px;height:44px;border:4px outset #eee;background:#c0c0c0;padding:0}
.mine-face:active{border-style:inset}
.mine-difficulty{display:flex;gap:4px;margin-bottom:7px}.mine-difficulty button{background:#c0c0c0;color:#111;border:3px outset #eee}
.mine-grid.classic{display:grid;gap:0;border:4px inset #eee;width:max-content}
.mine-grid.classic button{width:24px;height:24px;padding:0;border:3px outset #eee;background:#c0c0c0;color:#111;font:bold 14px Arial;border-radius:0}
.mine-grid.classic button.open{border:1px solid #888;background:#c0c0c0}
.mine-grid.classic .n1{color:#00f}.mine-grid.classic .n2{color:#080}.mine-grid.classic .n3{color:#f00}.mine-grid.classic .n4{color:#008}.mine-grid.classic .n5{color:#800}
.roulette-layout{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(420px,1.3fr);gap:16px}
.roulette-summary span{padding:7px 10px;border:1px solid #334155;border-radius:999px;background:#020617}
.roulette-wheel-wrap{display:grid;place-items:center}.roulette-wheel{width:240px;height:240px;border-radius:50%;position:relative;background:repeating-conic-gradient(#111 0 9.72deg,#b91c1c 9.72deg 19.44deg);border:14px solid #8b5a2b;box-shadow:inset 0 0 0 8px #d4af37,0 8px 28px #000}
.roulette-wheel.spinning{animation:rouletteSpin .35s linear infinite}.roulette-ball{position:absolute;width:14px;height:14px;background:#fff;border-radius:50%;left:50%;top:9px;transform:translateX(-50%);box-shadow:0 0 8px #fff}.roulette-result{position:absolute;inset:72px;border-radius:50%;background:#020617;border:5px solid #d4af37;display:grid;place-items:center;color:#fff;font:900 42px monospace}
.roulette-chips,.roulette-history,.roulette-bets{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.roulette-history span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800}.roulette-history .red,.roulette-table .red{background:#b91c1c}.roulette-history .black,.roulette-table .black{background:#111827}.roulette-history .green,.roulette-table .zero{background:#15803d}
.roulette-table{display:grid;grid-template-columns:48px 1fr;gap:6px}.roulette-table button{min-height:36px}.roulette-numbers{display:grid;grid-template-columns:repeat(12,1fr);gap:3px}.roulette-outside{grid-column:1/-1;display:grid;grid-template-columns:repeat(9,1fr);gap:3px}
@keyframes rouletteSpin{to{transform:rotate(360deg)}}
.battle-premium-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}.battle-board.labeled{display:grid;grid-template-columns:24px repeat(10,30px);grid-template-rows:24px repeat(10,30px);gap:2px;width:max-content}.battle-board.labeled b{display:grid;place-items:center;color:#93c5fd;font-size:12px}.battle-board.labeled button{padding:0;border-radius:3px;background:#075985;border:1px solid #38bdf8}.battle-board.labeled button.ship{background:#16a34a}.battle-board.labeled button.hit{background:#dc2626}.battle-board.labeled button.miss{background:#0f172a;color:#cbd5e1}.battle-legend{display:flex;gap:14px;margin-top:12px}.battle-pass-overlay{position:absolute;inset:0;background:rgba(2,6,23,.94);display:grid;place-items:center;z-index:30}.battle-pass-overlay>div{text-align:center;padding:30px;border:1px solid #38bdf8;border-radius:16px;background:#020617}
@media(max-width:900px){.roulette-layout,.battle-premium-layout,.tetris-premium-layout{grid-template-columns:1fr}.roulette-numbers{grid-template-columns:repeat(6,1fr)}.roulette-outside{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.battle-board.labeled{grid-template-columns:20px repeat(10,24px);grid-template-rows:20px repeat(10,24px)}.roulette-wheel{width:200px;height:200px}.roulette-result{inset:60px}}

/* v3.6 final gameplay */
.uno-scorebar,.dice-scoreboard,.market-summary,.chess-statusbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.uno-scorebar span,.market-summary span,.chess-statusbar span{padding:7px 10px;border:1px solid #334155;border-radius:999px;background:#020617}.uno-table{display:grid;gap:18px}.uno-hand{display:flex;gap:7px;flex-wrap:wrap;min-height:112px}.uno-card{width:70px;height:105px;border-radius:12px;border:5px solid #f8fafc;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:6px;font-weight:900}.uno-card.red{background:#dc2626}.uno-card.yellow{background:#eab308;color:#111}.uno-card.green{background:#16a34a}.uno-card.blue{background:#2563eb}.uno-card.wild{background:conic-gradient(#dc2626,#eab308,#16a34a,#2563eb)}.uno-card.back{background:#111827;border-color:#ef4444;justify-content:center;align-items:center}.uno-card.playable{transform:translateY(-5px);box-shadow:0 0 14px #facc15}.uno-center{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.dice-scoreboard{justify-content:center}.dice-scoreboard>div{min-width:100px;text-align:center;border:1px solid #334155;padding:9px;border-radius:10px;background:#020617}.dice-scoreboard b{display:block;font-size:24px;color:#facc15}.dice-duel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dice-duel>div{text-align:center;border:1px solid #334155;padding:18px;border-radius:14px;background:#020617}.dice-pair{font-size:72px}.chess-board.premium{display:grid;grid-template-columns:repeat(8,54px);width:max-content;border:6px solid #7c4a24}.chess-board.premium button{width:54px;height:54px;border:0;border-radius:0;font-size:38px;padding:0}.chess-board.premium .light{background:#f0d9b5;color:#111}.chess-board.premium .dark{background:#b58863;color:#111}.chess-board.premium .selected{outline:4px solid #facc15;outline-offset:-4px}.mine-mode-switch{display:flex;gap:5px;margin-bottom:7px}.mine-mode-switch button{background:#c0c0c0;color:#111;border:3px outset #eee}.mine-mode-switch button.selected{border-style:inset;background:#999}.market-news{padding:12px;border-left:4px solid #facc15;background:#111827;margin-bottom:12px}.market-game-table small{display:block;color:#94a3b8}.market-mini-chart{height:130px;display:flex;align-items:flex-end;gap:3px;border:1px solid #334155;padding:8px;background:#020617;margin-top:14px}.market-mini-chart i{flex:1;min-width:5px;background:linear-gradient(#38bdf8,#22c55e)}@media(max-width:600px){.dice-duel{grid-template-columns:1fr}.chess-board.premium{grid-template-columns:repeat(8,40px)}.chess-board.premium button{width:40px;height:40px;font-size:29px}.uno-card{width:58px;height:88px}}

.board-game-switch{display:flex;gap:8px;margin-bottom:12px}.board-game-switch button{padding:9px 14px;border:1px solid #334155;border-radius:999px;background:#020617;color:#f8fafc;font-weight:800;cursor:pointer}.board-game-switch button.active{background:#facc15;color:#111827;border-color:#facc15}.chess-board.premium{overflow:hidden;line-height:1}.chess-board.premium button{display:flex;align-items:center;justify-content:center;box-sizing:border-box}.checker-piece{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 -5px 0 rgba(0,0,0,.25),0 2px 4px rgba(0,0,0,.35);font-size:18px;font-weight:900}.checker-piece.white{background:#f8fafc;border:3px solid #cbd5e1;color:#b45309}.checker-piece.black{background:#111827;border:3px solid #334155;color:#facc15}.checker-piece.king{outline:2px solid #facc15}@media(max-width:600px){.checker-piece{width:28px;height:28px;font-size:14px}}

/* v0.11.91 Game Experience Update — isolated to Games */
.games-sound-toggle{border:1px solid rgba(84,215,255,.35);background:#020617;color:#e2e8f0;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer}
.fortune-tiger{max-width:760px;margin:auto;padding:16px;border:1px solid rgba(250,204,21,.35);border-radius:20px;background:radial-gradient(circle at top,#7c2d12 0,#3f0d12 38%,#12050b 100%);box-shadow:inset 0 0 45px rgba(250,204,21,.08)}
.tiger-title{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px}.tiger-title>span{font-size:50px;filter:drop-shadow(0 4px 8px #000)}.tiger-title b{display:block;font-size:1.35rem;color:#fde68a}.tiger-title small{display:block;color:#fca5a5}.fortune-tiger .slot-head{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.fortune-tiger .slot-head span{background:rgba(2,6,23,.76);border:1px solid #92400e;border-radius:10px;padding:9px;text-align:center}.slot-reels.modern{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;border-radius:16px;background:linear-gradient(180deg,#f59e0b,#78350f);box-shadow:inset 0 0 0 5px #fde68a}.slot-reels.modern>div{min-height:118px;display:grid;place-items:center;font-size:62px;border-radius:13px;background:linear-gradient(#fff7ed,#fed7aa);box-shadow:inset 0 -8px 20px rgba(120,53,15,.2);color:#111}.tiger-actions{justify-content:center}.tiger-spin{min-width:170px;background:linear-gradient(#facc15,#ea580c)!important;color:#111!important;font-size:1.05rem;font-weight:950;border:2px solid #fef3c7!important}.tiger-paytable{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:12px}.tiger-paytable span{padding:5px 8px;border:1px solid rgba(254,243,199,.25);border-radius:999px;background:rgba(2,6,23,.55);font-size:.78rem}
.shooter-touch-controls{touch-action:none;user-select:none;-webkit-user-select:none;justify-content:center}.shooter-touch-controls button{min-width:84px;min-height:54px;font-size:1.05rem;touch-action:none}.shooter-touch-controls .fire-btn{background:#dc2626;color:white;border-color:#f87171}
.game-player-setup{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin:10px 0 14px;padding:11px;border:1px solid #334155;border-radius:12px;background:#020617}.game-player-setup label{display:grid;gap:6px;color:#cbd5e1;font-size:.8rem}.game-player-setup input,.game-player-setup select{min-width:0;width:100%;padding:8px;border:1px solid #475569;border-radius:8px;background:#0f172a;color:#f8fafc}.game-player-setup.compact{grid-template-columns:1fr 1fr}
@media(max-width:700px){
  .game-player-setup{grid-template-columns:1fr}.game-player-setup.compact{grid-template-columns:1fr}
  .fortune-tiger{padding:11px}.slot-reels.modern>div{min-height:86px;font-size:46px}.fortune-tiger .slot-head{grid-template-columns:1fr 1fr}.fortune-tiger .slot-head span:last-child{grid-column:1/-1}
  .shooter-touch-controls{position:sticky;bottom:6px;z-index:5;background:rgba(2,6,23,.9);padding:7px;border-radius:12px}
}
@media(max-width:600px){
  .tetris-premium-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.tetris-premium-layout>#tetrisCanvas{width:auto!important;height:min(58vh,480px)!important;max-width:100%;margin-inline:auto}.tetris-side{gap:8px}.tetris-side>div:first-child{display:none}.tetris-stats span{padding:7px}.tetris-controls button{min-height:45px}.tetris-side .muted{display:none}
  #shooterCanvas{width:100%!important;height:auto!important;max-height:54vh;object-fit:contain}
}
@media(max-width:430px){.tetris-premium-layout>#tetrisCanvas{height:min(52vh,420px)!important}.slot-reels.modern>div{min-height:72px;font-size:40px}.shooter-touch-controls button{min-width:72px}}

/* v0.11.91 Games Final Expansion — isolated */
.slot-reels.modern>div.reel-spinning{animation:tigerReelPulse .14s linear infinite;filter:blur(.35px)}
.slot-reels.modern>div.reel-stop{animation:tigerReelStop .26s ease-out}
@keyframes tigerReelPulse{0%{transform:translateY(-5px) scale(.96)}50%{transform:translateY(5px) scale(1.04)}100%{transform:translateY(-5px) scale(.96)}}
@keyframes tigerReelStop{0%{transform:scale(1.18)}100%{transform:scale(1)}}
.bingo-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0}
.bingo-settings-grid label{display:grid;gap:4px;color:#cbd5e1;font-size:.72rem}
.bingo-settings-grid select{min-width:0;width:100%;padding:7px;border:1px solid #475569;border-radius:8px;background:#0f172a;color:#f8fafc}
.bingo-name-setup{grid-template-columns:1fr 1fr auto!important;padding:8px!important}
.backgammon-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px;padding:10px;border:1px solid #334155;border-radius:10px;background:#020617}
.backgammon-board{display:grid;grid-template-columns:repeat(12,minmax(42px,1fr));grid-template-rows:repeat(2,170px);gap:3px;padding:12px;border:8px solid #7c4a24;border-radius:14px;background:linear-gradient(90deg,#92400e 49%,#451a03 49% 51%,#92400e 51%);max-width:100%;overflow:auto}
.bg-point{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:42px;border:0;border-radius:4px;background:linear-gradient(to bottom,#f5deb3 0 92%,transparent 92%);color:#111;padding:4px 2px;font-size:11px;clip-path:polygon(0 0,100% 0,50% 100%)}
.bg-point:nth-child(even){background:linear-gradient(to bottom,#7f1d1d 0 92%,transparent 92%);color:#fff}
.bg-point.bottom{transform:rotate(180deg)}.bg-point.bottom>*{transform:rotate(180deg)}
.bg-point b{font-size:19px;letter-spacing:-5px;line-height:1.1;max-width:34px;overflow-wrap:anywhere}.bg-point small{font-weight:900}
#mazeCanvas{display:block;width:100%;max-width:760px;height:auto;border:3px solid #2563eb;border-radius:12px;background:#020617;margin:auto;touch-action:none}
.maze-touch{text-align:center;margin-top:10px;touch-action:none}.maze-touch button{min-width:64px;min-height:48px;margin:3px;font-size:1.1rem;touch-action:none}
@media(max-width:700px){.bingo-settings-grid{grid-template-columns:1fr}.bingo-name-setup{grid-template-columns:1fr!important}.backgammon-board{grid-template-columns:repeat(12,36px);grid-template-rows:repeat(2,130px);padding:8px}.bg-point{min-width:36px}.bg-point b{font-size:15px}}
/* v0.11.92 games polish */
.tiger-reel{height:118px!important;overflow:hidden;position:relative;display:block!important}.tiger-reel-track{display:flex;flex-direction:column;align-items:center;will-change:transform}.tiger-reel-track span{height:96px;min-height:96px;width:100%;display:grid;place-items:center;font-size:62px}.reel-spinning-real{box-shadow:inset 0 0 24px rgba(245,158,11,.65)!important}.mahjong-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.mahjong-toolbar span{margin-right:auto}.mahjong-board,.hanafuda-board{display:grid;grid-template-columns:repeat(6,minmax(54px,1fr));gap:9px;max-width:720px;margin:auto}.mahjong-tile,.hanafuda-card{min-height:76px;font-size:2rem;border-radius:12px;border:2px solid #cbd5e1;background:linear-gradient(#fff,#f1f5f9);box-shadow:0 4px 10px #0002}.mahjong-tile.selected{outline:4px solid #f59e0b}.mahjong-tile.removed,.hanafuda-card.matched{visibility:hidden}.hanafuda-card{background:linear-gradient(145deg,#991b1b,#450a0a);color:white}.hanafuda-score{text-align:center;font-weight:800;margin:10px}.hanafuda-card:not(.matched):hover,.mahjong-tile:not(.removed):hover{transform:translateY(-2px)}
@media(max-width:700px){.mahjong-board,.hanafuda-board{grid-template-columns:repeat(4,minmax(48px,1fr));gap:6px}.mahjong-tile,.hanafuda-card{min-height:62px;font-size:1.65rem}.tiger-reel{height:88px!important}.tiger-reel-track span{height:72px;min-height:72px;font-size:44px}}

/* v0.11.93 — Games premium polish */
.tiger-bet-control{display:grid;grid-template-columns:48px minmax(100px,170px) 48px;gap:8px;justify-content:center;align-items:center;margin:12px 0 8px}.tiger-bet-control input{width:100%;text-align:center;font-weight:900;font-size:1.05rem;padding:10px;border-radius:10px;border:2px solid #f59e0b;background:#fff7ed;color:#7c2d12}.tiger-bet-control button{min-height:44px;font-size:1.4rem;font-weight:900}.tiger-result{margin:12px auto 4px;max-width:560px;padding:10px 12px;border-radius:12px;text-align:center;font-weight:850;background:rgba(2,6,23,.6);border:1px solid rgba(254,243,199,.28)}.tiger-result.win{background:rgba(22,101,52,.72);border-color:#86efac;color:#dcfce7}.tiger-result.lose{background:rgba(127,29,29,.62);border-color:#fca5a5;color:#fee2e2}.tiger-result.spinning{animation:tigerPulse .65s infinite alternate}.tiger-history{display:flex;gap:6px;overflow-x:auto;padding:8px 2px 2px;margin-top:8px}.tiger-history span{white-space:nowrap;padding:5px 8px;border-radius:999px;background:rgba(2,6,23,.55);border:1px solid rgba(254,243,199,.18);font-size:.74rem}@keyframes tigerPulse{to{transform:scale(1.015);box-shadow:0 0 16px rgba(250,204,21,.35)}}
.tiger-reel-track{transition:none!important}.reel-spinning-real .tiger-reel-track{filter:blur(.6px)}

.mahjong-premium{padding:16px;border-radius:20px;background:radial-gradient(circle at top,#8a4b21,#4b1d0a 68%,#271006);border:1px solid #d6a46a;overflow:hidden}.mahjong-premium.jade{background:radial-gradient(circle at top,#7f4a21,#3d2415 58%,#173d2b)}.mahjong-premium.imperial{background:radial-gradient(circle at top,#8b3a18,#4a130c 58%,#2a0808)}.mahjong-premium.sakura{background:radial-gradient(circle at top,#9f5f71,#5b2639 62%,#25111a)}.mahjong-premium.sapphire{background:radial-gradient(circle at top,#315d8f,#173b63 62%,#081a2f)}.mahjong-premium.classic{background:radial-gradient(circle at top,#9b6a3e,#55351e 62%,#27170d)}.mahjong-premium .mahjong-toolbar{color:#fff}.mahjong-premium .mahjong-toolbar select{min-height:40px;border-radius:10px;padding:0 10px}.mahjong-board.layered{grid-template-columns:repeat(8,minmax(52px,1fr));gap:7px;max-width:900px;padding:22px;margin:auto;perspective:900px}.mahjong-premium .mahjong-tile{position:relative;min-height:78px;padding:4px;border-radius:10px;border:1px solid #d8d8d8;background:linear-gradient(145deg,#fff,#eee8df);box-shadow:0 5px 0 #17864e,0 8px 14px #0008,inset 0 0 0 2px #fff;color:#111;transform:translateY(calc(var(--layer)*-1px)) rotate(calc(var(--tilt)*.35deg));transition:transform .15s,filter .15s,opacity .2s}.mahjong-premium .mahjong-tile:hover{transform:translateY(-5px) scale(1.03)}.mahjong-premium .mahjong-tile.selected{outline:4px solid #ffd34e;filter:brightness(1.08);transform:translateY(-7px) scale(1.05)}.mahjong-premium .mahjong-tile.removed{opacity:0;visibility:hidden}.mj-symbol{display:block;font-family:Georgia,'Times New Roman',serif;font-size:2rem;font-weight:900;line-height:1}.mj-symbol.bamboo,.mj-symbol.dragon-green{color:#087a3d}.mj-symbol.circle{color:#078447;text-shadow:12px 0 #c51f2d}.mj-symbol.wind{color:#171717}.mj-symbol.dragon-red{color:#c61d2e}.mahjong-tile small{display:block;color:#147b43;font-size:.68rem;margin-top:4px}
@media(max-width:900px){.mahjong-board.layered{grid-template-columns:repeat(6,minmax(48px,1fr));padding:14px}.mahjong-premium .mahjong-tile{min-height:68px}.mj-symbol{font-size:1.65rem}}
@media(max-width:600px){.tiger-bet-control{grid-template-columns:42px minmax(90px,150px) 42px}.bet-row{gap:5px}.bet-row button{padding:7px 8px}.mahjong-premium{padding:9px}.mahjong-board.layered{grid-template-columns:repeat(4,minmax(44px,1fr));gap:5px;padding:8px}.mahjong-premium .mahjong-tile{min-height:58px;border-radius:8px;box-shadow:0 3px 0 #17864e,0 5px 9px #0007,inset 0 0 0 1px #fff}.mj-symbol{font-size:1.35rem}}

/* v0.11.94 Games Logic & Classic Edition — isolated */
.bingo-quina-banner{margin:8px 0;padding:8px 10px;border-radius:10px;background:#7c3aed;color:#fff;font-weight:900;text-align:center}
.mahjong-board.classic-layout{position:relative;display:block;max-width:980px;height:560px;margin:auto;padding:0;overflow:auto;min-width:620px}
.mahjong-board.classic-layout .mahjong-tile{position:absolute;width:78px;height:98px;min-height:0;z-index:calc(10 + var(--z));transform:translate(calc(var(--z)*5px),calc(var(--z)*-5px));}
.mahjong-board.classic-layout .mahjong-tile.blocked{filter:brightness(.72) saturate(.7);cursor:not-allowed}
.mahjong-board.classic-layout .mahjong-tile.free{filter:brightness(1.05)}
.mahjong-board.classic-layout .mahjong-tile .mj-symbol{font-family:'Segoe UI Symbol','Apple Symbols',serif;font-size:2.6rem}
.sol-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.sol-toolbar label{display:flex;gap:6px;align-items:center}.sol-board{padding:14px;border-radius:16px;background:linear-gradient(145deg,#0b6623,#064e1b);min-height:560px;overflow:auto}.sol-top{display:grid;grid-template-columns:72px 72px 1fr repeat(4,72px);gap:10px;align-items:start;margin-bottom:18px}.sol-cols{display:grid;grid-template-columns:repeat(7,72px);gap:10px;align-items:start}.sol-col{position:relative;min-height:390px}.sol-col .sol-card{display:block;margin-bottom:-62px}.sol-card,.sol-pile{width:72px;height:96px;border-radius:9px;border:1px solid #d1d5db;background:#fff;box-shadow:0 3px 7px #0005;display:grid;place-items:center;position:relative;font-size:1.55rem}.sol-card b{position:absolute;left:6px;top:4px;font-size:.85rem}.sol-card span{font-size:2rem}.sol-card.red{color:#dc2626}.sol-card.black{color:#111827}.sol-card.back,.sol-pile.stock{color:#fff;background:repeating-linear-gradient(45deg,#1d4ed8 0 7px,#dbeafe 7px 10px);font-size:1.8rem}.sol-pile{background:rgba(255,255,255,.1);color:#d1fae5;border:2px dashed rgba(255,255,255,.35)}.sol-pile small{position:absolute;bottom:3px;right:5px;font-size:.65rem}.sol-spacer{min-width:20px}
#pinCanvas{display:block;width:100%;max-width:520px;height:auto;margin:auto;border-radius:18px;box-shadow:0 10px 30px #0007;touch-action:none}.pin-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;max-width:620px;margin:12px auto;touch-action:none}.pin-controls button{min-height:52px;font-weight:900;touch-action:none}
@media(max-width:760px){.mahjong-board.classic-layout{min-width:540px;height:470px}.mahjong-board.classic-layout .mahjong-tile{width:64px;height:82px}.mahjong-board.classic-layout .mahjong-tile .mj-symbol{font-size:2rem}.sol-board{min-width:610px}.sol-card,.sol-pile{width:64px;height:88px}.sol-top{grid-template-columns:64px 64px 1fr repeat(4,64px)}.sol-cols{grid-template-columns:repeat(7,64px)}}

/* v0.11.95 — Tiger state binding & Neon Pinball polish */
.fortune-tiger .slot-head b{display:inline-block;min-width:58px;font-variant-numeric:tabular-nums;color:#fde047;text-shadow:0 0 10px rgba(250,204,21,.35)}
.fortune-tiger .slot-head span{transition:transform .18s,border-color .18s,box-shadow .18s}
.fortune-tiger .slot-head span:has(b:not(:empty)){border-color:#b45309}
.pinball-shell{max-width:760px;margin:auto;padding:14px;border-radius:22px;background:radial-gradient(circle at top,#312e81,#111827 55%,#020617);border:1px solid rgba(34,211,238,.45);box-shadow:inset 0 0 35px rgba(34,211,238,.08)}
.pinball-topbar{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-bottom:12px;padding:10px 12px;border-radius:14px;background:rgba(2,6,23,.72);border:1px solid rgba(96,165,250,.35)}
.pinball-topbar b{display:block;color:#67e8f9;letter-spacing:.08em}.pinball-topbar small{display:block;color:#c4b5fd}.pinball-topbar span{color:#f8fafc;font-weight:850;font-variant-numeric:tabular-nums}
#pinCanvas{max-width:620px;border:2px solid rgba(34,211,238,.55);box-shadow:0 0 26px rgba(34,211,238,.22),0 12px 35px #0009;background:#020617}
.pin-controls button{border:1px solid rgba(34,211,238,.45);background:linear-gradient(180deg,#1e3a8a,#111827);color:#fff;box-shadow:inset 0 0 12px rgba(34,211,238,.16)}
.pin-controls button:active{transform:translateY(2px);box-shadow:inset 0 0 18px rgba(250,204,21,.35)}
@media(max-width:700px){.pinball-topbar{grid-template-columns:1fr auto}.pinball-topbar span{grid-column:1/-1;order:3}.pinball-shell{padding:8px}.pin-controls{grid-template-columns:1fr 90px 1fr}.pin-controls button{font-size:.82rem;padding:8px 5px}}

/* v0.12.0 — SPMC Adventure & Racing */
.adventure-shell,.racing-shell{max-width:980px;margin:auto;padding:12px;border-radius:20px;background:linear-gradient(145deg,#0f172a,#111827);border:1px solid #334155}
.adventure-hud,.racing-hud{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px;padding:9px 11px;border-radius:12px;background:#020617;color:#f8fafc}.adventure-hud span,.racing-hud span{margin-right:auto;font-weight:850}.adventure-hud select,.racing-hud select{min-height:38px;border-radius:9px;padding:0 10px}
#advCanvas,#raceCanvas{display:block;width:100%;height:auto;border-radius:16px;border:2px solid #334155;box-shadow:0 12px 30px #0008;background:#020617;touch-action:none}
.adventure-controls{display:grid;grid-template-columns:1fr 120px 1fr;gap:10px;max-width:560px;margin:12px auto 0;touch-action:none}.adventure-controls button,.racing-controls button{min-height:54px;font-weight:900;touch-action:none;user-select:none}
.racing-controls{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:8px;margin:12px auto 0;max-width:760px;touch-action:none}.racing-controls [data-race="turbo"]{background:linear-gradient(#f59e0b,#b45309);color:#fff}.racing-controls [data-race="gas"]{background:linear-gradient(#22c55e,#15803d);color:#fff}.racing-controls [data-race="brake"]{background:linear-gradient(#ef4444,#991b1b);color:#fff}
@media(max-width:700px){.adventure-shell,.racing-shell{padding:7px}.adventure-hud,.racing-hud{font-size:.82rem}.adventure-controls{grid-template-columns:1fr 96px 1fr}.racing-controls{grid-template-columns:repeat(5,1fr);gap:5px}.racing-controls button{min-height:48px;padding:7px 3px;font-size:.72rem}}

/* v0.12.1 — Adventure & Racing Premium (scoped) */
.adventure-shell.premium,.racing-shell.premium{background:linear-gradient(145deg,#07111f,#111827 55%,#0f172a);border:1px solid rgba(148,163,184,.28);box-shadow:0 18px 45px rgba(2,6,23,.32);overflow:hidden}
.adventure-titlebar,.racing-titlebar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;margin:-2px -2px 12px;border-radius:18px;background:linear-gradient(100deg,rgba(37,99,235,.28),rgba(124,58,237,.18));color:#f8fafc}
.adventure-titlebar strong,.racing-titlebar strong{display:block;font-size:1.15rem}.adventure-titlebar small,.racing-titlebar small{display:block;color:#cbd5e1;margin-top:2px}
.adv-stars,.race-position{padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(2,6,23,.55);font-weight:900;color:#fef3c7}
.adv-stage-wrap,.race-stage-wrap{position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(148,163,184,.28);background:#020617;box-shadow:inset 0 0 30px rgba(2,6,23,.6)}
.adv-progress{position:absolute;left:18px;right:18px;bottom:12px;height:7px;border-radius:999px;background:rgba(2,6,23,.55);overflow:hidden;pointer-events:none}.adv-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#22c55e,#facc15);border-radius:inherit;transition:width .15s linear}
.race-speedlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(110deg,transparent 0 80px,rgba(255,255,255,.035) 82px 84px);mix-blend-mode:screen}
.adventure-hud,.racing-hud{border:1px solid rgba(148,163,184,.18);box-shadow:0 8px 22px rgba(2,6,23,.2)}
.adventure-hud button,.racing-hud button{border-radius:10px;font-weight:850}.adventure-hud select,.racing-hud select{background:#fff;color:#111827}
.adventure-controls button,.racing-controls button{border-radius:14px;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 18px rgba(2,6,23,.28)}
.adventure-controls [data-adv="jump"]{background:linear-gradient(#f59e0b,#b45309);color:#fff}
@media(max-width:700px){.adventure-titlebar,.racing-titlebar{padding:10px 11px}.adventure-titlebar small,.racing-titlebar small{display:none}.adv-stars,.race-position{padding:6px 9px}.adventure-hud,.racing-hud{gap:6px}.adventure-hud span,.racing-hud span{flex-basis:100%;font-size:.78rem}.adventure-hud select,.racing-hud select{max-width:46%;font-size:.78rem}.adventure-controls button,.racing-controls button{min-height:52px}}

/* v0.12.2 — SPMC Racing 5-stage visual rebuild */
.racing-v2 .race-garage{display:grid;grid-template-columns:240px 1fr;gap:14px;align-items:stretch;margin-bottom:12px}.race-car-preview{position:relative;min-height:112px;border-radius:16px;overflow:hidden;background:radial-gradient(circle at 50% 85%,rgba(34,211,238,.24),transparent 55%),linear-gradient(145deg,#0f172a,#1e293b);border:1px solid rgba(148,163,184,.22)}.race-preview-glow{position:absolute;inset:auto 12% 10px;height:18px;border-radius:50%;background:rgba(34,211,238,.35);filter:blur(12px)}.race-preview-car{position:absolute;left:50%;top:20px;width:98px;height:72px;transform:translateX(-50%);border-radius:42% 42% 28% 28%;background:linear-gradient(135deg,#fff8,#22c55e 34%,#14532d);box-shadow:0 14px 24px rgba(0,0,0,.34)}.race-preview-car:before{content:"";position:absolute;left:22px;right:22px;top:11px;height:25px;border-radius:48% 48% 25% 25%;background:linear-gradient(#dbeafe,#334155)}.race-preview-car:after{content:"";position:absolute;left:-7px;right:-7px;bottom:8px;height:20px;border-left:10px solid #111827;border-right:10px solid #111827;border-radius:8px}.race-setup{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;padding:12px;border-radius:16px;background:rgba(2,6,23,.62);border:1px solid rgba(148,163,184,.18);align-items:end}.race-setup label{display:grid;gap:5px;color:#cbd5e1;font-size:.78rem;font-weight:800}.race-setup select{min-height:42px;border-radius:10px;padding:0 10px;background:#fff;color:#111827}.race-setup button{min-height:42px;border-radius:10px;font-weight:900}.race-stage-dots{display:flex;gap:6px}.race-stage-dots i{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-style:normal;font-weight:900;background:#1e293b;color:#cbd5e1;border:1px solid rgba(148,163,184,.18)}.premium-road{border:1px solid rgba(148,163,184,.22);box-shadow:inset 0 0 38px rgba(2,6,23,.45),0 18px 36px rgba(2,6,23,.28)}
@media(max-width:700px){.racing-v2 .race-garage{grid-template-columns:1fr}.race-car-preview{min-height:92px}.race-preview-car{top:12px;transform:translateX(-50%) scale(.86)}.race-setup{grid-template-columns:1fr 1fr}.race-setup button{grid-column:1/-1}.race-stage-dots{display:none}}

/* v0.12.3 — Games responsive audit (Games module only) */
.games-hub,.game-stage,.game-panel,.game-panel-head,.game-panel-head>*{min-width:0;box-sizing:border-box}
.game-stage{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}
.game-stage canvas,.game-panel canvas{max-width:100%;height:auto;display:block}
.game-actions,.tetris-controls,.shooter-touch-controls,.pin-controls,.adventure-controls,.racing-controls{touch-action:none}
.game-actions button,.tetris-controls button,.shooter-touch-controls button,.pin-controls button,.adventure-controls button,.racing-controls button{min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.game-menu button{min-height:58px}
.racing-controls{grid-template-columns:repeat(6,minmax(0,1fr));max-width:860px}
.racing-controls .race-auto-gas{background:linear-gradient(#475569,#1e293b);color:#fff;border-color:#64748b}
.racing-controls .race-auto-gas.active{background:linear-gradient(#38bdf8,#0369a1);box-shadow:0 0 0 2px rgba(56,189,248,.28),0 8px 18px rgba(2,132,199,.25)}
.racing-controls button.pressed{transform:translateY(2px) scale(.98);filter:brightness(1.16)}

@media (min-width:701px) and (max-width:1100px){
  .games-hero,.game-menu,.game-stage,.game-panel{padding:13px}
  .game-menu{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}
  .game-stage{min-height:360px}
  .chess-board.premium{grid-template-columns:repeat(8,clamp(42px,5.2vw,52px))}
  .chess-board.premium button{width:clamp(42px,5.2vw,52px);height:clamp(42px,5.2vw,52px);font-size:clamp(29px,4vw,36px)}
  .battle-premium-layout,.roulette-layout,.tetris-premium-layout{gap:12px}
  .racing-controls{max-width:820px}
}

@media (max-width:700px){
  .games-hub{gap:9px}
  .games-hero,.game-menu,.game-stage,.game-panel{padding:9px;border-radius:14px}
  .games-hero{gap:9px}.games-badge{margin-left:0}
  .game-menu{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .game-menu button{padding:8px 4px;font-size:.72rem;min-height:58px}
  .game-menu button span{font-size:1.05rem}
  .game-panel-head{align-items:flex-start;flex-direction:column;gap:6px}
  .game-actions{gap:6px}.game-actions button{flex:1 1 92px;padding:9px 7px}
  .ttt-board{grid-template-columns:repeat(3,min(24vw,78px))}.ttt-board button{height:min(24vw,78px)}
  .memory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .roulette-layout,.battle-premium-layout,.tetris-premium-layout,.dice-duel{grid-template-columns:1fr}
  .roulette-table,.battle-board.labeled,.chess-board.premium,.mahjong-board.classic-layout,.sol-board{margin-inline:auto}
  .uno-hand{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.uno-card{flex:0 0 auto}
  .bingo-card,.bingo-board,.bingo-layout{max-width:100%}
  .racing-controls{position:sticky;bottom:max(6px,env(safe-area-inset-bottom));z-index:12;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:7px;background:rgba(2,6,23,.94);border:1px solid rgba(148,163,184,.24);border-radius:14px;backdrop-filter:blur(10px)}
  .racing-controls button{min-height:54px;font-size:.76rem;padding:7px 3px}
  .racing-controls [data-race="left"],.racing-controls [data-race="right"]{font-size:1.35rem}
  .racing-controls [data-race="left"]{grid-column:1}.racing-controls [data-race="right"]{grid-column:3}
  .racing-controls [data-race="auto"]{grid-column:2;grid-row:1}
  .racing-controls [data-race="brake"]{grid-column:1;grid-row:2}
  .racing-controls [data-race="gas"]{grid-column:2;grid-row:2}
  .racing-controls [data-race="turbo"]{grid-column:3;grid-row:2}
  .race-stage-wrap canvas{max-height:58vh;object-fit:contain}
  .adventure-controls{position:sticky;bottom:max(6px,env(safe-area-inset-bottom));z-index:11;padding:6px;background:rgba(2,6,23,.9);border-radius:14px}
  #advCanvas,#raceCanvas,#pinCanvas,#shooterCanvas,#tetrisCanvas{width:100%!important;max-width:100%!important}
}

@media (max-width:430px){
  .game-menu{grid-template-columns:repeat(2,minmax(0,1fr))}
  .game-score-bar{gap:5px}.game-score-bar span{font-size:.68rem;padding:4px 7px}
  .racing-shell{padding:5px}.race-setup{grid-template-columns:1fr}.race-setup button{grid-column:auto}
  .race-car-preview{min-height:78px}.race-preview-car{transform:translateX(-50%) scale(.72)}
  .racing-controls button{min-height:50px;font-size:.68rem}
  .fortune-tiger .slot-head{grid-template-columns:1fr}.fortune-tiger .slot-head span:last-child{grid-column:auto}
  .letter-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.letter-grid button{padding:8px 2px}
}

@media (orientation:landscape) and (max-height:560px) and (pointer:coarse){
  .game-stage{min-height:0;padding:6px}
  .game-panel-head{margin-bottom:6px}
  #advCanvas,#raceCanvas,#pinCanvas,#shooterCanvas{max-height:64vh;width:auto!important;margin-inline:auto}
  .adventure-controls,.racing-controls,.pin-controls,.shooter-touch-controls{position:fixed;left:50%;bottom:max(4px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(96vw,760px);z-index:50;margin:0}
  .racing-controls{grid-template-columns:repeat(6,minmax(0,1fr))}
  .racing-controls [data-race]{grid-column:auto!important;grid-row:auto!important}
}

/* v0.12.4 — Portrait game fit + Racing control polish (Games only) */
@media (orientation:portrait) and (max-width:700px){

  /* Klondike: seven columns genuinely fit portrait width instead of being cut. */
  .sol-board{min-width:0!important;width:100%;max-width:100%;overflow:visible;padding:8px;min-height:520px}
  .sol-top,.sol-cols{width:100%;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
  .sol-top{margin-bottom:13px}
  .sol-spacer{min-width:0}
  .sol-card,.sol-pile{width:100%;height:auto;aspect-ratio:2.35/3.35;min-width:0;border-radius:6px;font-size:clamp(.72rem,3.5vw,1.05rem)}
  .sol-card b{left:3px;top:2px;font-size:clamp(.52rem,2.5vw,.72rem)}
  .sol-card span{font-size:clamp(.9rem,5vw,1.45rem)}
  .sol-col{min-width:0;min-height:330px}
  .sol-col .sol-card{margin-bottom:-70%}

  /* Mahjong classic layout: scale the original layered geometry only in portrait. */
  .mahjong-premium{overflow:visible}
  .mahjong-board.classic-layout{overflow:visible;transform-origin:top left;margin-left:auto;margin-right:auto}
}
@media (orientation:portrait) and (max-width:430px){
  .mahjong-board.classic-layout{transform:scale(.64);width:540px;min-width:540px;height:470px;margin-bottom:-169px;margin-left:calc((100% - 346px)/2)}
}
@media (orientation:portrait) and (max-width:380px){
  .mahjong-board.classic-layout{transform:scale(.57);margin-bottom:-202px;margin-left:calc((100% - 308px)/2)}
  .sol-board{padding:5px}.sol-top,.sol-cols{gap:2px}
}



/* v0.12.6 — Fortune Tiger portrait-width correction (mobile only) */
.fortune-tiger,
.fortune-tiger *{box-sizing:border-box}
.fortune-tiger{width:100%;max-width:760px;min-width:0;overflow:hidden}
.fortune-tiger .slot-head,
.fortune-tiger .slot-reels.modern,
.fortune-tiger .tiger-bet-control,
.fortune-tiger .game-actions,
.fortune-tiger .tiger-result,
.fortune-tiger .tiger-paytable,
.fortune-tiger .tiger-history{max-width:100%;min-width:0}
.fortune-tiger .slot-reels.modern{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
.fortune-tiger .slot-reels.modern>div,
.fortune-tiger .tiger-reel{width:auto!important;min-width:0!important;max-width:100%}
.fortune-tiger .tiger-reel-track,
.fortune-tiger .tiger-reel-track span{width:100%;min-width:0}
.fortune-tiger .game-actions>*{min-width:0}
.fortune-tiger .tiger-history{width:100%;overflow-x:auto;overscroll-behavior-inline:contain}

@media (orientation:portrait) and (max-width:700px){
  .game-stage{overflow-x:hidden}
  .fortune-tiger{margin-inline:0;padding:10px;border-radius:16px}
  .fortune-tiger .slot-reels.modern{gap:6px;padding:9px;box-shadow:inset 0 0 0 4px #fde68a}
  .fortune-tiger .tiger-reel{height:82px!important}
  .fortune-tiger .tiger-reel-track span{height:68px;min-height:68px;font-size:40px}
  .fortune-tiger .tiger-bet-control{grid-template-columns:44px minmax(0,1fr) 44px;width:min(100%,440px);margin-inline:auto}
  .fortune-tiger .bet-row{justify-content:center;width:100%}
  .fortune-tiger .bet-row button{flex:1 1 54px;max-width:78px;min-width:48px}
  .fortune-tiger .game-actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);width:100%}
  .fortune-tiger .game-actions button{width:100%;min-width:0}
}
@media (orientation:portrait) and (max-width:430px){
  .fortune-tiger{padding:8px}
  .fortune-tiger .tiger-title>span{font-size:40px}
  .fortune-tiger .tiger-title b{font-size:1.05rem}
  .fortune-tiger .slot-reels.modern{gap:4px;padding:7px}
  .fortune-tiger .tiger-reel{height:76px!important}
  .fortune-tiger .tiger-reel-track span{height:62px;min-height:62px;font-size:36px}
  .fortune-tiger .slot-head span{padding:7px 5px;font-size:.84rem}
  .fortune-tiger .tiger-bet-control{grid-template-columns:40px minmax(0,1fr) 40px;gap:6px}
  .fortune-tiger .tiger-paytable{gap:5px}
  .fortune-tiger .tiger-paytable span{padding:4px 6px;font-size:.7rem}
}


/* v0.12.7 — Fortune Tiger final portrait containment */
@media (orientation:portrait) and (max-width:700px){
  .game-stage{width:100%!important;max-width:100%!important;overflow-x:hidden!important;padding-inline:5px!important}
  .fortune-tiger{width:calc(100vw - 42px)!important;max-width:100%!important;margin:0 auto!important;padding:8px!important;overflow:visible!important}
  .fortune-tiger .tiger-title{max-width:100%;gap:8px}
  .fortune-tiger .tiger-title>span{font-size:36px}
  .fortune-tiger .tiger-title b{font-size:1rem;white-space:normal}
  .fortune-tiger .tiger-title small{font-size:.78rem;white-space:normal}
  .fortune-tiger .slot-head{width:100%;grid-template-columns:1fr!important}
  .fortune-tiger .slot-head span{width:100%;grid-column:auto!important}
  .fortune-tiger .bet-row{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;width:100%}
  .fortune-tiger .bet-row button{width:100%!important;min-width:0!important;max-width:none!important;padding:8px 2px!important}
  .fortune-tiger .game-actions{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)!important}
  .fortune-tiger .tiger-paytable{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .fortune-tiger .tiger-paytable span{text-align:center;min-width:0}
  .fortune-tiger .tiger-history{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;overflow:visible!important;width:100%!important}
  .fortune-tiger .tiger-history span{max-width:100%;white-space:normal;text-align:center}
  .fortune-tiger .muted{white-space:normal;overflow-wrap:anywhere}
}
@media (orientation:portrait) and (max-width:390px){
  .fortune-tiger{width:calc(100vw - 34px)!important;padding:6px!important}
  .fortune-tiger .slot-reels.modern{padding:6px!important;gap:3px!important}
  .fortune-tiger .tiger-reel{height:72px!important}
  .fortune-tiger .tiger-reel-track span{height:58px!important;min-height:58px!important;font-size:33px!important}
  .fortune-tiger .tiger-bet-control{grid-template-columns:38px minmax(0,1fr) 38px!important}
  .fortune-tiger .game-actions button{font-size:.88rem;padding:8px 4px}
}


/* v0.12.8 — Fortune Tiger exact reel centering on portrait phones */
.fortune-tiger .tiger-reel-track span{height:var(--tiger-row-h,96px)!important;min-height:var(--tiger-row-h,96px)!important}
@media (orientation:portrait) and (max-width:700px){
  .fortune-tiger .slot-reels.modern{align-items:stretch!important}
  .fortune-tiger .tiger-reel{display:block!important;overflow:hidden!important}
  .fortune-tiger .tiger-reel-track{width:100%!important;align-items:stretch!important}
  .fortune-tiger .tiger-reel-track span{display:grid!important;place-items:center!important;line-height:1!important;padding:0!important;margin:0!important}
}
