/* GattoMusic 2.0 — Build 10.43
   Ajustes cirúrgicos: splitter contínuo, mute visual claro e layout responsivo
   para tela compartilhada em fullscreen/Sala destacada. */

/* Splitter: ampliar a zona de captura sem aumentar a linha visual. */
.gatto-v1042-room-splitter{width:14px!important;margin-right:-2px!important;will-change:right}
.gatto-v1042-room-splitter::before{left:5px!important}
body.gatto-v1042-room-resizing{cursor:col-resize!important}

/* Indicador de microfone: aparece SOMENTE em mute (o atributo hidden continua
   controlado pelo estado real em room_gallery.js). */
.gatto-room-participant.mic-off .gatto-room-media-status:not([hidden]){
  position:relative!important;display:inline-block!important;flex:0 0 14px!important;width:14px!important;height:15px!important;
  color:#d3d8e0!important;opacity:.95!important;font-size:0!important;letter-spacing:0!important;overflow:visible!important
}
.gatto-room-participant.mic-off .gatto-room-media-status:not([hidden])::before{
  content:\"\";position:absolute;left:4px;top:1px;width:6px;height:9px;box-sizing:border-box;
  border:1.7px solid currentColor;border-radius:5px 5px 6px 6px;background:transparent
}
.gatto-room-participant.mic-off .gatto-room-media-status:not([hidden])::after{
  content:\"\";position:absolute;left:0;top:7px;width:15px;height:1.8px;border-radius:999px;background:currentColor;
  transform:rotate(-45deg);transform-origin:center;box-shadow:0 0 0 .25px rgba(0,0,0,.25)
}

/* Normal: tela compartilhada ganha a maior faixa, mas a galeria sempre tem
   min-height:0 para poder encolher sem expulsar câmeras da viewport. */
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen:not(.is-gatto-room-fullscreen):not(.is-gatto-room-detached){
  grid-template-rows:auto minmax(150px,1.35fr) minmax(84px,.58fr) auto minmax(0,.82fr) auto!important
}
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen>.gatto-v1042-screen-stage,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen>.gatto-room-gallery{min-height:0!important;max-height:100%!important}

/* Fullscreen e Sala destacada: header/mensagens/compositor ficam ocultos pelas
   camadas canônicas; restam exatamente tela, galeria e controles. */
.gatto-room-fullscreen-host .chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen:fullscreen,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen:-webkit-full-screen,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen,
.gatto-room-detached-host .chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached{
  grid-template-rows:minmax(0,1.62fr) minmax(0,.68fr) auto!important;
  grid-auto-rows:0!important;align-content:stretch!important;overflow:hidden!important
}

.gatto-room-fullscreen-host .gatto-v1042-screen-stage,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen:fullscreen>.gatto-v1042-screen-stage,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen>.gatto-v1042-screen-stage,
.gatto-room-detached-host .chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen>.gatto-v1042-screen-stage,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached>.gatto-v1042-screen-stage{
  min-width:0!important;min-height:0!important;height:100%!important;overflow:hidden!important;align-content:stretch!important
}
.gatto-room-fullscreen-host .gatto-v1042-screen-card,
.gatto-room-fullscreen-host .gatto-v1042-screen-video,
.gatto-room-detached-host .gatto-v1042-screen-card,
.gatto-room-detached-host .gatto-v1042-screen-video,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen .gatto-v1042-screen-card,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen .gatto-v1042-screen-video,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached .gatto-v1042-screen-card,
.chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached .gatto-v1042-screen-video{
  min-height:0!important;height:100%!important;max-height:100%!important;object-fit:contain!important
}

/* Câmeras: ocupam somente a faixa disponível; linhas implícitas dividem a altura
   entre si e os cards deixam de impor aspect-ratio que extrapola o enquadramento. */
.gatto-room-fullscreen-host .gatto-room-shell.gatto-v1042-has-screen>.gatto-room-gallery,
.gatto-room-detached-host .gatto-room-shell.gatto-v1042-has-screen>.gatto-room-gallery,
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen>.gatto-room-gallery,
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached>.gatto-room-gallery{
  min-height:0!important;height:100%!important;grid-auto-rows:minmax(0,1fr)!important;align-content:stretch!important;align-items:stretch!important;overflow:hidden!important
}
.gatto-room-fullscreen-host .gatto-room-shell.gatto-v1042-has-screen>.gatto-room-gallery>.gatto-room-participant,
.gatto-room-detached-host .gatto-room-shell.gatto-v1042-has-screen>.gatto-room-gallery>.gatto-room-participant,
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen>.gatto-room-gallery>.gatto-room-participant,
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached>.gatto-room-gallery>.gatto-room-participant{
  min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;max-height:100%!important;aspect-ratio:auto!important;align-self:stretch!important;overflow:hidden!important
}
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen .gatto-room-video,
.gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached .gatto-room-video,
.gatto-room-fullscreen-host .gatto-room-shell.gatto-v1042-has-screen .gatto-room-video,
.gatto-room-detached-host .gatto-room-shell.gatto-v1042-has-screen .gatto-room-video{object-fit:contain!important;object-position:center!important}

/* Firefox: a janela destacada é uma projeção. Com compartilhamento ativo ela
   passa de flex para uma grade explícita de 3 faixas, sem tocar nos streams. */
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1.62fr) minmax(0,.68fr) auto!important;gap:8px!important;overflow:hidden!important
}
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen>.gatto-v1042-screen-stage{
  grid-row:1!important;order:unset!important;min-height:0!important;height:100%!important;overflow:hidden!important
}
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen>.gatto-room-gallery{
  grid-row:2!important;order:unset!important;min-height:0!important;height:100%!important;grid-auto-rows:minmax(0,1fr)!important;align-content:stretch!important;align-items:stretch!important;overflow:hidden!important
}
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen>.gatto-room-controls-wrap{
  grid-row:3!important;order:unset!important;margin:0!important;align-self:end!important
}
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen>.gatto-room-gallery>.gatto-room-participant{
  min-height:0!important;height:100%!important;max-height:100%!important;aspect-ratio:auto!important
}
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen .gatto-v1042-screen-card,
#gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen .gatto-v1042-screen-video{min-height:0!important;height:100%!important;max-height:100%!important;object-fit:contain!important}

@media(max-width:760px),(max-height:620px){
  .gatto-room-fullscreen-host .chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen,
  .gatto-room-detached-host .chat-room-sidepanel-v972.gatto-room-shell.gatto-v1042-has-screen,
  .gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-fullscreen,
  .gatto-room-shell.gatto-v1042-has-screen.is-gatto-room-detached,
  #gattoV1040DetachedRoot>.gatto-v1040-projection.gatto-v1042-has-screen{
    grid-template-rows:minmax(0,1.5fr) minmax(0,.58fr) auto!important;gap:6px!important
  }
}
