/* Software ESM - módulos en ventanas flotantes. Solo corrige apertura/acomodo. */
.modal:not(.oculto),
.modal.esm-window-active:not(.oculto){
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px!important;
  background:rgba(0,0,0,.68)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  overflow:hidden!important;
}
.modal.oculto{display:none!important;}
.modal:not(.oculto) > .modal-contenido,
.modal.esm-window-active:not(.oculto) > .modal-contenido{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:min(1180px, calc(100vw - 42px))!important;
  max-width:calc(100vw - 42px)!important;
  max-height:calc(100vh - 42px)!important;
  margin:0!important;
  overflow:auto!important;
  border-radius:26px!important;
  border:1px solid rgba(31,214,255,.30)!important;
  background:linear-gradient(145deg,rgba(5,16,38,.98),rgba(9,20,50,.96))!important;
  box-shadow:0 30px 110px rgba(0,0,0,.72),0 0 42px rgba(24,216,255,.16), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.modal:not(.oculto) > .modal-contenido:not(.modal-grande):not(.modal-chat-empresa):not(.modal-perfil):not(.modal-gafetes):not(.modal-traslados):not(.modal-inventario):not(.modal-control-equipos){
  width:min(760px, calc(100vw - 42px))!important;
}
.modal-header-pro{
  position:sticky!important;
  top:0!important;
  z-index:20!important;
  background:linear-gradient(180deg,rgba(5,16,38,.98),rgba(5,16,38,.88))!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
.btn-cerrar-pro{
  cursor:pointer!important;
  min-width:max-content!important;
}
.esm-window-open{overflow:hidden!important;}
@media(max-width:780px){
  .modal:not(.oculto),.modal.esm-window-active:not(.oculto){padding:10px!important;align-items:stretch!important;}
  .modal:not(.oculto) > .modal-contenido,.modal.esm-window-active:not(.oculto) > .modal-contenido{width:100%!important;max-width:100%!important;max-height:calc(100vh - 20px)!important;border-radius:20px!important;}
}
