/* RESET E BASE */
* { box-sizing: border-box; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial; }
body { margin: 0; background: #0b0f14; color: #e7eef7; line-height: 1.5; overflow-x: hidden; }

/* --- ESTILO DAS TELAS DE LOGIN / CADASTRO / RESET --- */
/* Centraliza o formulário na tela */
body:has(.container) {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 20px;
}

.container {
    background: #121826;
    border: 1px solid #223048;
    border-radius: 14px;
    padding: 40px;
    width: 100%;
    max-width: 400px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5);
}

.container h1 {
    color: #f5b800;
    margin-top: 0;
    text-align: center;
    font-size: 24px;
}

.container label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    color: #b9c4d6;
}

.container input {
    width: 100%;
    padding: 12px;
    margin-bottom: 20px;
    background: #0b0f14;
    border: 1px solid #223048;
    border-radius: 8px;
    color: #fff;
    outline: none;
}

.container input:focus { border-color: #f5b800; }

.container button {
    width: 100%;
    padding: 14px;
    background: #f5b800;
    border: none;
    border-radius: 8px;
    color: #111;
    font-weight: 800;
    cursor: pointer;
    transition: 0.3s;
}

.container button:hover { background: #d4a000; }

.links {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    font-size: 13px;
}

.links a { color: #b9c4d6; text-decoration: none; }
.links a:hover { color: #f5b800; }

/* Mensagens de Alerta */
.flash {
    padding: 12px;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: 14px;
    text-align: center;
}
.flash.err { background: rgba(255, 80, 80, 0.1); color: #ff8080; border: 1px solid #ff8080; }
.flash.ok { background: rgba(80, 255, 80, 0.1); color: #80ff80; border: 1px solid #80ff80; }

/* --- ESTILO DO DASHBOARD E ANÚNCIOS (MANTIDO) --- */
.dashboard-grid {
    display: grid;
    grid-template-columns: 280px 1fr 280px;
    gap: 20px;
    max-width: 1600px;
    margin: 20px auto;
    padding: 0 20px;
}

.site-header {
    background: #121826;
    border-bottom: 1px solid #223048;
    padding: 16px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 1000;
}

/* --- AJUSTE DO BOTÃO DE SAIR --- */
.site-header .nav {
    display: flex;
    align-items: center;
}

.site-header .nav a { 
    background: rgba(255, 80, 80, 0.1); /* Fundo avermelhado transparente */
    color: #ff8080;                     /* Cor do texto */
    padding: 8px 18px; 
    border-radius: 8px; 
    font-weight: 700; 
    text-decoration: none; 
    transition: 0.3s;
    font-size: 14px;
    border: 1px solid rgba(255, 80, 80, 0.2);
}

.site-header .nav a:hover { 
    background: #ff8080;                /* Fundo sólido no hover */
    color: #111;                        /* Texto escuro no hover */
    box-shadow: 0 0 15px rgba(255, 80, 80, 0.3);
}

.brand b { color: #f5b800; font-size: 18px; }
.brand span { font-size: 11px; color: #b9c4d6; text-transform: uppercase; }

.top-ads { grid-column: 1 / -1; margin-bottom: 10px; }

.ad-container-top {
    background: #121826;
    border: 1px solid #223048;
    border-radius: 12px;
    min-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ad-card-vertical {
    background: #121826;
    border: 1px solid #223048;
    border-radius: 12px;
    padding: 10px;
    min-height: 600px;
    position: sticky;
    top: 100px;
}

.ad-label { display: block; font-size: 10px; color: #4b5563; text-transform: uppercase; text-align: center; margin-bottom: 8px; }

.main-card { background: #121826; border: 1px solid #223048; border-radius: 14px; padding: 24px; }

.site-footer { text-align: center; margin-top: 60px; padding: 40px; border-top: 1px solid #223048; color: #b9c4d6; font-size: 13px; }

@media (max-width: 1200px) {
    .dashboard-grid { grid-template-columns: 1fr; }
    .ad-card-vertical { min-height: 250px; position: static; }
}