/* =========================================================
   CONECTA JOVEM — CORREÇÃO LOGIN DESKTOP
   Evita sobreposição entre Entrar, links e visitante.
========================================================= */

.auth-right{
    min-width:0;
    overflow-y:auto;
    overflow-x:hidden;
}

.auth-right form{
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:500px;
    margin:0;
}

.auth-right .campo{
    width:100%;
    margin-bottom:22px;
}

.auth-right .opcoes{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
    margin:0 0 20px;
    line-height:1.4;
}

.auth-right .opcoes label{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    white-space:nowrap;
}

.auth-right .opcoes input[type="checkbox"]{
    width:18px;
    height:18px;
    min-height:18px;
    flex:0 0 18px;
}

.auth-right .opcoes a{
    color:var(--primary);
    font-weight:700;
}

.auth-right form > button[type="submit"]{
    position:static !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:100% !important;
    min-height:52px;
    height:auto !important;
    margin:0 !important;
    flex:0 0 auto !important;
    transform:none;
}

.auth-right form > button[type="submit"]:hover{
    transform:translateY(-2px);
}

.auth-right #mensagemLogin{
    position:static !important;
    width:100%;
    margin:16px 0 0;
    flex:0 0 auto;
}

.auth-right .login-link{
    position:static !important;
    width:100%;
    margin:20px 0 0 !important;
    line-height:1.5;
}

.login-visitante{
    width:100%;
    max-width:500px;
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid #e5e7eb;
    text-align:center;
}

.login-visitante a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:#2563eb;
    font-weight:700;
    text-decoration:none;
}

.login-visitante a:hover{
    text-decoration:underline;
}

@media (max-width: 992px){
    .auth-right{
        min-height:100vh;
        overflow-y:auto;
    }
}

@media (max-width: 600px){
    .auth-right{
        padding:28px 18px !important;
    }

    .auth-right .opcoes{
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
    }

    .auth-right form,
    .login-visitante{
        max-width:none;
    }
}
