@media (min-width:761px){
 main{height:calc(100dvh - var(--app-chrome,126px));min-height:0}
 .table-area{height:100%;min-height:0}
 #table{height:0;min-height:220px;max-height:none;flex:1 1 0}
 aside{max-height:100%;overflow-y:auto}
}
#scene,#fallback{position:absolute;inset:0;width:100%;height:100%}
#table[data-dragging=true]::after{content:attr(data-power);position:absolute;bottom:32px;left:50%;transform:translateX(-50%);padding:9px 16px;background:#111827;color:#f8dc37;border:2px solid #f8dc37;border-radius:7px;pointer-events:none;font-weight:bold;white-space:nowrap}
#aim-controls{grid-template-columns:repeat(4,minmax(80px,1fr)) auto auto}
#rotate{font-size:.75rem;min-height:32px;padding:3px 8px;justify-self:start}
@media(max-width:1100px){#aim-controls{grid-template-columns:repeat(4,minmax(65px,1fr))}#flip{grid-column:1}#launch{grid-column:2/4}#rotate{grid-column:4;grid-row:2}#reset-aim{grid-column:1/-1}}
@media(max-width:760px){#aim-controls{grid-template-columns:repeat(2,minmax(0,1fr))}#flip{grid-column:1}#launch{grid-column:2}#rotate{grid-column:2;grid-row:auto;justify-self:end}#reset-aim{grid-column:1;grid-row:auto}}
#action-strip{min-height:112px}
#aim-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
#flip{min-width:96px}#launch{min-width:160px}
#fine-aim{margin:0 0 0 8px;padding:0;border:0;flex:1;min-width:140px}
#fine-aim summary{min-height:44px;padding:12px 8px;font-size:.8rem}
#fine-aim[open]{flex-basis:100%;margin:0}
.fine-grid{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr)) auto auto;gap:8px 14px;align-items:center}
.fine-grid label{display:grid;grid-template-columns:1fr auto;font-size:.8rem}
.fine-grid input{grid-column:1/-1;width:100%}
#rotate-board-left,#rotate-board-right{font-size:1.3rem;min-width:44px;padding:4px}
@media(max-width:760px){body:not(.in-room) aside{order:-1}.fine-grid{grid-template-columns:1fr 1fr}#fine-aim{min-width:110px;margin:0}#fine-aim summary{font-size:.75rem}#launch{min-width:145px}.camera-controls button{padding:5px 7px}#rotate-board-left,#rotate-board-right{font-size:1.2rem}#round-info{max-width:32%}}
#reset-aim,#rotate,.attribution button{min-height:44px}
.in-room #table-hint{display:none}
@media(max-width:760px){#table{height:clamp(330px,calc(100dvh - 360px),600px);min-height:330px}}
#audio-retry,#shot-badge button,.fine-grid input{min-height:44px}
.expanded-table main{grid-template-columns:minmax(0,1fr)}
.expanded-table aside{display:none}
