/* Stake mode (stake-ui.mjs): session strip, error dialog, replay bar, rules mode table and button guide.
   Matches the player dialog: dark glass, gold headings, muted body text. */
.stake-session{position:fixed;top:max(10px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));z-index:6;display:flex;gap:14px;align-items:center;padding:6px 11px;border-radius:7px;background:#0b141ccc;border:1px solid #ffffff14;color:#f6f7fa;font:600 11px/1.2 var(--font-ui);letter-spacing:.02em;pointer-events:none}
.stake-session[hidden]{display:none}
.stake-session small{color:#9fabb7;font-size:9px;letter-spacing:.08em;margin-right:4px}
.app:is([data-super-welcome=true],:has(.bonus-result[open])) .stake-session{visibility:hidden}

.stake-error{max-width:min(440px,calc(100vw - 32px));padding:26px 26px 22px;border:1px solid #ffffff20;border-radius:14px;background:#10171ff7;color:#f6f7fa;box-shadow:0 22px 90px #0008;font-family:var(--font-ui);text-align:center}
.stake-error::backdrop{background:#02070bb8}
.stake-error h2{margin:0 0 10px;font-size:20px;color:#e8d1a0}
.stake-error p{margin:0 0 20px;color:#bfccd5;font-size:14px;line-height:1.6}
.stake-error-actions{display:flex;gap:10px;justify-content:center}
.stake-error button{min-width:130px;min-height:44px;padding:0 18px;border-radius:8px;border:1px solid #f4cd7380;background:#1b3b50;color:#fff1c9;font:700 13px var(--font-ui);letter-spacing:.06em;cursor:pointer}
.stake-error button[data-error-reload]{background:#f4cd73;color:#1a1206;border-color:#f4cd73}
.stake-error[data-stop=false] button[data-error-reload]{display:none}
.stake-error button:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Replay: no balance, bet selector, autoplay or feature menu (RP-14). */
.app[data-stake=replay] :is(.ph-bal,.ph-betseg .ph-bet,#bonus-menu,#autospin,#bet-select,#bet-up,#bet-down){visibility:hidden;pointer-events:none}
.stake-replay{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:7;display:grid;grid-template-columns:auto auto;gap:8px 16px;align-items:center;width:min(720px,calc(100vw - 32px));padding:12px 16px;border-radius:12px;background:#0b141ceb;border:1px solid #f4cd7340;color:#f6f7fa;font-family:var(--font-ui);box-shadow:0 10px 40px #0007}
.stake-replay header{grid-column:1/-1;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.stake-replay header b{color:#f4cd73;font-size:15px;letter-spacing:.14em}
.stake-replay header span{color:#bfccd5;font-size:12px}
.stake-replay-facts{display:flex;gap:18px;flex-wrap:wrap}
.stake-replay-facts div{display:flex;flex-direction:column;gap:3px}
.stake-replay-facts small{color:#9fabb7;font-size:9px;letter-spacing:.08em}
.stake-replay-facts strong{font-size:14px}
.stake-replay button{justify-self:end;min-width:140px;min-height:44px;border-radius:8px;border:0;background:#f4cd73;color:#1a1206;font:800 14px var(--font-ui);letter-spacing:.08em;cursor:pointer}
.stake-replay button:disabled{opacity:.5;cursor:default}
.stake-replay button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.stake-replay p{grid-column:1/-1;margin:0;color:#bfccd5;font-size:12px;min-height:0}
.stake-replay p:empty{display:none}
@media (max-width:620px){.stake-replay{grid-template-columns:1fr}.stake-replay button{justify-self:stretch}}

/* Rules: game modes table and the button guide. */
.rules-modes{width:100%;border-collapse:collapse;font-size:13px;color:#bfccd5}
.rules-modes th,.rules-modes td{padding:9px 10px;border-bottom:1px solid #ffffff12;text-align:left}
.rules-modes thead th{color:#9fabb7;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.rules-modes tbody th{color:#f6f7fa;font-weight:600}
.button-guide{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:12px 20px;margin:18px 0 8px}
.button-guide dt{color:#e8d1a0;font-weight:700;font-size:13px}
.button-guide dd{margin:0;color:#bfccd5;font-size:13px;line-height:1.6}
@media (max-width:620px){.button-guide{grid-template-columns:1fr;gap:4px}.button-guide dd{margin-bottom:10px}.app[data-stake] .player-tabs{grid-template-columns:repeat(5,1fr)}.app[data-stake] .player-tabs button{font-size:10px;padding:0 2px}}

/* A feature the balance cannot cover keeps its price visible but is dimmed (X-04). */
.app[data-stake] .ph-card[data-unaffordable=true]{opacity:.55}
/* Phones: no double-tap or pinch zoom while playing (X-05). */
html:has(.app[data-stake]),.app[data-stake]{touch-action:manipulation}
