/* Full-width viewing room; the room and media connections are unchanged. */
.shell{width:100%;max-width:none;min-height:100dvh;padding:22px clamp(18px,2vw,48px) 28px}
.topbar{margin-bottom:24px}.intro{margin-bottom:20px}.intro p{max-width:900px;font-size:15px}
.roomLayout{grid-template-columns:minmax(0,1fr) clamp(320px,22vw,420px);gap:22px}
.stage{min-height:clamp(360px,calc(100dvh - 480px),1000px)}
.shell:has(.stage.live) .intro{display:none}.stage.live{min-height:clamp(360px,calc(100dvh - 330px),1200px);padding:12px}
#preview{height:calc(100dvh - 354px);min-height:336px;max-height:none;object-fit:contain}
.remoteTile video{height:calc(100dvh - 410px);min-height:290px;max-height:none;object-fit:contain}
.remoteTile:fullscreen video{height:calc(100dvh - 58px);min-height:0}
.roomBar{padding:18px 22px}.roomBar strong{font-size:15px}#connectionStatus{font-size:13px}
.primary,.secondary{font-size:14px;padding:11px 16px}.toolbar{padding:15px 20px}
.controlCardHead strong{font-size:15px}.controlLabel{font-size:13px}.controlHint,.audioHint{font-size:12px}
.stageEmpty{max-width:580px}.stageEmpty h2{font-size:25px}.stageEmpty p{font-size:15px}
.inviteText strong{font-size:14px}.inviteText span,.inviteLink code{font-size:12px}
.participantsHead strong{font-size:15px}.personName{font-size:14px}.personMeta,.personState{font-size:12px}.watchButton{font-size:12px;padding:8px 11px}.activityText{font-size:12px}.activityTime{font-size:11px}
@media(min-width:851px){.roomChat{right:clamp(18px,2vw,48px)}.chatPanel{width:clamp(320px,22vw,420px);height:480px}}
@media(min-width:1800px){h1{font-size:48px}.brand{font-size:22px}.brandSub{font-size:14px}.kicker{font-size:12px}.sideColumn{gap:16px}.participantsHead{font-size:15px}}
@media(max-width:1100px){.roomLayout{grid-template-columns:minmax(0,1fr) 300px;gap:16px}.shell{padding:18px}.brandSub{display:none}}
@media(max-width:850px){.roomLayout{grid-template-columns:1fr}.stage,.stage.live{min-height:330px}#preview,.remoteTile video{height:auto;min-height:0;max-height:70dvh}.topbar{flex-wrap:wrap;gap:10px;margin-bottom:20px}.intro p{font-size:13px}.shell{padding:16px 12px 90px}.roomBar{padding:14px}.primary,.secondary{font-size:13px}.stageEmpty h2{font-size:21px}}
