/* ===== ESTILOS DA PÁGINA DE LOGIN ===== */

/* Container principal de login */
.login-box {
    background-color: white;
    border-radius: 10px;
    overflow: hidden;
    max-width: 400px;
    width: 100%;
    margin: 1rem;
}

/* Imagem no topo do login */
.login-img {
    width: 100%;
    height: auto;
    display: block;
}

/* Área do formulário */
.form-area {
    padding: 2rem;
}

/* Ajustes do input group */
.form-area .input-group {
    border-radius: 5px;
    overflow: hidden;
}

/* Ajustes do botão de toggle senha */
.form-area .btn-outline-secondary {
    border-color: #ced4da;
}

.form-area .btn-outline-secondary:hover {
    background-color: #f8f9fa;
    border-color: #ced4da;
    color: #495057;
}

/* Mensagem de erro */
#mensagemErro {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    max-width: 90%;
    width: auto;
    text-align: center;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        top: -50px;
        opacity: 0;
    }
    to {
        top: 20px;
        opacity: 1;
    }
}

/* ===== RESPONSIVIDADE MOBILE ===== */
@media (max-width: 767px) {
    .login-box {
        max-width: 100%;
        margin: 0.5rem;
        border-radius: 8px;
    }

    .form-area {
        padding: 1.5rem;
    }

    .form-area .form-control {
        font-size: 16px; /* Previne zoom no iOS */
    }

    .form-area .btn {
        padding: 0.75rem;
        font-size: 1rem;
    }

    #mensagemErro {
        max-width: 95%;
        font-size: 0.875rem;
        padding: 0.75rem;
    }
}

/* ===== RESPONSIVIDADE TABLET ===== */
@media (min-width: 768px) and (max-width: 991px) {
    .login-box {
        max-width: 450px;
    }
}

/* ===== RESPONSIVIDADE TELAS PEQUENAS (320px) ===== */
@media (max-width: 375px) {
    .form-area {
        padding: 1rem;
    }

    .form-area .btn {
        font-size: 0.9rem;
    }
}

/* ===== AJUSTES PARA LANDSCAPE MOBILE ===== */
@media (max-height: 500px) and (orientation: landscape) {
    .login-box {
        max-height: 90vh;
        overflow-y: auto;
    }

    .form-area {
        padding: 1rem;
    }

    .d-flex.vh-100 {
        min-height: 100vh;
        padding: 1rem 0;
    }
}
