*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#050403;color:#f3ead8;font-family:Georgia,'Times New Roman',serif}
body{overflow-x:hidden;background:radial-gradient(circle at 50% 12%,rgba(173,124,42,.2),transparent 34%),linear-gradient(180deg,#060403,#0d0905 52%,#040302)}
button{font:inherit}.game{min-height:100vh;width:100%;max-width:1120px;margin:0 auto;display:flex;flex-direction:column;gap:16px;padding:18px 16px 26px;position:relative}.game:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 44%,rgba(173,124,42,.13),transparent 38%);opacity:.9}.message-panel,.opponent-card,.table-zone,.player-zone,.round-info,.button,.pot-box,.stack-box{border:1px solid rgba(205,153,63,.5);background:linear-gradient(rgba(18,11,5,.82),rgba(5,3,2,.92));box-shadow:inset 0 0 36px rgba(214,166,75,.06),0 18px 55px rgba(0,0,0,.32)}.message-panel{position:relative;z-index:1;min-height:58px;text-align:center;color:#eadfca;padding:16px 18px;font-size:clamp(16px,2.3vw,22px);line-height:1.45;font-weight:700}.opponents{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;z-index:1}.opponent-card{padding:18px 16px 16px;text-align:center}.opponent-card h2,.table-zone h2,.player-zone h2{margin:0 0 14px;text-transform:uppercase;letter-spacing:.2em;font-size:clamp(13px,2vw,18px);font-weight:600;color:#d2a95d}.opponent-hand{display:flex;justify-content:center;gap:12px;margin:0 auto 14px}.opponent-hand img{width:clamp(48px,7vw,82px);aspect-ratio:2.5/3.5;object-fit:contain;border-radius:6px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.5));transition:transform .35s ease, filter .35s ease}.opponent-hand.revealed img{filter:drop-shadow(0 0 13px rgba(221,174,84,.24)) drop-shadow(0 8px 12px rgba(0,0,0,.5))}.label,.stack-box span,.pot-box span,.round-info span{display:block;margin:0;text-transform:uppercase;letter-spacing:.24em;font-size:12px;color:#cda45a}.stack{margin:2px 0 12px;color:#fff0d5;font-size:clamp(22px,3vw,32px)}.action{margin:0 auto;min-height:38px;display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.18em;font-size:13px;color:#f0e0bf;border:1px solid rgba(205,153,63,.42);background:rgba(0,0,0,.22)}.table-zone{position:relative;z-index:1;padding:18px 18px 20px;text-align:center}.table{display:grid;grid-template-columns:repeat(5,minmax(44px,1fr));gap:14px;align-items:center;justify-items:center;padding:6px 8px 18px}.card{width:clamp(56px,9.5vw,112px);aspect-ratio:2.5/3.5;position:relative;perspective:800px}.card-face{position:absolute;inset:0;backface-visibility:hidden;transition:transform .5s cubic-bezier(.22,.61,.36,1);filter:drop-shadow(0 8px 13px rgba(0,0,0,.45))}.card img{width:100%;height:100%;display:block}.card-front{transform:rotateY(180deg)}.card.show .card-back,.card.flipped .card-back,.card.turned .card-back{transform:rotateY(180deg)}.card.show .card-front,.card.flipped .card-front,.card.turned .card-front{transform:rotateY(0)}.pot-box{width:min(260px,70%);margin:-6px auto 0;padding:12px 18px;text-transform:uppercase}.pot-box strong,.stack-box strong,.round-info strong{display:block;color:#fff0d5;font-size:clamp(27px,4.6vw,42px);font-weight:400;letter-spacing:.04em}.player-zone{position:relative;z-index:1;text-align:center;padding:18px 18px 20px}.hand{display:flex;gap:16px;justify-content:center;align-items:center;min-height:150px}.player-card{width:clamp(78px,13vw,128px)}.stack-box{width:min(270px,72%);margin:10px auto 0;padding:10px 18px;background:linear-gradient(rgba(17,10,5,.86),rgba(4,3,2,.95))}.round-info{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0;background:linear-gradient(rgba(19,12,6,.9),rgba(6,4,2,.95))}.round-info div{padding:13px 12px;text-align:center;border-right:1px solid rgba(205,153,63,.28)}.round-info div:last-child{border-right:0}.round-info strong{font-size:clamp(20px,3vw,29px)}.buttons-row{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.button{width:100%;min-height:72px;color:#f8eed8;text-transform:uppercase;letter-spacing:.2em;font-size:clamp(17px,2.8vw,29px);cursor:pointer}.button strong{display:block;font-weight:400;letter-spacing:.05em}.button:not(:disabled):active{transform:translateY(1px)}.button.fold{color:#ff3434;background:linear-gradient(rgba(70,12,7,.75),rgba(20,4,2,.95))}.button.bet{color:#e3b663}.poker-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:18px;color:#d7c6a8;text-transform:uppercase;letter-spacing:.18em;font-size:clamp(12px,2vw,18px);padding:4px 0 0}.poker-footer p{margin:0}.poker-footer span{width:48px;height:48px;border:1px solid rgba(205,153,63,.5);border-radius:999px;display:grid;place-items:center;color:#d2a95d}.help-button{position:fixed;right:14px;top:14px;z-index:10;width:42px;height:42px;border:1px solid rgba(205,153,63,.65);border-radius:999px;background:rgba(10,6,3,.8);color:#e8c985;font-size:24px;display:grid;place-items:center}.modal{display:none;position:fixed;z-index:30;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(4px);padding:18px;overflow:auto}.modal.show{display:block}.modal-content{width:min(720px,92vw);margin:36px auto;border:1px solid rgba(210,161,72,.55);background:linear-gradient(rgba(31,21,10,.95),rgba(9,6,3,.96));padding:26px;color:#eadfca;box-shadow:0 24px 80px rgba(0,0,0,.55)}.close{float:right;border:0;background:transparent;font-size:34px;cursor:pointer;color:#e2bd6e}.modal-heading{text-transform:uppercase;letter-spacing:.24em;color:#d0a451}.instructions{font-size:18px;line-height:1.7}.winning-card{outline:2px solid rgba(227,189,100,.92);border-radius:6px;filter:drop-shadow(0 0 16px rgba(227,189,100,.42))}
@media(max-width:760px){.game{padding:12px 10px 22px;gap:12px}.message-panel{min-height:54px;font-size:15px;padding:13px 12px}.opponents{grid-template-columns:repeat(3,1fr);gap:7px}.opponent-card{padding:10px 6px}.opponent-card h2{font-size:10px;letter-spacing:.12em;margin-bottom:8px}.opponent-hand{gap:4px;margin-bottom:8px}.opponent-hand img{width:min(11vw,42px);border-radius:4px}.label,.stack-box span,.pot-box span,.round-info span{font-size:9px;letter-spacing:.18em}.stack{font-size:16px;margin-bottom:7px}.action{min-height:28px;font-size:9px;letter-spacing:.12em}.table-zone{padding:12px 7px 13px}.table-zone h2,.player-zone h2{font-size:12px;letter-spacing:.2em;margin-bottom:10px}.table{gap:5px;padding:2px 2px 12px}.card{width:min(17vw,62px)}.pot-box{width:54%;padding:9px 10px}.pot-box strong,.stack-box strong{font-size:25px}.player-zone{padding:12px 10px 14px}.hand{min-height:110px;gap:12px}.player-card{width:min(22vw,82px)}.stack-box{width:52%;padding:8px 10px}.round-info div{padding:10px 5px}.round-info strong{font-size:17px}.buttons-row{gap:8px}.button{min-height:61px;font-size:18px;letter-spacing:.13em}.poker-footer{font-size:10px;letter-spacing:.12em;gap:10px}.poker-footer span{width:38px;height:38px}.help-button{width:38px;height:38px;right:10px;top:10px}.modal-content{padding:22px 18px;margin:22px auto}.instructions{font-size:15px}}
@media(max-width:390px){.opponents{gap:5px}.opponent-card{padding:9px 4px}.opponent-hand img{width:34px}.card{width:50px}.player-card{width:72px}.button{font-size:16px;letter-spacing:.11em}.table{gap:4px}.round-info strong{font-size:15px}.pot-box,.stack-box{width:60%}}


.opponent-card,
.player-zone{
  transition:border-color .22s ease, box-shadow .22s ease, filter .22s ease, transform .22s ease;
}
.opponent-card.active-turn,
.player-zone.active-turn{
  border-color:rgba(74, 213, 115, .95);
  box-shadow:
    0 0 0 1px rgba(74,213,115,.38),
    0 0 24px rgba(74,213,115,.28),
    inset 0 0 32px rgba(74,213,115,.08),
    0 18px 55px rgba(0,0,0,.34);
  filter:brightness(1.12);
}
.opponent-card.active-turn .action,
.player-zone.active-turn .stack-box{
  border-color:rgba(74,213,115,.72);
  color:#dfffe5;
  box-shadow:0 0 16px rgba(74,213,115,.16);
}
.opponent-card.folded-player{
  opacity:.58;
  filter:saturate(.55) brightness(.75);
}
.button.is-disabled{
  opacity:.45;
  cursor:not-allowed;
  filter:saturate(.55);
}

@media(max-width:760px){
  .opponent-card.active-turn,
  .player-zone.active-turn{
    box-shadow:
      0 0 0 1px rgba(74,213,115,.45),
      0 0 18px rgba(74,213,115,.3),
      inset 0 0 22px rgba(74,213,115,.08);
  }
}



html,body{
  background:#030201;
}
body{
  background:
    radial-gradient(circle at 50% 22%, rgba(204,151,62,.16), transparent 34%),
    linear-gradient(180deg,#050302,#0a0603 58%,#030201);
}
.game{
  max-width:960px;
  padding:14px 14px 28px;
  gap:12px;
  background:
    linear-gradient(rgba(2,1,0,.26), rgba(2,1,0,.72)),
    url('/images/poker-table-vertical.webp') center top / cover no-repeat;
  border-left:1px solid rgba(205,153,63,.28);
  border-right:1px solid rgba(205,153,63,.28);
  box-shadow:inset 0 0 80px rgba(0,0,0,.46);
}
.game:before{
  background:
    radial-gradient(circle at 50% 42%,rgba(205,153,63,.16),transparent 36%),
    linear-gradient(90deg,rgba(0,0,0,.34),transparent 18%,transparent 82%,rgba(0,0,0,.34));
}
.help-button{display:none!important;}
.poker-footer span:last-child,
.poker-footer .help-button{display:none!important;}
.message-panel{
  min-height:50px;
  padding:13px 16px;
  font-size:clamp(15px,2vw,20px);
  background:linear-gradient(rgba(12,7,3,.72),rgba(4,2,1,.84));
}
.opponents{
  gap:10px;
  align-items:start;
}
.opponent-card{
  padding:12px 10px 11px;
  transform:scale(.9);
  transform-origin:center top;
}
.opponent-card h2{margin-bottom:10px;}
.opponent-hand{gap:8px;margin-bottom:9px;}
.opponent-hand img{width:clamp(40px,5.6vw,62px);}
.stack{font-size:clamp(17px,2.2vw,24px);margin-bottom:8px;}
.action{min-height:32px;font-size:11px;}
.table-zone,.player-zone{
  background:linear-gradient(rgba(16,9,4,.58),rgba(3,2,1,.74));
  backdrop-filter:blur(1px);
}
.table-zone{padding-top:16px;}
.table{gap:10px;padding-bottom:14px;}
.card{width:clamp(54px,8vw,96px);}
.player-card{width:clamp(76px,11vw,114px);}
.opponent-card.active-turn,
.player-zone.active-turn{
  border-color:rgba(74,213,115,1)!important;
  box-shadow:
    0 0 0 1px rgba(74,213,115,.64),
    0 0 30px rgba(74,213,115,.34),
    inset 0 0 34px rgba(74,213,115,.10),
    0 18px 55px rgba(0,0,0,.36)!important;
}
.opponent-card.active-turn .action,
.player-zone.active-turn .stack-box{
  border-color:rgba(74,213,115,.9)!important;
  color:#e8ffec!important;
}
@media(max-width:760px){
  .game{
    max-width:100%;
    padding:10px 8px 20px;
    gap:10px;
    background:
      linear-gradient(rgba(2,1,0,.18), rgba(2,1,0,.66)),
      url('/images/poker-table-vertical.webp') center top / cover no-repeat;
  }
  .message-panel{font-size:14px;min-height:46px;padding:11px 10px;}
  .opponents{gap:5px;}
  .opponent-card{
    padding:8px 4px 7px;
    transform:scale(.82);
    margin:0 -5px -22px;
  }
  .opponent-card h2{font-size:9px;letter-spacing:.11em;margin-bottom:6px;}
  .opponent-hand{gap:3px;margin-bottom:5px;}
  .opponent-hand img{width:min(9vw,34px);}
  .stack{font-size:14px;margin:0 0 5px;}
  .action{min-height:25px;font-size:8px;letter-spacing:.1em;}
  .table-zone{padding:10px 6px 12px;}
  .table{gap:4px;padding-bottom:10px;}
  .card{width:min(15.5vw,55px);}
  .player-zone{padding:10px 8px 12px;}
  .hand{min-height:102px;}
  .player-card{width:min(21vw,78px);}
  .buttons-row{gap:7px;}
  .button{min-height:58px;font-size:16px;}
}
@media(max-width:390px){
  .opponent-card{transform:scale(.78);margin:0 -7px -25px;}
  .opponent-hand img{width:30px;}
  .card{width:47px;}
  .player-card{width:69px;}
  .button{min-height:54px;font-size:15px;}
}



html,body{min-height:auto!important;}
body{overflow:hidden!important;}
.game{
  min-height:0!important;
  max-width:820px!important;
  padding:10px 12px 12px!important;
  gap:8px!important;
  background:
    linear-gradient(rgba(2,1,0,.12), rgba(2,1,0,.58)),
    url('/images/poker-table-vertical.webp') center 38% / cover no-repeat!important;
  background-color:#050302!important;
}
.game:before{opacity:.55!important;}
.message-panel{min-height:42px!important;padding:10px 14px!important;font-size:clamp(14px,1.8vw,18px)!important;}
.opponents{gap:6px!important;}
.opponent-card{
  padding:8px 7px 7px!important;
  transform:scale(.68)!important;
  margin:0 -18px -48px!important;
  transform-origin:center top!important;
}
.opponent-card h2{font-size:12px!important;letter-spacing:.13em!important;margin-bottom:7px!important;}
.opponent-hand{gap:5px!important;margin-bottom:5px!important;}
.opponent-hand img{width:42px!important;border-radius:4px!important;}
.stack{font-size:18px!important;margin:0 0 5px!important;}
.action{min-height:26px!important;font-size:9px!important;letter-spacing:.1em!important;}
.table-zone{padding:12px 10px 10px!important;}
.table-zone h2,.player-zone h2{font-size:15px!important;margin-bottom:9px!important;}
.table{gap:8px!important;padding:2px 4px 10px!important;}
.card{width:clamp(52px,7vw,82px)!important;}
.pot-box{padding:8px 12px!important;margin:-2px auto 0!important;}
.pot-box strong,.stack-box strong{font-size:clamp(24px,3.5vw,34px)!important;}
.player-zone{padding:12px 12px 12px!important;}
.hand{min-height:106px!important;gap:12px!important;}
.player-card{width:clamp(72px,10vw,102px)!important;}
.stack-box{margin-top:6px!important;padding:8px 12px!important;}
.round-info div{padding:9px 8px!important;}
.round-info strong{font-size:clamp(17px,2.2vw,24px)!important;}
.buttons-row{gap:8px!important;}
.button{min-height:58px!important;font-size:clamp(15px,2.2vw,22px)!important;}
.poker-footer{display:none!important;}
.winner-seat{
  border-color:rgba(229,186,87,1)!important;
  box-shadow:
    0 0 0 1px rgba(229,186,87,.66),
    0 0 34px rgba(229,186,87,.38),
    inset 0 0 38px rgba(229,186,87,.12)!important;
  filter:brightness(1.18)!important;
}
.message-panel.result-win{
  color:#fff7df!important;
  border-color:rgba(229,186,87,.9)!important;
  box-shadow:0 0 28px rgba(229,186,87,.22), inset 0 0 28px rgba(229,186,87,.08)!important;
}
.winning-opponent-card{
  outline:2px solid rgba(229,186,87,.95)!important;
  box-shadow:0 0 18px rgba(229,186,87,.42)!important;
}
.opponent-card.active-turn,.player-zone.active-turn{
  animation:activeSeatPulse 1.45s ease-in-out infinite;
}
@keyframes activeSeatPulse{
  0%,100%{box-shadow:0 0 0 1px rgba(74,213,115,.52),0 0 18px rgba(74,213,115,.22),inset 0 0 24px rgba(74,213,115,.07)}
  50%{box-shadow:0 0 0 1px rgba(74,213,115,.95),0 0 34px rgba(74,213,115,.38),inset 0 0 34px rgba(74,213,115,.11)}
}
@media(max-width:760px){
  body{overflow:hidden!important;}
  .game{
    padding:8px 8px 10px!important;
    gap:7px!important;
    background:
      linear-gradient(rgba(2,1,0,.10), rgba(2,1,0,.56)),
      url('/images/poker-table-vertical.webp') center 35% / cover no-repeat!important;
  }
  .message-panel{min-height:40px!important;padding:9px 10px!important;font-size:13px!important;line-height:1.25!important;}
  .opponents{gap:3px!important;}
  .opponent-card{
    transform:scale(.58)!important;
    margin:0 -18px -54px!important;
    padding:7px 4px 6px!important;
  }
  .opponent-card h2{font-size:8px!important;letter-spacing:.09em!important;margin-bottom:5px!important;}
  .opponent-hand img{width:28px!important;}
  .stack{font-size:12px!important;margin-bottom:4px!important;}
  .action{min-height:22px!important;font-size:7px!important;}
  .table-zone{padding:9px 6px 8px!important;}
  .table-zone h2,.player-zone h2{font-size:11px!important;letter-spacing:.18em!important;margin-bottom:7px!important;}
  .table{gap:5px!important;padding:1px 1px 8px!important;}
  .card{width:min(14.5vw,52px)!important;}
  .pot-box{width:56%!important;padding:7px 8px!important;}
  .player-zone{padding:9px 8px 9px!important;}
  .hand{min-height:88px!important;gap:10px!important;}
  .player-card{width:min(19vw,70px)!important;}
  .stack-box{width:54%!important;padding:7px 8px!important;margin-top:4px!important;}
  .round-info div{padding:7px 3px!important;}
  .round-info span{font-size:8px!important;}
  .round-info strong{font-size:14px!important;}
  .button{min-height:50px!important;font-size:14px!important;letter-spacing:.1em!important;}
  .buttons-row{gap:6px!important;}
}
@media(max-width:390px){
  .opponent-card{transform:scale(.54)!important;margin:0 -19px -58px!important;}
  .opponent-hand img{width:25px!important;}
  .card{width:45px!important;}
  .player-card{width:64px!important;}
  .button{min-height:47px!important;font-size:13px!important;}
}


html, body{
  min-height:0!important;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
}
.game{
  min-height:0!important;
  height:auto!important;
  max-width:780px!important;
  padding-bottom:14px!important;
  margin-bottom:0!important;
  background:
    linear-gradient(rgba(2,1,0,.06), rgba(2,1,0,.42)),
    url('/images/poker-table-vertical.webp') center 42% / cover no-repeat!important;
}
.opponent-card{
  transform:scale(.56)!important;
  margin:0 -30px -74px!important;
}
.opponent-hand img{width:36px!important;}
.opponent-card h2{font-size:10px!important;}
.stack{font-size:15px!important;}
.action{min-height:23px!important;font-size:8px!important;}
.table-zone{padding-top:10px!important;}
.player-zone{padding-bottom:10px!important;}
.buttons-row.is-hand-over{
  grid-template-columns:1fr!important;
}
.button.next-hand{
  display:none;
  color:#f8eed8;
  background:linear-gradient(rgba(18,11,5,.88),rgba(5,3,2,.96));
  border-color:rgba(205,153,63,.62);
}
.buttons-row.is-hand-over .button.next-hand{
  display:block;
}
.buttons-row.is-hand-over .fold,
.buttons-row.is-hand-over .call,
.buttons-row.is-hand-over .bet{
  display:none!important;
}
.button[hidden]{display:none!important;}
.buttons-row:has(.call[hidden]){
  grid-template-columns:1fr 1fr;
}
.buttons-row:has(.call[hidden]) .fold,
.buttons-row:has(.call[hidden]) .bet{
  display:block;
}
.buttons-row:has(.call[hidden]):has(.bet[hidden]){
  grid-template-columns:1fr!important;
}
.buttons-row:has(.call[hidden]):has(.bet[hidden]) .fold{
  display:block;
}
@media(max-width:760px){
  .game{
    max-width:100%!important;
    padding:7px 8px 10px!important;
    gap:6px!important;
    background:
      linear-gradient(rgba(2,1,0,.05), rgba(2,1,0,.38)),
      url('/images/poker-table-vertical.webp') center 44% / cover no-repeat!important;
  }
  .message-panel{min-height:36px!important;padding:8px 9px!important;font-size:12px!important;}
  .opponents{gap:2px!important;margin-bottom:-6px!important;}
  .opponent-card{
    transform:scale(.46)!important;
    margin:0 -25px -68px!important;
    padding:6px 4px!important;
  }
  .opponent-card h2{font-size:7px!important;margin-bottom:4px!important;}
  .opponent-hand{margin-bottom:3px!important;}
  .opponent-hand img{width:22px!important;}
  .stack{font-size:10px!important;margin-bottom:3px!important;}
  .action{min-height:18px!important;font-size:6px!important;}
  .table-zone{padding:8px 6px 7px!important;}
  .table{padding-bottom:7px!important;}
  .card{width:min(14vw,48px)!important;}
  .pot-box{padding:6px 8px!important;}
  .player-zone{padding:8px 7px 8px!important;}
  .hand{min-height:82px!important;}
  .player-card{width:min(18vw,66px)!important;}
  .round-info div{padding:6px 3px!important;}
  .button{min-height:46px!important;font-size:13px!important;}
}
@media(max-width:390px){
  .opponent-card{transform:scale(.42)!important;margin:0 -26px -73px!important;}
  .opponent-hand img{width:20px!important;}
  .card{width:42px!important;}
  .player-card{width:59px!important;}
  .button{min-height:43px!important;font-size:12px!important;}
}


html,body{height:auto!important;min-height:0!important;overflow-x:hidden!important;background:#050403!important;}
body{overflow-y:hidden!important;}
.game{
  min-height:0!important;
  height:auto!important;
  max-width:760px!important;
  margin:0 auto!important;
  padding:8px 10px 18px!important;
  gap:8px!important;
  background:
    radial-gradient(ellipse at 50% 34%, rgba(213,163,78,.10), transparent 42%),
    linear-gradient(rgba(2,1,0,.04), rgba(2,1,0,.46)),
    url('/images/poker-table-vertical.webp') center 38% / cover no-repeat!important;
}
.message-panel{min-height:42px!important;padding:9px 12px!important;font-size:14px!important;line-height:1.25!important;}
.opponents{gap:4px!important;margin:-2px 0 -18px!important;align-items:start!important;}
.opponent-card{
  width:31%!important;
  transform:scale(.50)!important;
  transform-origin:top center!important;
  margin:0 -34px -82px!important;
  padding:6px 4px!important;
  opacity:.82;
}
.opponent-card.active-turn{opacity:1!important;}
.opponent-card h2{font-size:8px!important;letter-spacing:.10em!important;margin-bottom:4px!important;}
.opponent-hand{gap:4px!important;margin-bottom:3px!important;}
.opponent-hand img{width:22px!important;border-radius:3px!important;}
.stack{font-size:10px!important;margin:0 0 2px!important;}
.label{font-size:7px!important;letter-spacing:.12em!important;}
.action{min-height:18px!important;font-size:6px!important;letter-spacing:.08em!important;padding:3px!important;}
.table-zone{padding:9px 7px 8px!important;}
.table-zone h2,.player-zone h2{font-size:12px!important;letter-spacing:.22em!important;margin-bottom:8px!important;}
.table{gap:6px!important;padding:2px 2px 8px!important;}
.card{width:min(14vw,50px)!important;}
.pot-box{width:min(56%,280px)!important;padding:7px 8px!important;margin:0 auto!important;}
.pot-box strong,.stack-box strong{font-size:clamp(24px,7vw,34px)!important;}
.player-zone{padding:9px 8px 10px!important;}
.hand{min-height:86px!important;gap:10px!important;}
.player-card{width:min(18vw,68px)!important;}
.stack-box{width:min(54%,280px)!important;padding:7px 8px!important;margin-top:4px!important;}
.round-info div{padding:7px 3px!important;}
.round-info span{font-size:8px!important;letter-spacing:.11em!important;}
.round-info strong{font-size:15px!important;}
.buttons-row{gap:7px!important;margin-bottom:0!important;}
.button{min-height:48px!important;font-size:13px!important;letter-spacing:.1em!important;}
.button.is-disabled{opacity:.32!important;filter:grayscale(.6)!important;pointer-events:none!important;}
.buttons-row.is-hand-over{grid-template-columns:1fr!important;}
.buttons-row.is-hand-over .button.next-hand{display:block!important;min-height:54px!important;}
.buttons-row.is-hand-over .fold,.buttons-row.is-hand-over .call,.buttons-row.is-hand-over .bet{display:none!important;}
.button[hidden]{display:none!important;}
.poker-footer{display:none!important;}
.opponent-card.all-in-player,.player-zone.all-in-player{border-color:rgba(229,186,87,.78)!important;}
.opponent-card.folded-player{opacity:.36!important;filter:grayscale(.65) brightness(.7)!important;}
@media(max-width:390px){
  .game{padding:7px 8px 14px!important;gap:7px!important;background-position:center 36%!important;}
  .message-panel{font-size:12px!important;min-height:38px!important;}
  .opponent-card{transform:scale(.44)!important;margin:0 -30px -82px!important;}
  .opponent-hand img{width:20px!important;}
  .card{width:43px!important;}
  .player-card{width:60px!important;}
  .button{min-height:44px!important;font-size:12px!important;}
  .round-info strong{font-size:13px!important;}
}


html, body{
  min-height:0!important;
  height:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
.game{
  min-height:0!important;
  height:auto!important;
  max-width:760px!important;
  margin:0 auto!important;
  padding:12px 14px 18px!important;
  background:
    linear-gradient(rgba(2,1,0,.20), rgba(2,1,0,.58)),
    url('/images/poker-table-vertical.webp') center 42% / cover no-repeat!important;
}
.opponents{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
  margin:0 0 10px!important;
  position:relative!important;
  z-index:3!important;
  overflow:visible!important;
}
.opponent-card{
  transform:none!important;
  margin:0!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:8px 5px 7px!important;
  opacity:.92!important;
}
.opponent-card h2{
  font-size:10px!important;
  line-height:1.1!important;
  letter-spacing:.08em!important;
  margin:0 0 5px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.opponent-hand{
  gap:4px!important;
  margin-bottom:4px!important;
  justify-content:center!important;
}
.opponent-hand img{
  width:30px!important;
  height:auto!important;
  border-radius:3px!important;
}
.opponent-card .label{
  font-size:8px!important;
  letter-spacing:.08em!important;
  margin:0!important;
}
.opponent-card .stack{
  font-size:13px!important;
  line-height:1.05!important;
  margin:0 0 4px!important;
}
.opponent-card .action{
  min-height:20px!important;
  padding:4px 3px!important;
  font-size:7px!important;
  letter-spacing:.08em!important;
}
.message-panel{
  margin-bottom:10px!important;
  min-height:38px!important;
  padding:9px 10px!important;
  line-height:1.25!important;
}
.table-zone,
.player-zone,
.round-info,
.buttons-row{
  position:relative!important;
  z-index:2!important;
}
.table-zone{margin-top:0!important;}
.poker-footer{display:none!important;}
.buttons-row{margin-bottom:0!important;}
.button.next-hand{
  grid-column:1 / -1!important;
  width:100%!important;
}
.buttons-row.is-hand-over{
  display:grid!important;
  grid-template-columns:1fr!important;
}
.buttons-row.is-hand-over .next-hand{
  display:block!important;
  min-height:56px!important;
}
@media(max-width:760px){
  .game{
    max-width:100%!important;
    padding:9px 8px 12px!important;
    gap:7px!important;
    background:
      linear-gradient(rgba(2,1,0,.10), rgba(2,1,0,.52)),
      url('/images/poker-table-vertical.webp') center 43% / cover no-repeat!important;
  }
  .opponents{
    gap:5px!important;
    margin-bottom:8px!important;
  }
  .opponent-card{
    padding:5px 3px 5px!important;
  }
  .opponent-card h2{
    font-size:7px!important;
    margin-bottom:3px!important;
  }
  .opponent-hand img{
    width:min(7.5vw,27px)!important;
  }
  .opponent-card .label{font-size:6px!important;}
  .opponent-card .stack{font-size:10px!important;}
  .opponent-card .action{min-height:16px!important;font-size:6px!important;padding:3px 2px!important;}
  .message-panel{font-size:13px!important;}
}
@media(max-width:390px){
  .opponent-hand img{width:23px!important;}
  .opponent-card h2{font-size:6px!important;}
  .opponent-card .stack{font-size:9px!important;}
}


html, body {
  overflow: hidden !important;
  scrollbar-width: none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}



.card-back,
.opponent-hand img[src*="card-back-wk"]{
  border-radius:6px;
  overflow:hidden;
  background:#260305;
  box-shadow:
    inset 0 0 0 1px rgba(255,221,139,.34),
    0 8px 14px rgba(0,0,0,.5);
}
.card-back{position:absolute;}
.card-back::after{
  content:"";
  position:absolute;
  inset:-18% -55%;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 38%,rgba(255,236,184,.16) 48%,rgba(255,255,255,.28) 50%,rgba(255,236,184,.12) 53%,transparent 63%);
  transform:translateX(-72%) rotate(1deg);
  opacity:0;
}
.card.show .card-back::after,
.card.flipped .card-back::after,
.card.turned .card-back::after{
  animation:wkCardBackShine .48s ease-out both;
}
.card-back img,
.opponent-hand img[src*="card-back-wk"]{
  object-fit:cover;
  border-radius:6px;
}
@keyframes wkCardBackShine{
  0%{opacity:0;transform:translateX(-72%) rotate(1deg)}
  32%{opacity:.85}
  100%{opacity:0;transform:translateX(72%) rotate(1deg)}
}
@media(prefers-reduced-motion:reduce){
  .card.show .card-back::after,
  .card.flipped .card-back::after,
  .card.turned .card-back::after{animation:none!important}
}


.card,
.card-face,
.card-face img,
.opponent-hand img{
  background:transparent!important;
}
.card-face{
  overflow:hidden;
  border-radius:6px;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  transform-style:preserve-3d;
}
.card-face img,
.opponent-hand img[src*="card-back-wk"]{
  object-fit:cover!important;
  object-position:center center!important;
  border:0!important;
  outline:0!important;
  vertical-align:top;
}
.game-objective{
  position:relative;
  z-index:1;
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px 18px;
  border:1px solid rgba(205,153,63,.34);
  background:linear-gradient(rgba(8,5,2,.42),rgba(2,1,0,.72));
  color:#c9a45d;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.19em;
  font-size:clamp(13px,2vw,18px);
  box-shadow:inset 0 0 34px rgba(214,166,75,.035);
}
.game-objective.is-win{
  color:#fff0bd;
  font-size:clamp(32px,7vw,68px);
  letter-spacing:.16em;
  border-color:rgba(231,187,82,.88);
  box-shadow:0 0 30px rgba(229,186,87,.22),inset 0 0 42px rgba(229,186,87,.09);
  animation:finalWinPulse 1.5s ease-in-out infinite;
}
.game.game-won .buttons-row{
  pointer-events:none;
  opacity:.36;
  filter:saturate(.45);
}
@keyframes finalWinPulse{
  0%,100%{text-shadow:0 0 10px rgba(231,187,82,.22)}
  50%{text-shadow:0 0 26px rgba(231,187,82,.58)}
}
@media(max-width:760px){
  .game-objective{min-height:108px;padding:20px 12px;font-size:12px;}
  .game-objective.is-win{font-size:38px;}
}
@media(prefers-reduced-motion:reduce){
  .game-objective.is-win{animation:none!important;}
}
