/* Cameras occupy their own grid column; they never cover the route or captions. */
.live-camera-rail{position:relative;display:flex;flex-direction:column;justify-content:center;gap:16px;min-width:0;min-height:0;padding:12px 0;overflow:hidden;color:inherit}
.live-camera-rail[hidden],.live-camera-tile[hidden]{display:none!important}
.live-camera-tile{display:flex;flex-direction:column;flex:0 1 auto;min-height:0;min-width:0;overflow:hidden;border:1px solid #87939f65;border-radius:8px;background:#f8fafc0d}
.live-camera-tile[data-selected=true]{border-color:#de3449}
.live-camera-rail .live-camera{position:relative;inset:auto;z-index:auto;flex:1 1 auto;min-height:0;width:100%;aspect-ratio:4/3;border:0;border-radius:0;overflow:hidden;background:#111;pointer-events:none}
.live-camera-rail .live-camera img,.live-camera-rail .live-camera video,.live-camera-rail .live-camera canvas{width:100%;height:100%;object-fit:contain;display:block}
.live-camera-caption{flex:none;display:flex;flex-direction:column;gap:3px;margin:0;padding:9px 12px;line-height:1.15;min-width:0}
.live-camera-driver{font-weight:700;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-camera-model{font-size:14px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-camera-rail>.live-audio-toggle{position:absolute;right:8px;top:20px;z-index:3;display:grid;place-items:center;width:44px;height:44px;padding:9px;border:1px solid #ffffff99;border-radius:6px;background:#161a1ee6;color:#fff;cursor:pointer;pointer-events:auto}
.live-camera-rail>.live-audio-toggle[hidden]{display:none}
.live-camera-rail>.live-audio-toggle img{width:24px;height:24px;filter:brightness(0) invert(1)}
.live-camera-rail>.live-audio-toggle[aria-pressed=true]{border-color:#6ce1bf;background:#143b32ee}
.live-camera-rail>.live-audio-toggle:focus-visible{outline:3px solid #2ea5d5;outline-offset:2px}
.live-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:minmax(200px,30%) minmax(0,1fr) 280px;gap:20px}
.live-replay .replay-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:minmax(220px,29%) minmax(0,1fr) 370px;gap:24px}
.live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .replay-cockpit{padding-left:24px}
@media(max-width:1200px){
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:minmax(190px,29%) minmax(0,1fr) 280px;gap:16px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .replay-cockpit{padding-left:16px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .driving-controls{gap:12px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .wheel-wrap{width:135px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .wheel-wrap img{width:135px;height:135px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit,.live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit output{width:44px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit canvas{width:44px}
 .live-camera-driver{font-size:16px}.live-camera-model{font-size:12px}
}
@media(max-width:900px){
 .live-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:26% minmax(0,1fr) 250px;gap:12px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:27% minmax(0,1fr) 250px;gap:12px}
 .live-camera-rail{gap:10px}.live-camera-caption{padding:7px 8px}
}
@media(max-width:760px){
 .live-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:40% minmax(0,1fr);grid-template-rows:minmax(300px,1fr) 176px;gap:0 12px}
 .live-stage:has(>.live-camera-rail:not([hidden]))>aside{grid-column:1/-1}
 .live-camera-driver{font-size:13px}.live-camera-model{font-size:11px}
}
@media(max-width:700px){
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])){grid-template-columns:40% minmax(0,1fr);grid-template-rows:minmax(150px,1fr) 230px;gap:0 12px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .replay-cockpit{grid-column:1/-1;padding-left:0}
 .live-camera-caption{padding:5px 7px;gap:2px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .wheel-wrap{width:76px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .wheel-wrap img{width:76px;height:76px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit,.live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit output{width:28px}
 .live-replay .replay-stage:has(>.live-camera-rail:not([hidden])) .pedal-unit canvas{width:28px}
}
