/* GattoMusic 2.0 - Build 9.96
   Sala consolidada: uma superfície de controles, mensagens usando todo o espaço
   restante e nenhuma dependência de ResizeObserver para distribuir altura. */

.chat-room-sidepanel-v972.chat-v996-room-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  align-content:stretch!important;
  min-width:0!important;
  min-height:0!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  row-gap:6px!important;
}

.chat-v996-room-layout>.chat-room-side-scroll-v972{
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
.chat-v996-room-layout>.chat-room-side-scroll-v972>.chat-room-side-call-v972{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

.chat-v996-room-layout .chat-v996-room-stage{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:visible!important;
}
.chat-v996-room-layout .chat-v996-room-camera-stage{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:var(--chat-v994-camera-budget,420px)!important;
  overflow:hidden!important;
  position:relative!important;
}
.chat-v996-room-layout .chat-room-grid-v969{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:var(--chat-v994-camera-budget,420px)!important;
  overflow:hidden!important;
}

/* Uma única dock e um único details final. */
.chat-v996-room-layout .chat-v996-room-control-dock{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  position:relative!important;
  z-index:40!important;
}
.chat-v996-room-layout .chat-v996-room-menu{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.chat-v996-room-layout .chat-v996-room-menu-summary{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:34px!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
  list-style:none!important;
  user-select:none!important;
}
.chat-v996-room-layout .chat-v996-room-menu-summary::-webkit-details-marker{display:none!important}
.chat-v996-room-layout .chat-v996-room-menu-body{
  display:none!important;
  width:100%!important;
  min-width:0!important;
  margin:4px 0 0!important;
  padding:6px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:10px!important;
  background:rgba(8,12,22,.88)!important;
  gap:6px!important;
}
.chat-v996-room-layout .chat-v996-room-menu[open]>.chat-v996-room-menu-body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.chat-v996-room-layout .chat-v996-room-menu-body>[data-v972-role="devices"],
.chat-v996-room-layout .chat-v996-room-menu-body>[data-v972-role="actions"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  overflow:visible!important;
}
.chat-v996-room-layout .chat-v996-room-menu-body .chat-room-device-grid-v969,
.chat-v996-room-layout .chat-v996-room-menu-body [data-v972-role="actions"]{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-end!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.chat-v996-room-layout .chat-v996-room-menu-body select,
.chat-v996-room-layout .chat-v996-room-menu-body input,
.chat-v996-room-layout .chat-v996-room-menu-body button{
  pointer-events:auto!important;
}

/* Contrato visual: um nome sobre a imagem, sem faixa preta. */
.chat-v996-room-layout .chat-room-participant-footer-v969.chat-v996-name-overlay,
.chat-v996-room-layout .chat-room-participant-footer-v969.chat-v994-name-overlay{
  position:absolute!important;
  left:auto!important;
  right:7px!important;
  bottom:7px!important;
  width:auto!important;
  max-width:calc(100% - 14px)!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:2px 3px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:none!important;
  z-index:8!important;
}
.chat-v996-room-layout .chat-room-participant-footer-v969.chat-v996-name-overlay>strong,
.chat-v996-room-layout .chat-room-participant-footer-v969.chat-v994-name-overlay>strong{
  color:#fff!important;
  text-align:right!important;
  text-shadow:0 1px 2px rgba(0,0,0,.98),0 0 4px rgba(0,0,0,.88)!important;
}

/* Mensagens ocupam integralmente a terceira linha da Sala, da borda inferior dos
   controles até o composer. Só o histórico recebe scroll. */
.chat-v996-room-layout>.chat-room-messages-v972,
.chat-v996-room-layout .chat-room-messages-v972{
  align-self:stretch!important;
  justify-self:stretch!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-height:none!important;
  margin:0!important;
  padding-bottom:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.chat-v996-room-layout .chat-room-message-list-v972{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
.chat-v996-room-layout>.chat-room-message-footer-v980{
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
}

/* Fechada fora do Chat significa fora do layout; preserva correção 9.95. */
body:not(.chat-v972-room-open) #chatRoomSidePanelV972:not(:fullscreen),
#chatRoomSidePanelV972[aria-hidden="true"]:not(:fullscreen),
#chatRoomSidePanelV972:not(.is-open):not(:fullscreen){
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

body.chat-v982-room-detached-host .chat-v996-room-layout,
.chat-v996-room-layout:fullscreen,
.chat-v996-room-layout:-webkit-full-screen{
  width:100%!important;
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
}

@media(max-height:700px){
  .chat-v996-room-layout{row-gap:4px!important}
  .chat-v996-room-layout .chat-v996-room-stage{gap:4px!important}
  .chat-v996-room-layout .chat-v996-room-menu-summary{min-height:30px!important}
  .chat-v996-room-layout .chat-v996-room-menu-body{padding:4px!important;margin-top:3px!important;gap:4px!important}
}

@media(max-width:720px){
  .chat-v996-room-layout .chat-v996-room-menu-body .chat-room-device-field-v969{flex:1 1 125px!important;min-width:105px!important}
  .chat-v996-room-layout .chat-v996-room-menu-body .chat-v982-blur-controls,
  .chat-v996-room-layout .chat-v996-room-menu-body .chat-v988-focus-controls{flex:1 1 100%!important;min-width:0!important}
}
