/* Hacer que el body ocupe el 100% de la pantalla */
body, html {
	height: 100%;
}

/* Contenedor principal para el contenido de la página */
.main-content {
	flex: 1;
	flex-grow: 1;
    padding: 20px;
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    position: relative;
}

/* Estilo para el footer */
footer {
	width: 100%;
    background-color: #333;
    color: #fff;
    text-align: center;
    padding: 20px;
}

.mensaje-validacion {
        color: #721c24; /* Color rojo oscuro */
        background-color: #f8d7da; /* Color de fondo rojo claro */
        padding: 0.75rem 1.25rem; /* Espaciado interno */
        border: 1px solid #f5c6cb; /* Borde rojo */
        border-radius: 0.25rem; /* Bordes redondeados */
        margin-top: 5px; /* Margen superior */
        font-size: 0.9rem; /* Tamaño de la fuente */
    }
	
.success-message {
    color: #155724; /* Color verde oscuro */
    background-color: #d4edda; /* Color de fondo verde claro */
    border: 1px solid #c3e6cb; /* Borde verde */
    border-radius: 0.25rem; /* Bordes redondeados */
    padding: 0.75rem 1.25rem; /* Espaciado interno */
    margin-top: 5px; /* Margen superior */
    font-size: 0.9rem; /* Tamaño de la fuente */
}

div {
        margin-top: 10px; /* Ajusta el valor según tu preferencia */
        margin-bottom: 10px; /* Ajusta el valor según tu preferencia */
    }
	
.mensaje-respuesta {
    background-color: #dff0d8; /* Color de fondo verde claro */
    color: #3c763d; /* Color de texto verde oscuro */
    border: 1px solid #d6e9c6; /* Borde verde */
    padding: 5px;
    margin-top: 5px;
    border-radius: 4px;
    display: inline-block;
    /* No se necesita position: absolute aquí ya que se añade dinámicamente con jQuery */
}

.mensaje-error {
    background-color: #f8d7da; /* Color de fondo verde claro */
    color: #721c24; /* Color de texto verde oscuro */
    border: 1px solid #f5c6cb; /* Borde verde */
    padding: 5px;
    margin-top: 5px;
    border-radius: 4px;
    display: inline-block;
    /* No se necesita position: absolute aquí ya que se añade dinámicamente con jQuery */
}

.table th, .table td {
	vertical-align: middle;
}

.table th[colspan='3']{
	background-color: #f8f9fa;
	font-weight: bold;
}

.table tbody th {
	vertical-align: top;
	padding: 10px;
}

.col-small {
	width: 200px;
	min-width: 200px;
	font-size: 0.9em;
}

.col-large {
	width: auto;
	min-width: 300px;
	white-space: pre-wrap; /* Permitir el ajuste de texto y la preservación de saltos de línea */
	word-wrap: break-word; /* Permitir que las palabras se rompan al final de la línea */
	text-align: left;
	font-size: 1em;
}

.nombre-fecha {
	border-top: 1px solid #ddd;
	padding-top: 5px;
	font-size: 0.7em;
}

@media (max-width: 768px) {
	.col-small, .col-large {
		min-width: auto;        /* Quitar ancho mínimo en pantallas pequeñas */
		width: 100%; /* Hacer que todas las columnas ocupen todo el ancho disponible */
		display: block; /* Hacer que cada celda ocupe su propia fila */
	}
}

.td-archivos-adjuntos {
    text-align: left;
}

ul.lista-archivos-adjuntos {
    list-style-type: none;        /* Quita los puntos */
    padding-left: 0;              /* Quita el margen izquierdo del <ul> */
    text-align: left;             /* Alinea el contenido a la izquierda */
    margin-top: 10px;
}

ul.lista-archivos-adjuntos li.archivo-adjunto {
    margin-bottom: 8px;
}

.archivo-link {
    display: inline-block;
    padding: 6px 10px;
    text-decoration: none;
    border: 1px solid #007bff;
    border-radius: 5px;
    color: #007bff;
    background-color: #f8f9fa;
    transition: background-color 0.2s, color 0.2s;
}

.archivo-link:hover {
    background-color: #007bff;
    color: white;
    text-decoration: none;
}

.archivo-input-limitado {
	max-width: 500px;
	width: 100%;
}
