

.mines-game-layout #minesweeper_cashout.hidden { display: none !important; }
.hilo-btn-place.hidden,
.hilo-btn-cashout.hidden { display: none; }
.bj-btn-place.hidden { display: none; }
.bj-actions.hidden { display: none; }
.ck-btn-place.hidden { display: none; }
.ck-actions.hidden { display: none; }
.cf-btn-place.hidden { display: none; }
.cf-actions.hidden { display: none; }
.av-btn-place.hidden { display: none; }
.av-splash.hidden { display: none; }
.av-celebration.hidden { display: none; }
.av-stall-warning.hidden { display: none; }

/* =========================================
   POKER GAME
   ========================================= */

.pk-page { width: 100%; }
.pk-page .hidden { display: none !important; }

/* ── Lobby ── */
.pk-lobby {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}
.pk-lobby-card {
    flex: 1;
    min-width: 260px;
    background: #3b274f;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.pk-lobby-title { font-size: 16px; font-weight: 700; color: #fff; }
.pk-lobby-row { display: flex; align-items: center; gap: 10px; }
.pk-lobby-hint { width: 100%; font-size: 13px; color: rgba(255,255,255,0.45); }
.pk-label { font-size: 13px; color: #dbdbdb; flex-shrink: 0; }
.pk-select,
.pk-input {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    padding: 9px 12px;
    outline: none;
    flex: 1;
    min-width: 0;
}
.pk-select option { background: #2b2333; color: #fff; }
.pk-btn {
    height: 46px;
    background: #8d3bde;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}
.pk-btn:hover { background: #7c2fcf; }
.pk-btn-small {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 6px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 12px;
    cursor: pointer;
}
.pk-btn-small:hover { background: rgba(255,255,255,0.14); }

/* ── Room top bar ── */
.pk-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #3b274f;
    border-radius: 8px 8px 0 0;
    padding: 10px 16px;
    border: 1px solid rgba(255,255,255,0.05);
    border-bottom: none;
    flex-wrap: wrap;
}
.pk-topbar-left { color: #dbdbdb; font-size: 14px; display: flex; gap: 10px; align-items: center; }
.pk-topbar-left b { color: #fff; letter-spacing: 0.08em; }
.pk-room-blinds { color: rgba(255,255,255,0.5); font-size: 13px; }
.pk-topbar-right { display: flex; align-items: center; gap: 12px; }
.pk-hash { font-size: 11px; color: rgba(255,255,255,0.35); max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ── Table ── */
.pk-table-zone {
    background: #2b2333;
    border: 1px solid rgba(255,255,255,0.05);
    padding: 40px 60px 56px;
}
.pk-table {
    position: relative;
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
    aspect-ratio: 2 / 1;
    background: radial-gradient(ellipse at 50% 40%, #46315d, #34244a 70%);
    border: 6px solid #56407150;
    border-radius: 50% / 48%;
    box-shadow: inset 0 0 60px rgba(0,0,0,0.4);
}
/* Croupier: a purely cosmetic dealer host sitting above the board. Also the
   flight origin every dealt card animates in from (see pokerGame_flyFrom). */
.pk-croupier {
    position: absolute;
    left: 50%;
    top: -3%;
    transform: translate(-50%, -50%);
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    pointer-events: none;
}
.pk-croupier-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #2b2333;
    border: 2px solid rgba(255,255,255,0.15);
    box-shadow: 0 6px 18px rgba(0,0,0,0.45);
    overflow: hidden;
    animation: pk-croupier-bob 4s ease-in-out infinite;
}
.pk-croupier-avatar svg { width: 100%; height: 100%; display: block; }
.pk-croupier-label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.4);
}
.pk-croupier.pk-dealing .pk-croupier-avatar {
    animation: pk-croupier-deal 0.4s ease-out;
    border-color: #f5c542;
}

.pk-board {
    position: absolute;
    left: 50%;
    top: 44%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}
.pk-community { display: flex; gap: 6px; min-height: 58px; }
.pk-comm-slot {
    width: 40px;
    height: 56px;
    border-radius: 5px;
    border: 1.5px dashed rgba(255,255,255,0.16);
    box-sizing: border-box;
    transition: border-color 0.2s;
}
.pk-comm-slot.filled { border: none; }
.pk-pot {
    color: #f5c542;
    font-size: 15px;
    font-weight: 700;
    min-height: 18px;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: transform 0.15s;
}
.pk-pot::before {
    content: '$';
    display: inline-flex;
    align-items:center;
    justify-content:center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: linear-gradient(145deg,#ffe58d,#b87913);
    border: 1px solid rgba(255,255,255,0.4);
    color:#3b2408;
    font-size:10px;
    font-weight:950;
    box-shadow:0 2px 6px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.55);
}
.pk-pot:empty::before { display: none; }
.pk-pot.pk-pop { animation: pk-pop 0.25s ease-out; }
.pk-stage { color: rgba(255,255,255,0.4); font-size: 12px; }

/* Center-table winner announcement. */
.pk-winner-banner {
    position: absolute;
    left: 50%;
    top: -78px;
    transform: translateX(-50%);
    background: rgba(20, 13, 30, 0.92);
    border: 1px solid rgba(245,197,66,0.5);
    box-shadow: 0 8px 24px rgba(0,0,0,0.5), 0 0 20px rgba(245,197,66,0.2);
    border-radius: 10px;
    padding: 8px 16px;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s, transform 0.3s;
    z-index: 5;
}
.pk-winner-banner.show {
    opacity: 1;
    transform: translateX(-50%) translateY(-6px);
}

/* Cards */
.pk-card {
    width: 40px;
    height: 56px;
    background: #f7f5fa;
    border-radius: 5px;
    color: #241a30;
    font-size: 17px;
    font-weight: 800;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1;
    box-shadow: 0 3px 8px rgba(0,0,0,0.35);
    animation: pk-deal 0.22s ease-out;
    user-select: none;
}
.pk-card.red { color: #d92c3f; }
.pk-card-suit { font-size: 13px; font-weight: 400; }
.poker-page .pk-card-rank {
    font-size:1.3em;
    font-weight:950;
    line-height:.78;
    letter-spacing:-.045em;
}
.poker-page .pk-card.pk-suit-spades { color:#172554;border-color:rgba(23,37,84,.4);background:linear-gradient(145deg,#fff,#e8edfa); }
.poker-page .pk-card.pk-suit-clubs { color:#087443;border-color:rgba(8,116,67,.42);background:linear-gradient(145deg,#fff,#e5f5ec); }
.poker-page .pk-card.pk-suit-hearts { color:#c81e3a;border-color:rgba(200,30,58,.35);background:linear-gradient(145deg,#fff,#fae8ec); }
.poker-page .pk-card.pk-suit-diamonds { color:#1769d2;border-color:rgba(23,105,210,.48);background:linear-gradient(145deg,#fff,#e5f0ff); }
.poker-page .pk-card-suit { font-weight:900;text-shadow:0 1px 0 rgba(255,255,255,.85); }
.pk-card-back {
    background: linear-gradient(135deg, #6b46a0, #4b2f66);
    border: 1px solid rgba(255,255,255,0.2);
}
/* Showdown reveal: a fresh face-up card element replaces the face-down back
   at the same spot; this keyframe on the new element reads as "turning over"
   without needing a live two-sided flip of one DOM node. No `filter` here on
   purpose — filter forces transform-style to flat and would break the
   rotateY illusion (see the Coin Flip lose-glow bug). */
.pk-card-flip { animation: pk-flip-reveal 0.45s ease-out; }
.pk-seat-cards, .pk-community { perspective: 400px; }

/* Seats */
.pk-seat {
    position: absolute;
    transform: translate(-50%, -50%);
    width: 118px;
    text-align: center;
    z-index: 2;
}
.pk-seat-empty {
    background: rgba(255,255,255,0.07);
    border: 1px dashed rgba(255,255,255,0.25);
    border-radius: 20px;
    color: rgba(255,255,255,0.55);
    font-size: 12px;
    font-weight: 600;
    padding: 8px 20px;
    cursor: pointer;
}
.pk-seat-empty:hover { background: rgba(141,59,222,0.25); color: #fff; }
.pk-seat-player {
    position: relative;
    background: rgba(20, 13, 30, 0.85);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 10px;
    padding: 6px 8px 7px;
}
.pk-seat.pk-acting .pk-seat-player { border-color: #f5c542; box-shadow: 0 0 12px rgba(245,197,66,0.35); }
.pk-seat.pk-me .pk-seat-player { border-color: #8d3bde; }
.pk-seat.pk-folded .pk-seat-player { opacity: 0.45; }
.pk-seat-cards {
    display: flex;
    gap: 3px;
    justify-content: center;
    min-height: 40px;
    margin-bottom: 3px;
}
.pk-seat-cards .pk-card { width: 28px; height: 39px; font-size: 12px; border-radius: 4px; }
.pk-seat-cards .pk-card-suit { font-size: 10px; }
.pk-seat-name { color: #fff; font-size: 12px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pk-seat-stack { color: #09b95b; font-size: 12px; font-weight: 700; }
.pk-seat-bet {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    color: #f5c542;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 3px;
}
.pk-seat-bet:not(:empty)::before {
    content: '';
    display: inline-block;
    width: 11px;
    height: 4px;
    margin-top:3px;
    border-radius: 50%;
    background: linear-gradient(90deg,#9e6810,#f5c542,#a56c10);
    border: 1px solid rgba(255,255,255,0.5);
    box-shadow:0 -3px 0 #ce9222,0 -4px 0 rgba(255,255,255,.45),0 -6px 0 #f1bd3d,0 2px 5px rgba(0,0,0,.48);
}
.pk-seat-bet.pk-pop { animation: pk-pop 0.25s ease-out; }
.pk-seat-bet.pk-chip-land::before { animation:pk-chip-stack-land .24s cubic-bezier(.2,1.35,.35,1); }
.pk-dealer-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #fff;
    color: #241a30;
    font-size: 11px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pk-dealer-badge.pk-badge-pop { animation: pk-badge-pop 0.4s cubic-bezier(.3,1.6,.5,1); }
.pk-straddle-badge { position:absolute;top:-8px;left:-8px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:1px solid #ffd67d;border-radius:50%;background:#8b5a16;color:#fff2bf;font-size:10px;font-weight:900;box-shadow:0 0 13px rgba(245,177,50,.42); }
.pk-seat.pk-straddler .pk-seat-player { border-color:rgba(244,179,56,.72);box-shadow:0 0 0 2px rgba(244,179,56,.12),0 0 18px rgba(244,179,56,.2); }
.pk-seat-timer {
    height: 4px;
    background: rgba(255,255,255,0.1);
    border-radius: 2px;
    margin-top: 4px;
    overflow: hidden;
}
.pk-seat-timer-fill { height: 100%; width: 100%; background: #09b95b; transition: width 0.2s linear, background 0.3s; }
.pk-seat-timer-fill.pk-timer-mid { background: #f5c542; }
.pk-seat-timer-fill.pk-timer-low { background: #e84040; }
.pk-seat.pk-acting.pk-timer-urgent .pk-seat-player { animation: pk-urgent-pulse 0.6s ease-in-out infinite; }

/* "Your turn" pill floats above the acting seat. */
.pk-turn-pill {
    position: absolute;
    top: -42px;
    left: 50%;
    transform: translateX(-50%);
    background: #f5c542;
    color: #241a30;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 10px;
    white-space: nowrap;
    animation: pk-turn-pill-in 0.2s ease-out;
    z-index: 4;
}

/* Win celebration: gold ring flash, floating "+amount", and a hand-name
   badge, all triggered from the hand_end payload's `winners` list. */
.pk-seat.pk-winner .pk-seat-player {
    animation: pk-win-glow 1.1s ease-in-out 2;
    border-color: #f5c542;
}

/* Winning five-card reveal. Only the cards used by the evaluated best hand
   stay bright; winning hole cards lift, and used board cards pulse in place. */
.poker-page .pk-table.pk-showdown-focus .pk-card[data-card] { transition:opacity .28s ease,filter .28s ease,box-shadow .28s ease; }
.poker-page .pk-table.pk-showdown-focus .pk-card.pk-combo-dim { opacity:.3;filter:grayscale(.72) brightness(.72); }
.poker-page .pk-table .pk-card.pk-combo-card { position:relative;z-index:12;opacity:1;filter:none;border-color:#f3c95f;box-shadow:0 0 0 2px rgba(243,201,95,.72),0 0 20px rgba(243,201,95,.9),0 7px 14px rgba(0,0,0,.5);animation:pk-combo-board-pulse .72s ease-in-out 3; }
.poker-page .pk-table .pk-seat-cards .pk-card.pk-winning-hole { z-index:15;animation:pk-winning-hole-rise .48s cubic-bezier(.2,1.35,.35,1) forwards,pk-winning-hole-glow .8s ease-in-out .48s 3; }
.pk-win-flash {
    position: absolute;
    inset: -6px;
    border-radius: 12px;
    pointer-events: none;
    opacity: 0;
}
.pk-seat.pk-winner .pk-win-flash {
    opacity: 1;
    background: radial-gradient(ellipse at center, rgba(245,197,66,0.25), transparent 70%);
    animation: pk-win-flash-fade 2.6s ease-out forwards;
}
.pk-win-amount {
    position: absolute;
    left: 50%;
    bottom: 100%;
    transform: translateX(-50%);
    color: #09b95b;
    font-size: 15px;
    font-weight: 800;
    white-space: nowrap;
    opacity: 0;
    text-shadow: 0 2px 6px rgba(0,0,0,0.6);
}
.pk-seat.pk-winner .pk-win-amount {
    animation: pk-win-amount-rise 2.2s ease-out forwards;
}
.pk-win-hand {
    position: absolute;
    left: 50%;
    top: -20px;
    transform: translateX(-50%) scale(0.7);
    background: #8d3bde;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 8px;
    white-space: nowrap;
    opacity: 0;
}
.pk-seat.pk-winner .pk-win-hand {
    animation: pk-win-hand-in 2.6s ease-out forwards;
}

/* Confetti burst spawned as small fixed-position dots (see pokerGame_burstConfetti). */
.pk-confetti-dot {
    position: fixed;
    width: 6px;
    height: 6px;
    border-radius: 1px;
    pointer-events: none;
    z-index: 9999;
}

/* Chip that travels between the pot and a seat (see pokerGame_flyChip). */
.pk-flying-chip {
    position: fixed;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: repeating-conic-gradient(#f5c542 0deg 45deg, #b8860b 45deg 90deg);
    border: 2px solid rgba(255,255,255,0.6);
    box-shadow: 0 3px 10px rgba(0,0,0,0.4);
    pointer-events: none;
    z-index: 9999;
}
.pk-bet-flying-chip { width:16px;height:16px;border-width:2px;box-shadow:0 4px 10px rgba(0,0,0,.52),inset 0 0 0 2px rgba(117,70,7,.34); }
.pk-bet-flying-chip.pk-chip-tone-2 { background:repeating-conic-gradient(#d96b61 0deg 45deg,#792c35 45deg 90deg); }
.pk-bet-flying-chip.pk-chip-tone-3 { background:repeating-conic-gradient(#8f65dc 0deg 45deg,#43206f 45deg 90deg); }

/* ── Bottom bar ── */
.pk-bottombar {
    background: #3b274f;
    border: 1px solid rgba(255,255,255,0.05);
    border-top: none;
    border-radius: 0 0 8px 8px;
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    min-height: 66px;
}
.pk-buyin { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pk-buyin .pk-input { max-width: 110px; }
.pk-buyin-range { color: rgba(255,255,255,0.45); font-size: 12px; }
.pk-buyin-hint { color: rgba(255,255,255,0.35); font-size: 12px; }

.pk-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; width: 100%; }
.pk-btn-action {
    height: 44px;
    padding: 0 22px;
    border: none;
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: filter 0.15s;
}
.pk-btn-action:hover { filter: brightness(1.12); }
.pk-btn-fold { background: #e84040; }
.pk-btn-check { background: #5b6ee1; }
.pk-btn-call { background: #09b95b; }
.pk-btn-raise { background: #8d3bde; }
.pk-raise-group { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.pk-raise-input { max-width: 96px; }
.pk-chip-btn {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 4px;
    color: #acacac;
    font-size: 12px;
    font-weight: 600;
    padding: 6px 10px;
    cursor: pointer;
}
.pk-chip-btn:hover { background: rgba(255,255,255,0.1); color: #fff; }

/* ── Log ── */
.pk-log {
    margin-top: 12px;
    background: rgba(10, 14, 22, 0.6);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 8px;
    padding: 10px 14px;
    max-height: 160px;
    overflow-y: auto;
    scrollbar-width: thin;
}
.pk-log-line { font-size: 12px; color: rgba(255,255,255,0.6); padding: 2px 0; }

/* ── Responsive ── */
@media (max-width: 900px) {
    .pk-table-zone { padding: 30px 20px 46px; }
    .pk-seat { width: 96px; }
    .pk-seat-cards .pk-card { width: 24px; height: 33px; font-size: 11px; }
    .pk-croupier-avatar { width: 44px; height: 44px; }
    .pk-comm-slot { width: 32px; height: 45px; }}
@media (max-width: 640px) {
    .pk-table { aspect-ratio: 1.4 / 1; border-radius: 40px; }
    .pk-card { width: 32px; height: 45px; font-size: 14px; }
    .pk-hash { display: none; }
    .pk-croupier-label { display: none; }
    .pk-comm-slot { width: 26px; height: 36px; }
    .pk-community { gap: 4px; }
    .pk-winner-banner { font-size: 11px; padding: 6px 10px; max-width: 90vw; overflow: hidden; text-overflow: ellipsis; }}
.rl-history.hidden { display: none !important; }
.cr-btn-cashout.hidden { display: none !important; }
.cr-btn-next.hidden { display:none !important; }
.tw-btn-cashout.hidden { display: none !important; }

/* ═══════════════════════════════════════════════════════════════
   PLINKO GAME REDESIGN  (node 3402:52662)
   ═══════════════════════════════════════════════════════════════ */

.pk-page { width: 100%; }

/* ── Two-panel layout ── */
.pk-game-layout {
    display: flex;
    border-radius: 8px;
    overflow: hidden;
    min-height: 460px;
    margin-bottom: 24px;
}
.pk-segment { display: flex; flex-direction: column; }
.pk-label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: rgba(255,255,255,0.45);
    margin-bottom: 8px;
}

/* Bet amount row */
.pk-input-row {
    display: flex;
    align-items: center;
    background: rgba(0,0,0,0.25);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 6px;
    overflow: hidden;
}
.pk-input-icon {
    padding: 0 10px;
    font-size: 13px;
    color: rgba(255,255,255,0.4);
    flex-shrink: 0;
}
.pk-input {
    flex: 1;
    background: transparent;
    border: none;
    outline: none;
    color: #fff;
    font-size: 14px;
    padding: 10px 0;
    min-width: 0;
}
.pk-chips {
    display: flex;
    border-left: 1px solid rgba(255,255,255,0.08);
}
.pk-chip {
    background: transparent;
    border: none;
    border-left: 1px solid rgba(255,255,255,0.06);
    color: rgba(255,255,255,0.5);
    font-size: 11px;
    padding: 6px 7px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}
.pk-chip:first-child { border-left: none; }
.pk-chip:hover { background: rgba(255,255,255,0.08); color: #fff; }

/* Risk level toggle */
.pk-risk-group {
    display: flex;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.1);
}
.pk-risk-btn {
    flex: 1;
    background: rgba(0,0,0,0.2);
    border: none;
    border-right: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.45);
    font-size: 12px;
    font-weight: 600;
    padding: 9px 4px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}
.pk-risk-btn:last-child { border-right: none; }
.pk-risk-btn:hover { background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.8); }
.pk-risk-btn.active { background: #8d3bde; color: #fff; }

/* Rows input */
.pk-rows-row {
    display: flex;
    align-items: center;
    background: rgba(0,0,0,0.25);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 6px;
    padding: 0 10px;
}
.pk-rows-input {
    flex: 1;
    background: transparent;
    border: none;
    outline: none;
    color: #fff;
    font-size: 14px;
    padding: 10px 0;
    -moz-appearance: textfield;
}
.pk-rows-input::-webkit-outer-spin-button,
.pk-rows-input::-webkit-inner-spin-button { -webkit-appearance: none; }
.pk-rows-arrows { display: flex; flex-direction: column; gap: 1px; }
.pk-rows-arrow {
    background: transparent;
    border: none;
    color: rgba(255,255,255,0.3);
    font-size: 9px;
    line-height: 1;
    padding: 2px 4px;
    cursor: default;
    opacity: 0.5;
}

/* Place bet button */
.pk-btn-place {
    margin-top: auto;
    background: #8d3bde;
    border: none;
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    height: 48px;
    width: 100%;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    transition: opacity 0.15s;
}
.pk-btn-place:hover { opacity: 0.88; }

/* Header bar */
.pk-header {
    background: #3b274f;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 24px;
    flex-shrink: 0;
}
.pk-header-left { display: flex; align-items: center; gap: 8px; }
.pk-header-icon { width: 20px; height: 20px; object-fit: contain; flex-shrink: 0; }
.pk-header-title { font-size: 15px; font-weight: 600; color: #fff; }
.pk-info-icon { color: rgba(255,255,255,0.35); font-size: 14px; cursor: default; }
.pk-fair-link {
    font-size: 13px;
    color: rgba(255,255,255,0.45);
    text-decoration: none;
    transition: color 0.15s;
}
.pk-fair-link:hover { color: #09b95b; }

/* Board area — fills right panel */
.pk-board-area {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 16px;
    gap: 10px;
}

/* Override plinko-grid inside new layout */
.pk-page .plinko-grid {
    flex: 1;
    height: auto !important;
    min-height: 260px;
    position: relative;
    z-index: 2;
    border-radius: 0 !important;
    background: #2b2333 !important;
    border: none !important;
    box-shadow: none !important;
    /* The ball is allowed to remain visible in the transparent landing layer
       between the peg board and the payout baskets. */
    overflow: visible;
}

/* Payouts are a separate row below the playing field. */
.pk-page .plinko-payouts {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    width: 100%;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    border-radius: 0 0 8px 8px;
}
.pk-page .plinko-payouts::before {
    content: "";
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    top: -22px;
    height: 22px;
    background: transparent;
    pointer-events: none;
}
.pk-page .plinko-winnings {
    position: relative;
    z-index: 1;
    border-radius: 0 0 8px 8px;
}

/* History table */
.pk-history { margin-bottom: 24px; }

@media (max-width: 768px), (pointer: coarse) and (max-width: 1199px) and (max-height: 600px) and (orientation: landscape) {
    .pk-game-layout {
        flex-direction: column;
        border-radius: 0;
    }
    .pk-board-area { padding: 10px; gap: 8px; }}

@media (max-width: 480px) {
    .pk-chips .pk-chip { padding: 4px 6px; font-size: 11px; }}

@media (max-width: 768px), (pointer: coarse) and (max-width: 1199px) and (max-height: 600px) and (orientation: landscape) {
    .pk-page {
        font-size: 15px;
    }
    .pk-game-layout {
        gap: 0;
        min-height: 0;
        margin-bottom: 16px;
        border-radius: 8px;
    }
    .pk-header {
        padding: 12px 14px;
    }
    .pk-header-title {
        font-size: 17px;
    }
    .pk-info-icon,
    .pk-fair-link {
        font-size: 15px;
    }
    .pk-board-area {
        padding: 10px 8px 8px;
        overflow: hidden;
        gap: 8px;
    }
    .pk-page .plinko-grid {
        width: 100% !important;
        height: auto !important;
        min-height: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        aspect-ratio: 1 / 0.9;
        padding: 4px 2px 6px;
        overflow: visible;
    }
    .pk-page .plinko-grid .stage {
        flex: 1 1 0;
        align-items: center;
        width: 100%;
        min-height: 0;
    }
    .pk-page .plinko-grid .hole {
		flex: 0 0 calc(100% / 15);
		width: calc(100% / 15);
		min-width: 0;
		margin: 0;
    }
    .pk-page .plinko-grid .hole::after {
        content: "";
        display: block;
        width: clamp(4px, 1.25vw, 6px);
        height: clamp(4px, 1.25vw, 6px);
        border-radius: 50%;
        background: rgba(255,255,255,0.36);
    }
    .pk-page .plinko-winnings {
        display: grid;
        grid-template-columns: repeat(15, minmax(0, 1fr));
        align-items: stretch;
        justify-content: stretch;
        gap: 1px;
        width: 100%;
        overflow: hidden;
    }
    .pk-page .plinko-winnings > div {
        width: auto;
        min-width: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 34px;
        padding: 0 1px;
        font-size: clamp(10px, 2.9vw, 13px);
        font-weight: 800;
        line-height: 1;
        border-radius: 3px;
        overflow: hidden;
    }
    .pk-label {
        font-size: 12px;
        margin-bottom: 7px;
    }
    .pk-input,
    .pk-rows-input {
        font-size: 16px;
        padding: 12px 0;
    }
    .pk-input-icon {
        font-size: 15px;
    }
    .pk-chip,
    .pk-risk-btn {
        font-size: 13px;
    }
    .pk-risk-btn {
        padding: 11px 4px;
    }
    .pk-btn-place {
        height: 50px;
        font-size: 15px;
    }}
.sl-demo-banner.hidden { display: none; }

/* Mobile betting controls: larger touch targets and clearer separation */
@media (max-width: 768px), (pointer: coarse) and (max-width: 1199px) and (max-height: 600px) and (orientation: landscape) {

    .pk-input-row {
        overflow: visible;
    }

    .pk-chip:first-child {
        border-left: 1px solid rgba(255,255,255,0.12);
    }}

@media (max-width: 480px) {

    .pk-risk-group {
        gap: 8px;
        padding: 0;
        border: 0;
        overflow: visible;
        background: transparent;
    }

    .pk-risk-btn {
        border: 1px solid rgba(255,255,255,0.12);
        border-radius: 6px;
    }

    .pk-risk-btn:last-child {
        border-right: 1px solid rgba(255,255,255,0.12);
    }}
.plinko-page .pk-board-area.outcome-win { box-shadow:inset 0 0 55px rgba(69,223,152,.16); }
.plinko-page .pk-board-area.outcome-lose { box-shadow:inset 0 0 55px rgba(255,98,119,.14); }

/* =========================================
   POKER — 2026 SOCIAL TABLE REFRESH
   ========================================= */
.poker-page { width: 100%; max-width: 1240px; margin: 0 auto; padding: 24px 22px 42px; }
.poker-page-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.poker-page-identity { display: flex; align-items: center; gap: 13px; min-width: 0; }
.poker-page-icon { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid rgba(197,155,255,.24); border-radius: 14px; background: radial-gradient(circle at 30% 20%,rgba(183,120,255,.28),rgba(63,32,91,.78)); box-shadow: 0 12px 30px rgba(74,28,118,.3),inset 0 1px rgba(255,255,255,.1); }
.poker-page-icon img { width: 29px; height: 29px; object-fit: contain; }
.poker-page-kicker { display: block; margin-bottom: 2px; color: #bda6cf; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.poker-page-identity h1 { margin: 0; color: #fff; font-family: var(--site-font-display); font-size: 26px; line-height: 1.05; }
.poker-page-actions { display: flex; align-items: center; gap: 9px; }
.poker-how-button,.poker-top-fair { height: 38px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 14px; border: 1px solid rgba(255,255,255,.09); border-radius: 10px; background: rgba(15,18,27,.72); color: #d9d3df; font-size: 12px; font-weight: 700; text-decoration: none; cursor: pointer; transition: .2s ease; }
.poker-how-button:hover,.poker-top-fair:hover { border-color: rgba(181,116,244,.42); background: rgba(111,55,162,.18); color: #fff; transform: translateY(-1px); }
.poker-top-fair i { color: #5ddba1; }
.poker-page .pk-lobby { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 0; }
.poker-page .pk-lobby-intro { grid-column: 1/-1; padding: 26px 28px; overflow: hidden; position: relative; border: 1px solid rgba(191,133,245,.16); border-radius: 18px; background: radial-gradient(circle at 82% 10%,rgba(142,61,218,.25),transparent 34%),linear-gradient(135deg,rgba(26,20,35,.96),rgba(14,17,25,.94)); box-shadow: var(--site-glass-shadow); }
.poker-page .pk-lobby-intro::after { content:'♠'; position: absolute; right: 30px; top: -25px; color: rgba(255,255,255,.035); font-size: 155px; line-height: 1; transform: rotate(8deg); }
.poker-page .pk-lobby-intro span { color: #c68cf4; font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.poker-page .pk-lobby-intro h2 { margin: 7px 0 7px; color: #fff; font-family: var(--site-font-display); font-size: clamp(22px,3vw,32px); }
.poker-page .pk-lobby-intro p { max-width: 620px; margin: 0; color: #aaa1b1; font-size: 13px; line-height: 1.65; }
.poker-page .pk-lobby-card { min-width: 0; min-height: 280px; position: relative; padding: 24px; gap: 14px; border: 1px solid rgba(255,255,255,.075); border-radius: 18px; background: radial-gradient(circle at 100% 0,rgba(155,86,218,.1),transparent 34%),linear-gradient(145deg,rgba(26,23,34,.96),rgba(14,17,25,.98)); box-shadow: 0 18px 42px rgba(0,0,0,.23); }
.poker-page .pk-lobby-card-icon { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(187,126,244,.22); border-radius: 11px; background: rgba(135,67,198,.13); color: #c58df4; }
.poker-page .pk-lobby-title { font-family: var(--site-font-display); font-size: 17px; }
.poker-page .pk-lobby-heading { min-width:0; }
.poker-page .pk-lobby-heading>small { display:block;margin-top:4px;color:#7f7786;font-size:10px;line-height:1.35; }
.poker-page .pk-lobby-row { flex: 1; align-items: flex-end; }
.poker-page .pk-room-limits { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
.poker-page .pk-room-limits>div { min-width:0;padding:10px;display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:8px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(7,8,13,.34); }
.poker-page .pk-limit-icon { grid-column:1;grid-row:1/3;width:26px;height:26px;display:grid!important;place-items:center;border-radius:8px;background:rgba(156,85,219,.12);color:#bd82ed!important;font-size:10px!important; }
.poker-page .pk-limit-copy { grid-column:2;grid-row:1;min-width:0; }
.poker-page .pk-limit-copy>span,.poker-page .pk-limit-copy>small { display:block;color:#89818f;font-size:7px;line-height:1.25; }
.poker-page .pk-limit-copy>span { margin:0;font-weight:800;letter-spacing:.055em;text-transform:uppercase; }
.poker-page .pk-room-limits strong { grid-column:2;grid-row:2;display:block;overflow:hidden;margin-top:4px;color:#f2eaf7;font-size:10px;text-overflow:ellipsis;white-space:nowrap; }
.poker-page .pk-create-straddle { width:100%;padding:12px 13px;display:flex;align-items:center;gap:11px;border:1px solid rgba(244,190,75,.2);border-radius:11px;background:linear-gradient(90deg,rgba(130,91,24,.13),rgba(91,60,16,.045));cursor:pointer;box-sizing:border-box;transition:border-color .2s,background .2s; }
.poker-page .pk-create-straddle:hover { border-color:rgba(244,190,75,.35);background:rgba(130,91,24,.14); }
.poker-page .pk-create-straddle>input,.poker-page .pk-straddle-control>input { position:absolute;opacity:0;pointer-events:none; }
.poker-page .pk-create-straddle-switch,.poker-page .pk-straddle-switch { position:relative;width:34px;height:19px;flex:0 0 34px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.08);transition:.18s; }
.poker-page .pk-create-straddle-switch::after,.poker-page .pk-straddle-switch::after { content:'';position:absolute;left:2px;top:2px;width:13px;height:13px;border-radius:50%;background:#817887;transition:.18s; }
.poker-page input:checked+.pk-create-straddle-switch,.poker-page input:checked+.pk-straddle-switch { border-color:rgba(244,190,75,.55);background:rgba(201,139,30,.35); }
.poker-page input:checked+.pk-create-straddle-switch::after,.poker-page input:checked+.pk-straddle-switch::after { transform:translateX(15px);background:#ffd778;box-shadow:0 0 8px rgba(255,199,80,.45); }
.poker-page .pk-create-straddle>span:last-child strong,.poker-page .pk-create-straddle>span:last-child small { display:block; }
.poker-page .pk-create-straddle>span:last-child strong { color:#f1dfba;font-size:11px; }
.poker-page .pk-create-straddle>span:last-child strong em { margin-left:5px;padding:2px 5px;border-radius:5px;background:rgba(244,190,75,.12);color:#f2c969;font-size:8px;font-style:normal; }
.poker-page .pk-create-straddle>span:last-child small { margin-top:3px;color:#918576;font-size:8px;line-height:1.35; }
.poker-page .pk-table-options { display:grid;grid-template-columns:1fr;gap:8px; }
.poker-page .pk-visibility { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px; }
.poker-page .pk-visibility label { min-width:0;cursor:pointer; }
.poker-page .pk-visibility input { position:absolute;opacity:0;pointer-events:none; }
.poker-page .pk-visibility label>span { height:54px;padding:8px 9px;display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:7px;box-sizing:border-box;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(7,8,13,.36);transition:border-color .18s,background .18s,box-shadow .18s; }
.poker-page .pk-visibility label>span>i { grid-column:1;grid-row:1/3;width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:rgba(154,91,212,.11);color:#9b73b9;font-size:9px; }
.poker-page .pk-visibility label>span>b { grid-column:2;grid-row:1;color:#bcb4c2;font-size:10px; }
.poker-page .pk-visibility label>span>small { grid-column:2;grid-row:2;display:block;overflow:hidden;color:#716a77;font-size:7px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap; }
.poker-page .pk-visibility input:checked+span { border-color:rgba(185,121,242,.42);background:linear-gradient(135deg,rgba(130,61,190,.22),rgba(86,42,130,.11));box-shadow:0 0 0 2px rgba(153,82,211,.06); }
.poker-page .pk-visibility input:checked+span>i { background:rgba(165,92,226,.22);color:#d9abff; }
.poker-page .pk-visibility input:checked+span>b { color:#f3e8fb; }
.poker-page .pk-visibility input:focus-visible+span { outline:2px solid #ad6be2;outline-offset:2px; }
.poker-page .pk-straddle-control { display:flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap; }
.poker-page .pk-straddle-control>b { color:#d9c18d;font-size:9px; }
.poker-page .pk-straddle-control small { display:block;margin-top:2px;color:#8e7a53;font-size:7px;font-weight:700; }
.poker-page .pk-select,.poker-page .pk-input { height: 42px; box-sizing: border-box; border-color: rgba(255,255,255,.1); border-radius: 10px; background: rgba(7,10,16,.58); transition: border-color .2s,box-shadow .2s; }
.poker-page .pk-blinds-toggle { min-width:0;display:flex;align-items:center;gap:6px;flex:1; }
.poker-page .pk-blinds-step { display:none;width:42px;height:42px;flex:0 0 42px;padding:0;border:1px solid rgba(181,116,244,.25);border-radius:10px;background:rgba(132,67,187,.12);color:#c993f1;cursor:pointer; }
.poker-page .pk-blinds-step:disabled { opacity:.28;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:#777;cursor:not-allowed; }
.poker-page #pk_code { padding: 10px; }
.poker-page .pk-code-row { flex-direction:column;align-items:stretch;justify-content:center;gap:10px; }
.poker-page .pk-code-field { position:relative;display:block; }
.poker-page .pk-code-field>i { position:absolute;left:15px;top:50%;z-index:1;transform:translateY(-50%);color:#a76bd9;font-size:12px;pointer-events:none; }
.poker-page .pk-code-field #pk_code { width:100%;height:54px;padding:10px 16px 10px 42px;box-sizing:border-box;border-color:rgba(174,109,228,.2);background:rgba(7,8,13,.52);font-size:20px;font-weight:800;letter-spacing:.18em; }
.poker-page .pk-code-field #pk_code::placeholder { color:#5f5866; }
.poker-page .pk-code-help { display:flex;align-items:center;gap:6px;color:#6f6876;font-size:9px; }
.poker-page .pk-code-help i { color:#75627f; }
.poker-page .pk-select:focus,.poker-page .pk-input:focus { border-color: #9555ce; box-shadow: 0 0 0 3px rgba(149,85,206,.12); }
.poker-page .pk-btn { height: 44px; border-radius: 10px; background: linear-gradient(135deg,#9c55db,#7131b1); box-shadow: 0 10px 24px rgba(117,44,179,.26); }
.poker-page .pk-btn:hover { background: linear-gradient(135deg,#aa64e5,#7d39bd); transform: translateY(-1px); }
.poker-page .pk-lobby-hint { grid-column: 1/-1; display: flex; align-items: flex-start; gap: 10px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.06); border-radius: 12px; background: rgba(13,16,24,.65); color: #8f8797; line-height: 1.55; }
.poker-page .pk-lobby-hint i { margin-top: 3px; color: #b275e7; }
.poker-page .pk-public-card { grid-column:1/-1;min-width:0;padding:20px;border:1px solid rgba(255,255,255,.075);border-radius:18px;background:radial-gradient(circle at 0 0,rgba(107,183,151,.08),transparent 28%),linear-gradient(145deg,rgba(22,24,32,.97),rgba(12,15,22,.98));box-shadow:0 18px 42px rgba(0,0,0,.2); }
.poker-page .pk-public-heading { display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px; }
.poker-page .pk-public-title { min-width:0;display:flex;align-items:center;gap:11px; }
.poker-page .pk-public-title-icon { position:relative;width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border:1px solid rgba(99,220,167,.2);border-radius:11px;background:rgba(60,170,123,.09);color:#70d5a6; }
.poker-page .pk-public-title-icon b { position:absolute;right:4px;top:5px;width:5px;height:5px;border-radius:50%;background:#65e3a5;box-shadow:0 0 0 3px rgba(101,227,165,.1),0 0 10px #65e3a5; }
.poker-page .pk-public-title>span:last-child>* { display:block; }
.poker-page .pk-public-title small { color:#5fca99;font-size:7px;font-weight:850;letter-spacing:.14em; }
.poker-page .pk-public-title strong { margin-top:2px;color:#fff;font-family:var(--site-font-display);font-size:16px; }
.poker-page .pk-public-title em { margin-top:2px;color:#77717e;font-size:8px;font-style:normal; }
.poker-page .pk-public-tools { display:flex;align-items:center;gap:8px; }
.poker-page .pk-public-count { padding:5px 8px;border:1px solid rgba(101,218,165,.13);border-radius:7px;background:rgba(47,145,102,.07);color:#77cba4;font-size:8px;font-weight:800; }
.poker-page #pk_public_refresh { width:34px;height:34px;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.035);color:#9d94a3;cursor:pointer;transition:.18s; }
.poker-page #pk_public_refresh:hover { border-color:rgba(177,116,232,.32);color:#d6a8fb; }
.poker-page #pk_public_refresh.is-loading i { animation:fa-spin .7s infinite linear; }
.poker-page .pk-public-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.poker-page .pk-public-row { min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(7,9,14,.43);transition:transform .18s,border-color .18s,box-shadow .18s; }
.poker-page .pk-public-row:hover { transform:translateY(-2px);border-color:rgba(119,215,171,.22);box-shadow:0 12px 25px rgba(0,0,0,.2); }
.poker-page .pk-public-row-top { padding:12px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px; }
.poker-page .pk-public-table-icon { width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(145deg,rgba(80,181,135,.17),rgba(71,117,98,.08));color:#77d9ac; }
.poker-page .pk-public-info>* { display:block; }
.poker-page .pk-public-info small { color:#756e7b;font-size:6px;font-weight:850;letter-spacing:.11em;text-transform:uppercase; }
.poker-page .pk-public-info strong { margin-top:2px;color:#f2ecf5;font-size:12px; }
.poker-page .pk-public-info em { margin-top:2px;color:#69c99d;font-size:7px;font-style:normal; }
.poker-page .pk-public-info em i { margin-right:3px;font-size:4px;vertical-align:middle; }
.poker-page .pk-public-row.is-playing .pk-public-info em { color:#d6ad67; }
.poker-page .pk-public-code { align-self:start;padding:4px 6px;border-radius:6px;background:rgba(151,91,202,.09);color:#a77bc8;font-size:7px;font-weight:800;letter-spacing:.08em; }
.poker-page .pk-public-meta { padding:0 12px 11px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px; }
.poker-page .pk-public-meta>span { min-width:0;padding:7px;display:grid;grid-template-columns:13px minmax(0,1fr);grid-template-rows:auto auto;column-gap:4px;border-radius:8px;background:rgba(255,255,255,.027); }
.poker-page .pk-public-meta i { grid-column:1;grid-row:1/3;align-self:center;color:#8c699f;font-size:7px; }
.poker-page .pk-public-meta b { overflow:hidden;color:#d8d0dc;font-size:8px;text-overflow:ellipsis;white-space:nowrap; }
.poker-page .pk-public-meta small { color:#625c67;font-size:6px;text-transform:uppercase; }
.poker-page .pk-public-row-bottom { padding:9px 12px;display:flex;align-items:center;justify-content:space-between;gap:9px;border-top:1px solid rgba(255,255,255,.045);background:rgba(255,255,255,.015); }
.poker-page .pk-public-seats>span { display:flex;gap:3px; }
.poker-page .pk-public-seats i { width:5px;height:5px;border-radius:50%;background:#343039; }
.poker-page .pk-public-seats i.is-filled { background:#66d39f;box-shadow:0 0 5px rgba(102,211,159,.35); }
.poker-page .pk-public-seats small { display:block;margin-top:4px;color:#69636e;font-size:6px; }
.poker-page .pk-public-join { min-width:100px;height:32px;padding:0 11px;display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;background:linear-gradient(135deg,#4fbd8a,#27885f);box-shadow:0 7px 15px rgba(28,119,78,.17);color:#fff;font-size:8px;font-weight:800;cursor:pointer;transition:.18s; }
.poker-page .pk-public-join:hover { transform:translateX(1px);filter:brightness(1.08); }
.poker-page .pk-public-empty { grid-column:1/-1;min-height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#696270; }
.poker-page .pk-public-empty>span { width:38px;height:38px;margin-bottom:8px;display:grid;place-items:center;border-radius:50%;background:rgba(155,92,208,.09);color:#9d72be; }
.poker-page .pk-public-empty strong { color:#aaa1af;font-size:11px; }
.poker-page .pk-public-empty small { max-width:330px;margin-top:4px;font-size:8px;line-height:1.45; }
.poker-page .pk-topbar { padding: 12px 16px; border-color: rgba(255,255,255,.07); border-radius: 16px 16px 0 0; background: linear-gradient(90deg,rgba(29,22,38,.98),rgba(15,18,27,.98)); }
.poker-page .pk-topbar-left b { padding: 5px 8px; border: 1px solid rgba(192,132,246,.2); border-radius: 7px; background: rgba(135,66,194,.13); color: #d4a4fa; }
.poker-page .pk-room-visibility { padding:4px 7px;border:1px solid rgba(255,255,255,.07);border-radius:7px;background:rgba(255,255,255,.035);color:#8e8694;font-size:7px;font-weight:800;text-transform:uppercase; }
.poker-page .pk-room-visibility.is-public { border-color:rgba(99,211,160,.17);background:rgba(48,153,105,.08);color:#6ed0a2; }
.poker-page .pk-room-visibility i { margin-right:3px; }
.poker-page .pk-btn-small { min-height: 32px; border-radius: 8px; }
.poker-page .pk-fullscreen-toggle { border-color:rgba(180,124,242,.2);background:rgba(139,72,232,.1);color:#c99cf2; }
.poker-page .pk-fullscreen-toggle:hover,.poker-page .pk-fullscreen-toggle.is-active { border-color:rgba(196,145,249,.42);background:rgba(139,72,232,.2);color:#fff; }
.poker-page .pk-away-toggle { border-color:rgba(244,201,93,.16);background:rgba(244,201,93,.055);color:#cbb471; }
.poker-page .pk-away-toggle:hover { border-color:rgba(244,201,93,.32);background:rgba(244,201,93,.11);color:#ffe19a; }
.poker-page .pk-away-toggle.is-active { border-color:rgba(255,151,75,.42);background:linear-gradient(135deg,rgba(202,85,38,.24),rgba(236,151,52,.18));color:#ffc277;box-shadow:0 0 0 2px rgba(238,132,50,.07),0 8px 20px rgba(105,44,15,.2); }
.poker-page .pk-away-toggle:disabled { opacity:.55;cursor:wait; }
.poker-page .pk-table-zone { padding: 66px 58px 78px; overflow: hidden; border-color: rgba(255,255,255,.06); background: radial-gradient(ellipse at 50% 48%,rgba(40,126,92,.14),transparent 38%),radial-gradient(ellipse at 50% 68%,rgba(0,0,0,.16),transparent 56%),linear-gradient(180deg,#10151b,#080b10); }
/* The felt is built from several tiny crossing gradients. It keeps the cloth
   weave crisp at every scale while the transparent border reveals the
   laminated walnut rail beneath it. */
.poker-page .pk-table {
    max-width: 940px;
    aspect-ratio: 2.18 / 1;
    isolation: isolate;
    border: 10px solid transparent;
    border-radius: 50% / 49%;
    background:
        radial-gradient(ellipse at 46% 28%,rgba(94,187,139,.2) 0,rgba(24,122,82,.08) 28%,transparent 56%) padding-box,
        radial-gradient(ellipse at 50% 54%,#126b4a 0,#0d5a3e 48%,#073d2c 78%,#05291f 100%) padding-box,
        linear-gradient(145deg,#b47c3d 0,#68401f 17%,#2a180e 43%,#8b5829 69%,#d09a51 84%,#3a2112 100%) border-box;
    box-shadow:
        0 34px 78px rgba(0,0,0,.64),
        0 8px 18px rgba(0,0,0,.48),
        0 0 0 2px #d0a45e,
        0 0 0 8px #171113,
        0 0 0 10px rgba(219,178,102,.23),
        inset 0 0 88px rgba(0,20,13,.58),
        inset 0 0 0 2px rgba(244,218,154,.28);
}
.poker-page .pk-table::before {
    content:'';
    position:absolute;
    inset:11px;
    z-index:-1;
    border:1px solid rgba(226,211,164,.2);
    border-radius:inherit;
    background-image:
        repeating-linear-gradient(2deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px),
        repeating-linear-gradient(92deg,rgba(2,25,17,.052) 0 1px,transparent 1px 5px),
        repeating-linear-gradient(47deg,rgba(255,255,255,.012) 0 1px,transparent 1px 7px);
    background-size:5px 5px,7px 7px,11px 11px;
    box-shadow:inset 0 0 30px rgba(0,22,14,.18),0 0 0 1px rgba(4,35,24,.2);
    pointer-events:none;
}
.poker-page .pk-table-brand { position: absolute; left: 50%; bottom: 16%; display: flex; flex-direction: column; align-items: center; transform: translateX(-50%); color: rgba(255,255,255,.07); font-family: var(--site-font-display); font-size: 22px; font-weight: 900; letter-spacing: .2em; pointer-events: none; }
.poker-page .pk-table-brand small { margin-top: 2px; font-family: inherit; font-size: 7px; letter-spacing: .32em; text-transform: uppercase; }
.poker-page .pk-croupier { top: -2%; }
.poker-page .pk-croupier-avatar { width: 60px; height: 60px; border: 3px solid #71568a; background: #16111c; box-shadow: 0 8px 25px rgba(0,0,0,.55),0 0 0 2px rgba(210,168,82,.55); }
.poker-page .pk-croupier-label { padding: 3px 8px; border-radius: 10px; background: #15111c; color: #c9b6d6; }
.poker-page .pk-board { top: max(43%, 150px); gap: 7px; z-index: 1; }
.poker-page .pk-board-label { color: rgba(255,255,255,.34); font-size: 8px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.poker-page .pk-community { min-height: 64px; gap: 7px; }
.poker-page .pk-comm-slot,.poker-page .pk-card { width: 44px; height: 62px; border-radius: 7px; }
.poker-page .pk-comm-slot { border-color: rgba(255,255,255,.13); background: rgba(8,8,13,.16); }
.poker-page .pk-card { border: 1px solid rgba(255,255,255,.75); background: linear-gradient(145deg,#fff,#e9e6ec); box-shadow: 0 5px 12px rgba(0,0,0,.42); }
.poker-page .pk-card-back { position:relative;overflow:hidden;border:2px solid #e9e0ed;background:radial-gradient(circle at center,rgba(244,201,93,.22) 0 1px,transparent 2px),conic-gradient(from 45deg at 25% 25%,transparent 0 25%,rgba(255,255,255,.07) 0 50%,transparent 0 75%,rgba(244,201,93,.08) 0) 0 0/9px 9px,radial-gradient(ellipse at center,#8e4add 0,#5b2692 46%,#28123f 100%);box-shadow:inset 0 0 0 1px rgba(244,201,93,.7),inset 0 0 0 4px #4c2079,inset 0 0 14px rgba(8,3,17,.65),0 3px 8px rgba(0,0,0,.4); }
.poker-page .pk-card-back::before { content:'Z';display:grid;position:absolute;inset:13px 9px;z-index:2;place-items:center;border:1px solid rgba(255,222,137,.7);border-radius:50%;background:radial-gradient(circle,rgba(28,10,49,.82),rgba(70,25,112,.72));color:#f5cf70;font:900 11px/1 Georgia,serif;text-shadow:0 1px 4px rgba(0,0,0,.7);box-shadow:0 0 0 2px rgba(43,15,69,.72),0 0 0 3px rgba(244,201,93,.22); }
.poker-page .pk-card-back::after { content:'✦';display:grid;place-items:center;position:absolute;inset:0;z-index:3;padding-top:19px;border:0;color:rgba(245,207,112,.9);font-size:4px; }
.poker-page .pk-pot { padding: 4px 10px; border: 1px solid rgba(220,178,81,.22); border-radius: 12px; background: rgba(13,10,17,.4); color: #f0c967; }
.poker-page .pk-stage { padding: 3px 9px; border-radius: 9px; background: rgba(10,9,14,.3); color: rgba(255,255,255,.55); }
.poker-page .pk-seat { width: 122px; }
.poker-page .pk-seat-empty { backdrop-filter: blur(6px); border-color: rgba(219,194,230,.25); background: rgba(12,11,17,.52); transition: .2s; }
.poker-page .pk-seat-empty:hover { border-color: #b377e4; background: rgba(116,55,165,.38); transform: translateY(-1px); }
.poker-page .pk-seat-player { border-color: rgba(255,255,255,.1); border-radius: 12px; background: linear-gradient(145deg,rgba(24,20,30,.94),rgba(10,11,17,.94)); box-shadow: 0 9px 22px rgba(0,0,0,.36); backdrop-filter: blur(8px); }
.poker-page .pk-seat.pk-acting .pk-seat-player { border-color: #e5bd62; box-shadow: 0 0 0 2px rgba(229,189,98,.14),0 0 22px rgba(229,189,98,.28); }
.poker-page .pk-seat.pk-me .pk-seat-player { border-color: #a45de1; box-shadow: 0 0 0 2px rgba(164,93,225,.12),0 9px 24px rgba(0,0,0,.4); }
.poker-page .pk-seat.pk-me .pk-seat-player { cursor:pointer; }
.poker-page .pk-seat.pk-away .pk-seat-player { opacity:.68;filter:saturate(.7);border-style:dashed; }
.poker-page .pk-away-badge { position:absolute;z-index:8;top:-13px;left:50%;display:inline-flex;min-height:22px;align-items:center;gap:5px;padding:0 8px;border:1px solid rgba(255,176,89,.38);border-radius:999px;background:rgba(28,16,12,.94);color:#ffc27a;font-size:7px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 5px 14px rgba(0,0,0,.38);transform:translateX(-50%);white-space:nowrap; }
.poker-page .pk-away-badge.hidden { display:none!important; }
.poker-page .pk-seat.pk-me .pk-seat-stack { font-variant-numeric:tabular-nums;transition:color .15s,transform .15s; }
.poker-page .pk-seat.pk-me .pk-seat-player:active .pk-seat-stack { color:#d5a7fa;transform:scale(.96); }
.poker-page .pk-seat-stack { color: #65dda4; }
.poker-page .pk-turn-pill { background: linear-gradient(135deg,#f4d57c,#c99537); box-shadow: 0 6px 18px rgba(207,157,58,.3); }
.poker-page .pk-winner-banner { border-color: rgba(232,193,104,.55); background: rgba(13,11,17,.95); box-shadow: 0 10px 30px rgba(0,0,0,.56),0 0 26px rgba(232,193,104,.16); }
.poker-page .pk-bottombar { min-height: 74px; padding: 14px 16px; border-color: rgba(255,255,255,.07); border-radius: 0 0 16px 16px; background: linear-gradient(90deg,rgba(29,22,38,.98),rgba(15,18,27,.98)); }
.poker-page .pk-btn-action { height: 42px; border-radius: 9px; box-shadow: 0 8px 18px rgba(0,0,0,.18); }
.poker-page .pk-btn-fold { background: linear-gradient(135deg,#d94a55,#a92d3a); }
.poker-page .pk-btn-check { background: linear-gradient(135deg,#6277e5,#4053b8); }
.poker-page .pk-btn-call { background: linear-gradient(135deg,#2abf79,#168d56); }
.poker-page .pk-btn-raise { background: linear-gradient(135deg,#9d55d9,#7133a9); }
.poker-page .pk-chip-btn { min-height: 30px; border-radius: 7px; }
.poker-page .pk-log-panel { margin-top: 14px; overflow: hidden; border: 1px solid rgba(255,255,255,.065); border-radius: 14px; background: rgba(10,13,20,.72); box-shadow: var(--site-glass-shadow); }
.poker-page .pk-log-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px; border-bottom: 1px solid rgba(255,255,255,.055); color: #d9d1df; font-size: 12px; font-weight: 700; }
.poker-page .pk-log-heading i { margin-right: 7px; color: #ad6ee2; }
.poker-page .pk-log-heading small { color: #706a77; font-size: 10px; font-weight: 600; }
.poker-page .pk-log { max-height: 170px; margin: 0; padding: 10px 14px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.poker-page .pk-log-line { padding: 4px 0; color: #98909f; }
@media (max-width: 900px) {
    .poker-page .pk-table-zone { padding: 48px 24px 62px; }
    .poker-page .pk-seat { width: 98px; }
    .poker-page .pk-croupier-avatar { width: 48px; height: 48px; }
    .poker-page .pk-comm-slot,.poker-page .pk-card { width: 34px; height: 48px; }
    .poker-page .pk-community { min-height: 50px; }}
@media (max-width: 700px) {
    .poker-page { padding: 16px 12px 34px; }
    .poker-how-button { width: 38px; padding: 0; font-size: 0; }
    .poker-how-button i { font-size: 13px; }
    .poker-page .pk-lobby { grid-template-columns: 1fr; }
    .poker-page .pk-lobby-intro { padding: 22px 20px; }
    .poker-page .pk-lobby-card { min-height: 205px; }
    .poker-page .pk-topbar-right { width: 100%; justify-content: space-between; }
    .poker-page .pk-bottombar { align-items: stretch; }
    .poker-page .pk-buyin { width: 100%; }}
@media (max-width: 640px) {
    .poker-page .pk-table-zone { padding: 44px 8px 64px; }
    .poker-page .pk-table { aspect-ratio: 1.52/1; border-width: 6px; border-radius: 50% / 46%; box-shadow: 0 20px 44px rgba(0,0,0,.58),0 0 0 1px #c99b54,0 0 0 5px #171113,inset 0 0 60px rgba(0,20,13,.48); }
    .poker-page .pk-table::before { inset: 7px; }
    .poker-page .pk-table-brand { bottom: 12%; font-size: 15px; }
    .poker-page .pk-seat { width: 82px; }
    .poker-page .pk-seat-player { padding: 4px 5px 5px; }
    .poker-page .pk-seat-name,.poker-page .pk-seat-stack { font-size: 10px; }
    .poker-page .pk-seat-empty { padding: 6px 14px; font-size: 10px; }
    .poker-page .pk-board-label { display: none; }
    .poker-page .pk-comm-slot,.poker-page .pk-card { width: 28px; height: 40px; font-size: 13px; }
    .poker-page .pk-card-back::before { inset:10px 6px;font-size:8px;box-shadow:0 0 0 1px rgba(43,15,69,.72),0 0 0 2px rgba(244,201,93,.22); }
    .poker-page .pk-card-back::after { padding-top:14px;font-size:3px; }
    .poker-page .pk-community .pk-card-back::before { inset:10px 6px;font-size:8px; }
    .poker-page .pk-community .pk-card-back::after { padding-top:14px;font-size:3px; }
    .poker-page .pk-community { min-height: 42px; gap: 3px; }
    .poker-page .pk-pot { font-size: 12px; }
    .poker-page .pk-stage { max-width: 160px; overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
    .poker-page .pk-croupier-avatar { width: 42px; height: 42px; }}
@media (max-width: 480px) {
    .poker-page-icon { width: 40px; height: 40px; border-radius: 12px; }
    .poker-page-identity h1 { font-size: 20px; }
    .poker-top-fair { width: 38px; padding: 0; font-size: 0; }
    .poker-top-fair i { font-size: 13px; }
    .poker-page .pk-lobby-intro::after { right: -5px; }
    .poker-page .pk-raise-group { width: 100%; }
    .poker-page .pk-raise-input { max-width: none; width: 100%; flex-basis: 100%; }
    .poker-page .pk-btn-action { flex: 1; padding: 0 12px; }}
@media (prefers-reduced-motion: reduce) {
    .poker-page .pk-croupier-avatar,.poker-page .pk-seat.pk-acting.pk-timer-urgent .pk-seat-player,.poker-page .pk-seat.pk-winner .pk-seat-player { animation: none !important; }}

/* Poker card legibility and branded dealer portrait. */
.poker-page .pk-croupier-avatar { width: 82px; height: 82px; }
.poker-page .pk-croupier-avatar img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: 50% 32%; }
.poker-page .pk-croupier { top: 4px; transform: translate(-50%, -50%); }
.poker-page .pk-croupier-avatar { animation: poker-dealer-idle 4s ease-in-out infinite; }
.poker-page .pk-croupier.pk-dealing .pk-croupier-avatar { animation: poker-dealer-action .4s ease-out; }
.poker-page .pk-board { gap: 9px; }
.poker-page .pk-community { min-height: 84px; gap: 8px; }
.poker-page .pk-comm-slot,
.poker-page .pk-community .pk-card { width: 58px; height: 82px; border-radius: 9px; }
.poker-page .pk-create-runouts { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.035); }
.poker-page .pk-create-runouts > span { display:flex;flex-direction:column;gap:3px; }
.poker-page .pk-create-runouts strong { color:#fff;font-size:13px; }
.poker-page .pk-create-runouts small { color:#9290a2;font-size:11px; }
.poker-page .pk-create-runouts select { width:112px;flex:0 0 112px; }
.poker-page .pk-runout-toggle { display:none; }
.pk-share-sheet { position:fixed;inset:0;z-index:10050;display:flex;align-items:flex-end;justify-content:center; }
.pk-share-sheet.hidden { display:none!important; }
.pk-share-backdrop { position:absolute;inset:0;border:0;background:rgba(3,2,9,.7);backdrop-filter:blur(4px); }
.pk-share-panel { position:relative;width:min(100%,440px);padding:8px 18px max(20px,env(safe-area-inset-bottom));border:1px solid rgba(255,255,255,.12);border-bottom:0;border-radius:22px 22px 0 0;background:#171322;box-shadow:0 -18px 55px rgba(0,0,0,.45); }
.pk-share-handle { width:38px;height:4px;margin:0 auto 12px;border-radius:9px;background:rgba(255,255,255,.24); }
.pk-share-heading { display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:#fff; }
.pk-share-heading strong { font-size:18px; }
.pk-share-heading button { width:34px;height:34px;border:0;border-radius:50%;color:#bbb;background:rgba(255,255,255,.08); }
.pk-share-options { display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }
.pk-share-options a,.pk-share-options button { display:flex;min-width:0;flex-direction:column;align-items:center;gap:8px;padding:12px 4px;border:0;border-radius:13px;color:#ddd;background:rgba(255,255,255,.055);font:inherit;text-decoration:none; }
.pk-share-options i { display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,#7d4cff,#4f2ebd);font-size:21px; }
.pk-share-options span { max-width:100%;overflow:hidden;font-size:10px;text-overflow:ellipsis; }
body.pk-share-open { overflow:hidden; }
@media (min-width:769px) {
	.pk-share-sheet { align-items:center;padding:20px;box-sizing:border-box; }
	.pk-share-panel { width:min(440px,100%);padding:18px;border-bottom:1px solid rgba(255,255,255,.12);border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.58); }
	.pk-share-handle { display:none; }
	.pk-share-options a,.pk-share-options button { cursor:pointer;transition:background .16s,transform .16s; }
	.pk-share-options a:hover,.pk-share-options button:hover { background:rgba(151,91,218,.18);transform:translateY(-2px); }}
.poker-page .pk-runout-boards { display:flex;flex-direction:column;gap:4px; }
.poker-page .pk-runout-board { display:flex;align-items:center;gap:6px; }
.poker-page .pk-runout-board > span { width:38px;color:rgba(255,255,255,.55);font-size:7px;font-weight:800;letter-spacing:.08em;text-align:right; }
.poker-page .pk-runout-cards { display:flex;gap:4px; }
.poker-page .pk-runout-cards .pk-card { width:40px;height:56px;border-radius:6px;font-size:17px; }
.poker-page .pk-runout-cards .pk-card-suit { margin-top:2px;font-size:14px; }
@media(max-width:600px){
	.poker-page .pk-create-runouts { align-items:flex-start; }
	.poker-page .pk-runout-cards { gap:2px; }
	.poker-page .pk-runout-cards .pk-card { width:27px!important;height:38px!important;font-size:12px!important; }
	.poker-page .pk-runout-cards .pk-card-suit { font-size:10px!important; }
	.poker-page .pk-runout-board > span { width:28px;font-size:6px; }}
.poker-page .pk-community .pk-card { font-size: 25px; line-height: .9; }
.poker-page .pk-community .pk-card-suit { margin-top: 5px; font-size: 21px; line-height: 1; }
.poker-page .pk-seat { width: 130px; }
.poker-page .pk-seat-cards { min-height: 60px; gap: 5px; }
.poker-page .pk-seat-cards .pk-card { width: 42px; height: 60px; border-radius: 7px; font-size: 19px; line-height: .9; }
.poker-page .pk-seat-cards .pk-card-suit { margin-top: 3px; font-size: 16px; line-height: 1; }
.poker-page .pk-card-back::after { inset:0;font-size:4px; }
.poker-page .pk-community .pk-card-back::before { inset:18px 13px;font-size:15px; }
.poker-page .pk-community .pk-card-back::after { padding-top:27px;font-size:6px; }
@media (min-width:901px) {
    .poker-page .pk-board { gap:10px; }
    .poker-page .pk-community { min-height:98px;gap:10px; }
    .poker-page .pk-comm-slot,
    .poker-page .pk-community .pk-card { width:68px;height:96px;border-radius:10px; }
    .poker-page .pk-community .pk-card { font-size:29px; }
    .poker-page .pk-community .pk-card-suit { margin-top:6px;font-size:24px; }
    .poker-page .pk-community .pk-card-back::before { inset:21px 15px;font-size:17px; }
    .poker-page .pk-community .pk-card-back::after { padding-top:32px;font-size:7px; }

    .poker-page .pk-seat { width:142px; }
    .poker-page .pk-seat-cards { min-height:72px;gap:6px; }
    .poker-page .pk-seat-cards .pk-card { width:50px;height:72px;border-radius:8px;font-size:22px; }
    .poker-page .pk-seat-cards .pk-card-suit { margin-top:4px;font-size:18px; }
    .poker-page .pk-seat-cards .pk-card-back::before { inset:15px 10px;font-size:12px; }
    .poker-page .pk-seat-cards .pk-card-back::after { padding-top:22px;font-size:5px; }

    .poker-page .pk-runout-cards { gap:5px; }
    .poker-page .pk-runout-cards .pk-card { width:46px;height:65px;border-radius:7px;font-size:19px; }
    .poker-page .pk-runout-cards .pk-card-suit { margin-top:3px;font-size:16px; }}
@media (max-width:640px) {
    .poker-page .pk-card-back::before,.poker-page .pk-community .pk-card-back::before { inset:10px 6px;font-size:8px;box-shadow:0 0 0 1px rgba(43,15,69,.72),0 0 0 2px rgba(244,201,93,.22); }
    .poker-page .pk-card-back::after,.poker-page .pk-community .pk-card-back::after { inset:0;padding-top:14px;font-size:3px; }}
@media (max-width: 900px) {
    .poker-page .pk-croupier-avatar { width: 64px; height: 64px; }
    .poker-page .pk-community { min-height: 66px; gap: 5px; }
    .poker-page .pk-comm-slot,
    .poker-page .pk-community .pk-card { width: 45px; height: 64px; }
    .poker-page .pk-community .pk-card { font-size: 20px; }
    .poker-page .pk-community .pk-card-suit { font-size: 17px; }
    .poker-page .pk-seat { width: 106px; }
    .poker-page .pk-seat-cards .pk-card { width: 36px; height: 51px; font-size: 16px; }
    .poker-page .pk-seat-cards .pk-card-suit { font-size: 14px; }}
@media (max-width: 640px) {
    .poker-page .pk-croupier-avatar { width: 52px; height: 52px; }
    .poker-page .pk-community { min-height: 52px; gap: 3px; }
    .poker-page .pk-comm-slot,
    .poker-page .pk-community .pk-card { width: 35px; height: 50px; border-radius: 6px; }
    .poker-page .pk-community .pk-card { font-size: 17px; }
    .poker-page .pk-community .pk-card-suit { margin-top: 2px; font-size: 14px; }
    .poker-page .pk-seat { width: 86px; }
    .poker-page .pk-seat-cards { min-height: 42px; }
    .poker-page .pk-seat-cards .pk-card { width: 32px; height: 45px; font-size: 15px; }
    .poker-page .pk-seat-cards .pk-card-suit { margin-top: 2px; font-size: 13px; }}
@media (prefers-reduced-motion: reduce) {
    .poker-page .pk-croupier-avatar,
    .poker-page .pk-croupier.pk-dealing .pk-croupier-avatar { animation: none !important; }}
.plinko-page .pk-game-layout { min-height: 570px; overflow: hidden; border: 1px solid rgba(255,255,255,.07); border-radius: 18px; background: #0d111a; box-shadow: 0 26px 65px rgba(0,0,0,.34); }
.plinko-page .pk-label { margin-bottom: 8px; color: #818897; }
.plinko-page .pk-input-row { min-height: 46px; border-color: rgba(255,255,255,.09); border-radius: 10px; background: rgba(5,8,13,.56); transition: border-color .2s,box-shadow .2s; }
.plinko-page .pk-input-row:focus-within { border-color: #42bdb2; box-shadow: 0 0 0 3px rgba(66,189,178,.1); }
.plinko-page .pk-input-icon { color: #56cfc2; }
.plinko-page .pk-input { height: auto; padding: 12px 0; font-size: 16px; font-weight: 700; }
.plinko-page .pk-chips { margin-right: 5px; border: 0; gap: 3px; }
.plinko-page .pk-chip { min-height: 28px; padding: 0 7px; border: 1px solid rgba(255,255,255,.07) !important; border-radius: 6px; background: rgba(255,255,255,.035); }
.plinko-page .pk-risk-group { gap: 5px; overflow: visible; border: 0; }
.plinko-page .pk-risk-btn { min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 10px 4px 9px; border: 1px solid rgba(255,255,255,.075) !important; border-radius: 9px; background: rgba(5,8,13,.48); color: #717986; }
.plinko-page .pk-risk-btn i { font-size: 12px; }
.plinko-page .pk-risk-btn:hover { border-color: rgba(255,255,255,.16) !important; background: rgba(255,255,255,.055); color: #fff; }
.plinko-page .pk-risk-btn[data-color="green"].active { border-color: rgba(69,213,151,.45) !important; background: linear-gradient(145deg,rgba(36,171,111,.32),rgba(25,105,75,.18)); color: #63e1a6; box-shadow: inset 0 0 16px rgba(35,199,126,.08); }
.plinko-page .pk-risk-btn[data-color="orange"].active { border-color: rgba(239,177,75,.45) !important; background: linear-gradient(145deg,rgba(210,133,42,.32),rgba(118,69,23,.18)); color: #ffc66d; box-shadow: inset 0 0 16px rgba(232,154,46,.08); }
.plinko-page .pk-risk-btn[data-color="red"].active { border-color: rgba(237,86,96,.45) !important; background: linear-gradient(145deg,rgba(197,52,64,.34),rgba(110,28,37,.18)); color: #ff7b85; box-shadow: inset 0 0 16px rgba(226,67,79,.08); }
.plinko-page .pk-btn-place { height: 50px; margin-top: auto; border-radius: 11px; background: linear-gradient(135deg,#34c9bb,#188f89); color: #061715; font-size: 14px; font-weight: 900; box-shadow: 0 12px 28px rgba(29,164,154,.2); transition: transform .2s,filter .2s; }
.plinko-page .pk-btn-place:hover { opacity: 1; filter: brightness(1.09); }
.plinko-page .pk-btn-place.disabled { opacity: .5; cursor: not-allowed; transform: none; }
.plinko-page .pk-header { min-height: 58px; padding: 10px 20px; border-bottom-color: rgba(255,255,255,.055); background: rgba(9,13,20,.5); }
.plinko-page .pk-header-left { gap: 10px; }
.plinko-page .pk-header-left > div { display: flex; flex-direction: column; gap: 1px; }
.plinko-page .pk-header-title { font-family: var(--site-font-display); font-size: 13px; }
.plinko-page .pk-header-left small { color: #656d79; font-size: 9px; }
.plinko-page .pk-board-area { position: relative; padding: 24px 26px 20px; gap: 10px; }
.plinko-page .pk-history { overflow: hidden; border: 1px solid rgba(255,255,255,.065); border-radius: 15px; background: rgba(10,14,21,.68); box-shadow: var(--site-glass-shadow); }
.plinko-page .pk-history .table-tabs { padding: 10px 12px; border-bottom: 1px solid rgba(255,255,255,.055); background: rgba(255,255,255,.018); }
.plinko-page .pk-history .table-tab-btn { border-radius: 8px; }
.plinko-page .pk-history .table-header { background: rgba(255,255,255,.025); }
.plinko-page .pk-history .table-body .table-row { border-color: rgba(255,255,255,.045); }
@media (max-width: 900px) {
    .plinko-page .pk-board-area { padding: 22px 14px 16px; }}
@media (max-width: 768px), (pointer: coarse) and (max-width: 1199px) and (max-height: 600px) and (orientation: landscape) {
    .plinko-page .pk-game-layout { min-height: 0; border-radius: 16px; }
    .plinko-page .pk-board-area { padding: 22px 8px 10px; }}
@media (max-width: 480px) {
    .plinko-page .pk-header { padding: 9px 12px; }}

/* Plinko unified 15-column geometry. Peg rows, ball arena and payout bins
   intentionally share the same horizontal content box. */
.plinko-page .pk-board-area { --plinko-grid-gutter: 14px; overflow: visible; }
.plinko-page .pk-board-area.plinko-board-impact { animation:plinko-board-impact .4s ease-out; }
@media (max-width: 768px), (pointer: coarse) and (max-width: 1199px) and (max-height: 600px) and (orientation: landscape) {
    .plinko-page .pk-board-area { --plinko-grid-gutter: 8px; }}
@media (max-width: 480px) {
    .plinko-page .pk-board-area { --plinko-grid-gutter: 4px; }}
.plinko-page .pk-game-layout { background: #110d1c; }
.plinko-page .pk-input-row:focus-within {
    border-color: #8952e2;
    box-shadow: 0 0 0 3px rgba(132,72,226,.12);
}
.plinko-page .pk-btn-place {
    background: linear-gradient(135deg,#7635db,#a254ef);
    color: #fff;
    box-shadow: 0 14px 28px rgba(92,40,177,.24),inset 0 1px rgba(255,255,255,.16);
}
.plinko-page .pk-btn-place:hover {
    background: linear-gradient(135deg,#8241e5,#ae61f7);
    filter: none;
}
.plinko-page .pk-header { background: rgba(25,18,36,.82); }

/* Poker cursor-first controls. */
.poker-page .pk-bottombar { align-items:stretch;padding:15px; }
.poker-page .pk-buyin { width:100%;display:grid;grid-template-columns:minmax(125px,.7fr) minmax(180px,1.6fr) auto;align-items:center;gap:9px 13px; }
.poker-page .pk-control-caption { display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0; }
.poker-page .pk-control-caption .pk-label,.poker-page .pk-control-caption > span { margin:0;color:#8f8598;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase; }
.poker-page .pk-control-caption strong { color:#f4c95d;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap; }
.poker-page .pk-raise-stepper { height:28px;display:grid;grid-template-columns:25px minmax(58px,1fr) 25px;align-items:stretch;overflow:hidden;border:1px solid rgba(196,145,249,.22);border-radius:8px;background:rgba(5,3,10,.42); }
.poker-page .pk-raise-stepper button { min-width:0;padding:0;border:0;background:rgba(155,91,218,.12);color:#cda4ef;font-size:14px;font-weight:900;cursor:pointer; }
.poker-page .pk-raise-stepper button:hover:not(:disabled) { background:rgba(164,93,225,.27);color:#fff; }
.poker-page #pk_raise_display { width:100%;min-width:0;padding:0 4px;border:0;border-right:1px solid rgba(255,255,255,.07);border-left:1px solid rgba(255,255,255,.07);outline:0;background:transparent;color:#f4c95d;font-size:11px;font-weight:850;text-align:center;font-variant-numeric:tabular-nums;box-sizing:border-box;-moz-appearance:textfield; }
.poker-page #pk_raise_display::-webkit-inner-spin-button,.poker-page #pk_raise_display::-webkit-outer-spin-button { margin:0;-webkit-appearance:none; }
.poker-page #pk_raise_display:focus { background:rgba(164,93,225,.12);box-shadow:inset 0 0 0 1px rgba(196,145,249,.3); }
.poker-page .pk-raise-presets { display:contents; }
.poker-page .pk-cursor-slider { width:100%;height:18px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer; }
.poker-page .pk-cursor-slider::-webkit-slider-runnable-track { height:5px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:linear-gradient(90deg,#7133a9,#a45de1); }
.poker-page .pk-cursor-slider::-webkit-slider-thumb { width:18px;height:18px;margin-top:-7px;appearance:none;-webkit-appearance:none;border:3px solid #eee5f5;border-radius:50%;background:#8d4bca;box-shadow:0 3px 10px rgba(0,0,0,.45),0 0 0 3px rgba(164,93,225,.13); }
.poker-page .pk-cursor-slider::-moz-range-track { height:5px;border:1px solid rgba(255,255,255,.08);border-radius:5px;background:linear-gradient(90deg,#7133a9,#a45de1); }
.poker-page .pk-cursor-slider::-moz-range-thumb { width:14px;height:14px;border:3px solid #eee5f5;border-radius:50%;background:#8d4bca;box-shadow:0 3px 10px rgba(0,0,0,.45); }
.poker-page .pk-buyin-presets { display:flex;gap:5px; }
.poker-page .pk-buyin-range { grid-column:1/2;color:#6f6676;font-size:9px; }
.poker-page .pk-buyin-hint { grid-column:2/4;color:#756c7b;font-size:10px; }
.poker-page .pk-actions { display:grid;grid-template-columns:auto minmax(300px,1fr);align-items:stretch;gap:10px;width:100%; }
.poker-page .pk-action-head { grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 10px;border:1px solid rgba(201,159,255,.12);border-radius:11px;background:linear-gradient(90deg,rgba(111,64,183,.12),rgba(8,5,15,.16)); }
.poker-page .pk-action-head>div:first-child { display:flex;align-items:baseline;gap:10px;min-width:0; }
.poker-page .pk-action-head>div:first-child span,.poker-page .pk-preactions>span { color:#958ca4;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase; }
.poker-page .pk-action-head strong { color:#d8c5ef;font-size:12px; }
.poker-page .pk-actions.is-my-turn .pk-action-head { border-color:rgba(255,199,92,.32);box-shadow:0 0 18px rgba(255,178,56,.08); }
.poker-page .pk-actions.is-my-turn .pk-action-head strong { color:#ffd783; }
.poker-page .pk-reactions { position:relative;flex:0 0 auto; }
.poker-page .pk-tip-wrap { position:relative; }
.poker-page .pk-tip-toggle { color:#ef9bb5; }
.poker-page .pk-tip-toggle i { color:#ff6e9a; }
.poker-page .pk-tip-menu { position:absolute;right:0;top:calc(100% + 8px);z-index:150;width:220px;padding:10px;display:grid;gap:5px;border:1px solid rgba(255,128,164,.24);border-radius:13px;background:rgba(25,17,29,.98);box-shadow:0 16px 38px rgba(0,0,0,.58);backdrop-filter:blur(15px); }
.poker-page .pk-tip-menu>strong,.poker-page .pk-tip-menu>small { display:block; }
.poker-page .pk-tip-menu>strong { color:#f5eaf0;font-size:12px; }
.poker-page .pk-tip-menu>small { margin-bottom:3px;color:#8e7f89;font-size:8px; }
.poker-page .pk-tip-menu button { min-height:39px;padding:6px 8px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.035);color:#d8ccd3;text-align:left;cursor:pointer; }
.poker-page .pk-tip-menu button:hover { border-color:rgba(255,118,157,.28);background:rgba(213,72,112,.12); }
.poker-page .pk-tip-menu button span { grid-row:1/3;align-self:center;font-size:10px;font-weight:800; }
.poker-page .pk-tip-menu button b { color:#f29ab5;font-size:9px;text-align:right; }
.poker-page .pk-tip-menu button em { color:#8f818a;font-size:8px;font-style:normal;text-align:right; }
.poker-page .pk-dealer-tip-flash { position:absolute;left:50%;top:-18px;min-width:190px;padding:7px 10px;border:1px solid rgba(255,109,151,.35);border-radius:12px;background:rgba(48,20,34,.96);color:#ffabc4;font-size:10px;font-weight:850;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,8px) scale(.8); }
.poker-page .pk-dealer-tip-flash.show { animation:pk-dealer-tip 3s ease both; }
.poker-page .pk-croupier.pk-tipped .pk-croupier-avatar { border-color:#ff79a2;box-shadow:0 0 25px rgba(255,82,137,.55);animation:pk-croupier-tip .65s ease; }
.poker-page .pk-change-dealer { position:absolute;left:50%;top:calc(100% + 2px);z-index:8;min-width:82px;height:23px;padding:0 7px;display:flex;align-items:center;justify-content:center;gap:4px;border:1px solid rgba(244,201,93,.32);border-radius:10px;background:rgba(22,15,28,.94);color:#ded2e6;font-size:7px;font-weight:850;white-space:nowrap;transform:translateX(-50%);box-shadow:0 5px 14px rgba(0,0,0,.35);cursor:pointer;pointer-events:auto;touch-action:manipulation; }
.poker-page .pk-change-dealer b { color:#f4c95d;font-size:7px; }
.poker-page .pk-change-dealer:disabled { opacity:.45;cursor:not-allowed; }
.poker-page .pk-croupier.pk-dealer-swapped .pk-croupier-avatar { animation:pk-dealer-swap .7s cubic-bezier(.2,1.2,.35,1); }
.poker-page .pk-reaction-toggle { min-height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(194,143,244,.24);border-radius:10px;background:rgba(142,75,201,.12);color:#d7b6ef;font:inherit;font-size:11px;font-weight:800;cursor:pointer; }
.poker-page .pk-reaction-toggle>img { width:27px;height:27px;object-fit:contain;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35)); }
.poker-page .pk-reaction-toggle[aria-expanded="true"] { border-color:rgba(218,172,255,.5);background:rgba(148,76,210,.25);color:#fff; }
.poker-page .pk-reaction-picker { position:absolute;right:-130px;bottom:calc(100% + 8px);z-index:120;padding:7px;display:grid;grid-template-columns:repeat(6,52px);gap:4px;border:1px solid rgba(214,169,249,.25);border-radius:13px;background:rgba(24,17,31,.97);box-shadow:0 14px 36px rgba(0,0,0,.55);backdrop-filter:blur(14px); }
.poker-page .pk-reaction-picker button { width:52px;height:52px;padding:2px;border:0;border-radius:11px;background:rgba(255,255,255,.045);line-height:1;cursor:pointer;transition:transform .15s,background .15s; }
.poker-page .pk-reaction-picker button img { width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.4));pointer-events:none; }
.poker-page .pk-reaction-picker button:hover,.poker-page .pk-reaction-picker button:active { background:rgba(177,105,232,.22);transform:scale(1.12); }
.poker-page .pk-seat-reaction { position:absolute;left:50%;top:-76px;z-index:45;width:82px;height:82px;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:radial-gradient(circle,rgba(117,60,172,.3),transparent 68%);filter:drop-shadow(0 8px 10px rgba(0,0,0,.55));opacity:0;pointer-events:none;transform:translate(-50%,9px) scale(.45) rotate(-8deg); }
.poker-page .pk-seat-reaction img { width:100%;height:100%;object-fit:contain;user-select:none; }
.poker-page .pk-seat-reaction.show { animation:pk-reaction-pop 2.6s cubic-bezier(.18,.9,.25,1) both; }
.poker-page .pk-seat-reaction.show[data-reaction="thumbs"] img { animation:pk-reaction-thumbs .65s ease 2; }
.poker-page .pk-seat-reaction.show[data-reaction="laugh"] img { animation:pk-reaction-laugh .28s ease-in-out 5; }
.poker-page .pk-seat-reaction.show[data-reaction="wow"] img { animation:pk-reaction-wow .55s ease-in-out 3; }
.poker-page .pk-seat-reaction.show[data-reaction="fire"] img { animation:pk-reaction-fire .42s ease-in-out 4; }
.poker-page .pk-seat-reaction.show[data-reaction="cry"] img { animation:pk-reaction-cry .7s ease-in-out 3; }
.poker-page .pk-seat-reaction.show[data-reaction="poker"] img { animation:pk-reaction-poker 1.1s ease-in-out 2; }
.poker-page .pk-player-style { max-width:100%;margin:2px auto 1px;padding:2px 5px;display:flex;align-items:center;justify-content:center;gap:3px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(255,255,255,.045);color:#bcb3c4;font-size:7px;font-weight:900;line-height:1;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap; }
.poker-page .pk-player-style span { font-size:9px; }
.poker-page .pk-player-style[data-style="telephone"] { border-color:rgba(92,189,247,.26);background:rgba(50,142,205,.13);color:#8ed5ff; }
.poker-page .pk-player-style[data-style="turtle"] { border-color:rgba(83,202,133,.25);background:rgba(42,144,88,.13);color:#80dca7; }
.poker-page .pk-player-style[data-style="tag"] { border-color:rgba(86,190,220,.25);background:rgba(44,139,171,.13);color:#86d7ed; }
.poker-page .pk-player-style[data-style="lag"] { border-color:rgba(191,120,246,.3);background:rgba(142,70,199,.15);color:#d2a0f7; }
.poker-page .pk-player-style[data-style="maniac"] { border-color:rgba(255,116,72,.32);background:rgba(205,70,37,.16);color:#ff9d78; }
.poker-page .pk-player-style[data-style="regular"] { border-color:rgba(235,190,74,.25);background:rgba(170,124,31,.13);color:#edd17d; }
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    .poker-page .pk-reaction-toggle { width:40px;min-width:40px;min-height:36px;padding:0;touch-action:manipulation; }
    .poker-page .pk-reaction-toggle b { display:none; }
    .poker-page .pk-reaction-picker.pk-reaction-picker-mobile { position:fixed!important;z-index:10100!important;width:196px!important;padding:10px!important;grid-template-columns:repeat(3,56px)!important;gap:4px!important;border-radius:16px!important;box-sizing:border-box!important; }
    .poker-page .pk-reaction-picker button { width:56px;height:56px;touch-action:manipulation; }
    .poker-page .pk-seat-reaction { top:-55px;width:62px;height:62px; }
    .poker-page .pk-seat-reaction.pk-reaction-below { top:calc(100% + 3px); }
    .poker-page .pk-seat-reaction.pk-reaction-right { left:8px;transform:translate(0,9px) scale(.45) rotate(-8deg); }
    .poker-page .pk-seat-reaction.pk-reaction-left { right:8px;left:auto;transform:translate(0,9px) scale(.45) rotate(-8deg); }
    .poker-page .pk-seat-reaction.pk-reaction-right.show,.poker-page .pk-seat-reaction.pk-reaction-left.show { animation-name:pk-reaction-pop-edge; }
    .poker-page .pk-player-style { margin-top:1px;padding:1px 3px;font-size:6px; }
    .poker-page .pk-player-style span { font-size:8px; }
    .poker-page .pk-tip-toggle { width:44px;min-width:44px;min-height:44px;padding:0; }
    .poker-page .pk-tip-toggle i { font-size:16px; }
    .poker-page .pk-tip-toggle span { display:none; }
    .poker-page .pk-tip-menu { position:fixed;right:10px;top:auto;bottom:calc(var(--mobile-nav-h,64px) + 10px);width:min(230px,calc(100vw - 20px)); }
    .poker-page .pk-dealer-tip-flash { min-width:150px;font-size:8px; }
	.poker-page .pk-change-dealer { top:calc(100% + 4px);min-width:112px;height:32px;padding:0 10px;gap:6px;border-radius:12px;font-size:10px;box-shadow:0 7px 18px rgba(0,0,0,.48); }
	.poker-page .pk-change-dealer i,.poker-page .pk-change-dealer b { font-size:10px; }}
.poker-page .pk-preactions,.poker-page .pk-preactions.hidden { min-width:278px;display:flex!important;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap; }
.poker-page .pk-preaction-btn.hidden { display:inline-flex!important;align-items:center;justify-content:center; }
.poker-page .pk-preaction-btn { min-height:32px;padding:0 11px;border:1px solid rgba(201,159,255,.2);border-radius:8px;background:rgba(10,6,18,.58);color:#cfc5dc;font-size:11px;font-weight:800;cursor:pointer;transition:.16s ease; }
.poker-page .pk-preaction-btn:hover:not(:disabled) { border-color:rgba(201,159,255,.5);color:#fff;transform:translateY(-1px); }
.poker-page .pk-preaction-btn.active { border-color:#b47aff;background:linear-gradient(135deg,rgba(133,75,219,.7),rgba(82,43,145,.72));color:#fff;box-shadow:0 0 14px rgba(166,105,255,.22); }
.poker-page .pk-preactions.is-unavailable { opacity:.42; }
.poker-page .pk-preactions.is-unavailable .pk-preaction-btn { pointer-events:none; }
.poker-page .pk-actions.is-waiting .pk-direct-actions,.poker-page .pk-actions.is-waiting .pk-raise-group { opacity:.52; }
.poker-page .pk-actions button:disabled,.poker-page .pk-actions input:disabled { cursor:not-allowed;filter:saturate(.55); }
.poker-page .pk-direct-actions button:disabled,.poker-page .pk-raise-group.is-unavailable { opacity:.38; }
.poker-page .pk-direct-actions { display:flex;gap:7px; }
.poker-page .pk-direct-actions .pk-btn-action { min-width:78px;padding:0 15px; }
.poker-page .pk-btn-allin { border:1px solid rgba(244,201,93,.32);background:linear-gradient(135deg,#8d641f,#d39e3e);color:#fff6db;box-shadow:0 8px 20px rgba(183,128,31,.18); }
.poker-page .pk-btn-allin i { color:#ffe59a; }
.poker-page .pk-run-it-modal { position:fixed;inset:0;z-index:10030;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(4,2,9,.76);backdrop-filter:blur(7px); }
.poker-page .pk-run-it-modal.hidden { display:none; }
.poker-page .pk-run-it-dialog { width:min(410px,100%);margin:20vh auto auto;padding:26px;box-sizing:border-box;border:1px solid rgba(244,201,93,.34);border-radius:20px;background:linear-gradient(155deg,#21152c,#0d0913);box-shadow:0 24px 70px rgba(0,0,0,.65);color:#eee7f4;text-align:center;transform:none; }
.poker-page .pk-run-it-icon { width:54px;height:54px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(244,201,93,.13);color:#f4c95d;font-size:22px; }
.poker-page .pk-run-it-dialog>span { color:#bcaac9;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.poker-page .pk-run-it-dialog h2 { margin:6px 0 8px;color:#fff;font-size:25px; }
.poker-page .pk-run-it-dialog p { margin:0 auto 14px;max-width:330px;color:#aa9caf;font-size:12px;line-height:1.55; }
.poker-page .pk-run-it-dialog>strong { display:block;margin-bottom:16px;color:#f4c95d;font-size:12px; }
.poker-page .pk-run-it-actions { display:grid;grid-template-columns:1fr 1.35fr;gap:9px; }
.poker-page .pk-run-it-actions button { min-height:43px;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:#18111f;color:#ddd2e5;font-size:12px;font-weight:850;cursor:pointer; }
.poker-page .pk-run-it-actions button.accept { border-color:rgba(244,201,93,.42);background:linear-gradient(135deg,#8d641f,#d39e3e);color:#fff8df; }
.poker-page .pk-run-it-actions button:disabled { opacity:.45;cursor:not-allowed; }
@media (max-height:520px) and (orientation:landscape) {
	.poker-page .pk-run-it-modal { padding:10px;overflow-y:auto; }
	.poker-page .pk-run-it-dialog { padding:18px;transform:none; }
	.poker-page .pk-run-it-icon { width:42px;height:42px;margin-bottom:7px;font-size:17px; }
	.poker-page .pk-run-it-dialog h2 { margin:4px 0 6px;font-size:21px; }
	.poker-page .pk-run-it-dialog p { margin-bottom:9px;line-height:1.4; }
	.poker-page .pk-run-it-dialog>strong { margin-bottom:10px; }}

/* Desktop poker fullscreen keeps only the live table and its controls. */
.poker-page .pk-room:fullscreen {
    width:100vw;height:100vh;margin:0;padding:0;display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;
    --pk-fullscreen-table-scale:1;
    background:linear-gradient(160deg,#0d1018,#09070f);color:#fff;
}
.poker-page .pk-room:fullscreen .pk-topbar { grid-row:1;border-radius:0; }
.poker-page .pk-room:fullscreen .pk-table-zone { grid-row:2;min-height:0;padding:0;display:grid;place-items:center;overflow:hidden;box-sizing:border-box; }
.poker-page .pk-room:fullscreen .pk-table {
    top:12px;width:940px;max-width:none;flex:0 0 auto;
    transform:none;zoom:var(--pk-fullscreen-table-scale);
    border-color:transparent;
    background-color:#0b5038;
    background-image:
        radial-gradient(ellipse at 46% 28%,rgba(94,187,139,.2) 0,rgba(24,122,82,.08) 28%,transparent 56%),
        radial-gradient(ellipse at 50% 54%,#126b4a 0,#0d5a3e 48%,#073d2c 78%,#05291f 100%),
        linear-gradient(145deg,#b47c3d 0,#68401f 17%,#2a180e 43%,#8b5829 69%,#d09a51 84%,#3a2112 100%);
    background-clip:padding-box,padding-box,border-box;
    background-origin:padding-box,padding-box,border-box;
    box-shadow:0 36px 88px rgba(0,0,0,.66),0 8px 18px rgba(0,0,0,.48),0 0 0 2px #d0a45e,0 0 0 8px #171113,0 0 0 10px rgba(219,178,102,.23),inset 0 0 98px rgba(0,20,13,.58),inset 0 0 0 2px rgba(244,218,154,.28);
}
.poker-page .pk-room:fullscreen .pk-table::before {
    background-image:
        repeating-linear-gradient(2deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px),
        repeating-linear-gradient(92deg,rgba(2,25,17,.052) 0 1px,transparent 1px 5px),
        repeating-linear-gradient(47deg,rgba(255,255,255,.012) 0 1px,transparent 1px 7px);
    background-size:5px 5px,7px 7px,11px 11px;
}
.poker-page .pk-room:fullscreen .pk-bottombar { grid-row:3;border-radius:0; }
.poker-page .pk-room:fullscreen .pk-dealer-tip-flash {
    top:calc(100% + 24px);z-index:40;
    box-shadow:0 10px 28px rgba(0,0,0,.58),0 0 18px rgba(255,82,137,.2);
}
.poker-page .pk-room:fullscreen .pk-visual-history-panel,
.poker-page .pk-room:fullscreen .pk-log-panel { display:none!important; }
.poker-page .pk-room:fullscreen .pk-fullscreen-toggle { border-color:rgba(244,201,93,.3);background:rgba(244,201,93,.1);color:#f4d273; }
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    .poker-page .pk-fullscreen-toggle,.poker-page .pk-away-toggle { display:none!important; }}
.poker-page .pk-raise-group { display:grid;grid-template-columns:minmax(100px,.55fr) minmax(140px,1fr) auto auto auto minmax(115px,auto);align-items:center;gap:6px;padding:7px 8px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(5,3,10,.22); }
.poker-page .pk-raise-group .pk-control-caption { padding:0 5px; }
.poker-page .pk-raise-group .pk-control-caption strong { color:#c99fff;font-size:12px; }
.poker-page .pk-raise-group .pk-chip-btn { min-height:32px;white-space:nowrap; }
.poker-page .pk-btn-raise { min-width:115px;padding:0 12px; }
.poker-page .pk-btn-raise b { margin-left:4px;color:#ead8fa;font-size:11px; }
.poker-page .pk-btn-action:disabled { opacity:.55;cursor:not-allowed;filter:saturate(.55); }
@media (max-width:1050px) {
    .poker-page .pk-actions { grid-template-columns:1fr; }
    .poker-page .pk-action-head { grid-column:1; }
    .poker-page .pk-direct-actions .pk-btn-action { flex:1; }}
@media (max-width:680px) {
    .poker-page .pk-action-head { align-items:flex-start;flex-direction:column; }
    .poker-page .pk-preactions { justify-content:flex-start;width:100%; }}
@media (max-width:760px) {
    .poker-page .pk-buyin { grid-template-columns:1fr; }
    .poker-page .pk-buyin-range,.poker-page .pk-buyin-hint { grid-column:auto; }
    .poker-page .pk-buyin-presets { display:grid;grid-template-columns:repeat(4,1fr); }
    .poker-page .pk-raise-group { grid-template-columns:1fr 1fr 1fr; }
    .poker-page .pk-raise-group .pk-control-caption,.poker-page .pk-raise-group .pk-cursor-slider { grid-column:1/-1; }
    .poker-page .pk-btn-raise { grid-column:1/-1; }}
@media (max-width:520px) {
    .poker-page .pk-room-limits { grid-template-columns:1fr; }}
@media (max-width:480px) {
    .poker-page .pk-direct-actions { display:grid;grid-template-columns:1fr 1fr; }
    .poker-page .pk-direct-actions .pk-btn-action { min-width:0; }
    .poker-page .pk-buyin-presets { grid-template-columns:1fr 1fr; }}

/* Desktop action dock: decisions stay together in the conventional poker
   order, while raise sizing remains a compact secondary control to the right.
   Needs ~730px+ just for the two grid-column floors (340+380+gap), and the
   action-head row's title/React/pre-select controls don't fit inside a
   340px-wide first column either. Must stay strictly above the
   max-width:1050px single-column fallback above (not overlap it) -- this
   used to start at min-width:769px, which overlapped that fallback's range;
   ties in CSS go to source order, so this rule (later in the file) always
   won across 769-1050px and silently broke the two-column layout there. */
@media (min-width:1051px) {
    .poker-page .pk-bottombar { padding:10px 12px 12px;background:linear-gradient(180deg,#201b25,#111015);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 -12px 30px rgba(0,0,0,.18); }
    .poker-page .pk-actions { grid-template-columns:minmax(340px,.92fr) minmax(380px,1.08fr);gap:8px; }
    .poker-page .pk-action-head { padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.025); }
    .poker-page .pk-direct-actions { grid-column:2;grid-row:2;display:grid;grid-template-columns:1.28fr .82fr .82fr 1.08fr .9fr;gap:5px;padding:4px;border:1px solid rgba(255,255,255,.075);border-radius:12px;background:#0c0b0f;box-shadow:inset 0 1px rgba(255,255,255,.035),0 8px 22px rgba(0,0,0,.24); }
    .poker-page .pk-direct-actions .pk-btn-action { position:relative;width:100%;min-width:0;height:58px;padding:0 8px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:8px;font-size:11px;font-weight:950;letter-spacing:.025em;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.48);box-shadow:inset 0 1px rgba(255,255,255,.17),inset 0 -2px rgba(0,0,0,.18),0 4px 10px rgba(0,0,0,.24);transition:transform .12s,filter .12s,box-shadow .12s; }
    .poker-page .pk-direct-actions .pk-btn-action:hover:not(:disabled) { transform:translateY(-1px);filter:brightness(1.1);box-shadow:inset 0 1px rgba(255,255,255,.2),0 7px 14px rgba(0,0,0,.3); }
    .poker-page .pk-direct-actions .pk-btn-action:active:not(:disabled) { transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(0,0,0,.3); }
    .poker-page .pk-direct-actions .pk-btn-fold { background:linear-gradient(180deg,#5b3038,#3b2027);border-color:rgba(242,104,117,.32);color:#ffc8ce; }
    .poker-page .pk-direct-actions .pk-btn-check { background:linear-gradient(180deg,#34465f,#253448);border-color:rgba(113,164,226,.3);color:#d2e5ff; }
    .poker-page .pk-direct-actions .pk-btn-call { background:linear-gradient(180deg,#28764f,#17553a);border-color:rgba(91,218,151,.34);color:#dcffec; }
    .poker-page .pk-direct-actions .pk-btn-allin { background:linear-gradient(180deg,#705329,#493719);border-color:rgba(244,201,93,.38);color:#ffebad; }
    .poker-page .pk-raise-group {
        grid-column:1;grid-row:2;
        min-width:0;min-height:66px;padding:7px 8px;
        grid-template-columns:146px minmax(0,1fr);grid-template-rows:22px 32px;gap:4px 9px;
        border-color:rgba(255,255,255,.1);border-radius:14px;background:linear-gradient(180deg,rgba(40,37,44,.96),rgba(23,21,26,.98));box-shadow:inset 0 1px rgba(255,255,255,.08),0 8px 22px rgba(0,0,0,.24);backdrop-filter:blur(18px);
    }
    .poker-page .pk-btn-raise {
        grid-column:auto;grid-row:auto;width:100%;height:58px;min-width:0;padding:0 6px;
        border-color:rgba(197,137,248,.48);border-radius:8px;background:linear-gradient(180deg,#a259dc,#7132ad);color:#fff;font-size:12px;box-shadow:inset 0 1px rgba(255,255,255,.24),0 5px 16px rgba(112,43,174,.34);
    }
    .poker-page .pk-btn-raise b { display:block;margin:3px 0 0;color:#f2ddff;font-size:9px;line-height:1; }
    .poker-page .pk-raise-group .pk-control-caption { grid-column:1;grid-row:1/3;padding:0;flex-direction:column;align-items:stretch;justify-content:center;gap:3px; }
    .poker-page .pk-raise-group .pk-control-caption > span { font-size:8px; }
    .poker-page .pk-raise-group .pk-control-caption strong { font-size:11px; }
    .poker-page .pk-raise-stepper { height:34px;grid-template-columns:32px minmax(66px,1fr) 32px;border-color:rgba(255,255,255,.14);border-radius:10px;background:rgba(7,6,9,.54);box-shadow:inset 0 1px 3px rgba(0,0,0,.3); }
    .poker-page .pk-raise-stepper button { font-size:17px;background:transparent;color:#b98de0; }
    .poker-page #pk_raise_display { font-size:13px;color:#fff; }
    .poker-page .pk-raise-group .pk-cursor-slider { grid-column:2;grid-row:1;height:22px; }
    .poker-page .pk-raise-group .pk-cursor-slider::-webkit-slider-runnable-track { height:5px;border:0;background:linear-gradient(90deg,#a55cdb 0 var(--pk-raise-progress,0%),rgba(255,255,255,.13) var(--pk-raise-progress,0%) 100%); }
    .poker-page .pk-raise-group .pk-cursor-slider::-moz-range-track { height:5px;border:0;background:rgba(255,255,255,.13); }
    .poker-page .pk-raise-group .pk-cursor-slider::-moz-range-progress { height:5px;border-radius:5px;background:#a55cdb; }
    .poker-page .pk-raise-group .pk-cursor-slider::-webkit-slider-thumb { width:20px;height:20px;margin-top:-7px;border:1px solid rgba(0,0,0,.12);background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.46); }
    .poker-page .pk-raise-presets { grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:2px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(7,6,9,.45); }
    .poker-page .pk-raise-group .pk-chip-btn { min-width:0;min-height:32px;height:32px;padding:0 5px;border-color:rgba(255,255,255,.1);border-radius:7px;background:#211d25;color:#aaa2ae;font-weight:850; }
    .poker-page .pk-raise-group .pk-chip-btn:hover:not(:disabled) { border-color:rgba(190,130,241,.32);background:#33253e;color:#fff; }
    .poker-page .pk-raise-presets .pk-chip-btn { height:27px;min-height:27px;border:0;border-radius:7px;background:transparent;box-shadow:none; }
    .poker-page .pk-raise-presets .pk-chip-btn+.pk-chip-btn { border-left:1px solid rgba(255,255,255,.08);border-radius:0 7px 7px 0; }
    .poker-page .pk-raise-presets .pk-chip-btn.is-selected { background:rgba(255,255,255,.14);color:#fff;box-shadow:0 1px 5px rgba(0,0,0,.28); }
    .poker-page #pk_raise_min,.poker-page #pk_raise_half_pot,.poker-page #pk_raise_pot { grid-column:auto;grid-row:auto; }}

/* Poker winner announcement must sit above dealer, cards and every seat. */
.poker-page .pk-table > .pk-winner-banner {
    position:absolute;
    left:50%;
    top:10%;
    z-index:100;
    max-width:min(88%,760px);
    box-sizing:border-box;
    overflow:hidden;
    text-overflow:ellipsis;
    transform:translate(-50%,-50%);
    box-shadow:0 14px 38px rgba(0,0,0,.7),0 0 30px rgba(232,193,104,.22);
}
.poker-page .pk-table > .pk-winner-banner.show { transform:translate(-50%,-58%); }
@media (max-width:640px) {
    .poker-page .pk-table > .pk-winner-banner { top:12%;max-width:92%;white-space:normal;text-align:center; }}

/* Poker visual showdown history. */
.poker-page .pk-visual-history-panel { margin-top:14px;overflow:hidden;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(10,13,20,.72);box-shadow:var(--site-glass-shadow); }
.poker-page .pk-visual-history { display:grid;gap:10px;max-height:720px;padding:11px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#66408b transparent; }
.poker-page .pk-visual-history-empty { min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#625b69;font-size:11px; }
.poker-page .pk-visual-history-empty i { color:#765395;font-size:18px; }
.poker-page .pk-vh-hand { overflow:hidden;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:linear-gradient(145deg,rgba(27,21,35,.92),rgba(12,13,19,.94)); }
.poker-page .pk-vh-hand.is-latest { border-color:rgba(169,103,226,.2);box-shadow:inset 3px 0 #8d4ac8; }
.poker-page .pk-vh-hand > header { display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-bottom:1px solid rgba(255,255,255,.055); }
.poker-page .pk-vh-hand > header > div:first-child span { display:block;color:#8f68ad;font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase; }
.poker-page .pk-vh-hand > header > div:first-child strong { display:block;margin-top:2px;color:#e4dce8;font-size:13px; }
.poker-page .pk-vh-pot { text-align:right; }
.poker-page .pk-vh-pot small { display:block;color:#69616f;font-size:8px;text-transform:uppercase; }
.poker-page .pk-vh-pot b { display:block;margin-top:2px;color:#f4c95d;font-size:13px; }
.poker-page .pk-vh-board { display:flex;align-items:center;justify-content:center;gap:12px;padding:11px;border-bottom:1px solid rgba(255,255,255,.045);background:radial-gradient(ellipse at center,rgba(122,64,182,.1),transparent 68%); }
.poker-page .pk-vh-board > span,.poker-page .pk-vh-card-row > span { color:#756d7b;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap; }
.poker-page .pk-vh-cards { display:flex;align-items:center;gap:3px; }
.poker-page .pk-vh-cards .pk-card { width:29px;height:41px;border-radius:5px;font-size:13px;animation:none;box-shadow:0 4px 9px rgba(0,0,0,.35); }
.poker-page .pk-vh-cards .pk-card-suit { margin-top:2px;font-size:11px; }
.poker-page .pk-vh-players { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px; }
.poker-page .pk-vh-player { min-width:0;padding:9px;border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(4,4,8,.2); }
.poker-page .pk-vh-player.is-winner { border-color:rgba(244,201,93,.25);background:linear-gradient(145deg,rgba(119,83,25,.13),rgba(12,9,14,.24));box-shadow:inset 0 0 20px rgba(244,201,93,.035); }
.poker-page .pk-vh-player-head { display:flex;align-items:center;gap:8px;margin-bottom:8px; }
.poker-page .pk-vh-avatar { width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(175,111,230,.25);border-radius:50%;background:rgba(129,62,183,.14);color:#c593eb;font-size:10px;font-weight:900; }
.poker-page .pk-vh-player-head > div { min-width:0;flex:1; }
.poker-page .pk-vh-player-head strong { display:block;overflow:hidden;color:#ddd5e1;font-size:10px;text-overflow:ellipsis;white-space:nowrap; }
.poker-page .pk-vh-player-head small { display:block;margin-top:1px;color:#8e789c;font-size:8px; }
.poker-page .pk-vh-player-head > b { color:#f4c95d;font-size:10px;white-space:nowrap; }
.poker-page .pk-vh-card-row { display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:5px; }
.poker-page .pk-vh-best { padding-top:5px;border-top:1px solid rgba(255,255,255,.04); }
.poker-page .pk-vh-best .pk-card { width:24px;height:34px;font-size:11px; }
.poker-page .pk-vh-best .pk-card-suit { font-size:9px; }
.poker-page .pk-vh-awards { display:flex;flex-wrap:wrap;gap:4px;margin-top:7px; }
.poker-page .pk-vh-awards span { padding:4px 6px;border:1px solid rgba(244,201,93,.15);border-radius:7px;background:rgba(244,201,93,.055);color:#a99978;font-size:8px; }
.poker-page .pk-vh-awards i { margin-right:4px;color:#f4c95d; }
.poker-page .pk-vh-awards b { color:#f0d88f; }
.poker-page .pk-vh-hand > footer { display:flex;align-items:center;gap:6px;padding:7px 11px;border-top:1px solid rgba(255,255,255,.04);color:#5f5865;font-size:8px; }
.poker-page .pk-vh-hand > footer i { color:#6c4c88; }
@media (max-width:700px) {
    .poker-page .pk-vh-players { grid-template-columns:1fr; }}
@media (max-width:420px) {
    .poker-page .pk-vh-board { flex-direction:column;gap:6px; }
    .poker-page .pk-vh-cards .pk-card { width:26px;height:37px; }
    .poker-page .pk-vh-best .pk-card { width:22px;height:31px; }}

/* Poker table invite link. */
.poker-page .pk-invite-button { min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:1px solid rgba(169,103,226,.2);border-radius:8px;background:rgba(132,67,187,.09);color:#aa91ba;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s; }
.poker-page .pk-invite-button:hover { border-color:rgba(178,112,235,.4);background:rgba(132,67,187,.18);color:#fff;transform:translateY(-1px); }
.poker-page .pk-invite-button i { color:#b979e7; }
.poker-page .pk-invite-button.is-copied { border-color:rgba(82,219,158,.35);background:rgba(56,175,121,.1);color:#68dfa9; }
.poker-page .pk-invite-button.is-copied i { color:#68dfa9; }
@media (max-width:760px) {
    .poker-page .pk-topbar-left { width:100%;flex-wrap:wrap; }
    .poker-page .pk-invite-button { flex:1; }}
@media (max-width:420px) {
    .poker-page .pk-invite-button { width:31px;min-width:31px;flex:0 0 31px;padding:0; }
    .poker-page .pk-invite-button span { display:none; }}

/* Poker seat buy-in dialog. */
body.pk-modal-open { overflow:hidden; }
.poker-page .pk-buyin-modal { position:fixed;inset:0;z-index:12000;display:grid;place-items:safe center;width:100%;height:100vh;height:100dvh;padding:18px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box; }
.poker-page .pk-buyin-backdrop { position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(3,2,7,.78);backdrop-filter:blur(7px);cursor:pointer; }
.poker-page .pk-buyin-dialog { position:relative;z-index:1;width:min(100%,510px);max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);margin:auto;padding:27px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(181,119,235,.45) rgba(255,255,255,.035);border:1px solid rgba(177,112,235,.24);border-radius:20px;background:radial-gradient(circle at 18% 0,rgba(137,66,202,.19),transparent 36%),linear-gradient(155deg,#21172e,#100d18 76%);box-shadow:0 35px 90px rgba(0,0,0,.68),inset 0 1px rgba(255,255,255,.055);box-sizing:border-box;animation:pk-buyin-dialog-in .2s ease-out; }
.poker-page .pk-buyin-dialog::-webkit-scrollbar { width:6px; }
.poker-page .pk-buyin-dialog::-webkit-scrollbar-thumb { border-radius:6px;background:rgba(181,119,235,.42); }
.poker-page .pk-buyin-close { position:absolute;right:14px;top:14px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.035);color:#817789;cursor:pointer; }
.poker-page .pk-buyin-close:hover { background:rgba(255,255,255,.08);color:#fff; }
.poker-page .pk-buyin-dialog-icon { width:43px;height:43px;display:grid;place-items:center;margin-bottom:15px;border:1px solid rgba(178,112,235,.25);border-radius:13px;background:rgba(137,65,202,.14);color:#c58deb;font-size:16px; }
.poker-page .pk-buyin-kicker { display:block;color:#9f72bf;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase; }
.poker-page .pk-buyin-dialog h2 { margin:5px 0 7px;color:#fff;font-family:var(--site-font-display);font-size:23px; }
.poker-page .pk-buyin-dialog > p { margin:0 0 20px;color:#807786;font-size:11px;line-height:1.55; }
.poker-page .pk-buyin-dialog > p b { color:#c796e9; }
.poker-page .pk-buyin-dialog .pk-buyin { width:100%;display:grid;grid-template-columns:1fr;gap:10px;padding:15px;border:1px solid rgba(255,255,255,.065);border-radius:14px;background:rgba(5,3,10,.25);box-sizing:border-box; }
.poker-page .pk-buyin-dialog .pk-control-caption strong { color:#f4c95d;font-size:20px; }
.poker-page .pk-buyin-dialog .pk-cursor-slider { height:25px; }
.poker-page .pk-buyin-dialog .pk-buyin-presets { display:grid;grid-template-columns:repeat(4,1fr);gap:6px; }
.poker-page .pk-buyin-dialog .pk-buyin-preset { min-height:48px;border-radius:9px;font-size:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;line-height:1.1; }
.poker-page .pk-buyin-dialog .pk-buyin-preset span { color:#a79dae;font-size:9px;font-weight:700;letter-spacing:.02em; }
.poker-page .pk-buyin-dialog .pk-buyin-preset strong { color:#f0e5fa;font-size:12px;font-weight:900; }
.poker-page .pk-buyin-dialog .pk-buyin-recommended { border-color:rgba(180,122,255,.38);background:linear-gradient(135deg,rgba(123,67,194,.34),rgba(51,27,84,.34)); }
.poker-page .pk-buyin-dialog .pk-buyin-recommended span { color:#cfadff; }
.poker-page .pk-buyin-dialog .pk-buyin-range { grid-column:auto;text-align:center;color:#776c7e;font-size:9px; }
.poker-page .pk-buyin-dialog-actions { display:grid;grid-template-columns:.7fr 1.3fr;gap:8px;margin-top:15px; }
.poker-page .pk-buyin-cancel,.poker-page .pk-buyin-confirm { min-height:48px;border-radius:11px;font-size:11px;font-weight:800;cursor:pointer; }
.poker-page .pk-buyin-cancel { border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#92899a; }
.poker-page .pk-buyin-confirm { border:0;background:linear-gradient(135deg,#7635db,#a254ef);color:#fff;box-shadow:0 12px 25px rgba(91,38,172,.25),inset 0 1px rgba(255,255,255,.15); }
.poker-page .pk-buyin-confirm b { color:#f5dfab; }
.poker-page .pk-buyin-confirm:hover { filter:brightness(1.08);transform:translateY(-1px); }
.poker-page .pk-buyin-confirm:disabled { opacity:.55;cursor:wait;transform:none; }
@media (max-width:520px) {
    .poker-page .pk-buyin-modal { padding:10px; }
    .poker-page .pk-buyin-dialog { max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);padding:22px 16px 16px;border-radius:17px; }
    .poker-page .pk-buyin-dialog h2 { font-size:20px; }
    .poker-page .pk-buyin-dialog .pk-buyin-presets { grid-template-columns:1fr 1fr; }
    .poker-page .pk-buyin-dialog-actions { grid-template-columns:1fr; }
    .poker-page .pk-buyin-confirm { order:1; }
    .poker-page .pk-buyin-cancel { order:2; }}
@media (max-height:620px) {
    .poker-page .pk-buyin-modal { place-items:start center;padding:8px; }
    .poker-page .pk-buyin-dialog { max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding:16px; }
    .poker-page .pk-buyin-dialog-icon { width:34px;height:34px;margin-bottom:8px; }
    .poker-page .pk-buyin-dialog h2 { margin:3px 0 4px;font-size:19px; }
    .poker-page .pk-buyin-dialog > p { margin-bottom:10px; }
    .poker-page .pk-buyin-dialog .pk-buyin { gap:7px;padding:10px; }
    .poker-page .pk-buyin-dialog-actions { margin-top:9px; }}
@media (prefers-reduced-motion:reduce) {
    .poker-page .pk-buyin-dialog { animation:none; }}
.cb-page .hidden { display: none !important; }
.ft-page .hidden { display: none !important; }
.ft-field-icon .fa-money { margin-top: 8px; }
.ft-public-title-icon > .fa { display: block; width: 1em; height: 1em; margin-top: 12px; font-size: 16px; line-height: 1; text-align: center; }

/* Coin Flip mobile game scene ------------------------------------------- */
@media (max-width:768px) and (orientation:portrait) {
    body.is-game-page .cf-page .cf-actions.hidden { display:none!important; }}

/* Chicken mobile game scene --------------------------------------------- */
@media (max-width:768px) and (orientation:portrait) {
    body.is-game-page .ck-page .ck-actions.hidden { display:none!important; }}

/* Blackjack mobile game scene ------------------------------------------- */
@media (max-width:768px) and (orientation:portrait) {
    body.is-game-page .bj-page .bj-actions.hidden { display:none!important; }}

/* Plinko mobile game scene ----------------------------------------------- */
@media (max-width:768px) and (orientation:portrait) {
    body.is-game-page .plinko-page .pk-game-layout {
        grid-template-rows:minmax(0,1fr) 180px!important;gap:6px!important;
    }
    body.is-game-page .plinko-page .pk-header { display:none!important; }
    body.is-game-page .plinko-page .pk-board-area {
        --plinko-grid-gutter:4px;width:100%!important;height:100%!important;min-height:0!important;padding:5px!important;
        display:grid!important;grid-template-rows:minmax(0,1fr) 30px!important;gap:2px!important;overflow:hidden!important;box-sizing:border-box!important;
    }
    body.is-game-page .plinko-page .pk-bet-segment { grid-row:2!important; }
    body.is-game-page .plinko-page .pk-risk-segment { grid-row:3!important; }
    body.is-game-page .plinko-page .pk-segment { margin:0!important;gap:3px!important;overflow:hidden!important; }
    body.is-game-page .plinko-page .pk-label { margin:0!important;font-size:8px!important;line-height:1!important; }
    body.is-game-page .plinko-page .pk-input-row {
        height:46px!important;min-height:46px!important;padding:4px 6px!important;flex-wrap:nowrap!important;gap:5px!important;overflow:hidden!important;
    }
    body.is-game-page .plinko-page .pk-input { min-width:52px!important;padding:0!important;font-size:16px!important; }
    body.is-game-page .plinko-page .pk-chips { width:auto!important;margin:0!important;display:flex!important;flex:0 0 auto!important;gap:4px!important; }
    body.is-game-page .plinko-page .pk-chip {
        width:38px!important;min-width:38px!important;height:36px!important;min-height:36px!important;padding:0 4px!important;flex:0 0 38px!important;
        border-radius:9px!important;font-size:9px!important;font-weight:850!important;
    }
    body.is-game-page .plinko-page .pk-risk-group { height:36px!important;min-height:36px!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:4px!important; }
    body.is-game-page .plinko-page .pk-risk-btn {
        min-height:36px!important;height:36px!important;padding:0 5px!important;display:flex!important;flex-direction:row!important;justify-content:center!important;gap:5px!important;
        border-radius:9px!important;font-size:9px!important;
    }
    body.is-game-page .plinko-page .pk-risk-btn i { font-size:9px!important; }}

@media (max-width:350px) and (orientation:portrait) {
    body.is-game-page .plinko-page .pk-game-layout { grid-template-rows:minmax(0,1fr) 174px!important; }
    body.is-game-page .plinko-page .pk-chip { width:34px!important;min-width:34px!important;flex-basis:34px!important; }}

@media (max-width:768px) and (orientation:landscape), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .plinko-page .pk-header { display:none!important; }
    body.is-game-page .plinko-page .pk-board-area {
        --plinko-grid-gutter:4px;width:100%!important;height:100%!important;min-height:0!important;padding:4px!important;
        display:grid!important;grid-template-rows:minmax(0,1fr) 26px!important;gap:1px!important;overflow:hidden!important;box-sizing:border-box!important;
    }}

/* Poker mobile table ---------------------------------------------------- */
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .poker-page {
        width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;
    }
    body.is-game-page .poker-page .pk-visual-history-panel,
    body.is-game-page .poker-page .pk-log-panel { display:none!important; }

    /* Lobby: both available actions fit into one app viewport. */
    body.is-game-page .poker-page .pk-lobby {
		width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0 2px 8px!important;display:grid!important;
		grid-template-columns:1fr!important;grid-template-rows:auto auto!important;gap:9px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
    }
    body.is-game-page .poker-page .pk-lobby.hidden { display:none!important; }
    body.is-game-page .poker-page .pk-lobby-intro,
    body.is-game-page .poker-page .pk-lobby-hint { display:none!important; }
	body.is-game-page .poker-page .pk-public-card { grid-column:1!important;width:100%!important;padding:12px!important;border-radius:16px!important;box-sizing:border-box!important; }
	body.is-game-page .poker-page .pk-public-list { grid-template-columns:1fr!important; }
	body.is-game-page .poker-page .pk-public-row { min-height:0!important; }
    body.is-game-page .poker-page .pk-lobby-card {
		width:100%!important;min-height:0!important;height:auto!important;margin:0!important;padding:14px!important;display:grid!important;
		grid-template-columns:38px minmax(0,1fr)!important;grid-template-rows:38px auto auto auto 48px!important;gap:10px!important;
        overflow:hidden!important;border-radius:16px!important;box-sizing:border-box!important;
    }
    body.is-game-page .poker-page .pk-lobby-card-icon { grid-column:1!important;grid-row:1!important;width:38px!important;height:38px!important; }
    body.is-game-page .poker-page .pk-lobby-heading { grid-column:2!important;grid-row:1!important;align-self:center!important; }
    body.is-game-page .poker-page .pk-lobby-title { font-size:15px!important; }
    body.is-game-page .poker-page .pk-lobby-heading>small { margin-top:2px!important;font-size:8px!important; }
    body.is-game-page .poker-page .pk-lobby-row { grid-column:1/-1!important;grid-row:2!important;min-height:0!important;align-items:stretch!important;gap:6px!important; }
    body.is-game-page .poker-page .pk-lobby-row .pk-label { font-size:9px!important; }
	body.is-game-page .poker-page .pk-blinds-row { display:grid!important;grid-template-columns:1fr!important;grid-template-rows:12px 44px!important;gap:4px!important; }
	body.is-game-page .poker-page .pk-blinds-row .pk-label::after { content:' · tap or use arrows';color:#9d6fc2;font-weight:700; }
	body.is-game-page .poker-page .pk-blinds-toggle { width:100%!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;gap:5px!important; }
	body.is-game-page .poker-page .pk-blinds-step { display:grid!important;place-items:center!important;width:42px!important;height:42px!important;min-height:42px!important; }
	body.is-game-page .poker-page .pk-blinds-toggle .pk-select { text-align:center!important;font-weight:800!important;color:#ead8fa!important; }
    body.is-game-page .poker-page .pk-select,
    body.is-game-page .poker-page .pk-input { width:100%!important;height:42px!important;min-height:42px!important;font-size:14px!important; }
    body.is-game-page .poker-page #pk_code { padding:10px!important;text-align:center!important;font-size:18px!important;letter-spacing:.14em!important; }
    body.is-game-page .poker-page .pk-room-limits {
		grid-column:1/-1!important;grid-row:4!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;
    }
    body.is-game-page .poker-page .pk-room-limits > div { min-height:44px!important;padding:7px 9px!important;grid-template-columns:30px minmax(0,1fr) auto!important;grid-template-rows:1fr!important;column-gap:9px!important;overflow:hidden!important; }
    body.is-game-page .poker-page .pk-limit-icon { grid-column:1!important;grid-row:1!important;width:30px!important;height:30px!important;font-size:11px!important; }
    body.is-game-page .poker-page .pk-limit-copy { grid-column:2!important;grid-row:1!important;align-self:center!important; }
    body.is-game-page .poker-page .pk-limit-copy>span { font-size:9px!important; }
    body.is-game-page .poker-page .pk-limit-copy>small { margin-top:2px!important;font-size:8px!important; }
    body.is-game-page .poker-page .pk-room-limits strong { grid-column:3!important;grid-row:1!important;align-self:center!important;margin:0!important;font-size:11px!important;text-align:right!important; }
    body.is-game-page .poker-page .pk-lobby-card .pk-btn {
		grid-column:1/-1!important;grid-row:5!important;width:100%!important;height:48px!important;min-height:48px!important;margin:0!important;font-size:13px!important;
    }
    /* Join card has no limits and therefore uses the free middle space. */
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(3) { grid-template-rows:38px auto 48px!important; }
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(3) .pk-btn { grid-row:3!important; }
	body.is-game-page .poker-page .pk-code-row { padding:3px 0!important;justify-content:flex-start!important; }
	body.is-game-page .poker-page .pk-code-field #pk_code { height:52px!important;padding-left:42px!important;font-size:19px!important; }
	body.is-game-page .poker-page .pk-code-help { font-size:8px!important; }

	/* Creation options have dedicated rows: they must never auto-flow on top
	   of the limits or Create button in the fixed-height mobile lobby. */
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(2) {
		grid-template-rows:38px 60px auto auto 48px!important;
		gap:10px!important;
	}
	body.is-game-page .poker-page .pk-table-options {
		grid-column:1/-1!important;grid-row:3!important;min-width:0!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;
	}
	body.is-game-page .poker-page .pk-visibility { grid-template-columns:1fr 1fr!important; }
	body.is-game-page .poker-page .pk-visibility label>span { height:50px!important;padding:6px 7px!important; }
	body.is-game-page .poker-page .pk-create-straddle,
	body.is-game-page .poker-page .pk-create-runouts { min-width:0!important;height:auto!important;min-height:58px!important;padding:10px 11px!important;border-radius:11px!important;box-sizing:border-box!important; }
	body.is-game-page .poker-page .pk-create-straddle { display:flex!important;align-items:center!important;gap:11px!important; }
	body.is-game-page .poker-page .pk-create-straddle-switch { flex:0 0 36px!important;width:36px!important;height:21px!important; }
	body.is-game-page .poker-page .pk-create-straddle>span:last-child { min-width:0!important; }
	body.is-game-page .poker-page .pk-create-straddle strong,
	body.is-game-page .poker-page .pk-create-runouts strong { display:block!important;font-size:11px!important;line-height:1.2!important; }
	body.is-game-page .poker-page .pk-create-straddle small,
	body.is-game-page .poker-page .pk-create-runouts small { display:block!important;margin-top:3px!important;overflow:hidden!important;font-size:8px!important;line-height:1.3!important; }
	body.is-game-page .poker-page .pk-create-runouts { display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:5px!important; }
	body.is-game-page .poker-page .pk-create-runouts>span { display:block!important; }
	body.is-game-page .poker-page .pk-create-runouts>span small { display:none!important; }
	body.is-game-page .poker-page .pk-create-runouts>select { display:none!important; }
	body.is-game-page .poker-page .pk-runout-toggle { width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3px!important; }
	body.is-game-page .poker-page .pk-runout-toggle button { min-width:0!important;height:34px!important;padding:2px!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:7px!important;background:rgba(7,8,13,.42)!important;color:#817888!important;touch-action:manipulation; }
	body.is-game-page .poker-page .pk-runout-toggle button b,
	body.is-game-page .poker-page .pk-runout-toggle button span { display:block!important;line-height:1!important; }
	body.is-game-page .poker-page .pk-runout-toggle button b { font-size:10px!important; }
	body.is-game-page .poker-page .pk-runout-toggle button span { margin-top:3px!important;font-size:5px!important;text-transform:uppercase!important; }
	body.is-game-page .poker-page .pk-runout-toggle button.active { border-color:rgba(193,137,250,.65)!important;background:linear-gradient(145deg,rgba(144,74,211,.45),rgba(87,42,139,.46))!important;color:#fff!important;box-shadow:0 0 0 1px rgba(193,137,250,.1),0 5px 12px rgba(72,29,111,.22)!important; }
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(2) .pk-room-limits { grid-row:4!important; }
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(2)>.pk-btn { grid-row:5!important; }

    /* Active room: status, table and controls are the only three rows. */
    body.is-game-page .poker-page .pk-room {
        width:100%!important;height:100%!important;min-height:0!important;display:grid!important;
		grid-template-columns:1fr!important;grid-template-rows:76px minmax(0,1fr) auto!important;gap:0!important;overflow:hidden!important;
    }
    body.is-game-page .poker-page .pk-room:fullscreen {
        width:100vw;
        height:100vh;
    }
    body.is-game-page .poker-page .pk-topbar {
		grid-row:1!important;width:100%!important;height:76px!important;min-height:76px!important;padding:5px 7px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:27px 34px!important;align-items:center!important;gap:5px!important;overflow:hidden!important;border-radius:12px 12px 0 0!important;box-sizing:border-box!important;
    }
	body.is-game-page .poker-page .pk-topbar-left { grid-column:1!important;grid-row:1!important;width:100%!important;min-width:0!important;justify-content:center!important;gap:8px!important;flex-wrap:nowrap!important;font-size:9px!important;white-space:nowrap!important;overflow:hidden!important; }
    body.is-game-page .poker-page .pk-topbar-left > .pk-room-code,
    body.is-game-page .poker-page .pk-topbar-left > .pk-room-code-sep { display:none!important; }
    body.is-game-page .poker-page .pk-topbar-left b { padding:4px 5px!important;font-size:9px!important; }
    body.is-game-page .poker-page .pk-room-blinds { max-width:78px!important;overflow:hidden!important;font-size:8px!important;text-overflow:ellipsis!important; }
	body.is-game-page .poker-page .pk-topbar-right { grid-column:1!important;grid-row:2!important;width:100%!important;min-width:0!important;margin-left:0!important;display:flex!important;gap:5px!important;justify-content:center!important; }
    body.is-game-page .poker-page .pk-hash { display:none!important; }
    body.is-game-page .poker-page .pk-btn-small,
	body.is-game-page .poker-page .pk-invite-button { width:auto!important;min-width:0!important;height:34px!important;min-height:34px!important;padding:0!important;flex:1 1 0!important;font-size:0!important;border-radius:8px!important; }
    body.is-game-page .poker-page .pk-btn-small i,
    body.is-game-page .poker-page .pk-invite-button i { margin:0!important;font-size:10px!important; }
	body.is-game-page .poker-page .pk-tip-wrap { width:auto!important;min-width:0!important;height:34px!important;flex:1 1 0!important; }
	body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle { width:100%!important;min-width:0!important;height:34px!important;min-height:34px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important; }
	body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle i { font-size:16px!important; }
	body.is-game-page .poker-page #pk_leave i { display:block!important; }

    body.is-game-page .poker-page .pk-table-zone {
        grid-row:2!important;width:100%!important;height:100%!important;min-height:0!important;padding:48px 0 55px!important;display:grid!important;place-items:center!important;
        overflow:hidden!important;box-sizing:border-box!important;container-type:size!important;
    }
    body.is-game-page .poker-page .pk-table {
        position:relative!important;left:auto!important;right:auto!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:100%!important;
        margin-right:auto!important;margin-left:auto!important;justify-self:center!important;align-self:center!important;transform:none!important;aspect-ratio:1.52/1!important;
        border-width:5px!important;border-radius:50% / 46%!important;box-sizing:border-box!important;
    }
    @supports (width:1cqh) {
        body.is-game-page .poker-page .pk-table { width:min(100%,calc(100cqh * 1.52))!important; }}
    body.is-game-page .poker-page .pk-table::before { inset:5px!important; }
    body.is-game-page .poker-page .pk-table-brand { bottom:9%!important;font-size:11px!important; }
    body.is-game-page .poker-page .pk-croupier { top:-1%!important; }
    body.is-game-page .poker-page .pk-croupier-avatar { width:38px!important;height:38px!important;border-width:2px!important; }
    body.is-game-page .poker-page .pk-croupier-label,
    body.is-game-page .poker-page .pk-board-label { display:none!important; }
    body.is-game-page .poker-page .pk-board { top:44%!important;gap:3px!important; }
    body.is-game-page .poker-page .pk-community { min-height:clamp(38px,8.5vw,58px)!important;height:clamp(38px,8.5vw,58px)!important;gap:3px!important; }
    body.is-game-page .poker-page .pk-comm-slot,
    body.is-game-page .poker-page .pk-community .pk-card { width:clamp(27px,6vw,42px)!important;height:clamp(38px,8.5vw,58px)!important;border-radius:5px!important;font-size:clamp(12px,2.7vw,18px)!important; }
    body.is-game-page .poker-page .pk-community .pk-card-suit { margin-top:1px!important;font-size:clamp(10px,2.3vw,16px)!important; }
    body.is-game-page .poker-page .pk-pot { min-height:13px!important;padding:2px 6px!important;font-size:9px!important; }
    body.is-game-page .poker-page .pk-stage { max-width:145px!important;padding:2px 5px!important;overflow:hidden!important;font-size:7px!important;text-overflow:ellipsis!important;white-space:nowrap!important; }
    body.is-game-page .poker-page .pk-seat { width:clamp(68px,15vw,96px)!important; }
	body.is-game-page .poker-page .pk-seat[data-visual-seat="2"] { left:10%!important; }
	body.is-game-page .poker-page .pk-seat[data-visual-seat="3"] { left:11%!important; }
	body.is-game-page .poker-page .pk-seat[data-visual-seat="6"] { left:89%!important; }
	body.is-game-page .poker-page .pk-seat[data-visual-seat="7"] { left:90%!important; }
    body.is-game-page .poker-page .pk-seat-player { padding:3px 4px!important;border-radius:8px!important; }
    body.is-game-page .poker-page .pk-seat-empty { padding:5px 8px!important;border-radius:12px!important;font-size:7px!important; }
    body.is-game-page .poker-page .pk-seat-cards { min-height:clamp(33px,7.3vw,50px)!important;height:clamp(33px,7.3vw,50px)!important;margin-bottom:3px!important;gap:2px!important; }
    body.is-game-page .poker-page .pk-seat-cards .pk-card { width:clamp(22px,5vw,34px)!important;height:clamp(31px,7vw,48px)!important;border-radius:4px!important;font-size:clamp(10px,2.2vw,15px)!important; }
    body.is-game-page .poker-page .pk-seat-cards .pk-card-suit { font-size:clamp(9px,2vw,14px)!important; }
	body.is-game-page .poker-page .pk-seat.pk-me .pk-seat-cards { height:clamp(43px,9.3vw,63px)!important;min-height:clamp(43px,9.3vw,63px)!important;margin-bottom:3px!important;gap:4px!important; }
	body.is-game-page .poker-page .pk-seat.pk-me .pk-seat-cards .pk-card { width:clamp(29px,6.5vw,44px)!important;height:clamp(41px,9vw,61px)!important;border-width:2px!important;border-radius:6px!important;font-size:clamp(14px,3vw,20px)!important;box-shadow:0 5px 12px rgba(0,0,0,.52)!important; }
	body.is-game-page .poker-page .pk-seat.pk-me .pk-seat-cards .pk-card-suit { margin-top:2px!important;font-size:clamp(13px,2.7vw,18px)!important;line-height:1!important; }
    body.is-game-page .poker-page .pk-seat-name,
    body.is-game-page .poker-page .pk-seat-stack { font-size:clamp(7px,1.55vw,10px)!important;line-height:1.15!important; }
	body.is-game-page .poker-page .pk-seat-name { position:relative!important;z-index:6!important;min-height:9px!important;padding:1px 2px!important;overflow:hidden!important;border-radius:4px!important;background:rgba(9,7,14,.78)!important;color:#fff!important;text-overflow:ellipsis!important;white-space:nowrap!important;box-sizing:border-box!important; }
    body.is-game-page .poker-page .pk-seat-bet { top:-13px!important;font-size:7px!important; }
    body.is-game-page .poker-page .pk-dealer-badge { top:-5px!important;right:-5px!important;width:14px!important;height:14px!important;font-size:7px!important; }
    body.is-game-page .poker-page .pk-seat-timer { height:2px!important;margin-top:2px!important; }
    body.is-game-page .poker-page .pk-turn-pill { top:-24px!important;padding:3px 5px!important;font-size:6px!important; }

    body.is-game-page .poker-page .pk-bottombar {
        grid-row:3!important;width:100%!important;min-height:0!important;margin:0!important;padding:6px 7px max(6px,env(safe-area-inset-bottom))!important;overflow:hidden!important;border-radius:0 0 12px 12px!important;box-sizing:border-box!important;
        background:linear-gradient(180deg,rgba(27,22,32,.98),rgba(12,11,16,.995))!important;box-shadow:0 -10px 28px rgba(0,0,0,.3)!important;
    }
    body.is-game-page .poker-page .pk-bottombar.hidden { display:none!important; }
    body.is-game-page .poker-page .pk-actions {
        width:100%!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:32px 108px 50px!important;gap:6px!important;
    }
    body.is-game-page .poker-page .pk-actions.hidden { display:none!important; }
    body.is-game-page .poker-page .pk-action-head {
        position:relative!important;grid-column:1!important;grid-row:1!important;width:100%!important;min-height:32px!important;height:32px!important;padding:3px 7px!important;flex-direction:row!important;overflow:hidden!important;border-radius:10px!important;box-sizing:border-box!important;
    }
    body.is-game-page .poker-page .pk-action-head > div:first-child span { display:none!important; }
    body.is-game-page .poker-page .pk-action-head strong { overflow:hidden!important;font-size:9px!important;text-overflow:ellipsis!important;white-space:nowrap!important; }
    body.is-game-page .poker-page .pk-preactions { width:auto!important;justify-content:flex-end!important;flex-wrap:nowrap!important;gap:3px!important; }
    body.is-game-page .poker-page .pk-preactions > span { display:none!important; }
    body.is-game-page .poker-page .pk-preaction-btn { min-height:21px!important;height:21px!important;padding:0 5px!important;font-size:6px!important; }
    body.is-game-page .poker-page .pk-action-head .pk-reactions {
        position:absolute!important;inset:0!important;margin:auto!important;width:max-content!important;height:max-content!important;z-index:4!important;transform:none!important;
    }
    body.is-game-page .poker-page .pk-direct-actions { grid-row:3!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important; }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action {
        width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;padding:0 4px!important;border-radius:12px!important;font-size:11px!important;line-height:1.15!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
    }
    body.is-game-page .poker-page .pk-raise-group {
        grid-row:2!important;width:100%!important;height:108px!important;padding:6px!important;display:grid!important;
        grid-template-columns:minmax(96px,1.25fr) repeat(3,minmax(48px,.62fr))!important;grid-template-rows:46px 44px!important;gap:6px!important;overflow:hidden!important;border-radius:14px!important;box-sizing:border-box!important;
        background:linear-gradient(180deg,rgba(43,37,49,.98),rgba(24,21,28,.99))!important;box-shadow:inset 0 1px rgba(255,255,255,.08)!important;
    }
    body.is-game-page .poker-page .pk-raise-group .pk-control-caption { grid-column:1/-1!important;grid-row:1!important;padding:0 2px!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-control-caption span { flex:0 0 auto!important;font-size:11px!important;letter-spacing:.05em!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-raise-caption > span { display:block!important; }
    body.is-game-page .poker-page .pk-raise-stepper { width:min(225px,calc(100% - 72px))!important;height:44px!important;grid-template-columns:44px minmax(76px,1fr) 44px!important;border-radius:12px!important;background:rgba(7,6,10,.62)!important; }
    body.is-game-page .poker-page .pk-raise-stepper button { display:grid!important;place-items:center!important;min-width:44px!important;height:44px!important;font-size:22px!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important; }
    body.is-game-page .poker-page #pk_raise_display { height:44px!important;padding:0 6px!important;border-right:1px solid rgba(255,255,255,.09)!important;border-left:1px solid rgba(255,255,255,.09)!important;font-size:17px!important;line-height:44px!important;color:#fff!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider { grid-column:1!important;grid-row:2!important;width:100%!important;height:44px!important;touch-action:none!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider::-webkit-slider-runnable-track { height:6px!important;border:0!important;background:linear-gradient(90deg,#ad65e6 0 var(--pk-raise-progress,0%),rgba(255,255,255,.16) var(--pk-raise-progress,0%) 100%)!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider::-webkit-slider-thumb { width:28px!important;height:28px!important;margin-top:-11px!important;border:2px solid #fff!important;background:#a75cdd!important;box-shadow:0 3px 9px rgba(0,0,0,.5),0 0 0 4px rgba(167,92,221,.16)!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider::-moz-range-track { height:6px!important;background:rgba(255,255,255,.16)!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider::-moz-range-progress { height:6px!important;background:#ad65e6!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider::-moz-range-thumb { width:26px!important;height:26px!important;border:2px solid #fff!important;background:#a75cdd!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-chip-btn { grid-row:2!important;min-width:0!important;min-height:44px!important;height:44px!important;padding:0 3px!important;border-radius:11px!important;font-size:11px!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important; }
    body.is-game-page .poker-page #pk_raise_min { grid-column:2!important; }
    body.is-game-page .poker-page #pk_raise_half_pot { grid-column:3!important; }
    body.is-game-page .poker-page #pk_raise_pot { grid-column:4!important; }
    body.is-game-page .poker-page .pk-raise-group button:active:not(:disabled),
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action:active:not(:disabled) { transform:scale(.97)!important;filter:brightness(1.12)!important; }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-raise { grid-column:auto!important;grid-row:auto!important;height:50px!important;min-height:50px!important; }}

@media (max-width:350px) and (orientation:portrait) {
    body.is-game-page .poker-page .pk-table-zone { padding-right:4px!important;padding-left:4px!important; }
    body.is-game-page .poker-page .pk-table { width:100%!important; }
    body.is-game-page .poker-page .pk-seat { width:62px!important; }
    body.is-game-page .poker-page .pk-community .pk-card,
    body.is-game-page .poker-page .pk-comm-slot { width:24px!important;height:34px!important; }
    body.is-game-page .poker-page .pk-community { height:34px!important;min-height:34px!important; }
    body.is-game-page .poker-page .pk-raise-group { grid-template-columns:minmax(88px,1.15fr) repeat(3,minmax(44px,.62fr))!important; }
    body.is-game-page .poker-page .pk-raise-stepper { width:min(205px,calc(100% - 60px))!important; }}

@media (max-width:768px) and (orientation:landscape), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .poker-page .pk-lobby { grid-template-columns:1fr 1fr!important;grid-template-rows:1fr!important; }
    body.is-game-page .poker-page .pk-lobby-card { padding:8px!important;grid-template-rows:32px 42px minmax(0,1fr) 40px!important;gap:4px 6px!important; }
	body.is-game-page .poker-page .pk-lobby-card:nth-of-type(2) { grid-template-rows:32px 42px 58px minmax(36px,1fr) 40px!important; }
	body.is-game-page .poker-page .pk-create-straddle,
	body.is-game-page .poker-page .pk-create-runouts { height:58px!important;padding:5px!important; }
	body.is-game-page .poker-page .pk-table-options { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important; }
	body.is-game-page .poker-page .pk-visibility label>span { height:58px!important;padding:5px!important;grid-template-columns:18px minmax(0,1fr)!important;column-gap:4px!important; }
	body.is-game-page .poker-page .pk-visibility label>span>i { width:18px!important;height:18px!important; }
	body.is-game-page .poker-page .pk-visibility label>span>small { white-space:normal!important; }
	body.is-game-page .poker-page .pk-runout-toggle button { height:28px!important; }
    body.is-game-page .poker-page .pk-lobby-card:nth-of-type(3) { grid-template-rows:32px minmax(38px,1fr) 40px!important; }
    body.is-game-page .poker-page .pk-lobby-card-icon { width:32px!important;height:32px!important; }
	body.is-game-page .poker-page .pk-blinds-row { grid-template-rows:42px!important; }
	body.is-game-page .poker-page .pk-blinds-row .pk-label { display:none!important; }
    body.is-game-page .poker-page .pk-lobby-card .pk-btn { height:40px!important;min-height:40px!important; }
	body.is-game-page .poker-page .pk-room { grid-template-columns:minmax(0,1fr) 245px!important;grid-template-rows:36px minmax(0,1fr)!important;gap:4px!important; }
	body.is-game-page .poker-page .pk-topbar { grid-column:1/-1!important;grid-row:1!important;height:36px!important;min-height:36px!important;padding:3px 7px!important;display:flex!important;gap:7px!important; }
	body.is-game-page .poker-page .pk-topbar-left { width:auto!important;flex:1 1 auto!important;justify-content:flex-start!important; }
	body.is-game-page .poker-page .pk-topbar-right { width:auto!important;flex:0 0 auto!important;gap:4px!important; }
	body.is-game-page .poker-page .pk-btn-small,
	body.is-game-page .poker-page .pk-invite-button { width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important;flex:0 0 30px!important; }
	body.is-game-page .poker-page .pk-tip-wrap { width:30px!important;min-width:30px!important;height:30px!important;flex:0 0 30px!important; }
	body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle { width:30px!important;min-width:30px!important;height:30px!important;min-height:30px!important; }
	body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle i { font-size:14px!important; }
    body.is-game-page .poker-page .pk-table-zone { grid-column:1!important;grid-row:2!important;padding:38px 4px 45px!important; }
    body.is-game-page .poker-page .pk-bottombar { grid-column:2!important;grid-row:2!important;height:100%!important;border-radius:12px!important; }
    body.is-game-page .poker-page .pk-bottombar { padding:5px!important; }
    body.is-game-page .poker-page .pk-actions { grid-template-rows:32px 146px minmax(92px,1fr)!important;height:100%!important; }
    body.is-game-page .poker-page .pk-direct-actions { grid-row:3!important;grid-template-columns:repeat(3,1fr)!important;grid-template-rows:1fr 1fr!important; }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action { height:100%!important;min-height:44px!important; }
    body.is-game-page .poker-page .pk-raise-group { grid-row:2!important;height:146px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:44px 44px 44px!important;gap:3px!important;padding:4px!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-control-caption { grid-column:1/4!important;grid-row:1!important; }
    body.is-game-page .poker-page .pk-raise-stepper { width:min(174px,calc(100% - 58px))!important;grid-template-columns:44px minmax(56px,1fr) 44px!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider { grid-column:1/4!important;grid-row:2!important; }
    body.is-game-page .poker-page #pk_raise_min { grid-column:1!important;grid-row:3!important; }
    body.is-game-page .poker-page #pk_raise_half_pot { grid-column:2!important;grid-row:3!important; }
    body.is-game-page .poker-page #pk_raise_pot { grid-column:3!important;grid-row:3!important; }
    body.is-game-page .poker-page .pk-btn-raise { grid-column:1/4!important;grid-row:4!important; }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-raise { grid-column:auto!important;grid-row:auto!important;height:100%!important;min-height:44px!important; }}

/* Poker fluid viewport scaling ----------------------------------------- */
/*
 * Keep the table in one coordinate system at every desktop width.  The
 * table zone is the sizing container, so cards and seats grow with the
 * available game canvas instead of stopping at the old 940px desktop cap.
 */
@media (min-width:769px) {
    .poker-page {
        width:100%;
        max-width:1680px;
        padding:clamp(14px,1.6vw,28px) clamp(12px,1.7vw,28px) clamp(28px,3vw,48px);
        box-sizing:border-box;
    }
    .poker-page .pk-room,
    .poker-page .pk-topbar,
    .poker-page .pk-bottombar { min-width:0; }
    .poker-page .pk-table-zone {
        padding:clamp(52px,5.2vw,86px) clamp(22px,4.4vw,74px) clamp(62px,6vw,98px);
        container-type:inline-size;
    }
    .poker-page .pk-table {
        width:min(100%,1280px);
        max-width:none;
        container-type:inline-size;
    }
    .poker-page .pk-croupier-avatar {
        width:clamp(58px,6.4cqi,92px);
        height:clamp(58px,6.4cqi,92px);
    }
    .poker-page .pk-board { gap:clamp(6px,.75cqi,11px); }
    .poker-page .pk-community {
        min-height:clamp(66px,7.7cqi,108px);
        gap:clamp(5px,.75cqi,11px);
    }
    .poker-page .pk-comm-slot,
    .poker-page .pk-community .pk-card {
        width:clamp(46px,5.4cqi,76px);
        height:clamp(65px,7.65cqi,107px);
        border-radius:clamp(7px,.75cqi,11px);
    }
    .poker-page .pk-community .pk-card { font-size:clamp(21px,2.25cqi,32px); }
    .poker-page .pk-community .pk-card-suit { font-size:clamp(17px,1.85cqi,26px); }
    .poker-page .pk-seat { width:clamp(108px,11.5cqi,160px); }
    .poker-page .pk-seat-cards {
        min-height:clamp(54px,5.8cqi,81px);
        gap:clamp(4px,.5cqi,7px);
    }
    .poker-page .pk-seat-cards .pk-card {
        width:clamp(38px,4cqi,56px);
        height:clamp(54px,5.75cqi,81px);
        font-size:clamp(17px,1.75cqi,24px);
    }
    .poker-page .pk-seat-cards .pk-card-suit { font-size:clamp(14px,1.45cqi,20px); }
    .poker-page .pk-runout-cards .pk-card {
        width:clamp(38px,3.7cqi,52px);
        height:clamp(54px,5.2cqi,73px);
    }}

/* Tablet and small-laptop widths keep every status/action control inside
 * the room without forcing horizontal scrolling. */
@media (min-width:769px) and (max-width:1100px) {
    .poker-page .pk-topbar { padding:9px 10px; }
    .poker-page .pk-topbar-left,
    .poker-page .pk-topbar-right { min-width:0;gap:7px; }
    .poker-page .pk-hash { max-width:clamp(90px,15vw,165px); }
    .poker-page .pk-table-zone { padding-right:clamp(16px,3vw,32px);padding-left:clamp(16px,3vw,32px); }
    .poker-page .pk-bottombar { padding:10px; }
    .poker-page .pk-public-list { grid-template-columns:repeat(2,minmax(0,1fr)); }}

/* 15-inch laptop layout (1366x768, 1440x900 and scaled equivalents).
 * The active room becomes a three-row app scene: status, felt and controls.
 * Secondary hand history is omitted here so no gameplay control sits below
 * the fold. It remains available on taller screens and in normal fullscreen. */
@media (min-width:769px) and (max-width:1700px) and (max-height:920px) {
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] {
        height:calc(100dvh - 84px)!important;
        min-height:0!important;
        margin-top:8px;
        margin-bottom:8px;
        overflow:hidden!important;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_loader"],
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content"] {
        height:100%;
        min-height:0!important;
        overflow:hidden!important;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content2"] {
        height:100%;
        min-height:0!important;
        display:flex!important;
        flex-direction:column!important;
        overflow:hidden!important;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content2"] > [class~="game-back-nav"] {
        flex:0 0 auto;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content2"] > [class~="poker-page"] {
        height:auto;
        flex:1 1 auto;
        min-height:0;
        padding:0 clamp(8px,1vw,16px);
        overflow-x:hidden;
        overflow-y:auto;
    }
    body.is-game-page .poker-page-top { display:none; }
    body.is-game-page .poker-page .pk-lobby {
        height:auto;
        min-height:0;
        overflow:visible;
        overscroll-behavior:contain;
    }
    body.is-game-page .poker-page .pk-room {
        width:100%;
        height:100%;
        min-height:0;
        display:grid;
        grid-template-columns:minmax(0,1fr);
        grid-template-rows:42px minmax(0,1fr) auto;
        overflow:hidden;
    }
    body.is-game-page .poker-page .pk-topbar {
        grid-row:1;
        min-width:0;
        height:42px;
        min-height:42px;
        padding:4px 8px;
        flex-wrap:nowrap;
        overflow:hidden;
        box-sizing:border-box;
    }
    body.is-game-page .poker-page .pk-topbar-left {
        min-width:0;
        flex:1 1 auto;
        gap:6px;
        overflow:hidden;
        white-space:nowrap;
    }
    body.is-game-page .poker-page .pk-topbar-right {
        min-width:0;
        flex:0 0 auto;
        gap:4px;
    }
    body.is-game-page .poker-page .pk-hash { display:none; }
    body.is-game-page .poker-page .pk-topbar-right .pk-btn-small,
    body.is-game-page .poker-page .pk-topbar-right .pk-invite-button,
    body.is-game-page .poker-page .pk-topbar-right .pk-tip-toggle {
        width:32px;
        min-width:32px;
        height:32px;
        min-height:32px;
        padding:0;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        border-radius:8px;
        font-size:0;
    }
    body.is-game-page .poker-page .pk-topbar-right .pk-btn-small i,
    body.is-game-page .poker-page .pk-topbar-right .pk-invite-button i,
    body.is-game-page .poker-page .pk-topbar-right .pk-tip-toggle i {
        margin:0;
        font-size:11px;
    }
    body.is-game-page .poker-page .pk-tip-wrap { width:32px;height:32px; }
    body.is-game-page .poker-page .pk-table-zone {
        grid-row:2;
        width:100%;
        height:100%;
        min-height:0;
        padding:42px clamp(18px,2.4vw,36px) 50px;
        display:grid;
        place-items:center;
        overflow:hidden;
        box-sizing:border-box;
        container-type:size;
    }
    body.is-game-page .poker-page .pk-table {
        width:min(100%,calc(100cqh * 2.18),1280px);
        max-width:none;
    }
    body.is-game-page .poker-page .pk-bottombar {
        grid-row:3;
        min-height:0;
        padding:7px 8px;
        overflow:hidden;
        box-sizing:border-box;
    }
    body.is-game-page .poker-page .pk-actions {
        grid-template-columns:minmax(310px,.9fr) minmax(360px,1.1fr);
        gap:6px;
    }
    body.is-game-page .poker-page .pk-action-head {
        min-height:32px;
        padding:4px 7px;
    }
    body.is-game-page .poker-page .pk-reaction-toggle,
    body.is-game-page .poker-page .pk-preaction-btn {
        min-height:28px;
        height:28px;
    }
    body.is-game-page .poker-page .pk-reaction-toggle > img { width:22px;height:22px; }
    body.is-game-page .poker-page .pk-direct-actions {
        gap:4px;
        padding:3px;
    }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action {
        height:50px;
        min-height:50px;
        padding:0 5px;
    }
    body.is-game-page .poker-page .pk-raise-group {
        min-height:58px;
        grid-template-rows:19px 29px;
        gap:4px;
        padding:4px 6px;
    }
    body.is-game-page .poker-page .pk-raise-stepper { height:30px; }
    body.is-game-page .poker-page .pk-raise-group .pk-chip-btn,
    body.is-game-page .poker-page .pk-raise-presets .pk-chip-btn {
        min-height:25px;
        height:25px;
    }
    body.is-game-page .poker-page .pk-visual-history-panel,
    body.is-game-page .poker-page .pk-log-panel { display:none!important; }}

@media (min-width:769px) and (max-width:1100px) and (max-height:920px) {
    body.is-game-page .poker-page .pk-actions {
        grid-template-columns:minmax(280px,.82fr) minmax(350px,1.18fr);
    }
    body.is-game-page .poker-page .pk-action-head > div:first-child > span,
    body.is-game-page .poker-page .pk-preactions > span { display:none; }
    body.is-game-page .poker-page .pk-preactions { min-width:0; }
    body.is-game-page .poker-page .pk-preaction-btn { padding:0 7px; }}

@media (min-width:769px) and (max-width:1700px) and (max-height:760px) {
    body.is-game-page .poker-page .pk-table-zone { padding-top:38px;padding-bottom:45px; }
    body.is-game-page .poker-page .pk-bottombar { padding:5px 7px; }
    body.is-game-page .poker-page .pk-action-head { min-height:29px;padding-top:2px;padding-bottom:2px; }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action { height:46px;min-height:46px; }
    body.is-game-page .poker-page .pk-raise-group { padding-top:2px;padding-bottom:2px; }}

/* Ultra-wide, low-height displays (including 2880x620).  Height is the
 * scarce axis here, so the action dock moves beside the felt instead of
 * consuming another horizontal strip below it. */
@media (min-width:1701px) and (max-height:700px) {
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] {
        height:calc(100dvh - 84px)!important;
        min-height:0!important;
        margin-top:8px;
        margin-bottom:8px;
        overflow:hidden!important;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_loader"],
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content"],
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content2"] {
        height:100%;
        min-height:0!important;
        overflow:hidden!important;
    }
    body[class~="is-game-page"] [class~="main-panel"][class~="page-poker"] [id="page_content2"] > [class~="poker-page"] {
        width:100%;
        max-width:none;
        height:100%;
        min-height:0;
        padding:0 12px;
        overflow:hidden;
    }
    body.is-game-page .poker-page-top { display:none; }
    body.is-game-page .poker-page .pk-lobby {
        height:100%;
        min-height:0;
        overflow-x:hidden;
        overflow-y:auto;
        overscroll-behavior:contain;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) {
        width:100%;
        height:100%;
        min-height:0;
        display:grid;
        grid-template-columns:minmax(0,1fr) clamp(620px,28vw,780px);
        grid-template-rows:42px minmax(0,1fr);
        gap:6px;
        overflow:hidden;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-topbar {
        grid-column:1/-1;
        grid-row:1;
        height:42px;
        min-height:42px;
        padding:4px 10px;
        flex-wrap:nowrap;
        overflow:hidden;
        box-sizing:border-box;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-table-zone {
        grid-column:1;
        grid-row:2;
        width:100%;
        height:100%;
        min-height:0;
        padding:40px 28px 45px;
        display:grid;
        place-items:center;
        overflow:hidden;
        box-sizing:border-box;
        container-type:size;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-table {
        width:min(100%,calc(100cqh * 2.18),1280px);
        max-width:none;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-bottombar {
        grid-column:2;
        grid-row:2;
        width:100%;
        height:100%;
        min-height:0;
        padding:10px;
        align-self:stretch;
        overflow:visible;
        border-radius:14px;
        box-sizing:border-box;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-actions {
        width:100%;
        height:100%;
        min-height:0;
        grid-template-columns:minmax(0,1fr);
        grid-template-rows:auto auto auto;
        align-content:center;
        gap:8px;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-action-head {
        grid-column:1;
        grid-row:1;
        min-height:38px;
        padding:5px 8px;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-direct-actions {
        grid-column:1;
        grid-row:2;
        grid-template-columns:1.28fr .82fr .82fr 1.08fr .9fr;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-direct-actions .pk-btn-action {
        height:56px;
        min-height:56px;
    }
    body.is-game-page .poker-page #pk_room:not(:fullscreen) .pk-raise-group {
        grid-column:1;
        grid-row:3;
        min-height:66px;
    }
    body.is-game-page .poker-page .pk-visual-history-panel,
    body.is-game-page .poker-page .pk-log-panel { display:none!important; }}

/*
 * The mobile table can be width- or height-limited.  Scale its children
 * against both axes (the 1.52 factor is the mobile oval aspect ratio), so a
 * short landscape viewport cannot leave oversized cards on a shrunken felt.
 */
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    @supports (width:1cqw) {
        body.is-game-page .poker-page .pk-table { container-type:inline-size!important; }
        body.is-game-page .poker-page .pk-croupier-avatar {
            width:clamp(32px,min(7.6cqw,11.55cqh),42px)!important;
            height:clamp(32px,min(7.6cqw,11.55cqh),42px)!important;
        }
        body.is-game-page .poker-page .pk-community {
            min-height:clamp(34px,min(8.5cqw,12.92cqh),58px)!important;
            height:clamp(34px,min(8.5cqw,12.92cqh),58px)!important;
        }
        body.is-game-page .poker-page .pk-comm-slot,
        body.is-game-page .poker-page .pk-community .pk-card {
            width:clamp(24px,min(6cqw,9.12cqh),42px)!important;
            height:clamp(34px,min(8.5cqw,12.92cqh),58px)!important;
        }
        body.is-game-page .poker-page .pk-seat {
            width:clamp(62px,min(15cqw,22.8cqh),96px)!important;
        }
        body.is-game-page .poker-page .pk-seat-cards {
            min-height:clamp(30px,min(7.3cqw,11.1cqh),50px)!important;
            height:clamp(30px,min(7.3cqw,11.1cqh),50px)!important;
        }
        body.is-game-page .poker-page .pk-seat-cards .pk-card {
            width:clamp(20px,min(5cqw,7.6cqh),34px)!important;
            height:clamp(29px,min(7cqw,10.64cqh),48px)!important;
        }
        body.is-game-page .poker-page .pk-seat.pk-me .pk-seat-cards {
            min-height:clamp(38px,min(9.3cqw,14.14cqh),63px)!important;
            height:clamp(38px,min(9.3cqw,14.14cqh),63px)!important;
        }
        body.is-game-page .poker-page .pk-seat.pk-me .pk-seat-cards .pk-card {
            width:clamp(26px,min(6.5cqw,9.88cqh),44px)!important;
            height:clamp(37px,min(9cqw,13.68cqh),61px)!important;
        }}}

/* Case Battles mobile app ---------------------------------------------- */
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .cb-page .cb-lobby.hidden { display:none!important; }
    body.is-game-page .cb-page .cb-room.hidden { display:none!important; }
    body.is-game-page .cb-page .cb-invite-join.hidden { display:none!important; }}

/* Aviamasters mobile flight scene -------------------------------------- */
@media (max-width:768px) and (orientation:portrait) {

    body.is-game-page .av-page .av-autobet-segment:has(.av-autobet-panel:not(.hidden)) {
        position:fixed!important;z-index:9500!important;right:max(8px,var(--mobile-safe-right,0px))!important;bottom:calc(var(--mobile-tabs-h,64px) + var(--mobile-safe-bottom,0px) + 8px)!important;
        left:max(8px,var(--mobile-safe-left,0px))!important;width:auto!important;height:auto!important;max-height:min(64dvh,470px)!important;padding:10px!important;
        display:flex!important;flex-direction:column!important;gap:8px!important;overflow-y:auto!important;border-color:rgba(178,112,235,.3)!important;border-radius:17px!important;
        background:linear-gradient(155deg,#21172e,#100d18 76%)!important;box-shadow:0 24px 70px rgba(0,0,0,.65)!important;
    }}

@media (max-width:768px) and (orientation:landscape), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .av-page .av-autobet-segment:has(.av-autobet-panel:not(.hidden)) {
        position:fixed!important;z-index:9500!important;inset:8px!important;width:auto!important;height:auto!important;max-height:calc(100dvh - 16px)!important;padding:9px!important;
        display:flex!important;flex-direction:column!important;gap:6px!important;overflow-y:auto!important;border-radius:15px!important;background:linear-gradient(155deg,#21172e,#100d18 76%)!important;box-shadow:0 24px 70px rgba(0,0,0,.65)!important;
    }}
.bnz-free-banner:not(.hidden) { animation:bnz-free-aura 1.65s ease-in-out infinite; }

/* Desktop: keep every primary game surface on the left and its controls on
   the right. Mobile layouts continue to stack the surface above the controls
   and retain their route-specific sizing. */
@media (min-width:769px) {
    .pk-game-layout { flex-direction:row-reverse; }}

/* The shared toolbar reserves space for fullscreen instead of covering a
   game's own header actions. */
@media (max-width:768px), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .main-panel:not(.page-poker) .game-back-nav {
        width:100%;height:46px;min-height:46px;flex:0 0 46px;
        padding:3px 6px!important;display:flex!important;
        align-items:center;justify-content:space-between;box-sizing:border-box;
    }
    body.is-game-page .main-panel:not(.page-poker) .game-back-home {
        min-height:40px;padding:0 10px;
    }
    body.is-game-page .main-panel:not(.page-poker) #page_content2 { padding-top:0; }}
.nv-page .hidden { display: none !important; }
.nv-field-icon .fa-users, .nv-field-icon .fa-money { margin-top: 8px; }
.nv-public-title-icon > .fa { display: block; width: 1em; height: 1em; margin-top: 12px; font-size: 16px; line-height: 1; text-align: center; }
.rv-page .hidden { display: none !important; }
.rv-public-title-icon > .fa { display: block; width: 1em; height: 1em; margin-top: 12px; font-size: 16px; line-height: 1; text-align: center; }
.bd-page .hidden { display: none !important; }
.bd-public-title-icon > .fa { display: block; width: 1em; height: 1em; margin-top: 12px; font-size: 16px; line-height: 1; text-align: center; }

/* Poker mobile viewport corrections ------------------------------------
 * The shared mobile shell already subtracts the header, safe areas and the
 * bottom tabs. Keep the poker scene inside that remaining box and let the
 * felt, rather than the controls, absorb changes in viewport height. */
@media (max-width:768px) and (orientation:portrait) {
    body.is-game-page .main-panel.page-poker #page_content2 {
        padding-right:max(4px,var(--mobile-safe-right,0px));
        padding-left:max(4px,var(--mobile-safe-left,0px));
    }
    body.is-game-page .poker-page .pk-lobby {
        height:100%!important;
        min-height:0!important;
        padding:0 3px 12px!important;
        display:flex!important;
        flex-direction:column!important;
        flex-wrap:nowrap!important;
        align-items:stretch!important;
        gap:10px!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior-y:contain!important;
        -webkit-overflow-scrolling:touch;
        box-sizing:border-box!important;
    }
    body.is-game-page .poker-page .pk-lobby > * {
        min-width:0!important;
        flex:0 0 auto!important;
    }
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--create {
        grid-template-rows:auto auto auto auto auto!important;
    }
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--join {
        grid-template-rows:auto auto auto!important;
    }
    body.is-game-page .poker-page .pk-public-card {
        position:relative!important;
        width:100%!important;
        min-height:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
        isolation:isolate;
    }
    body.is-game-page .poker-page .pk-public-list {
        width:100%!important;
        max-height:min(46dvh,420px)!important;
        padding-right:2px!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior-y:contain!important;
        -webkit-overflow-scrolling:touch;
        box-sizing:border-box!important;
        scrollbar-width:thin;
        scrollbar-color:rgba(113,203,162,.42) rgba(255,255,255,.035);
    }
    body.is-game-page .poker-page .pk-public-list::-webkit-scrollbar { width:4px; }
    body.is-game-page .poker-page .pk-public-list::-webkit-scrollbar-thumb {
        border-radius:4px;
        background:rgba(113,203,162,.42);
    }
    body.is-game-page .poker-page .pk-public-row {
        position:relative!important;
        width:100%!important;
        min-height:0!important;
        box-sizing:border-box!important;
    }
    body.is-game-page .poker-page #pk_room.hidden {
        display:none!important;
    }
    body.is-game-page .poker-page .pk-room {
        grid-template-rows:66px minmax(0,1fr) auto!important;
    }
    body.is-game-page .poker-page .pk-topbar {
        height:66px!important;
        min-height:66px!important;
        grid-template-rows:22px 32px!important;
        gap:4px!important;
        padding:4px 6px!important;
    }
    body.is-game-page .poker-page .pk-btn-small,
    body.is-game-page .poker-page .pk-invite-button,
    body.is-game-page .poker-page .pk-tip-wrap,
    body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle {
        height:32px!important;
        min-height:32px!important;
    }
    body.is-game-page .poker-page .pk-table-zone {
        padding-top:clamp(36px,6dvh,48px)!important;
        padding-bottom:clamp(40px,7dvh,55px)!important;
    }
    body.is-game-page .poker-page .pk-actions {
        grid-template-rows:30px 96px 48px!important;
        gap:5px!important;
    }
    body.is-game-page .poker-page .pk-action-head {
        height:30px!important;
        min-height:30px!important;
    }
    body.is-game-page .poker-page .pk-raise-group {
        height:96px!important;
        grid-template-rows:40px 42px!important;
        gap:4px!important;
        padding:5px!important;
    }
    body.is-game-page .poker-page .pk-raise-stepper,
    body.is-game-page .poker-page .pk-raise-stepper button,
    body.is-game-page .poker-page #pk_raise_display {
        height:40px!important;
    }
    body.is-game-page .poker-page #pk_raise_display { line-height:40px!important; }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider,
    body.is-game-page .poker-page .pk-raise-group .pk-chip-btn {
        height:42px!important;
        min-height:42px!important;
    }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action {
        height:48px!important;
        min-height:48px!important;
    }
}

/* Compact phones need a usable felt without making the action buttons
 * smaller than a comfortable touch target. */
@media (max-width:768px) and (max-height:720px) and (orientation:portrait) {
    body.is-game-page .poker-page .pk-room {
        grid-template-rows:58px minmax(0,1fr) auto!important;
    }
    body.is-game-page .poker-page .pk-topbar {
        height:58px!important;
        min-height:58px!important;
        grid-template-rows:18px 30px!important;
        gap:2px!important;
        padding:3px 5px!important;
    }
    body.is-game-page .poker-page .pk-room-visibility { display:none!important; }
    body.is-game-page .poker-page .pk-btn-small,
    body.is-game-page .poker-page .pk-invite-button,
    body.is-game-page .poker-page .pk-tip-wrap,
    body.is-game-page .poker-page .pk-tip-wrap .pk-tip-toggle {
        height:30px!important;
        min-height:30px!important;
    }
    body.is-game-page .poker-page .pk-table-zone {
        padding-top:34px!important;
        padding-bottom:38px!important;
    }
    body.is-game-page .poker-page .pk-bottombar {
        padding:4px 5px max(4px,env(safe-area-inset-bottom))!important;
    }
    body.is-game-page .poker-page .pk-actions {
        grid-template-rows:27px 84px 44px!important;
        gap:4px!important;
    }
    body.is-game-page .poker-page .pk-action-head {
        height:27px!important;
        min-height:27px!important;
    }
    body.is-game-page .poker-page .pk-raise-group {
        height:84px!important;
        grid-template-rows:35px 37px!important;
        gap:3px!important;
        padding:4px!important;
    }
    body.is-game-page .poker-page .pk-raise-stepper,
    body.is-game-page .poker-page .pk-raise-stepper button,
    body.is-game-page .poker-page #pk_raise_display {
        height:35px!important;
    }
    body.is-game-page .poker-page #pk_raise_display {
        line-height:35px!important;
        font-size:15px!important;
    }
    body.is-game-page .poker-page .pk-raise-group .pk-cursor-slider,
    body.is-game-page .poker-page .pk-raise-group .pk-chip-btn {
        height:37px!important;
        min-height:37px!important;
    }
    body.is-game-page .poker-page .pk-direct-actions .pk-btn-action {
        height:44px!important;
        min-height:44px!important;
        font-size:10px!important;
    }
}

@media (max-width:768px) and (orientation:landscape), (pointer:coarse) and (max-width:1199px) and (max-height:600px) and (orientation:landscape) {
    body.is-game-page .poker-page #pk_room.hidden {
        display:none!important;
    }
    body.is-game-page .poker-page .pk-lobby {
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        grid-template-rows:auto auto!important;
        align-content:start!important;
        align-items:start!important;
        padding-bottom:10px!important;
    }
    body.is-game-page .poker-page .pk-lobby > * { min-width:0!important; }
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--create,
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--join {
        height:auto!important;
        align-self:start!important;
        overflow:hidden!important;
    }
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--create {
        grid-template-rows:32px 42px 58px auto 40px!important;
    }
    body.is-game-page .poker-page .pk-lobby .pk-lobby-card--join {
        grid-template-rows:32px auto 40px!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-room-limits {
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        grid-template-rows:auto!important;
        gap:4px!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-room-limits > div {
        min-height:52px!important;
        padding:5px!important;
        grid-template-columns:18px minmax(0,1fr)!important;
        grid-template-rows:auto auto!important;
        column-gap:4px!important;
        box-sizing:border-box!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-limit-icon {
        grid-column:1!important;
        grid-row:1/3!important;
        width:18px!important;
        height:18px!important;
        font-size:7px!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-limit-copy {
        grid-column:2!important;
        grid-row:1!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-limit-copy > span {
        overflow:hidden!important;
        font-size:6px!important;
        text-overflow:ellipsis!important;
        white-space:nowrap!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-limit-copy > small {
        display:none!important;
    }
    body.is-game-page .poker-page .pk-lobby-card--create .pk-room-limits strong {
        grid-column:2!important;
        grid-row:2!important;
        margin-top:2px!important;
        font-size:8px!important;
        text-align:left!important;
    }
    body.is-game-page .poker-page .pk-public-card {
        grid-column:1/-1!important;
        position:relative!important;
        min-height:0!important;
        overflow:hidden!important;
        isolation:isolate;
    }
    body.is-game-page .poker-page .pk-public-list {
        max-height:min(52dvh,300px)!important;
        padding-right:2px!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior-y:contain!important;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:thin;
        scrollbar-color:rgba(113,203,162,.42) rgba(255,255,255,.035);
    }
    body.is-game-page .poker-page .pk-public-row {
        position:relative!important;
        width:100%!important;
        box-sizing:border-box!important;
    }
    body.is-game-page .poker-page .pk-room {
        grid-template-columns:minmax(0,1fr) clamp(210px,32vw,245px)!important;
    }
}
