/* assets/css/pages/login.css */

.login-body {
    display: flex;
    flex-direction: column;
/* Alterado para coluna para o footer funcionar */
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    font-family: 'Poppins', sans-serif;
    
    /* FUNDO: Gradiente profissional escuro */
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    color: #f1f5f9;
    padding: 40px 20px; /* Padding para telas menores */
    position: relative;
    box-sizing: border-box;
}

.login-card {
    width: 100%;
    max-width: 450px; /* Um pouco mais largo para melhor proporção */
    padding: 40px 45px;
/* Mais padding lateral */
    text-align: center;
    background-color: var(--card-bg);
    border-radius: var(--border-radius);
/* Sombra mais suave e profissional */
    box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.2);
    border: 1px solid var(--border-color);
    
    /* Borda superior sutil para branding */
    border-top: 4px solid var(--primary-color);
    
    z-index: 10;
    margin-bottom: auto; /* Empurra o card para cima */
    margin-top: auto;
/* Empurra o card para baixo (centraliza verticalmente) */
}

.login-header {
    margin-bottom: 25px;
/* Mais espaço antes do formulário */
}

.login-header .logo {
    height: 55px;
/* Um pouco maior */
    margin-bottom: 20px;
}

.login-header h2 {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-color-dark);
    margin-bottom: 8px;
}

.login-header p {
    color: var(--text-color-light);
    margin-top: 5px;
    font-size: 0.95rem;
    line-height: 1.5;
}

/* Herda de forms.css, mas garantimos o espaçamento */
#loginForm .input-group,
#requestResetForm .input-group,
#resetPasswordForm .input-group {
    margin-bottom: 22px;
    text-align: left;
}

/* Estilos para o link "Esqueci minha senha" dentro do card */
.login-footer {
    margin-top: 25px;
}

.login-footer a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.9rem;
}

.login-footer a:hover {
    text-decoration: underline;
}

/* --- INÍCIO DA ATUALIZAÇÃO: NOVO FOOTER INSTITUCIONAL (COM TEXTO) --- */
.page-footer {
    width: 100%;
    padding: 25px 20px;
    text-align: center;
    z-index: 5;
    margin-top: 40px; /* Espaço entre o card e o footer */
    flex-shrink: 0;
}

.footer-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
/* Permite que os links quebrem em telas pequenas */
    gap: 20px 35px;
/* Espaço vertical e horizontal */
    margin-bottom: 15px;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 0.95rem;
/* Tamanho do texto de contato */
    font-weight: 500;
    
    display: inline-flex;
/* Alinha ícone e texto */
    align-items: center;
    gap: 10px;
/* Espaço entre ícone e texto */
    
    transition: color 0.2s ease, transform 0.2s ease;
}

.footer-links a i {
    font-size: 1.4rem; /* Tamanho do ícone */
    width: 22px;
/* Largura fixa para alinhamento */
    text-align: center;
    margin-top: -2px;
/* Ajuste fino vertical do ícone */
}

.footer-links a:hover {
    color: #ffffff;
    transform: translateY(-2px);
}

.footer-copyright {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.6;
}

.footer-copyright p {
    margin: 0;
}
/* --- FIM DA ATUALIZAÇÃO --- */


/* --- INÍCIO DA CORREÇÃO DE VISIBILIDADE (NOVO) --- */

/* Garante que os labels (ex: 'Nova Senha') sejam visíveis */
.login-card .input-group label {
    /* Usa a mesma cor dos parágrafos do header, que é clara */
    color: var(--text-color-light, #cbd5e1); 
    opacity: 1.0;
    font-weight: 500;
}

/* Estilo base para mensagens de feedback */
.feedback-message {
    padding: 12px 15px;
    border-radius: var(--border-radius, 8px);
    margin-bottom: 20px;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: center;
    border: 1px solid transparent;
}

/* Mensagem de SUCESSO (ex: "Link enviado...") */
.feedback-message.success {
    /* Fundo verde escuro/sutil, cor de texto clara */
    background-color: var(--success-bg, #103b2a); 
    color: var(--success-text, #d1fae5); 
    border-color: var(--success-border, #1f7850);
}

/* Mensagem de ERRO (ex: "Link inválido...") */
.feedback-message.error {
    /* Fundo vermelho escuro/sutil, cor de texto clara */
    background-color: var(--danger-bg, #401b22); 
    color: var(--danger-text, #fee2e2); 
    border-color: var(--danger-border, #a03044);
}
/* --- FIM DA CORREÇÃO DE VISIBILIDADE (NOVO) --- */

