/*body {
    font-family: Helvetica!important;
}*/

a {
    color: #0072CE; /* Color principal */
    text-decoration: none; /* Sin subrayado por defecto */
    font-weight: 500; /* Peso de la fuente un poco más destacado */
    position: relative;
    transition: color 0.3s ease; /* Transición de color */
}

a::after {
    content: ""; /* Línea decorativa */
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #0072CE;
    left: 0;
    bottom: -3px;
    transform: scaleX(0); /* Empieza oculta */
    transition: transform 0.3s ease; /* Transición de subrayado */
    transform-origin: bottom right; /* Punto de partida de la animación */
}

a:hover {
    color: #005194; /* Color de hover más oscuro */
}

a:hover::after {
    transform: scaleX(1); /* Muestra la línea de subrayado */
    transform-origin: bottom left; /* Dirección de expansión de la línea */
}

div {
    font-family: Helvetica, sans-serif!important;
}

h2 {
    text-align: center;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.title {
    display: inline;
}

.logo {
    margin-right: 10px;
    width: 40px;
    height: 40px;
}

.header-container {
    display: flex;
    width: 80%; /* Ajusta el ancho según lo necesario */
    margin: 0 auto;
    align-items: center;
    justify-content: center; /* Opcional, para centrar los elementos dentro */
    text-align: center; /* Alinea el texto en el centro */
}

.centered-container {
    margin: 20px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
}

.asignacion-docente-head {
    margin: 0 auto;
    width: 100%; 
}

#seguimiento_global_grupo_table {
    max-width: 100%!important;
}

#seguimiento_global_grupo_table,
#seguimiento_recuperacion_grupo_table {
    margin: 0 auto;
    width: 100%;
}

#head {
    margin: 0 auto;
    width: 95%;
}

#seguimiento_global_grupo_table table,
#seguimiento_recuperacion_grupo_table table {
    margin: 16px 16px;
    border-collapse: collapse;
    width: 100%;
}

#seguimiento_global_grupo_table th,
#seguimiento_recuperacion_grupo_table th,
#seguimiento_global_grupo_table td,
#seguimiento_recuperacion_grupo_table td {

    padding: 5px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}

#seguimiento_global_grupo_table th,
#seguimiento_recuperacion_grupo_table th {
    background-color: #f2f2f2;
    color: #333;
}

#seguimiento_global_grupo_table tr:nth-child(even),
#seguimiento_recuperacion_grupo_table tr:nth-child(even) {
    background-color: #f9f9f9;
}

#seguimiento_global_grupo_table tr:hover,
#seguimiento_recuperacion_grupo_table tr:hover {
    background-color: #f5f5f5;
}

#head {
    display: flex;
    justify-content: space-between;
}


.evaluacion-componente-head {
    margin: 0 auto;
    width: 70%;
}

.search-form-1 {
    display: flex;
    justify-content: center;
    align-items: center;
}


.search-form-1 input[type=text],
.search-form-1 select {
    width: 10%;
    padding: 12px 20px;
    margin: 8px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.search-form-1 input[type=submit] {
    width: 10%;
    background-color: #0072CE;
    color: white;
    padding: 12px 20px;
    margin: 8px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.search-form-2 {
    display: block;
    margin-left: auto;
    margin-right: auto;
}


.search-form-2 input[type=text],
.search-form-2 select {
    width: 10em;
    padding: 12px 20px;
    margin: 8px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.search-form-2 input[type=submit] {
    width: 100%;
    background-color: #0072CE;
    color: white;
    padding: 12px 20px;
    margin: 0 auto;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

button, .firmar-button {
    
    background-color: #0072CE;
    color: white;
    padding: 12px 20px!important;
    margin: 15px auto; /* Center the element horizontally */
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.5s ease;
}

.portada-button {
    width: 40vh;
}

button:hover {
    background-color: #005194;
}


/* table-1 specific style for #info docente id*/
#info_docente {
    margin-left: 3vh;
    width: 50%;
}

.table-1 th,
.table-1 td{
    font-size: 15px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 0px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.table-1 caption {
    font-weight: bold;
}


.table-2 table {
    margin: 10px 10px;
    border-collapse: collapse;
    width: 100%;
}

.table-2 th,
.table-2 td {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 6px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.table-2 th {
    background-color: #f2f2f2;
    color: #333;
}

.table-2 tr:nth-child(even) {
    background-color: #f9f9f9;
}

.table-2 tr:hover {
    background-color: #f5f5f5;
}

.notification-area {
    margin: 0 auto;
    width: 100%;
}

.notification-red {
    text-align: center;
    background-color: #f6d784;
    color: #000000;
    font-weight: bold;
    padding: 4px;
    margin: 5px;
}

.notification-orange {
    text-align: center;
    background-color: #9feea2;
    color: #000000;
    font-weight: bold;
    padding: 4px;
    margin: 5px;

}

.notification-green {
    text-align: center;
    background-color: #5abdfa;
    color: #000000;
    font-weight: bold;
    padding: 4px;
    margin: 5px;

}

.notification-neutral {
    font-weight: bold;
    text-align: center;
}

#estatus_firma {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

#notification {
    text-align: center;
}

.login-logout-container {
    position: absolute;
    top: 170%;
    right: -24%;
    z-index: 1000;
}

.center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 20%;
}

#overlay {
    position: fixed; /* Sit on top of the page content */
    width: 100%; /* Full width (cover the whole page) */
    height: 100%; /* Full height (cover the whole page) */
    top: 0; 
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.5); /* Black background with opacity */
    z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
    cursor: pointer; /* Add a pointer on hover */
  }
  
#loadingScreen {
position: fixed; /* Sit on top of the page content */
width: 100px; /* The width of your loading gif */
height: 100px; /* The height of your loading gif */
top: 50%; 
left: 50%;
margin-top: -50px; /* Negative half of height */
margin-left: -50px; /* Negative half of width */
background-image: url('https://uam.dlimon.net/wp-content/uploads/2024/02/AXOLOTL-1.png.gif'); /* The url of your loading gif */
background-repeat: no-repeat;
background-position: center;
z-index: 3; /* Higher than overlay's z-index */
}

.post-edit-link {
    display: none!important;
}


.highlight-row {
    background-color: lightgreen!important;
}

.bold {
    font-weight: bold!important;
    font-size: 20px!important;
    text-align: center!important;
}

input[type="file"] {
    font-family: Helvetica, sans-serif;
    padding: 12px 20px;
    margin: 8px;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #f9f9f9;
    color: #333;
}

input[type="file"]::file-selector-button {
    background-color: #0072CE;
    color: white;
    padding: 10px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
}

.center-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#loading-screen {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    text-align: center;
    z-index: 1000;
}

.loading-content {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    color: white;
    font-size: 20px;
}

.loading-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    z-index: 10;
}

.loader {
    border: 16px solid #f3f3f3;
    border-radius: 50%;
    border-top: 16px solid #3498db;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
    margin: 0 auto;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.boton-descarga {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    margin: 10px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background-color: #0072CE; /* Color de fondo para Excel */
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.boton-descarga i {
    margin-right: 8px;
    font-size: 18px;
}

#botonDescargarExcel {
    background-color: #5eba63; /* Color de fondo para PDF */
}

#botonDescargarExcel:hover {
    background-color: #45a049; /* Color de hover para Excel */
}

/* Estilo específico para el botón PDF */
#botonDescargarPDF {
    background-color: #e74c3c; /* Color de fondo para PDF */
}

/* Efecto hover */
.boton-descarga:hover {
    background-color: #005194; /* Color de hover para Excel */
}

#botonDescargarPDF:hover {
    background-color: #c0392b; /* Color de hover para PDF */
}

.contenedor-botones-descarga {
    margin-top: 10px;
    padding-right: 15px; /* Agrega padding derecho */
    padding-left: 20px;
}