.keno-page{padding:24px;min-width:0}.keno-hero{display:grid;grid-template-columns:1fr 220px;gap:22px;align-items:center;margin-bottom:20px;padding:28px;border:1px solid #56328a;border-radius:18px;background:radial-gradient(circle at 85% 20%,#5f2f8f55,transparent 38%),linear-gradient(135deg,#101b31,#21123c);box-shadow:0 18px 50px #0005}.keno-kicker{font-weight:900;letter-spacing:.16em;color:#c998ff}.keno-hero h1{font-size:clamp(2rem,5vw,3.6rem);margin:.25rem 0}.keno-hero p{max-width:720px;color:#c7d2df;line-height:1.6}.coin-card{display:grid;place-items:center;padding:18px;border:1px solid #8b5bc0;border-radius:16px;background:#17102b;text-align:center}.coin-card>span{font-size:2rem}.coin-card small,.coin-card em{color:#bca9cf}.coin-card strong{font-size:3rem;color:#ffe082}.coin-card em{font-style:normal;font-weight:800}.keno-title-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.selected-count{display:flex;align-items:baseline;gap:5px;padding:10px 14px;border-radius:12px;background:#18102d}.selected-count strong{font-size:1.8rem;color:#d5a9ff}.keno-number-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:9px;margin:20px 0}.keno-number{aspect-ratio:1;border-radius:50%;border:1px solid #42536a;background:#0d2035;color:#fff;font-weight:900;cursor:pointer}.keno-number:hover{border-color:#bd8cff}.keno-number.selected{background:linear-gradient(135deg,#8d4bd1,#cf75ff);border-color:#efcdff;box-shadow:0 0 16px #ad5cff66}.keno-actions{display:flex;gap:10px;flex-wrap:wrap}.keno-message{min-height:1.4em}.keno-draw-balls,.keno-mini{display:flex;gap:8px;flex-wrap:wrap}.keno-ball{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:#17233b;font-weight:900;box-shadow:inset 0 -5px 9px #b5bfd0}.keno-ball.hit{background:#c770ff;color:#fff;box-shadow:0 0 14px #b85cff}.keno-mini .keno-ball{width:30px;height:30px;font-size:.8rem}.draw-time{color:#c998ff;font-weight:800}.keno-prizes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.keno-prizes>div{display:flex;justify-content:space-between;gap:12px;padding:14px;border:1px solid #2a4562;border-radius:10px;background:#091b2e}.keno-prizes .jackpot{grid-column:span 3;border-color:#9a61d2;background:#201037}.keno-prizes b{color:#fff}.keno-prizes span{color:#d5c2e9}.keno-note{color:#aebed0}.keno-history{display:grid;gap:10px}.keno-history-row{display:grid;grid-template-columns:220px 1fr;gap:14px;align-items:center;padding:13px;border:1px solid #203d58;border-radius:10px;background:#07192b}.keno-history-row div:first-child{display:grid;gap:4px}.keno-history-row small{color:#a8bbcb}.ticket-type.keno,.kind.keno{background:#6e37a5!important;color:#fff!important}.ticket-note.keno{color:#d9b7ff!important}@media(max-width:900px){.keno-hero{grid-template-columns:1fr}.coin-card{grid-template-columns:auto auto auto auto;justify-content:center;gap:12px}.coin-card strong{font-size:2rem}.keno-number-grid{grid-template-columns:repeat(5,1fr)}.keno-prizes{grid-template-columns:1fr}.keno-prizes .jackpot{grid-column:auto}.keno-history-row{grid-template-columns:1fr}.keno-page{padding:14px}}
/* Direct speelbare Keno-ballenmachine */
.keno-machine-layout{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(360px,1.1fr);gap:22px;align-items:center;margin-top:18px}.keno-machine-stage{display:grid;justify-items:center}.keno-machine{position:relative;width:320px;height:385px}.keno-machine-glass{position:absolute;left:35px;top:5px;width:250px;height:250px;border-radius:50%;border:7px solid #7247a0;background:radial-gradient(circle at 34% 26%,#fff3 0 7%,#54277ebf 38%,#170d2ce8 76%);box-shadow:inset 0 0 42px #c76cff55,0 0 0 5px #25163d,0 16px 44px #0008;overflow:hidden}.keno-machine-glass:after{content:'';position:absolute;inset:15px 36px auto;height:46px;border-radius:50%;background:linear-gradient(#fff3,#fff0);transform:rotate(-18deg)}.keno-machine-rotor{position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px;border:5px solid #74469b;border-radius:50%;opacity:.7}.keno-machine-rotor:before,.keno-machine-rotor:after{content:'';position:absolute;left:50px;top:-34px;width:8px;height:170px;border-radius:8px;background:#74469b}.keno-machine-rotor:after{transform:rotate(90deg)}.keno-machine-stage.running .keno-machine-rotor{animation:kenoRotor .55s linear infinite}.keno-mixer-balls{position:absolute;inset:0}.keno-mixer-ball{position:absolute;width:30px;height:30px;margin:-15px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(#fff,#e4d9ef);color:#221232;font-size:9px;font-weight:900;box-shadow:inset -3px -4px 6px #8b72a655,0 3px 7px #0007}.keno-machine-stage.running .keno-mixer-ball{animation:kenoMingle .72s ease-in-out infinite alternate}.keno-machine-neck{position:absolute;left:133px;top:248px;width:54px;height:44px;background:linear-gradient(90deg,#41245c,#a279bd,#41245c);border:3px solid #321847}.keno-machine-chute{position:absolute;left:156px;top:284px;width:108px;height:49px;border-bottom:15px solid #68428a;border-right:15px solid #68428a;border-radius:0 0 38px 0;transform:skewX(-22deg)}.keno-machine-base{position:absolute;left:66px;bottom:0;width:188px;height:58px;border-radius:18px 18px 8px 8px;background:linear-gradient(#542976,#211034);border:2px solid #8757aa;display:grid;place-items:center;color:#eed2ff;font-size:23px;font-weight:1000;letter-spacing:.17em;box-shadow:0 12px 26px #0008}.keno-machine-status{min-height:24px;margin:4px 0;color:#ceb7df;text-align:center;font-weight:800}.keno-draw-panel{min-height:350px;padding:20px;border:1px solid #563a75;border-radius:14px;background:#100920}.keno-output-label{display:block;margin-bottom:15px;font-size:11px;font-weight:900;letter-spacing:.13em;color:#d5a2ff}.keno-draw-panel .keno-draw-balls{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;min-height:122px}.keno-output-ball{width:58px;height:58px;margin:auto;font-size:18px;animation:kenoRollOut .55s cubic-bezier(.2,.9,.22,1.3) both}.keno-prize-result{display:grid;gap:5px;margin-top:20px;padding:16px;border:1px solid #45506a;border-radius:12px;background:#0b1930}.keno-prize-result.won{border-color:#9c62d0;background:linear-gradient(135deg,#29133d,#15142d);box-shadow:0 0 26px #a54cff22}.keno-prize-result strong{font-size:22px;color:#fff}.keno-prize-result span{font-weight:900;color:#d6b3f5}.keno-prize-result small{color:#9fb2c5}.keno-history-label{display:block;margin:3px 0 5px;color:#987bad;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.keno-history-row>div:nth-child(2){min-width:0}.keno-history-row .keno-mini.draw{margin-bottom:2px}.keno-number:disabled{cursor:default}.keno-actions button:disabled{opacity:.55;cursor:not-allowed}@keyframes kenoRotor{to{transform:rotate(360deg)}}@keyframes kenoMingle{0%{transform:translate(-14px,16px) rotate(0) scale(.92)}50%{transform:translate(18px,-19px) rotate(145deg) scale(1.05)}100%{transform:translate(-9px,-25px) rotate(280deg) scale(.96)}}@keyframes kenoRollOut{0%{opacity:0;transform:translate(-95px,-35px) rotate(-420deg) scale(.45)}70%{opacity:1;transform:translate(7px,0) rotate(18deg) scale(1.08)}100%{transform:none}}@media(prefers-reduced-motion:reduce){.keno-machine-stage.running .keno-machine-rotor,.keno-machine-stage.running .keno-mixer-ball,.keno-output-ball{animation:none!important}}@media(max-width:900px){.keno-machine-layout{grid-template-columns:1fr}.keno-draw-panel{width:100%;min-height:0}.keno-machine{transform:scale(.88);transform-origin:top center;margin-bottom:-42px}}@media(max-width:500px){.keno-machine{transform:scale(.76);margin-bottom:-88px}.keno-draw-panel{padding:14px 9px}.keno-draw-panel .keno-draw-balls{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.keno-output-ball{width:48px;height:48px;font-size:16px}}

/* Compacte Keno-layout: gelijk aan de rest van DagLot */
.keno-page{
  padding:18px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden;
}
.keno-hero{
  grid-template-columns:minmax(0,1fr) 160px!important;
  gap:16px!important;
  padding:20px!important;
  margin-bottom:16px!important;
  border-radius:14px!important;
}
.keno-hero h1{
  font-size:clamp(1.75rem,3vw,2.65rem)!important;
  line-height:1.08;
}
.keno-hero p{font-size:.95rem!important;line-height:1.5!important;margin-bottom:0}
.coin-card{padding:12px!important;border-radius:13px!important}
.coin-card>span{font-size:1.5rem!important}
.coin-card strong{font-size:2.25rem!important}
.keno-page .panel{padding:18px!important;margin-bottom:16px!important}
.keno-title-row h2{font-size:1.25rem!important}
.keno-number-grid{
  grid-template-columns:repeat(10,minmax(34px,1fr))!important;
  gap:7px!important;
  max-width:720px;
  margin:16px auto!important;
}
.keno-number{
  width:100%!important;
  max-width:54px!important;
  justify-self:center;
  font-size:.9rem!important;
}
.keno-machine-layout{
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:18px!important;
  max-width:850px;
  margin:14px auto 0!important;
}
.keno-machine{
  width:230px!important;
  height:290px!important;
  transform:none!important;
}
.keno-machine-glass{
  left:27px!important;top:4px!important;
  width:176px!important;height:176px!important;
  border-width:5px!important;
}
.keno-machine-rotor{
  width:78px!important;height:78px!important;
  margin:-39px!important;
}
.keno-machine-rotor:before,.keno-machine-rotor:after{
  left:34px!important;top:-24px!important;width:7px!important;height:120px!important;
}
.keno-machine-neck{left:95px!important;top:177px!important;width:40px!important;height:34px!important}
.keno-machine-chute{left:112px!important;top:204px!important;width:78px!important;height:24px!important}
.keno-machine-base{left:50px!important;top:225px!important;width:130px!important;height:48px!important;font-size:1rem!important}
.keno-mixer-ball{width:22px!important;height:22px!important;margin:-11px!important;font-size:7px!important}
.keno-ball{width:38px!important;height:38px!important;font-size:.9rem!important}
.keno-prizes{gap:8px!important}
.keno-prizes>div{padding:11px!important;font-size:.92rem}
.keno-history-row{grid-template-columns:180px 1fr!important;padding:11px!important}

@media(max-width:1050px){
  .keno-number-grid{grid-template-columns:repeat(5,minmax(38px,1fr))!important;max-width:480px}
  .keno-machine-layout{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .keno-page{padding:12px!important}
  .keno-hero{grid-template-columns:1fr!important;padding:16px!important}
  .coin-card{grid-template-columns:auto auto auto auto!important}
  .keno-machine{margin:auto}
  .keno-history-row{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .keno-number-grid{grid-template-columns:repeat(5,1fr)!important;gap:6px!important}
  .keno-page .panel{padding:14px!important}
  .keno-actions .btn{flex:1 1 100%}
}

/* Laatste 3 gewonnen Keno-prijzen */
.keno-recent-prizes{padding:16px 18px!important}
.keno-recent-prizes .keno-title-row{margin-bottom:10px}
.keno-recent-prizes h2{margin:0 0 3px}
.keno-recent-prizes p{margin:0;color:#aebed0}
.keno-recent-prize-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.keno-recent-prize{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 10px;align-items:center;padding:12px;border:1px solid #35506b;border-radius:12px;background:#081b2f;min-width:0}
.keno-recent-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#4f2a72;color:#fff;font-weight:900;font-size:.8rem}
.keno-recent-player{display:flex;align-items:center;gap:9px;min-width:0;color:#fff;text-decoration:none}
.keno-recent-player-text{display:grid;min-width:0}
.keno-recent-player strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.keno-recent-player small{color:#9fb3c7;font-size:.78rem}
.keno-recent-avatar{width:38px;height:38px;min-width:38px;border-radius:50%;background-position:center;background-size:cover;background-repeat:no-repeat;border:2px solid #8c5fc1}
.keno-recent-award{grid-column:1/-1;padding:7px 9px;border-radius:8px;background:#17102b;color:#ffe082;font-weight:800;text-align:center;font-size:.88rem}
.keno-recent-empty{grid-column:1/-1;padding:8px 0!important}
@media(max-width:1050px){.keno-recent-prize-list{grid-template-columns:1fr}}

/* Nieuwe Keno-prijzentabel: 3 t/m 10 goed */
.keno-prizes{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.keno-prizes .jackpot{
  grid-column:auto!important;
}
@media(max-width:1050px){
  .keno-prizes{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .keno-prizes{grid-template-columns:1fr!important}
}
