@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

body {
    background-color: #f0f2f5;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    font-family: 'Roboto', sans-serif;
}
.form-signin {
    background-color: #fff;
    padding: 60px;
    border-radius: 15px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
    width: 100%;
    max-width: 550px; 
}
.logo {
    width: 350px; /* Aumentado para um tamanho maior */
    height: auto; /* Garante que a altura seja ajustada proporcionalmente */
    margin: 0 auto 40px; /* Aumentado a margem inferior */
    display: block;
}
.form-floating {
    margin-bottom: 20px;
}
.form-floating label {
    color: #6c757d;
}
.form-control:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}
.btn-primary {
    font-size: 18px; /* Ligeiramente maior para combinar com o box maior */
    letter-spacing: 1.5px;
    padding: 12px 0; /* Aumentado para um toque mais substancial */
    border-radius: 25px; /* Mais arredondado */
    border: none;
    transition: all 0.3s ease;
}
.btn-primary:hover {
    background-color: #0056b3;
    box-shadow: 0 0 10px rgba(0,123,255,.5);
}
.checkbox label {
    font-size: 14px;
    color: #6c757d;
}
.form-footer {
    margin-top: 20px;
    font-size: 14px;
    color: #6c757d;
}

.password-icon {
    cursor: pointer;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.alert {
    width: 100%; /* Garante que o alerta ocupe toda a largura do container */
    margin-bottom: 20px; /* Espaçamento abaixo do alerta */
    text-align: center; /* Centraliza o texto do alerta */
}
