/* Table-first hierarchy: original USA art, large indices, readable seat states. */
body[data-screen=table] .room-playfield .felt-flag{opacity:.045}
body[data-screen=table] .felt{background-color:#102d43f2}
body[data-screen=table] .seat .nameplate.has-portrait{padding:3px 4px;min-height:38px;margin-top:44px}
body[data-screen=table] .seat-portrait{width:48px;height:48px;left:50%;top:-43px;transform:translateX(-50%);border:2px solid #cab783;box-shadow:0 2px 8px #0008}
body[data-screen=table] .seat.active .seat-portrait{border-color:#ffde87;box-shadow:0 0 0 3px #ffde8740,0 0 16px #ffd87870}
body[data-screen=table] .seat.active .nameplate{border-color:#ffde87}
body[data-screen=table] .seat.folded .seat-portrait{filter:saturate(.35);opacity:.65}
body[data-screen=table] .seat.folded .hole{display:none}
body[data-screen=table] .seat:not(.seat-0) .hole{position:absolute;top:0;left:calc(50% + 17px);height:28px;gap:1px;z-index:3;margin:0}
body[data-screen=table] .seat:not(.seat-0) .hole .card{width:22px;height:30px}
body[data-screen=table] .seat:not(.seat-0) .hole .card.back{width:14px;height:21px}
body[data-screen=table] .seat:not(.seat-0) .seat-action{display:block;position:static;min-height:15px;line-height:15px;font-size:11px;color:#dee5ef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#101f32;border-radius:0 0 5px 5px;max-width:100%}
body[data-screen=table] .seat.active .seat-action{color:#ffde87}
body[data-screen=table] .seat .seat-action:empty{display:none}
.compact-result{display:none}
body[data-screen=table] .seat-0 .nameplate .name{font-size:11px;color:#c9d2df}
body[data-screen=table] .seat-0 .nameplate{min-height:32px;padding:2px 5px}
body[data-screen=table] .playing-card:not(.mini) .card-index{font-size:23px;line-height:.88;left:3px;top:3px;letter-spacing:-1.5px}
body[data-screen=table] .playing-card:not(.mini) .card-index i{font-size:18px;line-height:.95}
body[data-screen=table] .playing-card:not(.mini) .card-index.bottom{left:auto;top:auto;right:3px;bottom:3px}
body[data-screen=table] .playing-card:not(.mini) .pips{inset:7px 5px 24px 24px}
body[data-screen=table] .playing-card:not(.mini) .pip{font-size:6px}
body[data-screen=table] .playing-card:not(.mini) .card-index.bottom{display:block;font-size:11px;letter-spacing:-.5px}
body[data-screen=table] .playing-card:not(.mini) .card-index.bottom i{font-size:9px}
body[data-screen=table] .playing-card:not(.mini) .court{inset:8px 4px 8px 25px}
body[data-screen=table] .playing-card:not(.mini) .court b{font-size:13px}
body[data-screen=table] .seat-0 .playing-card .card-index{font-size:28px}
body[data-screen=table] .seat-0 .playing-card .card-index i{font-size:23px}
body[data-screen=table] .seat-0 .playing-card .pips{left:29px}
body[data-screen=table] .seat-0 .playing-card .court{left:30px}
body[data-screen=table] .seat-bet{animation:none}
body[data-screen=table] .seat-1 .seat-bet,body[data-screen=table] .seat-2 .seat-bet{left:calc(100% + 8px);top:44px;right:auto;bottom:auto;transform:none}
body[data-screen=table] .seat-4 .seat-bet,body[data-screen=table] .seat-5 .seat-bet{left:auto;right:calc(100% + 8px);top:44px;bottom:auto;transform:none}
body[data-screen=table] .seat-3 .seat-bet{top:48px;left:calc(100% + 7px);transform:none}
body[data-screen=table] .seat:not(.seat-0) .dealer{top:15px;right:-23px}
body[data-screen=table] #table .room-playfield .seat-3{top:4px;left:50%;transform:translateX(-50%)}
body[data-screen=table] #table .room-playfield .seat-2,body[data-screen=table] #table .room-playfield .seat-4{top:27%}
body[data-screen=table] #table .room-playfield .seat-1,body[data-screen=table] #table .room-playfield .seat-5{top:73%}
body[data-screen=table] #table .room-playfield .board-area{top:35%}
body[data-screen=table] #table[data-phase=ready] .room-playfield .board-area{top:36%}
body[data-screen=table] #table .seat-4 .hole,body[data-screen=table] #table .seat-5 .hole{left:auto;right:calc(50% + 13px)}
@media(min-width:601px) and (min-height:651px){
 body[data-screen=table] .seat{width:100px}
 body[data-screen=table] .seat-0{width:145px}
 body[data-screen=table] .seat-0 .card{width:59px;height:80px}
 body[data-screen=table] .seat-0 .hole{height:80px}
 body[data-screen=table] #table .room-playfield .seat-0{top:auto;bottom:4px;transform:translateX(-50%)}
 body[data-screen=table] .seat-0 .seat-bet{top:55px;left:calc(100% + 5px);transform:none}
}
@media(max-width:600px){
 body[data-screen=table] .seat .nameplate.has-portrait{margin-top:33px;min-height:29px;padding:1px 2px}
 body[data-screen=table] .seat-portrait{width:36px;height:36px;top:-34px}
 body[data-screen=table] .nameplate.has-portrait .name{font-size:11px;line-height:13px}
 body[data-screen=table] .nameplate.has-portrait strong{font-size:12px;line-height:14px}
 body[data-screen=table] .seat:not(.seat-0) .seat-action{font-size:10px;line-height:13px;min-height:13px}
 body[data-screen=table] #table .room-playfield .seat-2,body[data-screen=table] #table .room-playfield .seat-4{top:28%}
 body[data-screen=table] #table .room-playfield .seat-1,body[data-screen=table] #table .room-playfield .seat-5{top:73%}
 body[data-screen=table] .seat:not(.seat-0) .hole{display:flex;top:0;left:calc(50% + 13px)}
 body[data-screen=table] .seat.folded .hole{display:none}
 body[data-screen=table] .seat-1 .seat-bet,body[data-screen=table] .seat-2 .seat-bet{left:calc(100% + 2px);top:31px}
 body[data-screen=table] .seat-4 .seat-bet,body[data-screen=table] .seat-5 .seat-bet{right:calc(100% + 2px);top:31px}
 body[data-screen=table] .seat-3 .seat-bet{top:37px;left:calc(100% + 4px)}
 body[data-screen=table] .seat-bet{gap:3px;padding:0 4px;font-size:11px;line-height:14px;min-height:18px}
 body[data-screen=table] .bet-chips{width:13px;height:15px}
 body[data-screen=table] .bet-chips i{width:12px;height:8px}
 body[data-screen=table] #table .seat:not(.seat-0) .dealer{top:-13px;right:-26px}
 body[data-screen=table] #table .seat-4 .dealer,body[data-screen=table] #table .seat-5 .dealer{left:-26px;right:auto}
 body[data-screen=table] #table .room-playfield .board-area{top:37%}
 body[data-screen=table] .room-playfield .seat-0{width:190px;gap:5px;bottom:4px}
 body[data-screen=table] .room-playfield .seat-0 .hole{height:65px;gap:4px}
 body[data-screen=table] .room-playfield .seat-0 .card{width:49px;height:65px}
 body[data-screen=table] .seat-0 .nameplate{width:81px;transform:none}
 body[data-screen=table] .seat-0 .seat-bet{top:-10px;bottom:auto;right:10px}
 body[data-screen=table] .seat-0 .dealer{left:-37px;top:20px}
 body[data-screen=table] #table[data-phase=ready] .room-playfield .board-area{top:39%}
 body[data-screen=table] #table[data-phase=ready] .welcome h2{font-size:19px}
 body[data-screen=table] #table[data-phase=ready] .welcome p{display:none}
}
@media(max-width:600px) and (max-height:700px){
 body[data-screen=table] .action-panel{min-height:144px}
 body[data-screen=table] .actions button{min-height:44px}
 body[data-screen=table] .seat:not(.seat-0) .hole{display:none}
 body[data-screen=table] .stage:is([data-phase=finished],[data-phase=revealing]) .seat:not(.seat-0):not(.folded) .hole{display:flex;top:0;left:calc(50% + 12px)}
 body[data-screen=table] .seat .nameplate.has-portrait{margin-top:27px}
 body[data-screen=table] .seat-portrait{width:30px;height:30px;top:-28px}
 body[data-screen=table] .seat-3 .seat-action{min-height:11px;line-height:11px}
 body[data-screen=table] #table .room-playfield .seat-3{top:0}
 body[data-screen=table] #table .room-playfield .seat-2,body[data-screen=table] #table .room-playfield .seat-4{top:27%}
 body[data-screen=table] #table .room-playfield .seat-1,body[data-screen=table] #table .room-playfield .seat-5{top:73%}
 body[data-screen=table] #table .room-playfield .board-area{top:30%}
 body[data-screen=table] .seat-1 .seat-bet,body[data-screen=table] .seat-5 .seat-bet{top:15px}
 body[data-screen=table] .seat-2 .seat-bet,body[data-screen=table] .seat-4 .seat-bet{top:15px}
 body[data-screen=table] .seat-3 .seat-bet{top:10px}
 body[data-screen=table] .room-playfield .community .card{width:37px;height:51px}
 body[data-screen=table] .playing-card:not(.mini) .card-index{font-size:21px}
 body[data-screen=table] .playing-card:not(.mini) .card-index i{font-size:17px}
 body[data-screen=table] .playing-card:not(.mini) .pips{left:22px}
 body[data-screen=table] .seat-0 .playing-card .card-index{font-size:26px}
 body[data-screen=table] .seat-0 .playing-card .card-index i{font-size:21px}
 body[data-screen=table] .seat-0 .playing-card .pips{left:28px}
 body[data-screen=table] .room-playfield .seat-0 .card{width:46px;height:60px}
 body[data-screen=table] .room-playfield .seat-0 .hole{height:60px}
 body[data-screen=table] .room-playfield .seat-0{width:166px}
 body[data-screen=table] .seat-0 .nameplate{width:65px;transform:translateY(8px)}
 body[data-screen=table] .seat-0 .seat-bet{right:0;top:0}
 body[data-screen=table] #table[data-phase=ready] .room-playfield .board-area{top:36%}
}
@media(min-width:601px) and (max-height:650px){
 body[data-screen=table] .game:has(.hand-story:not([hidden])){display:grid;height:calc(100svh - 48px);grid-template-rows:36px 28px minmax(132px,1fr) 28px 44px}
 body[data-screen=table] .game:has(.hand-story:not([hidden])) .stage{height:100%;min-height:0}
 body[data-screen=table] .hand-story{display:none}
 body[data-screen=table] .board-area .result{display:none}
 body[data-screen=table] .compact-result{display:block;font-size:12px;line-height:1.4;margin-bottom:8px;color:var(--muted)}
 body[data-screen=table] .compact-result strong{display:block;color:var(--text)}
 body[data-screen=table] .room-playfield .seat:not(.seat-0){width:64px}
 body[data-screen=table] #table .room-playfield .seat-1{left:10%}
 body[data-screen=table] #table .room-playfield .seat-5{left:90%}
 body[data-screen=table] #table .room-playfield .seat-2{left:14%}
 body[data-screen=table] #table .room-playfield .seat-4{left:86%}
 body[data-screen=table] .seat .nameplate.has-portrait{margin-top:24px;min-height:28px;height:28px;padding:1px 2px}
 body[data-screen=table] .nameplate.has-portrait .name{font-size:11px;line-height:12px}
 body[data-screen=table] .nameplate.has-portrait strong{font-size:12px;line-height:12px}
 body[data-screen=table] .seat-portrait{width:28px;height:28px;top:-26px}
 body[data-screen=table] .seat:not(.seat-0) .seat-action{line-height:12px;min-height:12px;font-size:10px}
 body[data-screen=table] .seat:not(.seat-0) .hole{left:calc(50% + 10px)}
 body[data-screen=table] #table .room-playfield .board-area{top:28%}
 body[data-screen=table] .seat-1 .seat-bet,body[data-screen=table] .seat-2 .seat-bet,body[data-screen=table] .seat-4 .seat-bet,body[data-screen=table] .seat-5 .seat-bet{top:25px}
 body[data-screen=table] .seat-2 .seat-bet,body[data-screen=table] .seat-4 .seat-bet{top:5px}
 body[data-screen=table] .seat-3 .seat-bet{top:4px}
 body[data-screen=table] .playing-card:not(.mini) .card-index{font-size:20px}
 body[data-screen=table] .playing-card:not(.mini) .card-index i{font-size:16px}
 body[data-screen=table] .playing-card:not(.mini) .pips{left:22px}
 body[data-screen=table] .seat-0 .card{width:46px;height:60px}
 body[data-screen=table] .seat-0 .hole{height:60px}
 body[data-screen=table] .seat-0 .playing-card .card-index{font-size:25px}
 body[data-screen=table] .seat-0 .playing-card .card-index i{font-size:20px}
 body[data-screen=table] .seat-0 .playing-card .pips{left:27px}
}
/* A small dealer disc inside a generous tap target, outside the card/bet lane. */
body[data-screen=table] #table .seat:not(.seat-0) .dealer{width:44px;height:44px;min-height:44px;left:-8px;right:auto;top:-20px;font-size:11px;background:transparent;border:0;box-shadow:none;isolation:isolate}
body[data-screen=table] #table .seat:not(.seat-0) .dealer::before{content:"";position:absolute;inset:12px;border:1px solid #a28e5b;border-radius:50%;background:#fff5d7;z-index:-1}
body[data-screen=table] #table .seat:not(.seat-0) .dealer span{font-size:11px}
body[data-screen=table] #table .seat:not(.seat-0) .dealer small{display:none}
body[data-screen=table] #table .seat.seat-4 .dealer,body[data-screen=table] #table .seat.seat-5 .dealer{left:auto;right:-8px}
body[data-screen=table] #table .seat.seat-3 .dealer{top:-10px}

/* Keep centre symbols legible instead of shrinking them to protect the index. */
.header #settings{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text);border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.header #settings svg{display:block;width:24px;height:24px;pointer-events:none}
.header #settings:hover{border-color:var(--accent);color:var(--accent)}
.header #settings:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.game-toolbar #table-audio{min-height:44px;padding:0 10px;color:var(--accent);font-weight:700;white-space:nowrap;letter-spacing:0;border-inline:1px solid var(--line)}
.game-toolbar #table-audio:hover{color:var(--text);background:var(--surface)}
.game-toolbar #table-audio:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
@media(max-width:700px){
 body[data-screen=table] .game-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;height:80px;min-height:80px;column-gap:8px}
 body[data-screen=table] .game-toolbar #room-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:44px}
 body[data-screen=table] .game-toolbar #table-audio{border:0;padding-inline:8px}
 body[data-screen=table] .game-toolbar>div{grid-column:1/-1;justify-content:space-between;align-items:center;align-self:stretch;border-top:1px solid var(--line)}
}
.audio-settings{border-block:1px solid var(--border,#40516a);padding:16px 0;margin:12px 0}
.audio-settings h3{margin:0 0 8px;font-size:18px}
.audio-volume{display:block;margin:0 0 12px}
.audio-volume>span{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.audio-volume output{font-variant-numeric:tabular-nums}
.audio-volume input{display:block;width:100%;min-height:44px;accent-color:#dbbd78;cursor:pointer}
.audio-settings .field{gap:12px}
.audio-settings .toggle{min-width:60px;min-height:44px}
.audio-settings .modal-buttons button{min-height:44px}
.audio-settings #preview-music{min-height:44px}
body[data-screen=table] #table .playing-card:not(.mini) .pips{inset:9% 7% 24% 43%}
body[data-screen=table] #table .ten-card:not(.mini)>.card-index:not(.bottom){transform:scaleX(.7);transform-origin:left top}
body[data-screen=table] #table .playing-card:not(.mini) .pip{font-size:9px}
body[data-screen=table] #table .seat-0 .playing-card .pip{font-size:11px}
body[data-screen=table] #table .playing-card.ace-card:not(.mini) .pip{font-size:22px}
body[data-screen=table] #table .playing-card:not(.mini) .court{inset:9% 7% 24% 43%;border:0;border-radius:2px;background:linear-gradient(135deg,#ddbd6a33,#ddbd6a0a)}
body[data-screen=table] #table .playing-card:not(.mini) .court b{font:bold 15px/.95 Georgia,serif}
body[data-screen=table] #table .playing-card:not(.mini) .court i{font-size:11px}
@media(min-width:901px) and (min-height:801px){
 body[data-screen=table] #table .community .card{width:62px;height:84px}
 body[data-screen=table] #table .seat-0 .card{width:70px;height:94px}
 body[data-screen=table] #table .seat-0 .hole{height:94px}
 body[data-screen=table] #table .seat-0{width:155px}
 body[data-screen=table] #table .community .playing-card .pip{font-size:13px}
 body[data-screen=table] #table .seat-0 .playing-card .pip{font-size:15px}
 body[data-screen=table] #table .playing-card:not(.mini) .court b{font-size:21px}
 body[data-screen=table] #table .playing-card:not(.mini) .court i{font-size:15px}
}
