/**
 * ------------------------------------------------------------------------
 * ESTILOS PERSONALIZADOS QUALITY DIAGNOSTICS
 * ------------------------------------------------------------------------
 */

body {font-size: 16px;}
.nav-stacked > li > a {font-size: 16px;}
.t3-content .btn {font-size: 14px; margin: 2px 0px;}
.sppb-addon-title { font-weight: 500;}
.t3-megamenu .nav > .dropdown > .dropdown-toggle .caret {display:none;}
.t3-megamenu.animate.zoom .mega > .mega-dropdown-menu  {display:none;}
.navbar-default-vertical .navbar-nav li.active.dropdown > .dropdown-menu {display:none;} 
.login-greeting { color:#ffffff; margin-bottom:5px; font-weight:bold;}
.choices__button_joomla { float: right;}
.navbar {min-height:0px;}
.controls select, select, textarea, input[type="text"], 
input[type="password"], input[type="datetime"], 
input[type="datetime-local"], input[type="date"], input[type="month"], 
input[type="time"], input[type="week"], input[type="number"], 
input[type="email"], input[type="url"], input[type="search"], 
input[type="tel"], input[type="color"], .inputbox  { width: 100%; }

.page-header { padding: 0px 0px 0px 5px;}
.page-header h1 { font-size: 20px;}
.page-header h2 { margin-top: 0px;}

.logo-control .logo-img-sm { height:60px;  object-fit: scale-down !important; margin-top: -10px;}

.languageswitcherload {
    display: flex;
    align-items: center;
    gap: 10px; /* Espacio entre el texto y el botón */
}

.cbLogoutForm {
    display: flex;
    align-items: center;
    gap: 10px;
}

.login-greeting {
    font-size: 16px;
    font-weight: bold;
    display: flex;
    align-items: center;
    height: 40px; /* Ajusta según el tamaño del botón */
    line-height: 40px; /* Asegura que el texto esté alineado */
    margin-bottom: 0px !important;
}


.logout-button button {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px; /* Igual altura que el texto */
    padding: 5px 15px;
}

.mCSB_draggerContainer {display:none;}

#t3-mainbody {
    margin-top: 60px; /* Ajusta este valor según la altura del menú */
    margin-left: 80px; /* Ajusta este valor según el ancho de t3-mainnav */
}

.layout-horizontal #t3-mainbody {
    margin-top: 60px; 
    margin-left: 0px !important; 
}

#t3-wrapper {
    display: flex;
    min-height: 100vh;
}

.control-group {
    display: flex;
    flex-direction: column;
}

.control-label {
    order: -1; /* Mueve la etiqueta arriba */
    margin-bottom: 5px; /* Agrega separación entre la etiqueta y el campo */
}
.controls { width: 100%; /* Asegura que el campo se mantenga responsive */ }
.form-horizontal .control-group .controls { margin-left: 0px; /* antes 180 */ }
.form-horizontal .control-group .control-label { width: 100%; text-align:left;}

.navbar-default-vertical {
    border-right: 1px solid rgba(0, 0, 0, 0.1); /* Ajusta el color y grosor */
    flex-shrink: 0; /* Evita que el menú se reduzca */
    height: auto;
    min-height: 100vh;
}

@media screen and (max-width: 767px) { /* móviles */
    h2, .h2 { font-size: 20px; }
    .navbar-default-vertical {display:none;}
    #t3-mainbody {margin-left:0px;}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
	    .logo-control .logo-img-sm { height:50px;  object-fit: cover; }
    .navbar-default-vertical {display:none;}	    
    #t3-mainbody {margin-left:0px;}
}
@media (max-width: 1200px) { /* tablet */
    .logo-control .logo-img-sm { height:80px;  object-fit: cover; }
    .off-canvas-toggle {width: 50px; height: 50px;}
    .navbar-default-vertical {display:none;}    
    #t3-mainbody {margin-left:0px;}
}
.view-solaltainscritos .page-header h1 { font-size: 20px; display: flex; justify-content: space-between; align-items: center;}
.view-solaltainscritos .page-header span { text-align:right; font-weight:bold; font-size: 12px; display: flex; align-items: center;}


.sppb-addon-title {color:#002B5B;}
.js-stools-field-filter { margin-right: 10px; margin-bottom: 5px; }
joomla-alert {margin: 20px 0px 20px 0px;}

.t3-header {
    position: relative !important; /* Evita que sea fijo */
    top: auto !important;
    width: 100% !important;
}
.t3-mainbody {
    margin-top: 0 !important; /* Elimina el espacio extra */
    padding-top: 0 !important; /* Evita relleno innecesario */
}
div.t3-wrapper {
    padding-top: 0px !important; 
}

/* INICIO Ocultar el texto dentro de los enlaces */

/* Ocultar el texto dentro de los enlaces */

@media (min-width: 992px) 
{
 div.t3-wrapper.layout-vertical .t3-mainbody.container { padding-left: 80px;}
.layout-vertical .navbar-default-vertical .navbar-nav > li > a {font-size:0px;}
.layout-vertical .navbar-default-vertical { width: 80px;}
.t3-mainbody {padding-top: 0px;}
}
/* FIN Ocultar el texto dentro de los enlaces */

/*
PARA SUSTITUIR EL LITERAL DE TEXTO "REMOVE ITEM" POR "QUITAR SELECCIÓN"
*/
.choices__button_joomla {
    color: transparent; /* Hace el texto original invisible */
    position: relative;  /* Mantiene el botón en su lugar */
    min-width: 120px; /* Ajusta este valor según sea necesario */
}

.choices__button_joomla::after {
    content: "Quitar selección"; /* Nuevo texto: Remove Item en español */
    color: grey;
    position: absolute; /* Superpone el nuevo texto al original */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
/*
=================================================================
*/

/* CAMBIAR "NEW CONTRASEÑA" POR "NUEVA CONTRASEÑA" */

#cblabpassword {
  visibility: hidden; /* Oculta el contenido original */
  position: relative; /* Permite posicionar el texto adicional */
}

#cblabpassword::before {
  content: "Nueva Contraseña"; /* Texto que quieres mostrar */
  visibility: visible; /* Asegura que el nuevo texto sea visible */
  position: absolute; /* Coloca el texto superpuesto */
  left: 0; /* Alinea al inicio del contenedor original */
  top: 5px; /* Alinea verticalmente si es necesario */
  color: inherit; /* Hereda el color del label */
  font-size: inherit; /* Hereda el tamaño de fuente */
}

.form-login-options-register, .cbPoweredBy {display:none;}
#cbfr_multifactor, #registrationTable  {display:none;}


/*
MODIFICACIONES EN EL ESTILO DEL MENÚ DE LA DERECHA
*/
.separator {
    padding-top: 10px !important;
    padding-bottom: 3px !important;
    font-weight: bold !important;
}


/*
MODIFICACIONES EN EL ESTILO DE LA PESTAÑA "MIS DATOS"
*/

div.offset-sm-3 {
  margin-top: 20px !important;
  margin-left: 0 !important;
}


#password__current, 
#password {
    width: 310px !important;
}


.cb_template .input-group-append {
  margin-left: -1px;
  margin-top: -3px;
}

/* Ajustar el texto del botón "Mostrar" para que sea del mismo tamaño */
.cbPasswordUnmask .btn {
  font-size: 16px !important; /* Mismo tamaño de fuente que el resto de los textos */
  line-height: 1.5 !important; /* Asegura un buen espaciado vertical del texto */
  padding: 5px 10px !important; /* Ajusta el relleno interno para consistencia */
  text-align: center !important; /* Centra el texto dentro del botón */
  margin-left: 10px !important;
  background-color: #002B5B !important; /* Nuevo color de fondo */
  color: #ffffff !important; /* Nuevo color de texto */
  border-color: #d61150 !important; /* Nuevo color del borde */
}

.cbPasswordUnmask .btn:hover {
  background-color: #d61150 !important; /* Efecto hover */
  border-color: #c10e48 !important; /* Efecto hover para el borde */
}



/* Asegura que el texto de las pestañas esté en negrita */
.cbTabsNav .nav-link {
  font-weight: bold !important; /* Aplica negrita a los textos de las pestañas */
}

/* Contenedor para los botones, alineado a la izquierda */
.cbProfileEditButtons {
  display: flex !important; /* Flexbox para organizar los botones en línea */
  justify-content: flex-start !important; /* Alinea los botones a la izquierda */
  gap: 10px !important; /* Espaciado entre los botones */
  margin-top: 20px !important; /* Margen superior para separar los botones de los formularios */
  flex-wrap: nowrap !important; /* Asegura que los botones no se envuelvan en varias líneas */
  width: 100% !important; /* Ocupa todo el ancho disponible */
  position: relative !important; /* Asegura que el contenedor esté bien posicionado */
}

/* Asegurar que los botones no tengan estilos que rompan el diseño */
.cbProfileEditButtons button,
.cbProfileEditButtons a {
  display: inline-block !important;
  padding: 10px 20px !important; /* Espaciado interno */
  font-size: 16px !important;
  border-radius: 4px !important; /* Bordes redondeados */
  text-decoration: none !important; /* Sin subrayado */
  text-align: center !important; /* Centrado del texto */
  flex-shrink: 0 !important; /* Evita que los botones se reduzcan en flexbox */
  color: #ffffff !important; /* Color de texto */
  background-color: #002B5B !important; /* Color de fondo */
  border: 1px solid #d61150 !important; /* Color del borde */
}

/* Estilos específicos para el botón de actualizar */
.cbProfileEditButtons .btn-primary {
  background-color: #002B5B !important; /* Nuevo color de fondo */
  color: #ffffff !important; /* Nuevo color de texto */
  border-color: #d61150 !important; /* Nuevo color del borde */
}

.cbProfileEditButtons .btn-primary:hover {
  background-color: #d61150 !important; /* Efecto hover */
  border-color: #c10e48 !important; /* Efecto hover para el borde */
}

/* Estilos específicos para el botón de cancelar */
.cbProfileEditButtons .btn-secondary {
  background-color: #002B5B !important; /* Nuevo color de fondo */
  color: #ffffff !important; /* Nuevo color de texto */
  border-color: #d61150 !important; /* Nuevo color del borde */
}

.cbProfileEditButtons .btn-secondary:hover {
  background-color: #d61150 !important; /* Efecto hover */
  border-color: #c10e48 !important; /* Efecto hover para el borde */
}



/* Estilo para los campos del formulario en "Mis Datos" */
.cb_tab_content .form-group {
    width: 48%; /* Cada campo ocupa aproximadamente la mitad del contenedor */
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 15px; /* Espaciado entre filas */
    box-sizing: border-box; /* Incluye padding y bordes en el ancho */
    float: left; /* Coloca los elementos en dos columnas */
    margin-right: 4%; /* Espaciado entre columnas */
}

/* Ajusta la última columna para que no tenga margen derecho */
.cb_tab_content .form-group:nth-child(2n) {
    margin-right: 0;
}


.cb_tab_content .form-group .cb_field {
    flex: 1 1 70%; /* Ocupa el 70% restante para los campos */
    max-width: 70%;
    box-sizing: border-box;
}

/* Estilo para los botones de "Actualizar" y "Cancelar" */
.cb_tab_content .cbProfileEditButtons {
    width: 48%; /* Ocupa la mitad del contenedor */
    margin-top: 15px; /* Espaciado con los campos anteriores */
    float: left; /* Permite que se alinee con los otros campos */
    display: flex;
    justify-content: flex-end; /* Alinea los botones a la derecha */
    gap: 10px; /* Espacio entre los botones */
}

/* Asegura que los botones se vean bien */
.cb_tab_content .cbProfileEditButtons .btn {
    width: auto; /* Ajusta el ancho de los botones automáticamente */
    padding: 10px 20px;
}

/* Estilo responsive: en pantallas pequeñas (menos de 768px) */
@media (max-width: 768px) {
    .cb_tab_content .form-group {
        width: 100%; /* Cambia a una sola columna */
        margin-right: 0;
        float: none;
    }

    .cb_tab_content .form-group label {
        flex: 0 0 auto; /* Las etiquetas ocupan el ancho completo */
        max-width: 100%;
        text-align: left; /* Alinea las etiquetas a la izquierda */
        margin-bottom: 5px;
    }

    .cb_tab_content .form-group .cb_field {
        flex: 0 0 auto; /* Los campos ocupan el ancho completo */
        max-width: 100%;
    }

    .cb_tab_content .cbProfileEditButtons {
        width: 100%; /* Los botones ocupan el ancho completo */
        float: none;
        justify-content: center; /* Centra los botones */
    }
}




/* Reglas específicas para campos individuales por ID */
#cb_titulo,
#cb_nombre,
#cb_apellidos,
#cb_dni,
#cb_departamento,
#cb_email,
#cb_telefono,
#cb_perfilpatologo,
#cb_patologo,
#username,
#email,
#password__current,
#password {
    font-size: 14px;
    height: 30px;
    width: 400px; /* Ancho fijo para todos los campos */
}


.cb_template{
    font-size: 1.5rem;
}

.cb-page-header{
    display: none;
}

a[title="online membership sites"] {
    display: none;
}

/*
=================================================================
*/


/* ANCHO PAGINA VERTICALES AL 100% */ 
.ja-masonry-wrap .grid-hd-5 .isotope-item.item-3 {
        width: 100% !important;
}
/* FIN ANCHO PAGINA VERTICALES AL 100% */ 

/* BREADCRUMB DE ADMINISTRACION */
.breadcrumb {
    background-color: #ffffff;
    padding: 0px 6px !important;
}
#Mod17 .module-inner {
    padding: 10px 0px !important;
}
/* FIN BREADCRUMB */ 

.paddingtoolbar
{
    padding: 10px 0 10px 0;	
}

    
/* ESTILOS PARA LOS COMBOS DE BUSCADOR DE COMPONENTES DESARROLLADOS */
.chosen-container-single .chosen-single {
		background:none;
    height: 38px;
    padding: 8px 0 0 8px;
    line-height: 24px;		
    border-radius:0px;
} 
/* FIN ESTILOS PARA LOS COMBOS DE BUSCADOR DE COMPONENTES DESARROLLADOS */


/*
    COMPONENTE "PROGRAMAS DE CALIDAD"
*/

/*
    Mantenimiento "Programas de Calidad"
*/
#filter_activo_chosen {
    width: 150px !important;
}

#filter_seguimiento_chosen {
    width: 185px !important;
}

#filter_tipoSeguimiento_chosen {
    width: 160px !important;
}

/*
    Mantenimiento "Ediciones"
*/

#filter_tecnicaActualizada_chosen {
    width: 180px !important;
}

#filter_certificadosHabilitados_chosen {
    width: 190px !important;
}

/* Este ID también se usa en "Módulos de programa" */
#filter_programa_idPrograma_chosen {
    width: 300px !important;
}


/*
    Mantenimiento "Módulos de programa"
*/
#filter_tipoElementoEstudio_chosen {
    width: 170px !important;
}

#filter_tipoModulo_chosen {
    width: 240px !important;
}


/*
    Mantenimiento "Módulos de la edición"
*/
#filter_edicion_idEdicion_chosen {
    width: 350px !important;
}

#filter_modulo_idModulo_chosen {
    width: 350px !important;
}




/*
    COMPONENTE "INSCRITOS"
*/

/*
    Mantenimiento "Inscritos"
*/

#filter_comunidadautonoma_idcomunidadautonoma_chosen {
    width: 250px !important;
}

#filter_pais_idPais_chosen {
    width: 280px !important;
}



/*
    COMPONENTE "PERSONAS DE CONTACTO"
*/


/*
    Mantenimiento "Personas de contacto"
*/

#filter_inscrito_idInscrito_chosen {
    width: 200px !important;
}

#filter_perfilpatologo_idperfilpatologo{
    width: 200px !important;
}




/*
    COMPONENTE "FACTURACIÓN"
*/


/*
    Mantenimiento "Facturas Emitidas"
*/

#filter_inscrito_idinscrito_chosen {
    width: 200px !important;
}

#filter_pais_cliente_chosen{
    width: 200px !important;
}

#filter_facturado_chosen{
    width: 180px !important;
}


/*
    Mantenimiento "Facturas Rectificativas"
*/

#filter_facturaid_chosen{
    width: 180px !important;
}

#filter_cod_mediopago_chosen{
    width: 150px !important;
}



/*
    COMPONENTE "SOLICITUDES DE INSCRIPCIÓN"
*/


/*
    Mantenimiento "Solicitudes de Inscripción"
*/

#filter_modulos_chosen{
    width: 200px !important;
}


#filter_tipopatologo_idtipopatologo_chosen {
    width: 180px !important;
}

#filter_perfilPatologo_idPerfilPatologo_chosen {
    width: 180px !important;
}



/*
    COMPONENTE "INSRIPCIONES"
*/


/*
    Mantenimiento "Inscripciones"
*/


#filter_tipoinscripcion_idtipoinscripcion_chosen{
    width: 250px !important;
}

#filter_estadoInscripcion_chosen{
    width: 180px !important;
}

#filter_pagado_chosen{
    width: 100px !important;
}

#filter_modulos_idModulo_chosen{
    width: 200px !important;
}


#filter_inscripcion_idInscripcion_chosen {
    width: 140px !important;
}

#filter_personaContacto_idPersonaContacto_chosen {
    width: 320px !important;
}


#filter_casoClinico_idCasoClinico_chosen{
    width: 320px !important;
}



/*
    COMPONENTE "RONDAS"
*/


/*
    Mantenimiento "Casos Clínicos"
*/


#filter_ronda_idRonda_chosen{
    width: 400px !important;
}





/*
    Las reglas a continuación son para que los campos de "Fecha" no se queden por encima de los combos cuando se despliegan
*/
#jform_fechaemision {
    z-index: 0 !important;
}

#jform_fechafacturado {
    z-index: 0 !important;
}

#jform_fechagensistema {
    z-index: 0 !important;
}

#jform_fechaSolicitudAlta {
    z-index: 0 !important;
}

#jform_fecha {
    z-index: 0 !important;
}

#jform_fechaPago {
    z-index: 0 !important;
}


#jform_fechaOperacion {
    z-index: 0 !important;
}

/*
    Para Rondas
*/

#jform_fechaEnvio{
    z-index: 0 !important;
}

#jform_fechaLimite{
    z-index: 0 !important;
}

#jform_fechaResultados{
    z-index: 0 !important;
}

/*
    Para Programas de Calidad

*/


#jform_fechaInicioEdicion,
#jform_fechaFinEdicion,
#jform_fechaInicioInscripcion,
#jform_fechaFinInscripcion
{
    z-index: 0 !important;  
}