/* Corpo centralizado e responsivo */
body {
    margin: 0;
    background-color: #ccc;
    font-family: Arial, sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

/* Container de login responsivo */
.login-container {
    background-color: white;
    padding: 1%;
    border-radius: 8px;
    box-shadow: 0 0 10px #888;
    width: 90%;
    max-width: 350px;     /* limita o tamanho em telas grandes */
    min-width: 150px;     /* garante legibilidade em telas pequenas */
    text-align: center;
    box-sizing: border-box;
}

/* Área da imagem responsiva e centralizada */
.logo {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}

.logo img {
    width: 50%;            /* ocupa todo o espaço disponível */
    height: auto;           /* mantém proporção */
    max-width: 80%;        /* não ultrapassa container */
    object-fit: contain;    /* mantém proporção interna */
}

/* Responsividade nos inputs e botão */
.login-container input[type="text"],
.login-container input[type="password"] {
    background-color: #ccc;
    width: 90%;
    padding: 10px 10px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;
    box-sizing: border-box;
}

.login-container button {
    background-color: #1a2a55;
    color: white;
    width: 80%;
    padding: 10px 10px;
    margin: 8px 0;
    border: none;
    border-radius: 4px;

    cursor: pointer;
}

.login-container button:hover {
    background-color: #2c3e70;
}

.error {
    color: red;
    margin-top: 10px;
}

.recuperar-senha {
    margin-top: 15px;
    font-size: 0.9em;
}

.recuperar-senha a {
    color: #1a2a55;
    text-decoration: none;
}

.recuperar-senha a:hover {
    text-decoration: underline;
}