/* ========= BASE ========= */
/* O _Layout usa: <body class="d-flex flex-column min-vh-100"> */
html, body {
    height: 100%;
    margin: 0;
    font-family: "Segoe UI", Roboto, Arial, sans-serif;
    color: #333;
}

/* Fundo com o logo (fixo e sem interferir no fluxo) */
body {
    background: url('/images/logos/BackGround.png') no-repeat center center fixed;
    background-size: contain; /* mantém proporção do logo */
    background-color: #f8f9fa; /* fallback */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ========= NAVBAR ========= */
.navbar {
    padding: 0.75rem 1rem;
}

.navbar-brand {
    font-weight: 600;
    color: #0d6efd !important;
}

.nav-link {
    font-weight: 500;
}

    .nav-link.active,
    .nav-link:hover {
        color: #0a58ca !important;
    }

/* ========= LAYOUT ========= */
.container {
    max-width: 960px;
}

/* Área de auth: centraliza verticalmente sem empurrar o footer */
.auth-center {
    min-height: 75vh; /* altura útil, sem forçar 100vh */
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Espaço de segurança antes do footer (use em páginas mais longas) */
.mb-footer-space {
    margin-bottom: 3rem; /* evita que conteúdo “encoste” no footer */
}

/* ========= CARD PADRÃO (login/register) ========= */
.login-card {
    width: 100%;
    max-width: 720px; /* cabe login (420) e register (720) */
    margin: 2rem auto;
    padding: 2rem;
    background: rgba(255, 255, 255, 0.60); /* translúcido */
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 15px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

    .login-card.narrow {
        max-width: 420px; /* para telas simples (ex.: login) */
    }

    .login-card h2 {
        font-size: 1.5rem;
        font-weight: 600;
        margin-bottom: 1.25rem;
        text-align: center;
    }

    .login-card .form-label {
        font-weight: 500;
        margin-bottom: 0.25rem;
    }

    .login-card .btn {
        font-weight: 600;
        padding: 0.75rem;
        border-radius: 0.5rem;
    }

/* ========= FOOTER ========= */
/* Não fixe o footer; o flex do body posiciona via .mt-auto no _Layout */
.footer {
    background: #fff;
    border-top: 1px solid #e5e5e5;
    font-size: 0.9rem;
    position: static; /* reforço: nada de fixed */
    width: 100%;
}

/* ========= RESPONSIVIDADE ========= */
@media (max-width: 576px) {
    .auth-center {
        min-height: 70vh;
    }

    .login-card {
        margin: 1.25rem 1rem;
        padding: 1.25rem;
    }

    body {
        background-size: 85%;
    }
    /* logo um pouco menor no mobile */
}

/* ========= SAFEGUARDS ========= */
/* Evite regras que bagunçam o layout:
   footer { position: fixed; bottom:0; }     // faz o footer “dançar”
   main   { min-height: 100vh; }             // empurra o footer pra fora
   body   { overflow: hidden; }              // causa saltos no scroll
*/

/* ========= SALES – DESCRIPTION ========= */
/* Deixa o texto da descrição sempre em UPPERCASE na UI */
.mxp-description-upper {
    text-transform: uppercase;
}


