/* ARQUIVO: style.css */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

:root {
    --primary-color: #57338B;
    --secondary-color: #A27EED;
    --background-color: #f0f2f5;
    --text-color: #333;
    --container-bg: #ffffff;
}

body {
    
    font-family: 'Roboto', sans-serif;
    background-color: var(--background-color);
    color: var(--text-color);
    margin: 0;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.container {
    background-color: var(--container-bg);
    padding: 2rem;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    width: 100%;
    max-width: 600px;
    text-align: center;
}

.logo { max-width: 180px; margin-bottom: 1rem; }
h1 { color: var(--primary-color); }
form { margin-top: 2rem; }
.input-group { margin-bottom: 1.25rem; text-align: left; }
.input-group label { display: block; margin-bottom: 0.5rem; font-weight: bold; }
.input-group input { width: 100%; padding: 0.8rem; border: 1px solid #ccc; border-radius: 5px; box-sizing: border-box; }
.input-group-checkbox { display: flex; align-items: center; justify-content: flex-start; margin-bottom: 1.5rem; }
.input-group-checkbox input { margin-right: 0.5rem; }
.input-group-checkbox a { color: var(--secondary-color); text-decoration: none; }
button { background: linear-gradient(90deg, var(--secondary-color), var(--primary-color)); color: white; padding: 1rem; border: none; border-radius: 5px; font-size: 1.1rem; cursor: pointer; width: 100%; transition: opacity 0.3s; }
button:hover { opacity: 0.9; }
footer { margin-top: 2rem; }
.ranking-link { display: inline-block; margin-bottom: 1rem; font-weight: bold; color: var(--primary-color); }

/* Estilos para Tabela de Ranking e Admin */
.ranking-table { width: 100%; border-collapse: collapse; margin-top: 1.5rem; }
.ranking-table th, .ranking-table td { padding: 0.8rem; border: 1px solid #ddd; }
.ranking-table th { background-color: var(--primary-color); color: white; }
.ranking-table tr:nth-child(even) { background-color: #f9f9f9; }
.ranking-table input { width: 90%; padding: 0.4rem; }