html, body {
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    
    width: 100vw !important;
    max-width: 100vw !important;
}

body {
    background-color: #FFF !important;
    color: #002752;
    font-family: Rubik, Open Sans !important;
    font-size: 16px !important;
    display: flex;
    flex-direction: column;
    min-height: 100vh;

}

.wrapper {
    flex: 1 0 auto; /* El wrapper crece para llenar el espacio disponible */
    width: 100% !important;
    max-width: none !important;
    padding: 0 1rem !important;
}

.ui.footer.segment {
    flex-shrink: 0; /* Evita que el footer se encoja */
    margin-top: auto; /* Empuja el footer al final */
    padding: 2em 0;
    /*background-color: #f8f8f8;*/
    text-align: center;
    
    background: #0066A1 ;/*#7FB2D0 ; /*#EDEDED;*/
    color: #FFFFFF /*#163E64*/ !important ;
}

.rubik {
  font-family: "Rubik", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

.open-sans {
  font-family: "Open Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:  "wdth" 100;
}

.ui.form .field label {
  font-size: 1.1em !important;  
  font-weight: 500 !important;  
}

.ui.form .field .radio label  {
  font-size: 1em !important;  
  font-weight: 400 !important;  
}

#pie  {
    height: 6em; 
    text-align: center ;
}

.listaPie  {
    /*font-weight: bold ;*/
    padding-top: 2em !important;
    /*padding-left: 5em !important;*/
}

#textoInicioPie {
   font-size: 18px !important ; 
   /*padding-left: 10em !important;*/
}

#pie_final {
    height: 3em;
    text-align: center ;
    /*background: #7A7A7A ;*/
    color: #EDEDED ;
    padding-top: 0.7em !important;
    margin-top: 1em !important;
    font-weight: 600;
}

#pieFijoAbajo {
    position: absolute;
    bottom: 0;
    width: 100%;
}

@media (max-width: 767px) {
    .logo {
        width: 150% !important ;
        margin-bottom: 1em !important  ;
    }
}
@media (min-width: 768px) {
    .logo {
        width: 100% !important ;
        margin-bottom: 1em !important  ;
    }
}
    

@media only screen and (min-width: 100px) and (max-width: 1024px) {
    #menuEscritorio {
        display: none !important; /* Oculta el menú horizontal en pantallas pequeñas */
    }
    .ocultarEnMovil {
        display: none !important; /* Oculta el menú horizontal en pantallas pequeñas */
    }
    .mostrarEnMovil {
        display: block !important; /* Oculta el menú horizontal en pantallas pequeñas */
    }
}

@media only screen and (min-width: 1025px) {
    #menuMedio {
        display: none !important; /*  Ocultar en pantallas grandes (escritorio) */
    }
}


.bloqueMenuHorizontal {
    float: left !important;
    margin-top: 5em !important ;
}

.menuHorizontal {
    font-size: 20px  ;
    color: #163E64 !important ;
    display: inline !important ;
}

.itemMenuUsuario{
    font-size: 10px !important ;
}

.bloqueInfoGeneral  {    
    /*background: url('/images/imagen1.jpg') -10px 30px no-repeat;    */
   /* background: url('/images/imagen1.png') ;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 5em ;     
   */
}

.bloqueTituloInfo {
    color: #0066A1 /*#05476D /*#163E64*/ !important;
    border-color: #FFC000 !important ; 
    background-color: rgba(255, 255, 255, 0.8) !important;
    border-bottom-width: 0.3em !important ;
    border-right-width: 0.3em !important ;
    margin-top: 2em !important ;
    margin-bottom: 0 !important ;
    text-align:center !important ;
    padding: 0 !important ;
}

#imagen_microscopio {
    background: url('/images/imagen_microscopio.jpg') ; 
    background-size: cover;
    background-repeat: no-repeat;
    padding: 5em ;
    width: 300px;
}

#imagen_sersasaaaa {
    background: url('/images/imagen1.jpg') ; 
/*    background-size: cover;*/
    background-repeat: no-repeat;
    padding: 5em ;
/*    width: 500px;*/
width: 100%;
  height: 100%;
  object-fit: cover;
}

.imagen-grande-escritorio { border-radius: 0.2857rem; overflow: hidden; }


@media (min-width: 768px) {
  .imagen-grande-escritorio { height: 320px;  } 
  .img-ajustada { width: 80% !important; height: 80% !important; object-fit: cover; }
}
@media (max-width: 767px) {
  .imagen-grande-escritorio { height: 200px;  }
  .img-ajustada { width: 100%; height: 100%; object-fit: cover; }
}

.textoInfo {
   color: #05476D ; /*#163E64 ;*/
   background-color: rgba(255, 255, 255, 0.8) !important;
   /*//border-radius: 10px;
   //margin: 2.5em ;*/
   padding: 2em ;
   font-size: 20px ;
   font-family: rubik;
   line-height: 1.5em ;
   font-weight: 500 ;   
}

/*.bloqueSolicitudAnalisis {
    background: url('/images/imagen2.jpg') 15px 70px no-repeat;    
    padding: 5em ;     
} */

.bloqueTituloSolicitudAnalisis {
    color: #163E64 ;
    border-color: #FFC000 !important ; 
    border-bottom-width: 0.3em !important ;
    border-right-width: 0.3em !important ;
    margin-top: 2em !important ;
    margin-bottom: 0 !important ;    
    width: 60% ;
    margin-left: 20% !important;
}

.tituloServicios {
   color: #163E64 ;
   text-align: center ;
   padding: 0.8em ; 
}

.bloqueTituloNecropsias {
    color: #163E64 ;
    border-color: #E97132 !important ; 
    border-bottom-width: 0.3em !important ;
    border-right-width: 0.3em !important ;
    margin-top: 1em !important ;
    width: 60% ;
    margin-left: 20% !important;
}

.botonDescargaBiopsias {    
    color: #FFC000 !important;
    box-shadow: 0 0 0 1px #FFC000 inset !important;
    margin-top: 2em !important ;
    background-color: rgba(255, 255, 255);
}

.descargaPlantillaBiopsias {
    text-decoration: none !important;
    color: #A87F00 !important;    
}

a:hover.descargaPlantillaBiopsias {
   text-decoration: none;  
   background-color: transparent;
   color: #A37B00 !important;
   font-weight: bold ;
}

.botonDescargaNecropsias {    
    color: #E97132 !important;
    box-shadow: 0 0 0 1px #E97132 inset !important;
}

.descargaPlantillaNecropsias {
    text-decoration: none !important;
    color: #E97132 !important;
}
a:hover.descargaPlantillaNecropsias {
   text-decoration: none;  
   background-color: transparent;
   color: #965229 !important;
   font-weight: bold ;
}

/*.bloqueAccesoUsuario  {    
    background: url('/images/imagen3.jpg') -20px -50px no-repeat;    
    padding-bottom: 5em ;     
}
*/

.bloqueAccesoUsuario p {    
    margin-top: 0.5em; 
    margin-left: 1em; 
    color: #163E64 ;
}

@media (min-width: 1025px) {
  .bloqueFormularioAcceso { margin: 5em !important; margin-left: 15em !important;  width: 50%;  }   
  .bloqueInfoAcceso { margin: 5em !important; margin-left: 0 !important;   }   
  
}
@media (max-width: 1024px) {
  .bloqueFormularioAcceso { margin: 3em !important; margin-left: 5em !important; width: 70%;  } 
  .bloqueInfoAcceso { margin: 3em !important;   }   
}

.bloqueRegistroUsuario  {    
/*    background: url('/images/imagen4.jpg') -30px -30px no-repeat;     */
    padding-bottom: 5em ;     
}

.bloqueFichaUsuario {
/*    background: url('/images/imagen4.jpg') -10px -10px no-repeat;    */
    padding-bottom: 5em ; 
}

.filaDatoFicha  {
    margin: 5% !important;    
}

.tituloItemFicha   {
    font-weight: bold !important ;
}

.bloqueConsultaUsuario {
    width: 70%;
}

.opcionGestionUsuario   {
    font-weight: bold !important ;
    color: #163E64 !important ;
}

a:hover.descargaPlantillaNecropsias {
   color: #965229 !important;
   font-weight: bold ;
}

.enlaceVolver {
    text-decoration: none ;
    text-align: left !important;
    font-size: 1em ;
    margin-left: 13% !important ;
    margin-top:1em !important;
}

.opcionDatosMaestros {
    margin-bottom: 1.2em !important;
    font-size: 1.1em !important ;
}

a:hover.botonOpcionEspecie {
   font-weight: bold ;
   font-size: 1.1em ;
}

.botonOpcionEspecie {
    margin-left: 2em ;
}
.enlaceNaranja   {
    color: #F26202 !important ;
}

.enlaceRojo   {
    color: #db2828 !important ;
}

.enlaceVerde {
    color: #16ab39 !important ;
}

.enlaceMarino {
    color: #163E64 !important ;
}

.textoDeshabilitado {
    color: #8A8A8A !important ;
}

.textoInfoMessage  {
    color: #3D5B75 !important ;
    font-weight: bold ;
    margin-left: 1em !important;  
    width: 90% !important;
}

@media (min-width: 768px) {
    .textoInfoMessage {
      color: #3D5B75 !important ;
      font-weight: bold ;
      margin-left: 1em !important;  
      width: 90% !important; 
    }
  
    .listaDatosMaestros{
        font-size: 1.3em !important;
    }
}

@media (min-width: 1440px) {
    .textoInfoMessage {
      color: #3D5B75 !important ;
      font-weight: bold ;
      margin-left: 1em !important;  
      width: 70% !important;
    }
  
    .listaDatosMaestros{
        font-size: 1.1em !important ;
   }
}

.bloqueOpcionesGestionDM   {
/*    background: url('/images/imagenDatosMaestros.jpg') -100px -50px no-repeat;    */
    padding-bottom: 10em ; 
    background-position: center;
    background-size: cover;
}


.bloqueRegistroEspecies   {
    background-position: center;
    background-size: cover;
/*    background: url('/images/imagenEspeciesRazas.jpg') 400px 50px no-repeat ;    */
    padding-bottom: 10em ; 

}

.bloqueListadoEspecies {
    background: rgba(255, 255, 255, 0.1) !important ;    
}

.bloquePlantillas   {
/*    background: url('/images/imagenPlantillas.jpg') 400px -10px no-repeat; */
    background-position: center;
    background-size: cover;
    padding-bottom: 10em ; 
}

.bloqueDiagnosticos   {
/*    background: url('/images/imagenDiagnosticos.jpg') 400px 10px no-repeat;    */
    background-position: center;
    background-size: cover;
    padding-bottom: 10em ; 
}

.bloqueAutorizaciones   {
/*    background: url('/images/imagenDatosMaestros.jpg') 400px 10px no-repeat;    */
    background-position: center;
    background-size: cover;
    padding-bottom: 10em ; 
}

.divSoloLectura {
    pointer-events: none;     
}

.tituloBloqueCaso  {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 600 !important ;
    line-height: 32px !important ;    
    margin: 2em;
    margin-top :0 ;
    font-size: 1.3em !important ;
}

.subTituloBloqueCaso  {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 600 !important ;
    line-height: 26px !important ;    
    margin: 1em;
    margin-top :0 ;
    font-size: 1.1em !important ;
}

.divTablaConsultaCasos {
    font-family: Rubik !important ;
}

.tablaConsultaUsuarios th  {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 500 !important ;
    font-size: 0.9em !important ;
    line-height: 1.2em !important ;
}

.bodyTablaConsultaCasos td  {
    font-family: Open Sans !important ;
    font-weight: 400 !important ;
    font-size: 1em !important ;
    line-height: 1.2em !important ;
}

.datatable th  {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 500 !important ;
    font-size: 1em !important ;
    line-height: 1.5em !important ;
}

.dt-column-title  {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 500 !important ;
    font-size: 1.2em !important ;
    line-height: 1.5em !important ;
}

.itemPermisoUsuario {
  font-size: 0.8em !important;  
  font-weight: 400 !important;  
}

.tablaVeterinariosAsocBody th {
    color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 500 !important ;
    font-size: 1.1em !important ;
    line-height: 1.3em !important ;  
}

.tablaVeterinariosAsocBody td {
  font-size: 1em !important;  
  font-weight: 400 !important;   
}

.botonBloqueEdicionUsuario  {
    font-size: 1.1em !important;  
    font-weight: 500 !important;  
}

.tablaDatosMaestros td {
    font-size: 1em !important;  
    font-weight: 400 !important;   
}

.labelAutorizacionUsuario {
       color: #05476D !important ;
    font-family: Rubik !important ;
    font-weight: 500 !important ;
    font-size: 1.2em !important ;
    line-height: 1.5em !important ; 
    
}

/********************************************************/
/*   DATATABLE*/

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 1em;
}

/* Estilos para las filas hijo en modo responsive */
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before {
    background-color: white; /*#1e70bf; /* Color del botón "+" */
    color: white;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.child ul.dtr-details {
    display: block; /* Asegura que los detalles se muestren como bloques */
    padding: 0.5em;
}

@media (max-width: 393px) {
    .ui.table.dataTable {
        font-size: 0.9em; /* Reduce el tamaño de fuente en móviles */
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr.child ul.dtr-details li {
        padding: 0.5em 0; /* Espaciado para los detalles en modo bloque */
    }
}