/* Keno: warm lottery drum, numbered ball field and readable draw result. */
.game-layout:has(.game-scene-keno){max-width:1060px;margin:14px auto;gap:12px}
.game-layout:has(.game-scene-keno)>.panel:first-child{border-color:#6a5632;background:linear-gradient(150deg,#211c12,#0e1110)}
.game-scene-keno{position:relative;overflow:hidden!important;border:1px solid #9a7543!important;border-radius:14px!important;background:radial-gradient(ellipse at 50% 46%,#574522,#282116 53%,#0d100e)!important;box-shadow:inset 0 0 70px #0009,0 18px 34px #0008}
.game-scene-keno .keno-balls span{border-color:#f3d98d!important}
.game-layout:has(.game-scene-keno) form{grid-template-columns:minmax(0,1fr) 170px;padding:13px;border-color:#574a30;background:#12110d}
.game-layout:has(.game-scene-keno) form button{min-height:48px}
.game-layout:has(.game-scene-keno) form small{grid-column:1/-1}
@media(max-width:700px){.game-layout:has(.game-scene-keno) form{grid-template-columns:1fr}.game-layout:has(.game-scene-keno) form button{grid-column:1}}

.game-layout:has(.game-scene-keno) .keno-select-field{grid-column:1/-1;display:grid;gap:9px;padding:12px;border:1px solid #56482e;border-radius:10px;background:linear-gradient(145deg,#1b1911,#11110e)}
.game-layout:has(.game-scene-keno) .keno-select-heading{display:flex;justify-content:space-between;align-items:center;color:#ede3c2}
.game-layout:has(.game-scene-keno) #kenoCount{color:#d8bf70;font-size:13px;font-variant-numeric:tabular-nums}
.game-layout:has(.game-scene-keno) .keno-picker{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.game-layout:has(.game-scene-keno) .keno-picker button{min-width:0;min-height:44px;padding:4px;border:1px solid #47402d;border-radius:7px;background:linear-gradient(145deg,#30291a,#171711);color:#e8dfc5;font-size:13px;font-weight:750;font-variant-numeric:tabular-nums;transition:transform .14s,border-color .14s,background .14s}
.game-layout:has(.game-scene-keno) .keno-picker button:hover{transform:translateY(-1px);border-color:#d6b85f}
.game-layout:has(.game-scene-keno) .keno-picker button[aria-pressed=true]{border-color:#f0d77b;background:radial-gradient(circle at 35% 25%,#fff1b2,#d3aa4d 55%,#795321);color:#241b0d;box-shadow:0 0 12px #e4c66d44,inset 0 1px #fff9}
.game-layout:has(.game-scene-keno) .keno-values{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:540px){.game-layout:has(.game-scene-keno) .keno-picker{grid-template-columns:repeat(5,minmax(0,1fr))}.game-layout:has(.game-scene-keno) .keno-picker button{min-height:44px}}
.game-scene-keno .keno-balls.keno-draw{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(34px,54px));justify-content:center;gap:clamp(5px,1vw,12px);width:min(100%,420px);margin:auto}
.game-scene-keno .keno-draw span{display:grid;place-items:center;width:clamp(34px,5vw,54px);height:clamp(34px,5vw,54px);border:1px solid #e8d28f;border-radius:50%;background:radial-gradient(circle at 32% 26%,#fff8d9,#d5b562 50%,#80632d);color:#201b10;font-size:clamp(12px,1.5vw,17px);font-weight:900;box-shadow:inset -5px -7px 10px #563d3555,0 9px 20px #0008}
.game-scene-keno .keno-draw span.is-drawn{animation:keno-ball-drop .42s cubic-bezier(.18,.76,.27,1.28) both}
@keyframes keno-ball-drop{0%{opacity:.25;transform:translateY(-30px) rotate(-35deg) scale(.68)}70%{opacity:1;transform:translateY(4px) rotate(7deg) scale(1.08)}100%{transform:translateY(0) rotate(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.game-scene-keno .keno-draw span.is-drawn{animation:none}}
