/* ReadIM V7.6.316 - Webcam : raccourci standard 44 px, transport V307 conservé. */
.direct-webcam-button{
  display:none;
  width:44px;
  height:44px;
  margin:0;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#B7BDC1;
  align-items:center;
  justify-content:center;
  padding:0;
  cursor:pointer;
  position:fixed;
  top:12px;
  right:max(8px,calc(50% - 335px + 8px));
  z-index:7756;
  pointer-events:auto;
  box-shadow:0 1px 6px rgba(32,36,40,.10);
  -webkit-tap-highlight-color:transparent;
}
.direct-webcam-button svg{width:29px;height:29px;display:block;fill:currentColor}
.direct-webcam-button.is-testing{color:#AAB1B6;cursor:default}
.direct-webcam-button.is-unavailable{color:#B7BDC1;cursor:pointer}
.direct-webcam-button.is-available{color:#25A65A;cursor:pointer}
.direct-webcam-button:focus-visible{outline:2px solid #62809B;outline-offset:2px}

.direct-action-webcam{
  display:none;
}

.readim-webrtc-white-view{
  position:fixed;
  inset:0;
  z-index:30420;
  display:none;
  align-items:flex-start;
  justify-content:center;
  box-sizing:border-box;
  padding:max(76px,calc(env(safe-area-inset-top) + 62px)) 20px 28px;
  background:#fff;
}
.readim-webrtc-white-card{
  width:min(470px,calc(100vw - 40px));
  margin:0 auto;
  text-align:center;
}
.readim-webrtc-avatar{
  width:78px;
  height:78px;
  margin:4px auto 16px;
  border-radius:50%;
  overflow:hidden;
  background:#EAF1F6;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#62809B;
  font-size:31px;
  font-weight:800;
}
.readim-webrtc-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.readim-webrtc-title{font-size:21px;line-height:27px;font-weight:800;color:#25292D;margin:0 0 9px}
.readim-webrtc-text{font-size:14px;line-height:21px;color:#70777C;margin:0 auto 19px;max-width:400px}
.readim-webrtc-primary,
.readim-webrtc-secondary{
  width:100%;
  min-height:46px;
  border-radius:14px;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
}
.readim-webrtc-primary{border:0;background:#62809B;color:#fff}
.readim-webrtc-secondary{margin-top:10px;border:1px solid #DDE2E5;background:#fff;color:#343A3E}
.readim-webrtc-primary:disabled{opacity:.48;cursor:default}

.readim-webrtc-call{
  position:fixed;
  inset:0;
  z-index:30600;
  display:none;
  background:#080A0B;
  overflow:hidden;
}
.readim-webrtc-remote-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  background:#111;
}
.readim-webrtc-local-video{
  position:absolute;
  top:max(18px,env(safe-area-inset-top));
  right:14px;
  width:min(30vw,150px);
  aspect-ratio:3/4;
  object-fit:cover;
  border-radius:16px;
  background:#1D2022;
  box-shadow:0 4px 20px rgba(0,0,0,.30);
  transform:scaleX(-1);
}
.readim-webrtc-call-top{
  position:absolute;
  top:max(18px,env(safe-area-inset-top));
  left:18px;
  right:180px;
  color:#fff;
  text-shadow:0 1px 4px rgba(0,0,0,.55);
}
.readim-webrtc-call-name{font-size:19px;font-weight:800;line-height:24px}
.readim-webrtc-call-status{font-size:13px;line-height:18px;opacity:.86;margin-top:2px}
.readim-webrtc-controls{
  position:absolute;
  left:0;
  right:0;
  bottom:max(24px,calc(env(safe-area-inset-bottom) + 18px));
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:0 18px;
}
.readim-webrtc-control{
  width:52px;
  height:52px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-size:20px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.readim-webrtc-control.is-off{background:rgba(255,255,255,.45);color:#17191A}
.readim-webrtc-hangup{background:#D84B4B;font-size:22px}
.readim-webrtc-control svg{width:23px;height:23px;fill:currentColor}
@media(max-width:600px){
  .readim-webrtc-local-video{width:28vw;right:12px;border-radius:14px}
  .readim-webrtc-call-top{right:34vw}
}
/* V303 : les commandes média restent visiblement inactives tant que le
 * transport P2P nu n'est pas établi et que les pistes locales ne sont pas prêtes. */
.readim-webrtc-control:disabled{opacity:.35;pointer-events:none}
