/* ========================================= */
/* ARQUIVO DE ESTILOS (auth.css) - VERSÃO MODERNA */
/* ========================================= */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap');

body.auth-page {
    font-family: 'Nunito', sans-serif;
    background-color: var(--cor-fundo);
    margin: 0;
    padding: 0;
    overflow: hidden; /* Evita barras de rolagem desnecessárias */
}

/* Container principal que usa Grid para dividir a tela */
.login-container {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Duas colunas de tamanho igual */
    height: 100vh;
    width: 100vw;
}

/* --- Coluna da Esquerda (Imagem) --- */
.login-image-section {
    background: linear-gradient(135deg, #4e73df 0%, #1cc88a 100%);
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    padding: 2rem;
    text-align: center;
}

.image-wrapper {
    max-width: 450px;
}

.login-image-section img {
    max-width: 100%;
    height: auto;
    border-radius: 1rem;
    margin-bottom: 2rem;
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}

.image-title {
    font-size: 2.5rem;
    font-weight: 700;
}

.image-subtitle {
    font-size: 1.1rem;
    opacity: 0.9;
}

/* --- Coluna da Direita (Formulário) --- */
.login-form-section {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--cor-fundo);
    padding: 2rem;
}

.auth-wrapper {
    width: 100%;
    max-width: 420px;
}

.auth-card {
    background: var(--cor-card-fundo);
    padding: 2.5rem;
    border-radius: 0.75rem;
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.07);
    border: 1px solid var(--cor-card-borda);
}

.auth-title {
    text-align: center;
    font-weight: 700;
    color: var(--cor-heading);
    margin-bottom: 1rem;
}

/* --- Estilos dos Elementos do Formulário --- */
.form-label {
    font-weight: 600;
}

.form-control {
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
}

.btn-primary {
    font-weight: 600;
    padding: 0.75rem !important;
    border-radius: 0.5rem;
    transition: background-color 0.2s;
}

.auth-links {
    text-align: center;
    margin-top: 1.5rem;
}

.auth-links a {
    font-size: 0.9rem;
    color: var(--cor-texto-muted);
    text-decoration: none;
    transition: color 0.2s;
}

.auth-links a:hover {
    color: var(--cor-link);
}

.nav-tabs .nav-link {
    font-weight: 600;
    color: var(--cor-texto-muted);
}

.nav-tabs .nav-link.active {
    color: var(--cor-link);
    border-color: #dddfeb #dddfeb var(--cor-card-fundo);
}

[data-theme="dark"] .nav-tabs .nav-link.active {
    border-color: var(--cor-card-borda) var(--cor-card-borda) var(--cor-card-fundo);
}


/* --- Responsividade para Celulares --- */
@media (max-width: 992px) {
    .login-container {
        grid-template-columns: 1fr; /* Uma coluna só */
    }

    .login-image-section {
        display: none; /* Esconde a coluna da imagem em telas menores */
    }

    .login-form-section {
        height: 100vh;
    }
}
/* Adicionar ao final do auth.css */
.login-image-section {
    background: linear-gradient(-45deg, #4e73df, #1cc88a, #36b9cc, #f6c23e);
    background-size: 400% 400%;
    animation: gradientBG 15s ease infinite;
}

@keyframes gradientBG {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}