/* Estilos para contenedores principales */
.container-turnos {
    display: grid;
    grid-template-rows: 3em 1fr;
    width: 70%;
    margin: 0 auto;
}

.container-login {
    display: grid;
    grid-template-rows: 2.5em 1fr;
    /* Conflicto: Se mantiene el valor del Archivo 1 */
    width: 50%;
    margin: 0 auto;
    margin-top: 60px;
}

.container-restablecimiento-contra {
    width: 60%;
    margin: auto;
}

/* Estilos de Contenido Interno */
.contenido-turnos {
    display: grid;
    grid-template-columns: 1fr;
    padding: 30px;
    background-color: rgb(246, 249, 232);
    border-radius: 0px 0px 20px 20px;
    box-shadow: 1px 1px 5px black;
}

.contenido-login {
    /* Conflicto: Se prioriza la estructura del Archivo 1 */
    display: grid;
    grid-template-rows: 4fr 2fr;
    /* Conflicto: Se mantiene column-gap del Archivo 1 */
    column-gap: 30px;
    /* Conflicto: Se mantiene padding del Archivo 1 */
    padding: 10px;
    background-color: rgb(246, 249, 232);
    border-radius: 0px 0px 20px 20px;
    box-shadow: 2px 2px 14px rgba(0, 0, 0, 0.5);
}

.contenido-inputs-login {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    /* Se mantienen las propiedades del Archivo 1 como base */
    width: 90%;
    margin: auto;
    margin-bottom: 20px;

    /* Se añade la funcionalidad extra del Archivo 2 (Íconos de contraseña) */
    .bi-eye-fill {
        margin-left: 5px;
        color: black;
        cursor: pointer;
    }
    .container-input-pass {
        position: relative;
        display: flex;
        justify-content: space-between;
    }
    .hide-icon {
        opacity: 0;
    }
}

.container-email {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    background-color: rgb(246, 249, 232);
    border-radius: 15px;
    padding: 20px;
}

/* Estilos de Formulario y Controles */
.formulario-turno {
    background-color: rgb(244, 245, 230);
    row-gap: 30px;
    border-radius: 10px;
    padding: 0px;
}

.form-control:disabled, .form-control[readonly] {
    background-color: rgb(244, 245, 230) !important;
    opacity: 1;
}

.custom-control-input:checked ~ .custom-control-label::before {
    background-color: rgb(157, 196, 130) !important;
    border-color: rgb(157, 196, 130) !important;
}

.label_login {
    text-align: left;
    margin-top: 15px;
}

/* Estilos de Botones */
.boton-guardar-turno {
    background-color: rgb(157, 196, 130);
    transition: all 0.3s ease-in-out;
}

.boton-guardar-turno:hover {
    background-color: rgb(132, 163, 109);
}

.boton-volver-turno {
    background-color: rgb(226, 226, 228);
    transition: all 0.3s ease-in-out;
}

.boton-volver-turno:hover {
    background-color: rgb(172, 172, 172);
}

/* Estilos de Utilidad y Componentes */
.checkpoint {
    background-color: green;
    color: #ffcb00 !important;
    width: 20px;
    height: 20px;
    /* Conflicto: Se mantiene el margin-left del Archivo 1 */
    margin-left: 10px;
    opacity: 1 !important;
    position: static !important;
}

.checkpoint:focus{
    --tw-ring-color: #d6ab00 !important;
}

.leyenda-olvido-contra {
    margin-top: 10px;
    font-weight: bolder;
    color: rgb(115, 190, 149);
    &:hover {
        color: green;
        text-decoration: none;
    }
}

.toggle-icon {
    color: black !important;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #666;
}

.submit-login{
    background-color: rgb(225, 231, 169);
    border: none;
    border-radius: 10px;
    height: 50px;
    width: 200px;
    font-size: 22px;
    transition: background-color 0.3s;
    &:hover{
        background-color: rgb(95, 160, 129); 
    }
}

/* --- Página de olvidé mi contraseña --- */
.contenido-formulario-pass {
    display: grid;
    grid-template-rows: .5fr 2fr;
    column-gap: 30px;
    padding: 10px;
    background-color: rgb(246, 249, 232);
    border-radius: 0px 0px 20px 20px;
    box-shadow: 2px 2px 14px rgba(0, 0, 0, 0.5);
}

.enviar-enlace-bnt{
    font-size: 16px;
}

/* --- MEDIA QUERIES --- */

@media(max-width: 1200px) {
    /* Propiedad única del Archivo 2 */
    .container-login {
        width: 55%;
    }
}

@media(max-width: 1024px) {
    /* Propiedad única del Archivo 2 */
    .contenido-login {
        column-gap: 30px;
    }
}

@media(max-width: 768px) {
    .container-login {
        /* Se mantiene width 85% del Archivo 1 */
        width: 85%;
        /* Se agrega padding del Archivo 2 */
        padding: 10px;
    }

    .contenido-login {
        /* Se mantiene el grid-template-columns: 1fr de ambos */
        grid-template-columns: 1fr;
    }

    .container-restablecimiento-contra {
        width: 90%;
    }

    /* Propiedades únicas del Archivo 1 */
    .contenido-inputs-login {
        width: 90%;
    }

    .container-turnos {
        width: 100%;
    }
}

@media(max-width: 400px) {
    /* Propiedad del Archivo 2 más restrictiva */
    .container-login {
        width: 95%;
        padding: 5px;
    }
    
    .contenido-login {
        /* Se unifican los paddings (5px/10px 0px) */
        padding: 5px;
    }

    .container-email {
        flex-direction: column;
    }

    .btn-envia-mail {
        margin-top: 10px;
    }

    /* Propiedades únicas del Archivo 1 */
    .contenido-inputs-login {
        width: 100%;
    }

    .contenido-turnos {
        padding: 5px;
    }
}