/* Telas fora do sistema (entrar, esqueci a senha, redefinir): marca à esquerda, formulário à direita. */

.entrada {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    min-height: 100vh;
    background: var(--bg);
}

.entrada-marca {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
    padding: 48px clamp(24px, 5vw, 72px);
    background: var(--nx-ink);
    color: #fff;
}

.entrada-marca::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #2C2219;
    -webkit-mask: url("/img/nx-tile.png") 0 0 / 220px auto repeat;
    mask: url("/img/nx-tile.png") 0 0 / 220px auto repeat;
    pointer-events: none;
}

.entrada-marca > * { position: relative; }
.entrada-logo { width: 168px; height: auto; }
.entrada-marca .eyebrow { color: var(--nx-lime); }

.entrada-marca h1 {
    font-family: var(--font-display);
    font-stretch: 125%;
    font-weight: 900;
    font-size: clamp(36px, 4.6vw, 64px);
    line-height: .95;
    letter-spacing: -.02em;
    color: #fff;
    margin: 0 0 16px;
}

.entrada-marca p { max-width: 46ch; color: var(--nx-n300); font-size: 16px; margin: 0; }

.entrada-marca footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    font-size: 13px;
    color: var(--nx-n400);
}

.entrada-marca footer a { display: inline-flex; align-items: center; gap: 8px; color: var(--nx-n400); text-decoration: none; }

.entrada-form {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px 16px;
}

.login-card { width: 100%; max-width: 400px; }
.login-card h3 { font-size: 28px; line-height: 34px; font-weight: 800; margin: 0 0 4px; }
.login-card .text-muted { font-size: 15px; }
.login-card .form-label { font-size: 13px; }
.login-card .form-control { min-height: 48px; }
.login-card .btn-success { min-height: 52px; width: 100%; font-size: 16px; }
.login-card a { color: var(--text); font-weight: 800; text-decoration: none; }

@media (max-width: 860px) {
    .entrada { grid-template-columns: 1fr; }
    .entrada-marca { padding: 24px 16px; gap: 16px; }
    .entrada-marca h1, .entrada-marca p, .entrada-marca footer { display: none; }
    .entrada-marca .eyebrow { display: none; }
    .entrada-logo { width: 120px; }
}
