@charset "utf-8";
/* CSS Document */
html,body
{
	height:100%;
	margin:0;
	padding:0;
}
ul li {
    list-style-type: disc; /* Aseguramos que el marcador por defecto sea un punto */
    padding: 0px 0px 10px 0px; /* Tu padding original */
    text-align: justify;
    line-height: 18px;
}

ol li {
	padding:0px 0px 10px 0px; 
    list-style-position: outside; 
}

p,li{
	text-align:justify;
	line-height:18px;
    padding: 3px;
}

.margenes img{
	padding:20px 5px;
}
.impresion {
	height: 50px;
	width: 760px;
	max-width: 100%;
	position: relative;
	z-index: 200;
	text-align: right;
	padding-right: 40px;
	background: url(../img/85.png);
}
.botonvolver {
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
	background: url(../img/85.png);
}
img {
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-top-style: 0;
	border-right-style: 0;
	border-bottom-style: 0;
	border-left-style: 0;
	border: none;
}

.contenido {

	width: 800px;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	clear: right;
	position: relative;
}

.textoinformeger {
	font-size: 12px;
	width: 750px;
}

.textoinformeger h1{
	font-size: 14px;
	color: #1D4E89;
}
.textoinformeger h2 {
	font-size: 12px;
	color: #1D4E89;
	/* [disabled]font-variant: small-caps; */
}

.cb {
	height: 120px;
	width: 800px;
	max-width: 100%;
	background-image: url(../img/cb.png);
	background-position: center center;
	background-repeat: no-repeat;
	float: none;
	position: relative;
	overflow: hidden;
}
.cbb {
	background-image: url(../img/cbb.png);
	background-repeat: no-repeat;
	background-position: center center;
	height: 50px;
	width: 800px;
	max-width: 100%;
	float: left;
	position: relative;
}
.text {
	/* [disabled]background-color: #FFF; */
	max-width: 100%;
	vertical-align: top;
	float: left;
	position: relative;
	/* [disabled]width: 800px; */
	background-image: url(../img/85.png); 
}
.cuadros {
    height: 100%;
    width: 800px;
   /* background-image: url(img/fdo.png);*/
    background-repeat: no-repeat;
    position: fixed;
    top: 0px;
    left: 0px;
}

.margenes {
	width: 1200px;
	max-width: 100%;
	padding-right: 25px;
	padding-left: 25px;
	text-align: justify;
}
.nav {
	height: 100px;
	width: 800px;
	text-align: right;
	float: right;
	position: relative;
	right: 25px;
	margin-bottom: 15px;
	list-style-position: inside;
	list-style-type: none;
}
a:link {
	color: #102A83;   
	text-decoration: none;
	font-size: 12px;
}
a:visited {
	color: #6883A4;
	text-decoration: none;
}
a:hover {
	color: #3D83F5;
	text-decoration: none;
}
a:active {
	color: #f8eca0;
	text-decoration: none;
}

/* --- NUEVA CLASE: Estilo para las listas con CUADRADOS --- */
.lista-con-cuadrados {
    list-style-type: none !important; /* Elimina el marcador por defecto del UL */
    margin: 0;
    padding: 0;
}

.lista-con-cuadrados li {
    list-style-type: none !important; /* Elimina cualquier marcador del LI directamente */
    padding-left: 1.5em; /* Espacio para el cuadrado y el texto */
    position: relative;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 10px;
    text-align: justify;
    line-height: 18px;
}

.lista-con-cuadrados li::before {
    content: "▪ "; /* ¡El cuadrado negro! */
    position: absolute;
    left: 0;
    /* top: 0.1em; Ajusta la alineación vertical si es necesario */
}
/* Estilo para listas con guiones */
.lista-con-guiones {
    list-style-type: none !important; /* Fuerza la eliminación del marcador de lista */
    margin: 0;
    padding: 0;
}

.lista-con-guiones li {
    list-style-type: none !important; /* Fuerza la eliminación del marcador en cada LI */
    padding-left: 1.5em; /* Espacio para el guion y alineación del texto */
    position: relative;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 10px; /* Mantenemos el padding bottom original */
    text-align: justify;
    line-height: 18px;
}

.lista-con-guiones li::before {
    content: "– "; /* ¡Guion de nuevo! */
    position: absolute;
    left: 0;
    /* top: 0.1em; Si el guion no está centrado verticalmente, descomenta y ajusta este valor */
}

/* Estilo para listas anidadas que NO deben tener guiones ni puntos (si aún la necesitas) */
.nested-no-bullet {
    list-style-type: none !important; /* Asegura que no tenga ningún marcador */
    padding-left: 0; /* Elimina la sangría */
    margin-left: 0; /* Elimina el margen */
}
.nested-no-bullet li {
    list-style-type: none !important; /* Asegura que los items no tengan ningún marcador */
    padding-left: 0; /* Asegura que los items dentro de .nested-no-bullet no tengan sangría del guion */
    padding-bottom: 10px; /* Mantén el padding bottom si lo deseas */
}

body,td,th {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
}
.espaciadoTituloImagen{
margin-bottom: -15px;
}
.titulo1 {
	margin-bottom:1.5em;
}
.titulo2 {
	background:#5762aa;
	color:#fff;
	padding:0.5em;
	margin-bottom:2.5em;
}
.titulo2sub {
	background:#5762aa;
    color:#fff;
	padding:0.5em;
	margin-bottom:1.25em;
}
.titulo3sub {
	padding-left:8px;
	margin-bottom:2.5em;
}
.titulo3 {
	margin-bottom:2.5em;
}
.nota_subH3{
	padding-left:8px;
	margin-top:-35px;
	margin-bottom:26px;
  }
.nota_subimg{
	padding-left:8px;
	margin-top:-20px;
  }  
.rotulograf {
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	background: #e0e0e0;
	color:rgba(0,0,0,1);
	padding:0.2em;
	margin-top: 30px;
	margin-bottom: -25px;
	
}
.uppercase {
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  }

/* --- INICIO DE ESTILOS CSS PARA LA TABLA --- */

table {
    width: 100%;
    border-collapse: collapse; /* Crucial para que los bordes de las celdas se fusionen */
    margin-top: 20px;
    margin-bottom: 20px;
    border: none; /* Asegura que la tabla no tenga un borde externo */
}

/* Estilo para los encabezados de la tabla (th) */
th {
    background-color: #5762aa; /* Tu color azul oscuro para los encabezados */
    color: rgb(255, 255, 255); /* Tu color de texto blanco */
    padding: 8px;
    vertical-align: middle; /* Alineación vertical al medio para encabezados */
    border-left: none; /* Sin borde vertical izquierdo */
    border-right: none; /* Sin borde vertical derecho */
    border-bottom: 1px solid #000; /* Borde horizontal estándar */
    border-top: none; /* Asegura que no haya un doble borde superior aquí */
}

/* Borde superior doble para la cabecera */
table thead tr {
    border-top: 2px solid #000;
}

/* Estilo para las celdas de la tabla (td) */
td {
    background-color: rgb(255, 255, 255); /* Tu fondo blanco por defecto */
    color: rgba(0,0,0,1);
    padding: 8px;
    vertical-align: middle; /* Alineación vertical al medio para celdas de datos */
    border-left: none; /* Sin borde vertical izquierdo */
    border-right: none; /* Sin borde vertical derecho */
    border-bottom: 1px solid #000; /* Borde horizontal estándar para todas las celdas */
}

/* --- REGLAS DE ALINEACIÓN HORIZONTAL --- */

/* La primera columna (encabezado y datos) se mantiene a la izquierda */
th:first-child {
    text-align: left;
}
td:first-child {
    text-align: left;
}

/* Todas las demás columnas (encabezados y datos) se alinean a la DERECHA por defecto */
th {
    text-align: right;
}
td {
    text-align: right;
}

/* EXCEPCIÓN: La ÚLTIMA columna (encabezado y datos) se alinea al CENTRO */
th:last-child {
    text-align: center;
}
td:last-child {
    text-align: center;
}


/* Estilo para las filas de la tabla (alternando tus colores) */
table tbody tr:nth-child(even) {
    background-color: #b38f7f; /* Tu color marrón claro para filas pares */
}

table tbody tr:nth-child(odd) {
    background-color: #fff; /* Tu color blanco para filas impares */
}

/* CLASES ESPECÍFICAS PARA CONTROLAR LOS BORDES DE FILAS */

/* Para el borde inferior doble de una fila específica */
.doble-borde-inferior td {
    border-bottom: 2px solid #000 !important;
}

/* Para la fila que NO debe tener borde inferior */
.sin-borde-inferior td {
    border-bottom: none !important;
}

/* --- FIN DE ESTILOS CSS PARA LA TABLA --- */

/* Estos son tus estilos adicionales que no afectan directamente a la tabla */
.print {
	width: 50px;
	padding-bottom: 70px;
}
.no-bullet {
    list-style-type: none;
    margin-left: 0;
    padding-left: 0;
}
.no-bullet li {
    margin-bottom: 5px;
}
/* Modifica la clase .indent para que solo sangre la primera línea */
.indent {
    text-indent: 40px; /* Ajusta el valor (ej. 40px) según la sangría que desees */
    margin-left: 0;    /* Elimina el margen izquierdo de todo el párrafo si ya no lo quieres */
}

.manager-signature {
    text-align: right;
    margin-top: 40px;
    margin-right: 20px;
}

/* Clase para hacer una tabla más estrecha y centrada */
.tabla-estrecha {
    width: 80%; /* O el porcentaje que desees, por ejemplo, 70%, 80% */
    /* O un ancho fijo, por ejemplo: width: 500px; */
    margin-left: auto;   /* Centra la tabla horizontalmente */
    margin-right: auto;  /* Centra la tabla horizontalmente */
}

.table-container {
    /* Define el ancho máximo que quieres para tu tabla. Puedes ajustarlo (ej: 1200px, 900px). */
    max-width: 1400px;
    /* Ancho base que permite responsividad. El 95% asegura un 2.5% de margen a cada lado visualmente. */
    width: 95%;
    /* Centra el contenedor de la tabla horizontalmente y le da márgenes superior/inferior. */
    margin: 20px auto;
    /* Esencial para tablas responsivas. Permite el desplazamiento horizontal si la tabla es más ancha que la pantalla. */
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* Suaviza el desplazamiento en dispositivos iOS */
}
.table-container table {
    font-size: 0.85em; /* Reduce el tamaño de la fuente */
}

.table-container th,
.table-container td {
    padding: 4px 6px; /* Reduce el padding */
    white-space: normal !important; /* Permitir salto de línea */
}

/* Estilo para la línea divisoria más gruesa en los encabezados de la tabla específica */
.tabla-personal-mando th:nth-child(5) {
    border-right: 2px solid #000 !important; /* Borde derecho de 3px, negro */
    padding-right: 18px; /* Mantén el padding para que el contenido no se pegue al borde */
}

/* Estilo para la línea divisoria más gruesa en las celdas de datos de la tabla específica */
.tabla-personal-mando td:nth-child(5) {
    border-right: 2px solid #000 !important; /* Borde derecho de 3px, negro */
    padding-right: 18px; /* Mantén el padding para que el contenido no se pegue al borde */
}

/* Para hacer la tabla desplazable horizontalmente en pantallas pequeñas */
@media screen and (max-width: 768px) {
    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .table-responsive table {
        width: 100%;
        min-width: 600px;
    }
    .table-responsive table th,
    .table-responsive table td {
        border-left: none;
        border-right: none;
    }
    .table-responsive table thead tr th:first-child {
        border-top: 2px solid #000;
    }

    table.stackable-table, .stackable-table thead, .stackable-table tbody, .stackable-table th, .stackable-table td, .stackable-table tr {
        border: none;
    }
    .stackable-table tr {
        border: 1px solid #000;
        margin-bottom: 10px;
    }
    .stackable-table td {
        border: none;
        border-bottom: 1px solid rgba(0,0,0,0.3);
        position: relative;
        padding-left: 50%;
        text-align: left;
        white-space: normal;
        vertical-align: middle;
    }
    .stackable-table tr:first-child {
        border-top: 2px solid #000;
    }
    .stackable-table td:before {
        color: #555;
    }
}
/* --- Nuevas reglas de coloración --- */

/* Color para las celdas de "AGRUPACIÓN" (INTERNA y AUTODIDACTA) */
.tabla-con-verticales .celda-agrupacion {
    background-color: #b5c5e3; /* Azul claro */
}

/* Color para las filas de "SUBTOTAL" */
.tabla-con-verticales .fila-subtotal td {
    background-color: #b5c5e3 !important; /* Azul claro, usando !important para asegurar prioridad */
}

/* NUEVA REGLA: Mantener la primera celda de las filas de SUBTOTAL en blanco */
.tabla-con-verticales .fila-subtotal td:first-child {
    background-color: #fff !important; /* Fondo blanco, con !important para anular el color de la fila */
}
/* --- NUEVAS REGLAS PARA TABLAS CON BORDES VERTICALES ESPECÍFICOS --- */

.tabla-con-verticales th,
.tabla-con-verticales td {
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    text-align: center !important;

}

/* Asegura que la primera y última celda del encabezado no tengan un borde doble o extra */
.tabla-con-verticales th:first-child {
    border-left: 1px solid #000;
}

.tabla-con-verticales th:last-child {
    border-right: 1px solid #000;
}

/* Asegura que la primera y última celda de datos no tengan un borde doble o extra */
.tabla-con-verticales td:first-child {
    border-left: 1px solid #000;
}

.tabla-con-verticales td:last-child {
    border-right: 1px solid #000;
}

/* Ajustes para el borde superior de la primera fila del encabezado */
.tabla-con-verticales thead tr {
    border-top: 2px solid #000;
}

/* Ajustes para evitar dobles bordes entre celdas */
.tabla-con-verticales th {
    border-top: none;
}

.tabla-con-verticales td {
    border-top: none;
}

/* Asegura que el borde doble inferior de .doble-borde-inferior se mantenga */
.tabla-con-verticales .doble-borde-inferior td {
    border-bottom: 2px solid #000 !important;
}

/* Asegura que la fila sin borde inferior realmente no lo tenga */
.tabla-con-verticales .sin-borde-inferior td {
    border-bottom: none !important;
}

/* --- REGLA NUEVA: Eliminar borde izquierdo de celdas específicas --- */
.no-borde-izquierdo {
    border-left: none !important; /* Elimina el borde izquierdo y usa !important para asegurar que sobrescribe */
}
.tabla-con-verticales .no-borde-inferior {
    border-bottom: none !important; /* ¡Asegura que no tenga borde inferior! */
}

.tabla-con-verticales .no-verticales-th th {
    border-left: none !important;
    border-right: none !important;
}

/* Limpiar de líneas verticales la última fila (TOTAL) de esta tabla específica */
.tabla-con-verticales .no-verticales-total-row td {
    border-left: none !important;
    border-right: none !important;
}

/* --- REGLAS EXISTENTES (ALGUNAS CON PEQUEÑOS AJUSTES) --- */

table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    margin-bottom: 20px;
    border: none;
}

/* Estilo para los encabezados de la tabla (th) - GENERAL */
th {
    background-color: #5762aa;
    color: rgb(255, 255, 255);
    padding: 8px;
    vertical-align: middle;
    /* Los bordes se gestionan de forma más específica con .tabla-con-verticales o las nuevas clases */
    border-bottom: 1px solid #000; /* Mantener borde inferior del encabezado */
    border-top: none; /* Asegura que no haya un doble borde superior aquí, se manejará en thead */
}

/* Borde superior doble para la cabecera */
table thead tr {
    border-top: 2px solid #000;
}

/* Estilo para las celdas de la tabla (td) - GENERAL */
td {
    background-color: rgb(255, 255, 255);
    color: rgba(0,0,0,1);
    padding: 8px;
    vertical-align: middle;
    /* Los bordes se gestionan de forma más específica con .tabla-con-verticales o las nuevas clases */
    border-bottom: 1px solid #000; /* Mantener el borde inferior de las celdas de datos */
    border-top: none; /* Evita doble borde horizontal entre filas y con el encabezado */
}

/* --- REGLAS DE ALINEACIÓN HORIZONTAL --- */

/* La primera columna (encabezado y datos) se mantiene a la izquierda */
th:first-child {
    text-align: left;
}
td:first-child {
    text-align: left;
}

/* Todas las demás columnas (encabezados y datos) se alinean a la DERECHA por defecto */
th {
    text-align: right;
}
td {
    text-align: right;
}

/* EXCEPCIÓN: La ÚLTIMA columna (encabezado y datos) se alinea al CENTRO */
th:last-child {
    text-align: center;
}
td:last-child {
    text-align: center;
}

/* Estilo para las filas de la tabla (alternando tus colores) */
table tbody tr:nth-child(even) {
    background-color: #b38f7f;
}

table tbody tr:nth-child(odd) {
    background-color: #fff;
}
table thead tr:nth-child(2) th {
    background-color: #b5c5e3;
    color: black;
}

/* Estilo para los títulos de Tabla y Gráfico con fondo */
.titulo-seccion-con-fondo {
    background-color: #EFEFEF; /* Un gris claro. Puedes ajustar el código hexadecimal */
    width: 100%;             /* Asegura que ocupe todo el ancho disponible */
    padding: 10px 0;         /* Añade un poco de espacio vertical dentro del fondo */
    text-align: center;      /* Centra el texto */
    margin-top: 20px;        /* Espacio encima de la sección */
    margin-bottom: 20px;     /* Espacio debajo de la sección */
}

/* Aseguramos que el h4 dentro no tenga márgenes que rompan el centrado */
.titulo-seccion-con-fondo h4 {
    margin: 0;
    padding: 0;
}
/* CLASES ESPECÍFICAS PARA CONTROLAR LOS BORDES DE FILAS */

/* Para el borde inferior doble de una fila específica */
.doble-borde-inferior td {
    border-bottom: 2px solid #000 !important;
}

/* Para la fila que NO debe tener borde inferior (ya existente) */
.sin-borde-inferior td {
    border-bottom: none !important;
}

/* Regla existente para eliminar borde izquierdo en celdas específicas */
.no-borde-izquierdo {
    border-left: none !important;
}

/* Asegurar que las celdas de la tabla con verticales SÍ tengan bordes laterales por defecto */
.tabla-con-verticales td {
    border-left: 1px solid #000;
    border-right: 1px solid #000;
}

/* --- ESTILOS GENERALES Y MEDIA QUERIES (NO MODIFICADOS) --- */
.print {
	width: 50px;
	padding-bottom: 70px;
}
.no-bullet {
    list-style-type: none;
    margin-left: 0;
    padding-left: 0;
}
.no-bullet li {
    margin-bottom: 5px;
}

.manager-signature {
    text-align: right;
    margin-top: 40px;
    margin-right: 20px;
}

/* Para hacer la tabla desplazable horizontalmente en pantallas pequeñas */
@media screen and (max-width: 768px) {
    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .table-responsive table {
        width: 100%;
        min-width: 600px;
    }
    /* En pantallas pequeñas, volvemos a eliminar bordes laterales si usas table-responsive para evitar dobles bordes */
    .table-responsive table th,
    .table-responsive table td {
        border-left: none;
        border-right: none;
    }
    .table-responsive table thead tr th:first-child {
        border-top: 2px solid #000;
    }

    table.stackable-table, .stackable-table thead, .stackable-table tbody, .stackable-table th, .stackable-table td, .stackable-table tr {
        border: none;
    }
    .stackable-table tr {
        border: 1px solid #000;
        margin-bottom: 10px;
    }
    .stackable-table td {
        border: none;
        border-bottom: 1px solid rgba(0,0,0,0.3);
        position: relative;
        padding-left: 50%;
        text-align: left;
        white-space: normal;
        vertical-align: middle;
    }
    .stackable-table td:before {
        color: #555;
    }
}

/* Nueva clase para alinear celdas al centro sin otros cambios */
.alinear-centro td,
.alinear-centro th {
    text-align: center;
}