/**
 * Skin não-produção do Backpack (menu, área central, login/registro).
 * Cor de fundo: azul escuro. Texto do menu: claro (data-menu-theme=dark no aside).
 * Ver config/backpack/theme-tabler.php ($nxBackpackNonprodSkin, body nx-nonprod-panel).
 */
body.nx-nonprod-panel {
    --nx-nonprod-bg: #0f2744;
    --nx-nonprod-text: rgba(255, 255, 255, 0.92);
    --nx-nonprod-text-soft: rgba(255, 255, 255, 0.78);
}

aside.navbar.navbar-vertical.bg-nx-nonprod-sidebar {
    background-color: var(--nx-nonprod-bg) !important;
}

/* Área central + rodapé */
body.nx-nonprod-panel .page-wrapper,
body.nx-nonprod-panel .page-body,
body.nx-nonprod-panel .page-body > main,
body.nx-nonprod-panel .page-body .container-fluid.animated {
    background-color: var(--nx-nonprod-bg) !important;
}

body.nx-nonprod-panel footer.footer,
body.nx-nonprod-panel footer.app-footer {
    background-color: var(--nx-nonprod-bg) !important;
    color: var(--nx-nonprod-text-soft) !important;
}

body.nx-nonprod-panel footer.footer a,
body.nx-nonprod-panel footer.app-footer a {
    color: var(--nx-nonprod-text) !important;
}

/* Breadcrumbs e títulos fora do card ficam legíveis no fundo azul */
body.nx-nonprod-panel .page-body .breadcrumb,
body.nx-nonprod-panel .page-body .breadcrumb-item,
body.nx-nonprod-panel .page-body .breadcrumb-item a {
    color: var(--nx-nonprod-text-soft) !important;
}

body.nx-nonprod-panel .page-body .breadcrumb-item.active {
    color: var(--nx-nonprod-text) !important;
}

body.nx-nonprod-panel .page-body h1,
body.nx-nonprod-panel .page-body h2,
body.nx-nonprod-panel .page-body h2 small,
body.nx-nonprod-panel .page-body h3 {
    color: var(--nx-nonprod-text) !important;
}

/* Menu e submenu: texto claro */
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar .navbar-brand a,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.nav-link,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar .nav-link,
aside.navbar.bg-nx-nonprod-sidebar .navbar-brand a,
aside.navbar.bg-nx-nonprod-sidebar a.nav-link,
aside.navbar.bg-nx-nonprod-sidebar .nav-link {
    color: var(--nx-nonprod-text) !important;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.nav-link:hover,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.nav-link:focus,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar .navbar-brand a:hover,
aside.navbar.bg-nx-nonprod-sidebar a.nav-link:hover,
aside.navbar.bg-nx-nonprod-sidebar a.nav-link:focus,
aside.navbar.bg-nx-nonprod-sidebar .navbar-brand a:hover {
    color: #fff !important;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar .nav-separator,
aside.navbar.bg-nx-nonprod-sidebar .nav-separator {
    color: var(--nx-nonprod-text) !important;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar .dropdown-header,
aside.navbar.bg-nx-nonprod-sidebar .dropdown-header {
    color: var(--nx-nonprod-text) !important;
    opacity: 1;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item,
aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item {
    color: var(--nx-nonprod-text) !important;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item:hover,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item:focus,
[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item.active,
aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item:hover,
aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item:focus,
aside.navbar.bg-nx-nonprod-sidebar a.dropdown-item.active {
    color: #fff !important;
}

aside.navbar.bg-nx-nonprod-sidebar .nav-icon,
aside.navbar.bg-nx-nonprod-sidebar .nav-link i,
aside.navbar.bg-nx-nonprod-sidebar .dropdown-item i,
aside.navbar.bg-nx-nonprod-sidebar .dropdown-header i {
    color: var(--nx-nonprod-text) !important;
}

aside.navbar.bg-nx-nonprod-sidebar .sidebar-toggler i {
    color: var(--nx-nonprod-text) !important;
}

aside.navbar.bg-nx-nonprod-sidebar .navbar-collapse .dropdown-toggle::after {
    color: var(--nx-nonprod-text) !important;
}

[data-menu-theme='dark'] aside.navbar.bg-nx-nonprod-sidebar a:not(.btn):hover {
    color: #fff !important;
}

/* Telas de autenticação (layout auth: mesmo classes.body → nx-nonprod-panel) */
body.nx-nonprod-panel .page.page-center {
    min-height: 100vh;
    background-color: var(--nx-nonprod-bg) !important;
}

/* Layout cover (login/register): coluna do formulário */
body.nx-nonprod-panel .row.g-0.flex-fill {
    min-height: 100vh;
}

body.nx-nonprod-panel .row.g-0.flex-fill > .col-12.col-lg-6.col-xl-4.border-top-wide {
    background-color: var(--nx-nonprod-bg) !important;
    border-color: rgba(255, 255, 255, 0.22) !important;
}

body.nx-nonprod-panel .auth-logo-container,
body.nx-nonprod-panel .auth-logo-container a {
    color: var(--nx-nonprod-text) !important;
}

/* Links abaixo do card (ex.: Registrar / Voltar ao login) — fora do .card */
body.nx-nonprod-panel .page.page-center > .container > .text-muted,
body.nx-nonprod-panel .page.page-center > .container > .text-muted a,
body.nx-nonprod-panel .page.page-center > .container.container-normal .text-muted,
body.nx-nonprod-panel .page.page-center > .container.container-normal .text-muted a {
    color: var(--nx-nonprod-text-soft) !important;
}

body.nx-nonprod-panel .page.page-center > .container > .text-muted a:hover,
body.nx-nonprod-panel .page.page-center > .container.container-normal .text-muted a:hover {
    color: #fff !important;
}

body.nx-nonprod-panel .row.g-0.flex-fill .text-muted,
body.nx-nonprod-panel .row.g-0.flex-fill .text-muted a {
    color: var(--nx-nonprod-text-soft) !important;
}

body.nx-nonprod-panel .row.g-0.flex-fill .text-muted a:hover {
    color: #fff !important;
}

/* Login/register layout illustration: link fora do card fica dentro de .container-tight */
body.nx-nonprod-panel .page.page-center .container-tight > .text-muted,
body.nx-nonprod-panel .page.page-center .container-tight > .text-muted a {
    color: var(--nx-nonprod-text-soft) !important;
}

body.nx-nonprod-panel .page.page-center .container-tight > .text-muted a:hover {
    color: #fff !important;
}
