/* Shared permissions, sequential checks and bottom media controls. */
.webcam-toggle{min-height:36px;padding:6px 10px;border:1px solid #42677d;border-radius:5px;background:#10212c;color:#d7e9f3;font:12px system-ui;cursor:pointer}.ptt-copy{display:flex;flex-direction:column;gap:2px}.ptt-copy small{font-size:10px;font-weight:400;opacity:.8}
#fluxbtn{display:none}.media-checks-grid{display:block!important}.media-check[hidden]{display:none!important}.media-check{padding:20px 0!important;border:0!important;background:transparent!important;min-height:260px}.media-check h3{font-size:18px!important}.media-check video{max-height:220px!important}.media-consent-card{border-radius:12px}.media-consent-card .btn:disabled{background:#26303b!important;border-color:#42505f!important;color:#9ba9b8!important;opacity:1;cursor:not-allowed}#media-consent-continue{margin-left:auto}.media-step>.media-consent-actions:last-child{border-top:1px solid #33404c;padding-top:16px}.media-check-status{border:0!important;background:transparent!important;padding:12px 0!important;min-height:3em}
body #fluxbtn{display:none!important}
body #media-consent-continue:enabled,body #media-tests-continue:enabled{background:#258456;color:#fff;border-color:#50b67b}
body .ptt .ptt-copy{display:flex;flex-direction:column;align-items:center;line-height:1.2}
body .ptt .ptt-copy small{display:block!important;max-width:none;overflow:visible;font-size:10px;line-height:1.2}
@media(max-width:600px){.talkbar{flex-wrap:wrap;gap:6px}.talkbar .ptt{flex:1 1 100%}.talkbar .webcam-toggle{flex:1 1 45%;min-height:36px;font-size:11px}.media-consent-card{border-radius:20px 20px 0 0}.media-check{min-height:220px}}

@media(max-width:600px){
 .talkbar{display:grid;grid-template-columns:24px minmax(0,1fr) minmax(0,1fr);align-items:center}
 .talkbar .lis{grid-column:1;grid-row:1}.talkbar .ptt{grid-column:2/-1;grid-row:1;width:100%}
 .talkbar #webcam-consent-control{grid-column:2/-1;grid-row:2}
 .talkbar:has(#live-speaker-control:not([hidden])) #webcam-consent-control{grid-column:2}
 .talkbar #live-speaker-control{grid-column:3;grid-row:2}
 .talkbar #live-audio-connect{grid-column:2/-1}
}

/* Two explicit destinations, shared by desktop and mobile. */
.room-talk-controls{display:flex;align-items:center;gap:8px;min-width:0}
.room-talk-controls[hidden]{display:none!important}
.room-talk-controls select,.room-talk-controls button{min-height:40px;border:1px solid #3a536d;border-radius:7px;background:#142131;color:#dce8f4;font:500 12px/1.3 system-ui,sans-serif;padding:8px 10px}
.room-talk-controls select{max-width:180px;min-width:0;flex:1}
.room-talk-controls button{white-space:nowrap;flex:none;cursor:pointer}
.room-talk-controls button:disabled{opacity:.5;cursor:default}
.room-talk-controls button.on{background:#a52639;color:#fff;border-color:#ff8793}
body.mic-on-phone .room-talk-controls{display:none}
.talkbar:has(.room-talk-controls:not([hidden])){flex-wrap:wrap}
.talkbar .room-talk-controls{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:8px}
.talkbar .room-talk-controls select{max-width:none;width:100%;font-size:16px}
.talkbar .room-talk-controls button{font-size:13px;min-height:44px;max-width:none;width:auto}

.access-code-form{padding:18px;color:#dce8f4;font:14px/1.4 system-ui,sans-serif;box-sizing:border-box;width:100%;height:100%;overflow:auto}
.access-code-form p{margin:0 0 12px}.access-code-form label{display:block}
.access-code-form input{display:block;width:100%;box-sizing:border-box;margin:6px 0 12px;background:#102331;border:1px solid #496675;border-radius:6px;padding:9px;color:#fff;font:16px system-ui;text-transform:none}
.access-code-form button{background:#79c7dc;border:0;border-radius:6px;padding:10px 14px;color:#07131e;font-weight:600;cursor:pointer}.access-code-form button:disabled{opacity:.5}
.access-code-form [role=status]{margin-top:12px}
/* Compact current-state controls. The icon shape and accessible action supplement color. */
.comm .media-icon-control,.talkbar .media-icon-control{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:5px 8px;flex:none;white-space:nowrap}
.media-icon-control svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
.media-icon-control[data-state="on"]{color:#aff2c4;border-color:#66bc85;background:#173e2b}
.media-icon-control[data-state="off"]{color:#ffd1d1;border-color:#b76d72;background:#3b232b}
.media-icon-control[data-state="pending"]{color:#ffe0a0;border-color:#c5a460}
.comm .listen-icon-control,.talkbar .listen-icon-control{width:38px;padding:5px}
@media(max-width:600px){.talkbar .media-icon-control{min-height:44px}.talkbar #webcam-consent-control{grid-column:2;grid-row:2;justify-self:start;width:auto;flex:none}.talkbar #live-speaker-control{grid-column:3;grid-row:2;justify-self:end;width:44px;flex:none}}

.media-icon-control[hidden]{display:none!important}
