/**
 * Estilo para textos y parrafos
 * Autor: Andres Hurtado
 * Fecha: 11-09-2025
 */

.texto-justificado {
    text-align: justify;
}

/* 
 * Para textos destacados 
 */
.texto-destacado {
    font-weight: bold;
    color: var(--color-texto);
}

/* 
 * Para textos de color 
 */
.texto-color {
    padding: 0.5rem;
    color: var(--color-primario);
}

/*
 * Para textos de advertencias 
 */
.texto-advertencia {
    color: var(--color-error);
    /* font-weight: bold; */
}

/* 
 * Para textos de informacion 
 */
.texto-comun {
    color: var(--color-texto);
    font-size: 1rem;
    line-height: 1.6;
}

/* 
 * Clase para observaciones destacadas 
 */
.observacion-destacada {
    background-color: rgba(45, 78, 145, 0.1);
    border-left: 4px solid var(--color-primario);
    border-radius: 0 8px 8px 0;
    text-align: center;
    padding: 10px;
    margin: 15px 0;
}

.observacion-destacada p {
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 0;
    margin-bottom: 0;
}

/* 
 * Notas Destacadas 
 */
.nota-destacada {
    background-color: rgba(142, 108, 53, 0.1);
    border-left: 4px solid var(--color-secundario);
    border-radius: 0 8px 8px 0;
    text-align: center;
    padding: 10px;
    margin: 15px 0;
}

.nota-destacada p {
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 0;
    margin-bottom: 0;
}

/* 
 * Titulos principal
 */
.titulo-principal {
    margin: 2;
    font-size: 1.5rem;
    color: var(--color-primario);
    text-align: center;
    /* margin-bottom: 25px; */
    margin-bottom: 5px;
    position: relative;
    /* padding-bottom: 15px; */
    padding-bottom: 5px;
}

.titulo-principal::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background-color: var(--color-secundario);
}

/* 
 * Titulos secundarios
 */
.titulo-seccion {
    font-size: 1.3rem;
    color: var(--color-primario);
    text-align: center;
    margin: 10px 0 10px;
    padding-bottom: 5px;
    border-bottom: 2px solid var(--color-borde);
    font-weight: normal;
}

/* 
 * Sub titulos
 */
.subtitle {
    color: var(--color-primario);
    font-size: 1.2rem;
    font-weight: 600;
    margin: 10px 0 10px;
}

/**
 * Texto de la barra de pestañas horizontal
 */

/* Usada para mostrar el nombre del usuario */
.celdabarravacia {
    font-size: 12px;
    font-weight: bold;
    color: #eee;
    padding: 7.5px 10px !important;
    min-height: 20px;
    text-transform: uppercase;
}

.celdabarralibre {
    font-size: 12px;
    color: #FFFFFF;
    text-align: center;
    min-height: 20px;
    /* padding: 2.5px 10px !important; */
    background-color: none;
    font-weight: bold;
    cursor: pointer;
    position: relative;
    /* padding-bottom: 2px; */
}

.celdabarralibre:hover {
    background-color: rgba(var(--color-alternativo-principal), 0.2);
    animation: 0.3s ease;
}

.celdabarrapresionada {
    font-size: 12px;
    color: #FFFFFF;
    text-align: center;
    min-height: 20px;
    /* padding: 2.5px 10px !important; */
    font-weight: bold;
}

td.celdabarrapresionada {
    background-color: rgba(255, 255, 255, 0.1);
}

/* ========== RESPONSIVE FOR SMARTPHONES ========== */
/* TELEFONOS (hasta 768px) - Todos los smartphones */
@media only screen and (max-device-width: 768px) {

    .celdabarralibre,
    .celdabarrapresionada,
    td.celdabarrapresionada {
        font-size: 9px !important;
        min-height: 18px !important;
        padding: 3px 6px !important;
        margin: 0 2px !important;
    }

    .titulo-principal {
        font-size: 1.2rem;
    }

    .titulo-seccion {
        font-size: 0.9rem;
    }

    .subtitle {
        font-size: 0.6rem;
    }

    .observacion-destacada p,
    .nota-destacada p {
        font-size: 0.5rem;
    }

    .lista-acordeon {
        font-size: 0.5rem;
    }

    .inputs-row {
        flex-direction: column;
    }
}

/* TELEFONOS MUY PEQUEÑOS (hasta 360px) */
@media only screen and (max-device-width: 360px) {

    .celdabarralibre,
    .celdabarrapresionada {
        font-size: 8px !important;
        padding: 2px 4px !important;
    }

    .titulo-seccion {
        font-size: 0.9rem;
    }

    .subtitle {
        font-size: 0.6rem;
    }

    .observacion-destacada p,
    .nota-destacada p {
        font-size: 0.5rem;
    }

    .lista-acordeon {
        font-size: 0.5rem;
    }

    .inputs-row {
        flex-direction: column;
    }
}