body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f3f3f3;
}

.container {
    max-width: 400px;
    margin: 80px auto;
    background-color: #fff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

h1, h2 {
    text-align: center;
}

h1 {
    color: #007bff; /* Azul */
}

h2 {
    color: #dc3545; /* Vermelho */
    font-size: 24px;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 20px;
}

label {
    display: block;
    margin-bottom: 8px;
    color: #666;
}

input[type="text"],
input[type="password"] {
    width: 100%;
    padding: 12px;
    border-radius: 20px; /* Adicionando um pouco de curvatura */
    border: 1px solid #ccc;
    transition: border-color 0.3s ease; /* Efeito de transição suave */
}

input[type="text"]:focus,
input[type="password"]:focus {
    border-color: #007bff; /* Mudando a cor da borda quando focado */
}

button {
    width: 100%;
    padding: 12px;
    color: #fff;
    border: none;
    border-radius: 20px; /* Adicionando um pouco de curvatura */
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s ease;
    background-color: #007bff; /* Cor de fundo padrão */
}

button:hover {
    background-color: #0056b3; /* Azul mais escuro */
}

/* Estilo para o fundo animado */
.background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: linear-gradient(45deg, #007bff, #dc3545); /* Gradiente de cores */
    animation: animateBackground 20s linear infinite; /* Animação */
}

@keyframes animateBackground {
    0% {
        background-position: 0% 50%; /* Posição inicial */
    }
    100% {
        background-position: 100% 50%; /* Posição final */
    }
}

/* Estilo para melhorar a aparência em dispositivos móveis */
@media (max-width: 768px) {
    .container {
        padding: 20px;
        margin: 0 auto; /* Centraliza horizontalmente */
        max-width: 80%; /* Limita a largura do container para uma melhor leitura */
        border-radius: 10px; /* Adiciona um leve arredondamento nas bordas do container */
        overflow: hidden; /* Oculta qualquer conteúdo que ultrapasse o container */
    }
    .form-group {
        width: calc(100% - 20px); /* Ajusta a largura dos inputs para compensar o padding do container */
    }
    .register-link {
        text-align: center;
        margin-top: 20px; /* Espaçamento superior */
    }
    .register-link p {
        margin-bottom: 10px; /* Espaçamento inferior */
    }
}

/* Estilo para o link de registro */
.register-link a {
    color: #007bff; /* Cor do link */
    text-decoration: none; /* Remove o sublinhado */
    transition: color 0.3s ease; /* Transição suave de cor */
}

.register-link a:hover {
    color: #0056b3; /* Cor do link ao passar o mouse */
}
/* Estilo para o botão "Escolher Arquivo" */
.upload-btn {
    display: inline-block;
    background-color: #007bff; /* Cor de fundo do botão */
    color: #fff; /* Cor do texto do botão */
    padding: 10px 20px; /* Espaçamento interno do botão */
    border: none;
    border-radius: 20px; /* Curvatura do botão */
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s ease; /* Transição suave da cor de fundo */
}

.upload-btn:hover {
    background-color: #0056b3; /* Cor de fundo do botão ao passar o mouse */
}

/* Estilo para o input de arquivo */
.upload-input {
    display: none; /* Oculta o input de arquivo nativo */
}

/* Estilo para o texto ao lado do botão */
.upload-text {
    margin-left: 10px; /* Espaçamento à esquerda */
    font-size: 16px;
    color: #666; /* Cor do texto */
}
