/* v1.7.1 - human-centred landscape seating */
body.game-active .topbar{height:0!important;min-height:0!important;padding:0!important;border:0!important;overflow:visible;background:transparent}
body.game-active .topbar>div:first-child{display:none}
body.game-active .top-actions{position:fixed;z-index:85;top:max(3px,env(safe-area-inset-top));right:max(6px,env(safe-area-inset-right));height:30px;display:flex;gap:4px}
body.game-active .top-actions .ghost{height:30px;min-width:54px;padding:3px 8px;font-size:9px;border-radius:7px;background:#171411e8;backdrop-filter:blur(8px)}
body.game-active main{height:100dvh!important;padding-top:max(3px,env(safe-area-inset-top))}
.game-hud{padding-right:clamp(178px,25vw,245px)}
.game-hud .turn-banner{min-width:0}
.landscape-board{grid-template-columns:clamp(92px,12vw,150px) minmax(0,1fr) clamp(92px,12vw,150px)!important;gap:clamp(4px,.65vw,8px)!important}
.table-opponents,.landscape-right-rail{min-width:0;min-height:0;display:flex;flex-direction:column;justify-content:center}
.table-opponents.empty{visibility:hidden}
.table-opponents .opponent-rail,.landscape-right-rail .opponent-rail{display:flex;flex-direction:column;justify-content:center;gap:clamp(5px,1.2vh,10px);overflow:visible}
.table-opponents .opponent-seat,.landscape-right-rail .opponent-seat{display:flex;flex-direction:column;min-height:0;max-height:none;padding:6px;border-radius:9px;background:linear-gradient(145deg,#171411,#0c0b0a);border:1px solid #574535}
.table-opponents .seat-avatar,.landscape-right-rail .seat-avatar{width:100%;height:24px;min-height:24px;border-radius:5px;font-size:10px}
.table-opponents .seat-cap,.landscape-right-rail .seat-cap{margin-top:4px}.table-opponents .player-name,.landscape-right-rail .player-name{font-size:9px!important;line-height:1.1!important}.table-opponents .seat-type,.landscape-right-rail .seat-type{display:block;font-size:7px;color:#e4bc62}
.table-opponents .mini-caravan,.landscape-right-rail .mini-caravan{margin-top:4px;padding:3px}.table-opponents .mini-caravan-grid,.landscape-right-rail .mini-caravan-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,1fr);gap:2px;min-height:28px}
.table-opponents .mini-caravan .caravan-cube,.landscape-right-rail .mini-caravan .caravan-cube{width:100%;height:100%;min-height:10px}.table-opponents .mini-caravan small,.landscape-right-rail .mini-caravan small{display:none}
.table-opponents .seat-footer,.landscape-right-rail .seat-footer{margin-top:4px;gap:3px}.table-opponents .mini-stat,.landscape-right-rail .mini-stat{height:18px;min-width:25px}.table-opponents .mini-stat b,.landscape-right-rail .mini-stat b{font-size:8px}.table-opponents .coin,.landscape-right-rail .coin{width:17px;height:17px;font-size:7px}
.landscape-market{padding-inline:2px}.official-card-track{gap:clamp(4px,.55vw,8px)!important}.official-lane-head h3{font-size:9px!important}.official-lane-head span{font-size:7px!important}
.official-card-slot .game-card.point .point-cost-chip b{font-size:clamp(10px,1.2vw,14px)!important}.official-card-slot .game-card.point .point-cost-chip .cube{width:clamp(11px,1.3vw,15px)!important;height:clamp(11px,1.3vw,15px)!important;flex-basis:clamp(11px,1.3vw,15px)!important}
.personal-zone{height:clamp(100px,22dvh,132px)!important;grid-template-columns:clamp(165px,22vw,285px) minmax(0,1fr)!important}.landscape-game-shell{grid-template-rows:minmax(0,1fr) clamp(100px,22dvh,132px)!important}
.hand-row{align-items:center!important}.hand-row .game-card{width:clamp(54px,6.2vw,78px)!important;flex-basis:clamp(54px,6.2vw,78px)!important;height:calc(clamp(54px,6.2vw,78px)*1.5)!important}
.rail-tools{margin-top:4px}
@media (orientation:landscape) and (max-height:520px){.game-hud{height:34px;flex-basis:34px;padding-right:174px}.game-hud .room-head,.game-hud .turn-banner{height:34px;min-height:34px}.landscape-board{grid-template-columns:82px minmax(0,1fr) 82px!important}.table-opponents .opponent-seat,.landscape-right-rail .opponent-seat{padding:3px}.table-opponents .seat-avatar,.landscape-right-rail .seat-avatar{height:18px;min-height:18px;font-size:8px}.table-opponents .seat-cap,.landscape-right-rail .seat-cap{margin-top:2px}.table-opponents .player-name,.landscape-right-rail .player-name{font-size:7px!important}.table-opponents .mini-caravan,.landscape-right-rail .mini-caravan{margin-top:2px;padding:2px}.table-opponents .mini-caravan-grid,.landscape-right-rail .mini-caravan-grid{min-height:20px}.table-opponents .seat-footer,.landscape-right-rail .seat-footer{margin-top:2px}.table-opponents .seat-type,.landscape-right-rail .seat-type{display:none}.personal-zone{height:100px!important}.landscape-game-shell{grid-template-rows:minmax(0,1fr) 100px!important}.rail-tools{display:none}}
@media (orientation:landscape) and (max-width:760px){body.game-active .top-actions .ghost{min-width:46px;padding-inline:5px;font-size:8px}.game-hud{padding-right:154px}.landscape-board{grid-template-columns:76px minmax(0,1fr) 76px!important}.table-opponents .player-name,.landscape-right-rail .player-name{font-size:7px!important}}
