:root {
    --colorFondo: #ffffff; 
    --colorBorder: #0f3a0f; 
    --colorSombra: #000000;  
    --colorSistema: #20A8D8;     
    --colorLetra: #000000;      
    --colorLetraSombra: #ffffff;                  
}

.app-right{
  text-align: right;
}

.app-center{
  text-align: center;
}

.app-modal-dialog-Contacto {
  max-width: 75% !important;
}
/*.app-modal-header{
  height: 55px;
}*/
.app-modal-header{
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  background-color: var(--colorSistema);
  border: 1px solid var(--colorBorder); 
  padding: 8px 5px 5px 15px;
}

.app-modal-footer{
  height: 55px;  
}
.app-div-derecha{
  text-align:right; 
}
.app-btn-modal-footer{
  width: 80px;
}
.app-btn-modal-footer-lg{
  width: 120px;
}
.app-btn-modal-footer2{
  width: 100px;
}
.app-btn-modal-heat{
  width: 90px;
}
.app-btn-sm{
  width: 65px;
}
.app-btn-sm2{
  width: 27px !important;
  height: 27px !important;     
  padding: 1px;
}
.app-btn-sm3 {
  width: 22px; height: 22px; padding: 1px;
}
.app-btn-smImg{
  width: 80px;
}
.app-btn-link{
  color: #20a8d8;
}
.app-btn-dtTable{
  width: 22px; 
  height: 22px; 
  padding: 1px;
}
.app-btn-link:hover{
  color: #167495;
  cursor: progress;
  background-color: yellow;
}
.app-div-silueta{
  border: 1px solid #CCCCFF;
  margin-left: auto;
  margin-right: auto;
  display: block;  
}

.app-img-silueta{
  width:100px; 
  height:100px; 
  padding: 5px;
}

.modal-cell {
  margin: 0; 
  padding: 2px;
  border: 0;
}

.modal-col {
  border: 0;
}

.float-right {
	float: right;
}

.template-color {
	background-color: #20a8d8;
}

.appCardImagenCentral{
  margin-left: 20px; 
  margin-right: 20px; 
  margin-bottom: 0px; 
  margin-top: 0px; 
  border: 1px solid #CCCCFF;
}

.appCardContenido{
  margin: 0;
  margin-bottom: 5px; 
  padding-top: 10px; 
  padding-bottom: 5px; 
}

.app-card{
  margin: 0; 
}

.appFooter{
  padding: 2px 2px 0px 2px; 
}

.appFiltroContenido{
  margin-top: 10px; 
  margin-left: 5px;   
  margin-right: 10px;   
}

.appFiltroRow{
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px;   
}

  /* mejoras 2025-02-8 */
  @media (max-width: 768px) { 
    body {
        padding-bottom: 80px; 
    }  
    .main-content {
        margin-bottom: 100px; 
    } 
    .app-footer .btn {
        font-size: 12px; 
    }
  }

  /* mejoras 2025-02-8 - VERSION MOVIL PARA CLIENTES - BARRA INFERIOR ICONOS */
  /* Contenedor principal */
  .navbar-mobile-container {
    width: 100vw;
    height: 90px;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1000;
  }
  
  /* Ocultar en pantallas grandes */
  @media screen and (min-width: 768px) {
    .navbar-mobile-container {
      display: none !important;
    }
  }
  
  /* Contenido de la barra */
  .navbar-mobile-content {
    width: 100vw;
    height: 80px;
    position: fixed;
    left: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    box-shadow: 0px -5px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
  }
  
  /* Menú principal */
  .navbar-mobile-menu {
    display: flex;
    width: 100%;
    justify-content: center;
    position: relative;
  }
  
  /* Sección izquierda */
  .navbar-mobile-left-section {
    display: flex;
    align-items: center;
    position: relative;
    height: 80px;
    overflow: hidden;
  }
  
  /* Contenedor de módulos */
  .navbar-mobile-modules-wrapper {
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 10px;
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
  }
  
  .navbar-mobile-modules-wrapper::-webkit-scrollbar {
    height: 5px;
  }
  
  .navbar-mobile-modules-wrapper::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
  }
  
  /* Ítems del menú */
  .navbar-mobile-item {
    width: 80px;
    height: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: transform 0.3s ease;
    position: relative;
  }
  
  .navbar-mobile-icon i {
    font-size: 16px;
    color: #666;
    transition: color 0.3s ease;
  }
  
  /* Color del icono cuando está activo */
  .navbar-mobile-item-link.active .navbar-mobile-icon i {
    color: var(--cabeceraFondoColor);
  }
  
  /* La etiqueta permanece visible */
  .navbar-mobile-label {
    font-size: 7px;
    color: #444;
    margin-top: 5px;
    max-width: 80px;
    word-wrap: break-word;
    white-space: normal;
  }
  
  .navbar-mobile-item-link.active .navbar-mobile-label {
    color: var(--cabeceraFondoColor);
  }
