/* Keep the calibrated seat centers; only the card size and chronological stacking change. */
.stage #trick .slot{width:calc(var(--sw,640px)*.082);height:calc(var(--sw,640px)*.11644)}
.stage #trick .slot .card{font-size:calc(var(--sw,640px)*.0164)}
.stage #trick .slot-partner{left:50.4%;top:49.5%}
.stage #trick .slot-left{left:42.6%;top:59.8%}
.stage #trick .slot-right{left:57.9%;top:59.8%}
.stage #trick .slot-me{left:50.2%;top:71.5%}
.mobile-tools{display:contents}
/* The relocated chat must still layer above the room modal. */
#app{z-index:auto}
/* Inspection is intentionally much larger than the normal table cards. */
@media(max-width:700px){
 .trick-zoom{position:fixed;inset:15% 3% 18%;z-index:190}
 .trick-zoom .zoom-card{width:clamp(80px,25vw,140px)}
 .trick-zoom .zoom-face{height:auto;aspect-ratio:1/1.42}
 .trick-zoom .zoom-face .card{font-size:clamp(16px,5vw,28px)}
 .trick-zoom .zoom-who{font-size:12px;color:#fff}
 .trick-zoom .zoom-partner{left:50%;top:24%}
 .trick-zoom .zoom-left{left:22%;top:50%}
 .trick-zoom .zoom-right{left:78%;top:50%}
 .trick-zoom .zoom-me{left:50%;top:76%}
}
@media(orientation:portrait) and (max-width:700px){
 body:has(.stage.hand-docked) .mobile-tools{
  display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:8px;
  flex-wrap:wrap;min-height:46px;padding:4px 8px;background:#0c231a;
 }
 body:has(.stage.hand-docked) .mobile-tools > :is(.radio-btn,.radio-mute-btn,.radio-unmute-hint,.walkie-btn,.chat-dock:not(.expanded)){
  position:static!important;inset:auto!important;margin:0;flex:0 0 auto;
  transform:none;max-width:none;
 }
 body:has(.stage.hand-docked) .mobile-tools .radio-btn{width:48px;height:38px}
 body:has(.stage.hand-docked) .mobile-tools .walkie-btn{min-height:38px}
 body:has(.stage.hand-docked) .mobile-tools .chat-head{min-height:36px}
 body:has(.stage.hand-docked) .chat-dock.expanded{position:fixed;top:auto!important;bottom:42px!important;right:8px!important;width:min(350px,94vw)}
 .hand-dock.show{padding-top:2px}
 .hand-dock.show .dock-head{line-height:1.5;letter-spacing:.04em}
}
