/* BPM 370 R24 — correctifs mobiles transversaux. Aucun style AutoDJ/radio. */
:root{--bpm-mobile-safe-bottom:env(safe-area-inset-bottom,0px);--bpm-mobile-safe-left:env(safe-area-inset-left,0px);--bpm-mobile-safe-right:env(safe-area-inset-right,0px)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;max-width:100%}body{max-width:100%}*,*::before,*::after{box-sizing:border-box}
img,video,canvas,iframe,picture,svg{max-width:100%}img,video{height:auto}button,input,select,textarea{max-width:100%;font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}.ti{line-height:1;vertical-align:middle;flex:0 0 auto}
.container,.wrap,.page-wrap,.content-wrap,.main-content{max-width:100%}
[hidden]{display:none!important}.btn,button,[role="button"]{touch-action:manipulation}.table-responsive,.table-wrap,.bpm-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

/* Panneau de messagerie rapide */
.bpm-qm-video-call{width:34px;height:34px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#9ca7c3;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);text-decoration:none}.bpm-qm-video-call:hover{color:#fff;border-color:rgba(77,159,255,.35);background:rgba(42,127,255,.16)}.bpm-qm-video-call[hidden]{display:none!important}
.bpm-qm-chat-head{grid-template-columns:34px 40px minmax(0,1fr) 34px 34px!important}.bpm-qm-chat-head>*{min-width:0}.bpm-qm-attachment img{height:auto;object-fit:contain}.bpm-qm-attachment audio{width:min(240px,68vw);max-width:100%}

/* Messagerie complète */
.msg-shell,.msg-sidebar,.msg-main,.msg-body,.msg-compose{max-width:100%}.chat-top>*{min-width:0}.chat-action,.back-btn,.bpm-message-sound-toggle{flex:0 0 auto}.chat-name,.chat-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-stack,.bubble,.file-card,.voice-card,.msg-video-card{max-width:100%}.bubble{overflow-wrap:anywhere;word-break:break-word}.msg-img img,.msg-video-card video{width:100%;height:auto;object-fit:contain}.preview-box>div{min-width:0}.record-box{max-width:100%}.compose-shortcuts{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.compose-shortcuts::-webkit-scrollbar{display:none}.compose-shortcut{flex:0 0 auto}.compose-row,.compose-text{min-width:0}.msg-reactions{max-width:100%;flex-wrap:wrap}

/* Centre Support et panneaux administratifs */
.support-shell,.support-main,.support-content,.support-topbar,.support-sidebar{max-width:100%}.support-content img,.support-main img{height:auto;object-fit:contain}

/* Formulaires et cartes générales */
input[type="file"]{width:100%}.modal,.bpm-modal{max-width:100%}.bpm-modal-card{max-width:100%}.card,.panel,.box,.bpm-security-card{min-width:0}.avatar img,.profile-avatar img,[class*="avatar"] img{object-fit:cover}

@media(max-width:900px){
 html,body{max-width:100%;overflow-x:hidden}
 body{padding-left:var(--bpm-mobile-safe-left);padding-right:var(--bpm-mobile-safe-right)}
 main,section,article,aside,header,footer,nav,form,div{min-width:0}
 p,h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere}
 .btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
 .support-shell,.support-main,.support-content,.support-topbar,.support-sidebar{min-width:0}.support-topbar,.support-header,.support-actions,.panel-head,.card-head,.toolbar,.filters{flex-wrap:wrap}.support-content table,.support-main table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 input,select,textarea{font-size:16px!important}
 .msg-shell{height:calc(100dvh - 112px)!important;min-height:0!important}
 .msg-body{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:14px 10px!important}
 .message-row{max-width:92%!important}.message-spacer{width:22px}.msg-avatar.tiny{width:24px;height:24px}
 .chat-top{height:auto!important;min-height:60px;padding:8px 9px!important;gap:7px!important}.chat-top .msg-avatar.small{width:36px;height:36px}.chat-name{font-size:14px!important}.chat-sub{font-size:10px!important}.msg-live-status{display:none!important}.chat-action,.back-btn,.bpm-message-sound-toggle{width:36px!important;height:36px!important;border-radius:10px!important}
 .msg-compose{padding:8px max(8px,var(--bpm-mobile-safe-right)) calc(8px + var(--bpm-mobile-safe-bottom)) max(8px,var(--bpm-mobile-safe-left))!important}.msg-compose-meta{padding-bottom:0}.compose-shortcuts{gap:5px!important;padding-bottom:3px}.compose-row{border-radius:16px!important}.compose-text{max-height:112px!important}
 .record-box.show{display:grid!important;grid-template-columns:auto auto minmax(0,1fr);gap:8px!important}.record-box .rec-text{grid-column:1/-1;order:3}.record-box .rec-action{min-height:38px}.record-box .rec-action.cancel{grid-column:1/3}.record-box .rec-action.send{grid-column:3/4}
 .voice-card{width:min(290px,78vw)!important;min-width:0!important;gap:8px!important}.voice-time{width:36px!important}.file-card{width:min(360px,78vw)!important}.msg-img{max-width:78vw!important}.msg-video-card{width:min(390px,78vw)!important}
 .bpm-qm-chat-head{grid-template-columns:34px 38px minmax(0,1fr) 34px 34px!important;gap:6px!important;padding:9px!important}.bpm-qm-chat-avatar{width:38px!important;height:38px!important}.bpm-qm-messages{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.bpm-qm-tools{padding-left:max(8px,var(--bpm-mobile-safe-left));padding-right:max(8px,var(--bpm-mobile-safe-right))}.bpm-qm-compose{padding:8px max(8px,var(--bpm-mobile-safe-right)) calc(8px + var(--bpm-mobile-safe-bottom)) max(8px,var(--bpm-mobile-safe-left))}.bpm-qm-note{padding-bottom:calc(8px + var(--bpm-mobile-safe-bottom))}.bpm-qm-bubble{font-size:14px}.bpm-qm-msg{max-width:88%}
 .bpm-modal{padding:max(8px,var(--bpm-mobile-safe-top,8px)) max(8px,var(--bpm-mobile-safe-right)) calc(8px + var(--bpm-mobile-safe-bottom)) max(8px,var(--bpm-mobile-safe-left))}.bpm-modal-card{max-height:calc(100dvh - 16px);border-radius:15px}
}

@media(max-width:760px){
 .bpm-quickmsg-panel{top:calc(54px + env(safe-area-inset-top,0px))!important;left:max(5px,var(--bpm-mobile-safe-left))!important;right:max(5px,var(--bpm-mobile-safe-right))!important;width:auto!important;height:calc(100dvh - 60px - env(safe-area-inset-top,0px))!important;max-height:none!important;border-radius:16px 16px 0 0!important}.bpm-quickmsg-panel::before{display:none}.bpm-qm-head{padding-top:12px}.bpm-qm-tabs{grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden}.bpm-qm-tabs button{min-width:0}.bpm-qm-tabs button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bpm-qm-item{padding:9px 7px!important;gap:8px!important}.bpm-qm-role{display:none}.bpm-qm-side{max-width:72px}.bpm-qm-compose textarea{font-size:16px!important}
 .support-sidebar{max-width:100%}.support-topbar input[type="search"],.support-header input[type="search"]{width:100%;min-width:0}.support-actions>.btn,.toolbar>.btn{min-height:42px}
}

@media(max-width:620px){
 .msg-side-head{padding:13px 12px!important}.msg-title{font-size:21px!important;margin-bottom:10px!important}.msg-conv-list{padding:5px!important}.conv-card{grid-template-columns:45px minmax(0,1fr) auto!important;gap:9px!important;padding:9px 7px!important}.msg-avatar{width:45px!important;height:45px!important}.role-chip{max-width:80px;overflow:hidden;text-overflow:ellipsis}.conv-time{font-size:9px!important}.conv-right{gap:4px!important}
 .chat-top .role-chip{display:none}.chat-top .bpm-r20-wizz-button,.chat-top [data-bpm260-message-search-open]{display:none!important}.chat-action,.back-btn,.bpm-message-sound-toggle{width:34px!important;height:34px!important}.chat-top{gap:5px!important}.chat-meta{flex:1}.message-row{max-width:95%!important}.bubble{font-size:14px!important;padding:9px 12px!important}.msg-reactions{opacity:1!important}.msg-react-btn{min-width:25px;height:25px;padding:0 6px}.compose-shortcut{width:38px!important;min-width:38px!important}.compose-shortcut span{display:none!important}.record-box.show{grid-template-columns:auto auto 1fr!important}.record-box .rec-action{padding:7px 8px!important;font-size:12px}.msg-compose-meta span:first-child{display:none!important}
}

@media(max-width:390px){
 .bpm-qm-head strong{font-size:22px!important}.bpm-qm-head small{font-size:10px!important}.bpm-qm-chat-head{grid-template-columns:32px 34px minmax(0,1fr) 32px 32px!important;gap:4px!important}.bpm-qm-back,.bpm-qm-open-full,.bpm-qm-video-call{width:32px!important;height:32px!important}.bpm-qm-chat-avatar{width:34px!important;height:34px!important}
 .chat-top .msg-avatar.small{display:none}.chat-top{padding-left:6px!important;padding-right:6px!important}.voice-card{width:80vw!important}.voice-btn{width:36px!important;height:36px!important}.message-spacer{display:none}.record-box .rec-text{font-size:12px!important}
}

@supports(padding:max(0px)){body{padding-bottom:env(safe-area-inset-bottom,0px)}}

/* BPM 370 R26 — activation tactile fiable du microphone mobile */
#micBtn,#bpmQmMicBtn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;pointer-events:auto}
#micBtn:disabled,#bpmQmMicBtn:disabled{opacity:.65;cursor:wait}
#micBtn.rec,#bpmQmMicBtn.is-recording{animation:bpmR26MicPulse 1s ease-in-out infinite;box-shadow:0 0 0 4px rgba(255,77,79,.13)}
@keyframes bpmR26MicPulse{50%{transform:scale(.94);filter:brightness(1.18)}}
@media(max-width:760px){
  #micBtn,#bpmQmMicBtn{min-width:42px!important;min-height:42px!important}
  .compose-error.show{position:relative;z-index:3}
}
