/* V104: one viewport, one toolbar, no clipped party-box rows. */
#serverPill,#globalTools{display:none!important}
body #gameTools{position:fixed!important;z-index:1600!important;top:max(8px,env(safe-area-inset-top))!important;right:max(8px,env(safe-area-inset-right))!important;display:flex!important;gap:6px!important;padding:4px!important;border-radius:15px!important;background:#29464baa!important;backdrop-filter:blur(8px);box-shadow:0 5px 18px #1d292b2b!important}
body #gameTools>button{position:static!important;display:grid!important;place-items:center!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;margin:0!important;padding:0!important;border:0!important;border-radius:11px!important;clip-path:none!important;background:#f6ecd8e8!important;color:#35545a!important;box-shadow:0 2px 0 #1d343738!important;font-size:0!important}
body #gameTools #leaveBtn::before{content:'\2190'!important;display:block!important;font:1000 25px/1 system-ui!important;color:#35545a!important}
body #gameTools #quickFullscreenBtn::before{content:'\26F6'!important;font:900 22px/1 system-ui!important}
body #gameTools #quickFullscreenBtn[data-fullscreen="1"]::before{content:'\2199'!important;font-size:21px!important}
body #gameTools #settingsBtn::before{content:'\2699'!important;font:900 20px/1 system-ui!important}
/* Older polish sheets hid the exit control during play. The persistent toolbar
   is authoritative now: exit, fullscreen and settings remain reachable in every phase. */
body #gameTools #leaveBtn{display:grid!important;visibility:visible!important;opacity:1!important}
body #partyOverlay{padding:max(58px,calc(env(safe-area-inset-top) + 52px)) max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important}
body #partyOverlay .partyBoard{width:min(1280px,100%)!important;height:100%!important;padding:10px 12px 9px!important;gap:6px!important;border-radius:20px!important;overflow:hidden!important}
body #partyOverlay .partyBoardHead{padding:0 62px 4px 8px!important;min-height:36px!important;text-align:left!important}
body #partyOverlay .partyBoardHead>span{display:none!important}
body #partyOverlay .partyBoardHead h2{margin:0!important;font-size:clamp(16px,2.4vh,23px)!important;line-height:1.15!important;white-space:nowrap!important}
body #partyOverlay .partyBoardHead small{font-size:9px!important}
body #partyOverlay .partyCards{flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;display:grid!important;grid-template-columns:repeat(var(--party-cols,7),minmax(0,1fr))!important;grid-template-rows:repeat(var(--party-rows,2),minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-rows:minmax(0,1fr)!important;align-content:stretch!important;gap:clamp(4px,.7vw,9px)!important;padding:2px!important}
body #partyOverlay .partyPick{min-height:0!important;height:100%!important;padding:5px 5px 4px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:1px!important;text-align:center!important;border-radius:14px!important;overflow:hidden!important}
body #partyOverlay .partyPick img{width:min(88px,86%)!important;height:min(72px,58%)!important;flex:1 1 auto!important;min-height:34px!important;object-fit:contain!important;padding:0!important}
body #partyOverlay .partyPick>span:not(.partyCat){width:100%!important;flex:0 0 auto!important}
body #partyOverlay .partyPick strong{font-size:clamp(9px,1.6vh,13px)!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
body #partyOverlay .partyPick small,body #partyOverlay .partyPick em,body #partyOverlay .partyCat{display:none!important}
body #partyOverlay .partyPick i{right:4px!important;top:4px!important;max-width:calc(100% - 8px)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:8px!important;padding:3px 5px!important}
body #partyOverlay .partyLive{flex:0 0 auto!important;max-height:32px!important;min-height:0!important;margin:0!important;padding:3px 7px!important;overflow:hidden!important;display:flex!important;align-items:center!important;gap:8px!important}
body #partyOverlay .partyLive>b{display:none!important}
body #partyOverlay #partyLiveRows{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;min-width:0!important;overflow:hidden!important}
body #partyOverlay #partyLiveRows>div{padding:3px 5px!important;font-size:8px!important;min-width:0!important;white-space:nowrap!important}
body #partyOverlay #partyLiveRows em{display:none!important}
.partyPickStatus{position:absolute!important;left:50%!important;bottom:10px!important;transform:translateX(-50%)!important;z-index:3!important;pointer-events:none!important}
@media(max-width:850px){body #partyOverlay .partyCards{--party-cols:7}body #partyOverlay .partyPick img{height:min(58px,55%)!important}.partyPickStatus{bottom:5px!important}}
@media(max-width:560px) and (orientation:portrait){body #partyOverlay .partyCards{--party-cols:4;--party-rows:4}body #partyOverlay .partyLive{display:none!important}}
@media(max-height:430px){body #partyOverlay{padding-top:max(51px,calc(env(safe-area-inset-top) + 45px))!important}body #gameTools{top:max(4px,env(safe-area-inset-top))!important}body #gameTools>button{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important}body #partyOverlay .partyBoardHead{min-height:25px!important;padding-bottom:1px!important}body #partyOverlay .partyPick img{height:min(50px,53%)!important}body #partyOverlay .partyLive{height:24px!important}}
