.poker-page .game-layout { max-width:1000px; }
.poker-page #play,.poker-page #message { max-width:none; }
.poker-page .game-toolbar { flex-wrap:wrap; }
.poker-page #round-info { margin-left:auto; }
.poker-note { margin:0 0 14px; text-align:center; color:var(--muted); font-size:12px; }
.poker-table { display:grid; justify-items:center; gap:20px; padding:24px 12px; border:8px solid #c4b99e; border-radius:100px; background:#e7efe8; box-shadow:inset 0 0 0 2px #d5dfd6; color:#263a30; }
.poker-seat { display:grid; grid-template-columns:auto auto; justify-items:center; align-items:center; gap:4px 16px; padding:8px 20px; border-radius:22px; border:2px solid transparent; }
.poker-active { border-color:#ba5a85; background:#ffffff5c; }
.poker-seat-title { grid-column:1; grid-row:1; display:flex; align-items:center; gap:8px; font-size:14px; }
.poker-dealer { display:grid; place-items:center; width:20px; height:20px; font:700 11px/1 system-ui; border-radius:50%; background:#fffdf4; border:1px solid #8d826b; color:#5b5141; }
.poker-bankroll { grid-column:1; grid-row:2; display:flex; align-items:center; justify-content:center; gap:8px; font-size:13px; font-variant-numeric:tabular-nums; }
.poker-chips { display:inline-flex; align-items:center; min-height:28px; padding-left:16px; }
.poker-chips img { display:block; width:28px; height:28px; margin-left:-16px; filter:drop-shadow(0 1px 1px #0003); }
.poker-hole,.poker-community { display:flex; gap:7px; justify-content:center; }
.poker-hole { grid-column:2; grid-row:1 / span 3; }
.poker-card { display:block; position:relative; width:65px; aspect-ratio:127/177; border-radius:5px; background:#fff; border:1px solid #aea99d; box-shadow:0 2px 2px #0002; }
.poker-empty { background:#ffffff25; border:1px dashed #9aab9e; box-shadow:none; }
.poker-bet { grid-column:1; grid-row:3; margin:0; min-height:18px; font-size:12px; }
.poker-middle { display:grid; justify-items:center; gap:10px; }
.poker-pot { display:flex; align-items:center; gap:9px; font-size:15px; }
.poker-street { margin:0; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.poker-status { min-height:24px; text-align:center; font-size:14px; font-weight:600; margin:16px 0 10px; }
.poker-controls { display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; }
.poker-controls button { min-height:44px; padding:9px 16px; }
.poker-wager { display:flex; align-items:center; gap:7px; }
.poker-wager label { font-size:12px; color:var(--muted); display:flex; align-items:center; gap:6px; }
.poker-wager input { width:82px; min-height:44px; padding:8px; border:1px solid var(--line); border-radius:8px; background:var(--surface,#fff); color:var(--ink); font:inherit; font-size:14px; }
.poker-minimum { flex-basis:100%; margin:0; text-align:center; font-size:11px; color:var(--muted); min-height:18px; }
.poker-history { margin-top:18px; font-size:12px; color:var(--muted); }
.poker-history summary { cursor:pointer; padding:8px 0; }
.poker-history ol { max-height:220px; overflow:auto; padding-left:24px; }
.poker-history li { margin:6px 0; }
.poker-controls [hidden] { display:none; }
[data-theme="dark"] .poker-table { background:#253e32; color:#e0ece1; border-color:#5c5546; box-shadow:inset 0 0 0 2px #3d5445; }
[data-theme="dark"] .poker-active { background:#ffffff08; border-color:#d188a8; }
@media(max-width:600px) {
 .poker-page .game-layout { padding-inline:8px; }
 .poker-page .game-surface { padding:12px 10px; }
 .poker-page .game-toolbar { gap:8px; }
 .poker-page .game-toolbar label { font-size:12px; }
 .poker-page .game-toolbar select { max-width:120px; font-size:12px; }
 .poker-page #round-info { order:3; width:100%; margin:0; font-size:11px; }
 .poker-page #restart { margin-left:auto; }
 .poker-table { border-width:5px; border-radius:42px; gap:15px; padding:16px 6px; }
 .poker-card { width:clamp(38px,11vw,56px); }
 .poker-hole .poker-card { width:52px; }
 .poker-community { gap:4px; }
 .poker-seat { padding:6px 8px; column-gap:8px; }
 .poker-bankroll { flex-direction:column; gap:2px; }
 .poker-controls { gap:7px; }
 .poker-controls button { padding-inline:12px; }
 .poker-wager { order:2; flex-basis:100%; justify-content:center; }
 .poker-minimum { order:3; }
}

.poker-card-surface,.poker-card-cover { display:block; position:absolute; inset:0; border-radius:inherit; }
.poker-card-surface { transform-style:preserve-3d; }
.poker-table .poker-card { perspective:600px; }
.poker-table[aria-busy="true"] .poker-card { z-index:2; }
@media(prefers-reduced-motion:no-preference) { .poker-seat { transition:border-color .2s,background .2s; } }
