/* Final table sizing rules: do not reintroduce viewport-height micro sizing. */
.game-dialog #gameRoomContent{overflow:auto!important}
.game-dialog .room-layout{flex:0 0 auto!important;min-height:0}
.game-dialog .table-stage{min-height:760px!important;overflow:visible!important}
.game-dialog .table-center{min-height:420px;overflow:visible!important;gap:14px;padding:12px}
.game-dialog .table-card-zone{display:grid;grid-template-columns:minmax(180px,1fr) minmax(320px,max-content) minmax(180px,1fr);align-items:center;justify-items:center;gap:12px;width:100%;min-height:330px;flex:1 0 auto}
.game-dialog .table-card-zone .table-betting-chip{width:min(100%,360px);min-width:180px;aspect-ratio:1;border-width:12px;align-self:center;justify-self:center}
.game-dialog .table-card-zone .table-betting-chip::before{inset:20px;border-width:3px}
.game-dialog .table-card-zone .table-betting-chip span{font-size:clamp(15px,1.2vw,27px);letter-spacing:.03em}
.game-dialog .table-card-zone .table-betting-chip strong{font-size:clamp(38px,4vw,76px);margin-top:10px}
.game-dialog .table-card-zone .table-betting-chip small{font-size:clamp(15px,1.3vw,25px);margin-top:8px}
.game-dialog .table-card-zone .room-card-row{flex:none;display:flex;flex-wrap:wrap;align-content:center;overflow:visible!important;min-height:260px;padding:8px;gap:14px;width:100%}
.game-dialog .table-card-zone .room-card-row .card-group{max-width:100%}
.game-dialog .table-card-zone .room-card-row .playing-card,.game-dialog .table-card-zone .room-card-row .card-back{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
.game-dialog .room-card-row .playing-card,.game-dialog .room-card-row .card-back,.game-dialog .tournament-opponent-cards .playing-card,.game-dialog .tournament-opponent-cards .card-back{animation:none!important;transition:none!important}
.game-dialog .turn-prompt,.game-dialog .opponent-comment{padding:16px 20px;gap:18px;min-height:150px}
.game-dialog .turn-prompt img,.game-dialog .opponent-comment>img{width:100px;height:140px;flex:0 0 100px;object-fit:contain}
.game-dialog .turn-prompt-copy{flex:1;min-width:0}
.game-dialog .turn-prompt-kicker,.game-dialog .opponent-comment-kicker{font-size:14px}
.game-dialog .turn-prompt-copy strong,.game-dialog .opponent-comment-copy strong{font-size:clamp(24px,2vw,36px)}
.game-dialog .turn-prompt-copy>span,.game-dialog .opponent-comment-copy p{font-size:clamp(20px,1.8vw,30px);line-height:1.35}
.game-dialog .turn-prompt-copy small{font-size:17px}
.game-dialog .turn-prompt-wager{gap:14px;margin:12px 0}
.game-dialog .turn-prompt-wager span{font-size:16px}
.game-dialog .turn-prompt-wager .betting-input{width:200px;min-height:52px;padding:10px 14px;font-size:24px}
.game-dialog .turn-prompt-actions{gap:12px;margin-top:10px}
.game-dialog .turn-prompt-actions .turn-action-button,.game-dialog .table-inline-actions button,.game-dialog .table-controls button{min-height:56px!important;min-width:110px;padding:12px 20px!important;font-size:22px!important;line-height:1.2}
.game-dialog .table-inline-actions .betting-panel{padding:12px;gap:12px}
.game-dialog .table-inline-actions .betting-actions,.game-dialog .table-inline-actions .three-card-action-row,.game-dialog .table-inline-actions .blackjack-panel-actions,.game-dialog .table-inline-actions .follow-queen-actions{gap:12px}
.game-dialog .table-status{font-size:18px;line-height:1.4}
.poker-position-strip{padding:12px 16px;border:2px solid #f3cc56;border-radius:9px;background:#071b2a;color:#ffe794;font-size:clamp(16px,1.2vw,24px);font-weight:900;line-height:1.4;text-align:center}
.poker-seat-position{position:absolute;top:5px;left:5px;z-index:8;padding:7px 10px;border:2px solid #ffe27a;border-radius:8px;background:#102949;color:#fff4b5;font-size:17px;line-height:1.2}
.poker-current-actor{outline:4px solid #ffe27a;outline-offset:2px}
.your-poker-position{font-size:16px;color:#ffe27a;font-weight:900;margin-bottom:6px}
.holdem-blind-setting{display:flex;align-items:center;gap:10px;margin:9px 0;padding:8px;color:#ffe27a;font-size:14px;font-weight:800}
.holdem-blind-setting select{padding:8px;background:#071b2a;color:white;border:1px solid #7892a4;border-radius:6px;font-size:16px}
@media(max-width:1100px){.game-dialog .table-card-zone{grid-template-columns:minmax(120px,1fr) minmax(260px,2fr) minmax(120px,1fr);gap:6px;min-height:260px}.game-dialog .table-card-zone .table-betting-chip{min-width:120px;border-width:8px}.game-dialog .table-card-zone .table-betting-chip strong{font-size:36px}.game-dialog .table-card-zone .table-betting-chip span{font-size:12px}.game-dialog .table-card-zone .table-betting-chip small{font-size:13px}}
@media(max-width:650px){.game-dialog .table-stage{min-height:860px!important}.game-dialog .table-center{padding:5px}.game-dialog .table-card-zone{grid-template-columns:1fr 1fr;min-height:380px;gap:8px}.game-dialog .table-card-zone .room-card-row{grid-column:1/-1;grid-row:2;min-height:200px}.game-dialog .table-card-zone .table-betting-chip{width:min(100%,170px);min-width:120px}.game-dialog .table-card-zone>.table-betting-chip:last-child{grid-column:2;grid-row:1}.game-dialog .turn-prompt,.game-dialog .opponent-comment{padding:12px;gap:10px}.game-dialog .turn-prompt img,.game-dialog .opponent-comment>img{width:65px;height:100px;flex-basis:65px}.game-dialog .turn-prompt-copy strong,.game-dialog .opponent-comment-copy strong{font-size:23px}.game-dialog .turn-prompt-copy>span,.game-dialog .opponent-comment-copy p{font-size:18px}.game-dialog .turn-prompt-actions .turn-action-button,.game-dialog .table-inline-actions button{font-size:18px!important;min-height:48px!important;min-width:90px;padding:10px!important}.poker-seat-position{font-size:11px;padding:4px}.game-dialog .turn-prompt-wager{flex-wrap:wrap}}

/* The dialog itself owns scrolling; children grow naturally at showdown. */
.game-dialog:not([open]):not(.fallback-open){display:none!important}
.game-dialog[open],.game-dialog.fallback-open{display:block!important;position:fixed!important;inset:6px!important;box-sizing:border-box;width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important;margin:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.game-dialog[open]>.dialog-top,.game-dialog.fallback-open>.dialog-top{position:sticky;top:-1px;z-index:150;min-height:44px;background:#071523;padding:5px 0 9px}
.game-dialog #gameRoomContent{display:block!important;flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;padding-bottom:22px}
.game-dialog .room-layout{display:block!important;flex:none!important;height:auto!important;max-height:none!important;overflow:visible!important}
.game-dialog .table-stage{height:auto!important;max-height:none!important;flex:none!important;overflow:visible!important}
.game-dialog .table-center{height:auto!important;max-height:none!important;overflow:visible!important;flex:0 0 auto!important}
.game-dialog .showdown-result{height:auto!important;max-height:none!important;flex:0 0 auto;overflow:visible!important}
.game-dialog .table-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;flex:0 0 auto;position:relative;min-height:66px;margin-top:12px;padding:12px 8px;background:#071b29;border:1px solid #b99339;border-radius:10px;overflow:visible!important}
.game-dialog .table-controls button{white-space:normal}
.game-dialog::-webkit-scrollbar{width:13px}
.game-dialog::-webkit-scrollbar-track{background:#071523}
.game-dialog::-webkit-scrollbar-thumb{background:#ba9340;border:3px solid #071523;border-radius:9px}
