/* Tela de fundo azul */
body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: Arial, sans-serif;
    background: linear-gradient(to bottom, #4a90e2, #357ABD);
}

/* Container do login centralizado */
body {
    display: flex;
    justify-content: center;
    align-items: center; /* centraliza verticalmente no PC */
    min-height: 100vh;
    overflow-y: hidden; /* remove scroll desnecessário no PC */
    padding: 0; /* sem padding no PC */
}

/* Caixa do login */
.login-box {
    background-color: #fff;
    padding: 25px;
    border-radius: 15px;
    box-shadow: 0 6px 15px rgba(0,0,0,0.3);
    width: 280px;
    max-width: 100%; /* nunca ultrapassa a tela */
    text-align: center;
    box-sizing: border-box; /* evita overflow interno */
    margin: auto; /* centraliza horizontalmente */
}

/* Inputs */
.login-box input[type="text"],
.login-box input[type="password"] {
    width: 100%;
    padding: 10px 12px;
    margin: 8px 0 15px 0;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 14px;
    box-sizing: border-box;
}

/* Botão */
.login-box button {
    width: 100%;
    padding: 10px;
    background-color: #357ABD;
    border: none;
    border-radius: 8px;
    color: white;
    font-size: 15px;
    cursor: pointer;
    transition: 0.3s;
}


.login-box button:hover {
    background-color: #2a5d9f;
}


/* Responsividade para telas pequenas */
@media screen and (max-width: 500px) {
    body {
        align-items: flex-start; /* permite rolagem vertical com teclado */
        padding: 5vh 0;          /* espaço superior e inferior */
        overflow-y: auto;        /* scroll apenas no celular */
    }

    .login-box {
        width: 75%; /* formulário menor no celular */
        padding: 15px;
    }

    .login-box input[type="text"],
    .login-box input[type="password"] {
        font-size: 16px;
        padding: 12px;
    }

    .login-box button {
        font-size: 16px;
        padding: 12px;
    }
}
