.mobile-bar,#mobile-next-hand{display:none}.history-panel{margin-bottom:20px}.history-entry{border-top:1px solid var(--line);padding:16px 0;overflow-wrap:anywhere}.history-entry p{margin:7px 0}.history-entry small{color:var(--muted)}#mobile-menu{max-height:100dvh;overflow:auto}
@media(min-width:0px){
 :root{--hand-card-w:clamp(38px,min(calc((100vw - 54px)/5),calc((100dvh - 400px)*.25)),100px)}
 body[data-mobile="true"][data-page="tables"]{height:100dvh;overflow:hidden}
 .mobile-bar{display:flex;height:44px;padding:2px max(8px,env(safe-area-inset-right)) 2px max(8px,env(safe-area-inset-left));gap:8px;align-items:center;background:var(--palette-surface,#fbfcf8);border-bottom:1px solid var(--line)}
 .mobile-bar .button{min-height:40px;padding:6px 10px}.mobile-bar select{min-height:40px;flex:1;max-width:190px;padding:6px}.mobile-bar span{font-size:12px;white-space:nowrap}
 .workspace{margin:0}main{padding:12px}.sidebar,.topbar{display:none}
 #mobile-menu{width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}
 #mobile-menu .sidebar{display:flex;position:static;width:100%;padding:16px;border-radius:12px}#mobile-menu .sidebar nav{display:flex;gap:8px;flex-wrap:wrap}#mobile-menu .nav-button{width:auto;min-height:44px;margin:0;padding:10px}#mobile-menu .nav-button span{display:inline}#mobile-menu .nav-label,#mobile-menu .sidebar-foot{display:none}
 #mobile-menu .topbar{display:flex;flex-direction:column;align-items:stretch;padding:14px 0;border:0}#mobile-menu .role-switch{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px}#mobile-menu .role-switch button,#mobile-menu .role-switch select{min-height:44px}
 #mobile-menu-close,#mobile-history{min-height:44px;width:100%;margin:8px 0}
 body[data-page="tables"] main{padding:0;height:calc(100dvh - 44px);overflow:hidden;max-width:none}
 body[data-page="tables"] .page-heading,body[data-page="tables"] .activity,body[data-page="tables"] footer,#tables-page>.follow-control,#tables-page>.helper,#table-list,.right-rail{display:none}
 #tables-page,#tables-page .game-layout{height:100%;margin:0;display:block}
 #tables-page .game-panel{height:100%;display:flex;flex-direction:column;border:0;border-radius:0;overflow:hidden;min-width:0}
 .panel-heading{padding:4px 10px;min-height:30px;max-height:30px;align-items:center}.panel-heading h2{font-size:15px;margin:0}.panel-heading .live-label{font-size:8px}.panel-heading>div{display:flex;gap:8px;align-items:center}.panel-heading .pill{font-size:10px;padding:4px}
 #hand-status{display:none}.felt{position:relative;flex:1;min-height:0;margin:0 6px;padding:4px 8px;border-width:3px;border-radius:25px;gap:3px;justify-content:space-evenly;overflow:hidden}
 .deck-area{position:absolute;left:8px;top:5px;margin:0;gap:5px;align-self:auto}.table-deck,.burn-pile{width:17px;height:24px;box-shadow:none}.deck-area small{font-size:7px;max-width:36px;margin-top:2px}.deck-area .table-deck{font-size:10px}
 .opponents{width:72%;gap:8px;margin:0;min-height:0;justify-content:space-between}.seat{min-width:65px;display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center}.mini-backs{height:auto;min-height:0;gap:2px;margin:0}.card-back,.mini-backs .card{width:16px;height:23px;padding:2px;font-size:9px}.mini-backs .card .suit{font-size:9px}.seat-name{font-size:10px}.seat-name strong{font-size:11px}.seat-state{font-size:8px}
 .board-zone{padding:0;margin:0;overflow:visible;max-width:100%}.board-zone #pot-total{font-size:19px;margin:0 0 2px;display:inline-block}.pot-label{font-size:9px;margin-right:5px}#table-stakes{display:none}
 .cards{gap:4px}.board .card{width:var(--hand-card-w);height:calc(var(--hand-card-w)*1.38);font-size:calc(var(--hand-card-w)*.42);padding:5px}.board .card .suit{font-size:calc(var(--hand-card-w)*.48)}.board .card.empty{opacity:.35}
 .hero-seat{margin:0;gap:8px;flex-wrap:nowrap;max-width:100%}.hero-seat .cards{overflow:visible}.hero-seat .card{width:calc(var(--hand-card-w)*1.08);height:calc(var(--hand-card-w)*1.49);padding:5px;font-size:calc(var(--hand-card-w)*.46)}.hero-seat .card .suit{font-size:calc(var(--hand-card-w)*.5)}.hero-name{font-size:10px}.hero-name strong{font-size:18px}.hero-status{font-size:9px}.hero-seat .winner-award{font-size:12px;width:auto}.hand-winner{padding:2px}
 #movement-announcement{height:14px;min-height:14px;padding:0 10px;font-size:10px;overflow:hidden;white-space:nowrap}
 .action-area{padding:4px 8px max(4px,env(safe-area-inset-bottom));flex-shrink:0;display:grid;grid-template-columns:1fr 1fr;gap:3px;border-radius:0}.turn-line{grid-column:1/-1;margin:0;min-height:36px;gap:6px}.on-clock #turn-label,#turn-label{font-size:14px}#turn-timer{font-size:30px;letter-spacing:-1px}.on-clock{border-width:2px}#turn-timer.urgent{padding:0 4px;border-width:2px}
 #best-hand{grid-column:1/-1;margin:0;padding:3px 6px;border-width:1px;min-height:25px;display:flex;gap:6px;align-items:center}#best-hand small{font-size:8px;margin:0}#best-hand strong{font-size:16px;line-height:1.05}
 .action-contribution{grid-column:1/-1;margin:0;gap:4px}.action-contribution .stat-row{padding:2px 0;gap:1px;font-size:8px}.action-contribution strong{font-size:15px}
 .action-buttons{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;align-items:end}.action-buttons .button{padding:4px 2px;min-height:44px;font-size:12px;grid-column:auto}.action-buttons .gold{grid-column:auto}.raise-field{margin:0;gap:0;font-size:9px}.raise-field input{width:100%;min-height:33px;padding:4px;font-size:15px;text-align:center}
 #fold{grid-column:1;grid-row:1}#check-call{grid-column:2;grid-row:1}.raise-field{grid-column:3;grid-row:1}#raise{grid-column:4;grid-row:1}#allin{grid-column:5;grid-row:1}
 #bet-controls{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:3px;margin:0}#bet-controls .reference-cycle{grid-column:span 8;min-height:36px;font-size:12px}#bet-controls .bet-direction{grid-column:span 3;min-height:36px;font-size:12px}#bet-controls .bet-preset{grid-column:span 2;min-width:0;min-height:44px;padding:4px 0;font-size:11px}#bet-controls small{display:none}#bet-controls:has(.bet-preset:nth-of-type(7):last-of-type) .bet-preset{grid-column:span 3}
 #demo-pause-inline,#add-time,#mobile-next-hand{margin:0;padding:4px;min-height:36px;font-size:10px;width:100%}#demo-pause-inline{grid-column:1}#add-time{grid-column:2}#mobile-next-hand{display:none;grid-column:2}body[data-between="true"] #mobile-next-hand{display:block}body[data-between="true"] #add-time{display:none}#action-help{display:none}
 #winner-notifications:not(:empty){position:fixed;top:48px;left:8px;right:8px;z-index:8;max-height:26vh;overflow:auto;pointer-events:none}.winner-notice{font-size:clamp(20px,5vw,32px);padding:12px;margin-bottom:4px}.winner-notice small{font-size:9px;margin-top:4px}
 body[data-page="tables"] #notice:not([hidden]),body[data-page="tables"] #connection:not([hidden]),body[data-page="tables"] #action-notification:not([hidden]){position:fixed;top:46px;left:6px;right:6px;z-index:7;font-size:10px;padding:6px;max-height:20vh;overflow:auto;pointer-events:none}body[data-page="tables"] #notice:not(.error){display:none}body[data-page="tables"] #action-notification{display:none!important}
 .history-entry{font-size:13px}.history-panel{padding:16px}
}
@media(max-width:900px) and (max-height:700px){:root{--hand-card-w:clamp(34px,calc((100dvh - 420px)*.36),58px)}.hero-seat .card{width:calc(var(--hand-card-w)*1.03);height:calc(var(--hand-card-w)*1.42)}.mini-backs{display:none}.opponents .seat{flex-wrap:nowrap}.seat-state{display:none}.felt{gap:1px}.action-area{gap:2px}}
@media(max-height:500px) and (min-width:600px){
 #tables-page .game-panel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:28px 1fr}.panel-heading{grid-column:1/-1}.felt{grid-column:1;grid-row:2;height:100%;margin:0 4px}.action-area{grid-column:2;grid-row:2;align-content:center}.action-area .turn-line{min-height:30px}#movement-announcement{display:none}:root{--hand-card-w:clamp(30px,calc((100dvh - 130px)*.24),58px)}.opponents{width:65%}.action-area #best-hand strong{font-size:14px}
}
@media(min-width:0px){#bet-controls .reference-cycle,#bet-controls .bet-direction,#demo-pause-inline,#add-time,#mobile-next-hand{min-height:44px}.hero-seat .card{width:calc(var(--hand-card-w)*1.5);height:calc(var(--hand-card-w)*2.07);font-size:calc(var(--hand-card-w)*.63)}.hero-seat .card .suit{font-size:calc(var(--hand-card-w)*.7)}}
@media(max-width:900px) and (max-height:700px){:root{--hand-card-w:clamp(30px,calc((100dvh - 440px)*.36),58px)}.hero-seat .card{width:calc(var(--hand-card-w)*1.03);height:calc(var(--hand-card-w)*1.42);font-size:calc(var(--hand-card-w)*.46)}.hero-seat .card .suit{font-size:calc(var(--hand-card-w)*.5)}}
@media(max-height:500px) and (min-width:600px){:root{--hand-card-w:clamp(30px,calc((100dvh - 130px)*.24),58px)}.action-area{gap:1px;padding-top:1px;padding-bottom:1px}.action-area #best-hand{min-height:21px}.action-area .action-contribution .stat-row{padding:0}}
@media(min-width:0px){.mobile-bar{position:sticky;top:0;z-index:20;height:calc(44px + env(safe-area-inset-top));padding-top:calc(2px + env(safe-area-inset-top))}body[data-page="tables"] main{height:calc(100dvh - 44px - env(safe-area-inset-top))}}
@media(max-width:350px){#bet-controls .bet-preset{grid-column:span 3;min-width:44px}:root{--hand-card-w:clamp(30px,min(calc((100vw - 54px)/5),calc((100dvh - 460px)*.36)),58px)}}
@media(max-width:350px) and (max-height:600px){:root{--hand-card-w:clamp(26px,calc((100dvh - 490px)*.36),40px)}.hero-seat .card{font-size:calc(var(--hand-card-w)*.5)}}

#mobile-menu .right-rail{display:grid;grid-template-columns:1fr;margin-top:16px}#mobile-menu .right-rail .button{min-height:44px}

.flying-card{width:var(--hand-card-w,60px);height:calc(var(--hand-card-w,60px)*1.38);font-size:calc(var(--hand-card-w,60px)*.5)}
