*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    font-family: Arial, Helvetica, sans-serif;
}

.alignLeft{
    text-align: left;
}

.alignRight{
    text-align: right;
}

th,
.table_th{
    background-color: #E5E5E5;
    padding-right: 50px;
}

td{
    
}


th, td, .table_th, .table_td{
    border: 1px solid #CCCCCC;
    border-top: 0px;
    border-left: 0px;
    padding: 3px;
}

table{
    width: 100%;
}

ul{
    list-style: none;
}

.border__firstColumn{
    border-left: 1px solid #CCCCCC;
}

.printingDate{
    text-align: right;
    font-size: 11px;
    margin: 15px 0px;
}

.bgLogoUTM{
    position: fixed;
    opacity: .1;
    width: 49%;
    bottom: 0px;
    right: 0px;
    z-index: -1;
}

.bgLogoUTM_vertical{
    position: fixed;
    opacity: .1;
    width: 76%;
    bottom: 0px;
    right: 0px;
    z-index: -1;
}

.UserIMG{
    width: 150px;
}

.header_table > tbody > tr >td,
.header_table{
    text-align: left;
}

.table_Firma td,
.table_leyenda td,
.header_table,
.horario_Information{
    background-color: #F2F2F2;
}

/*--- Certificados  ---*/
.certificate_grid{
    display: grid;
    grid-template-columns: 100px 1fr;
}

.certificate table th{
    font-size: 0.781rem;
    font-weight: normal;
    padding: 8px 0 ;
}

.certificate table td{
    padding: 5px 0 ;
}

.certificate_paragraph{
    display: grid;
    grid-template-columns: 113px 1fr;
    text-align: justify;
    font-size: 0.844em;
    margin-top: 35px;
    line-height: 1.3;
}

.certificate_paragraph p{
    margin-bottom: 15px;
}

.certificate_paragraph img{
    width: 110px;
}

.certificate_header{
    text-align: center;
}

.certificate_title h2{
    font-size: 24px;
}

.certificate_title h3{
    margin-top: 32px;
    font-size: 16px;
}

.certificate_Utm{
    font-size: 12px;
    padding-top: 8px;
}

.certificate_header img{
    width: 80px;
    margin-bottom: 12px;
}

/* ---Horario Clases---*/
.alignTd_table td{
    text-align: left;
}

.horario_Information{
    font-size: 11px;
    width: 95%;
    text-align: left;
    margin: 0 auto;
}


/*---Historial Academico---*/

.hist {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

/*--- MisCalificaciones ---*/
.qualification table{
    margin-top: 20px;
    font-size: 9px;
}

/*--- MallaCurricular ---*/
.curricular table{
    margin-top: 10px;
    font-size: 0.660em;
}

.curricular td{
    padding: 4px;
    line-height: 1.4;
}

.prerequisite{
    color: #04B404;
    padding-left: 20px !important;
}

/**/

.table_img{
    width: 105px;
    height: 115px;
    
}

.content_data{
    display: flex; 
    align-items: center; 
    margin: 15px 0;
}

.level{
    text-align: left;
    font-weight: bold;
    background-color: none;
}

.historial_tablaTotal{
    font-size: 8px;
    font-weight: bold;
    margin: 6px 0;
}

/*Distribucion Horaria*/

.thead_DisHoraria th{
    font-size: 10px;
    padding: 7px 0;
}

.table_leyenda{
    font-size: 9px;
    text-align: left;
    margin: 15px auto;
    width: 95%;
}

.table_leyenda > tbody > tr > td{
    text-align: left;
}

.row_Firma{
    vertical-align: bottom;
    font-weight: bold;
}

.table_Firma{
    font-size: 9px;
    margin: 0 auto 15px auto;
    width: 90%;
    text-align: left;
}

.header_QR{
    height: 85%;
    display: block;
    margin: auto;
    object-fit: cover;
}

.border-top{
    border-top: 1px #CCCCCC solid;
}

.header_table{
    width: 90%;
    margin: 0 auto;
    margin-bottom: 10px;
}

.tbody_content>tr>td{
    padding: 0;
    border: none;
}

.header_table,
.header_table td{
    text-align: left;
}

/************************/

.graphics{
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
}

.centrarColumna td{
    text-align: center;
}
  
.chart-container {
    position: relative;
    margin-left: 25px;
}

.chart-primary-group {
    display: flex;
    width: 100%;
    height: 44%;
    min-height: auto;
    justify-content: center;
}