/* ============================================================
   BremenCred — Tema "preto profundo + branco" (clean profissional)
   Sobrescreve as variáveis do Velzon depois do app.min.css
   ============================================================ */

:root {
    /* Acento dourado da marca (combina com a logo) */
    --bc-gold: #c9a14a;
    --bc-gold-soft: rgba(201, 161, 74, 0.12);

    /* Pretos profundos da identidade */
    --bc-black: #0a0a0a;
    --bc-elevated: #141414;
    --bc-border-dark: #1f1f1f;

    /* Texto sobre fundo escuro */
    --bc-on-dark: #f5f5f5;
    --bc-on-dark-muted: #a8a8a8;
}

/* ---- Sidebar (vertical menu) ------------------------------- */
[data-sidebar="dark"] {
    --vz-vertical-menu-bg-dark:        var(--bc-black);
    --vz-vertical-menu-item-color:     var(--bc-on-dark-muted);
    --vz-vertical-menu-item-hover-color:        var(--bc-gold);
    --vz-vertical-menu-item-active-color:       var(--bc-gold);
    --vz-vertical-menu-sub-item-color:          var(--bc-on-dark-muted);
    --vz-vertical-menu-sub-item-hover-color:    #ffffff;
    --vz-vertical-menu-sub-item-active-color:   var(--bc-gold);
    --vz-vertical-menu-title-color:             #6e6e6e;
    --vz-vertical-menu-item-bg-color-dark:      transparent;
    --vz-vertical-menu-item-active-bg-color-dark: rgba(201, 161, 74, 0.10);
    --vz-vertical-menu-box-shadow-active-dark:  none;
    --vz-vertical-menu-icon-color:              #8a8a8a;
}

/* Garantir o fundo preto puro mesmo se algum seletor mais específico vencer */
[data-sidebar="dark"] .app-menu,
[data-sidebar="dark"] .navbar-menu,
[data-sidebar="dark"] .navbar-brand-box {
    background-color: var(--bc-black) !important;
    border-right: 1px solid var(--bc-border-dark);
}

/* Itens do menu */
[data-sidebar="dark"] .navbar-nav .nav-link {
    color: var(--bc-on-dark-muted);
    transition: color .15s ease, background-color .15s ease;
    border-radius: 6px;
}
[data-sidebar="dark"] .navbar-nav .nav-link i {
    color: #8a8a8a;
}
[data-sidebar="dark"] .navbar-nav .nav-link:hover {
    color: #ffffff;
    background-color: rgba(255, 255, 255, 0.04);
}
[data-sidebar="dark"] .navbar-nav .nav-link:hover i {
    color: var(--bc-gold);
}
[data-sidebar="dark"] .navbar-nav .nav-link.active {
    color: var(--bc-gold) !important;
    background-color: var(--bc-gold-soft) !important;
    box-shadow: inset 2px 0 0 var(--bc-gold);
}
[data-sidebar="dark"] .navbar-nav .nav-link.active i {
    color: var(--bc-gold) !important;
}
[data-sidebar="dark"] .menu-title span {
    color: #5a5a5a;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 11px;
}

/* ---- Topbar (header) -------------------------------------- */
[data-topbar="dark"] {
    --vz-header-bg:           var(--bc-black);
    --vz-header-item-color:   var(--bc-on-dark);
}
[data-topbar="dark"] #page-topbar {
    background-color: var(--bc-black) !important;
    border-bottom: 1px solid var(--bc-border-dark);
    box-shadow: none;
}
[data-topbar="dark"] .topnav-hamburger,
[data-topbar="dark"] .header-item {
    color: var(--bc-on-dark) !important;
}
[data-topbar="dark"] .topnav-hamburger:hover {
    background-color: rgba(255,255,255,0.06);
}
[data-topbar="dark"] .btn-topbar {
    color: var(--bc-on-dark);
}

/* ---- Body / conteúdo (claro, clean) ----------------------- */
body {
    background-color: #f6f7f9;
    color: #1a1a1a;
}
.main-content {
    background-color: #f6f7f9;
}

/* Cards sem sombra pesada — apenas borda sutil */
.card {
    border: 1px solid #e7e9ec;
    box-shadow: none;
    border-radius: 8px;
}
.card-header {
    background-color: #ffffff;
    border-bottom: 1px solid #eef0f2;
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-weight: 600;
}

/* Tabelas */
.table {
    --vz-table-bg: transparent;
    --vz-table-color: #1a1a1a;
    --vz-table-hover-bg: #fafafa;
    --vz-table-border-color: #eef0f2;
}
.table > :not(caption) > * > * {
    padding: 0.85rem 0.75rem;
}
.table-light, .table thead.table-light th, .table thead th {
    background-color: #f8f9fa !important;
    color: #4a4a4a !important;
    border-bottom: 1px solid #e7e9ec !important;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.04em;
}

/* ---- Botões ----------------------------------------------- */
/* Primário = preto profundo (não azul Velzon) */
.btn-primary {
    --vz-btn-bg: var(--bc-black);
    --vz-btn-border-color: var(--bc-black);
    --vz-btn-hover-bg: #1f1f1f;
    --vz-btn-hover-border-color: #1f1f1f;
    --vz-btn-active-bg: #2a2a2a;
    --vz-btn-active-border-color: #2a2a2a;
    --vz-btn-disabled-bg: #404040;
    --vz-btn-disabled-border-color: #404040;
}
.btn-outline-primary {
    --vz-btn-color: var(--bc-black);
    --vz-btn-border-color: var(--bc-black);
    --vz-btn-hover-bg: var(--bc-black);
    --vz-btn-hover-border-color: var(--bc-black);
    --vz-btn-active-bg: var(--bc-black);
}

/* Botão "gold" (acento da marca) — usar com .btn-gold */
.btn-gold {
    --vz-btn-color: #1a1a1a;
    --vz-btn-bg: var(--bc-gold);
    --vz-btn-border-color: var(--bc-gold);
    --vz-btn-hover-color: #1a1a1a;
    --vz-btn-hover-bg: #d8b15a;
    --vz-btn-hover-border-color: #d8b15a;
}

/* Links e foco no acento gold */
a { color: var(--bc-black); }
a:hover { color: var(--bc-gold); }

.form-control:focus, .form-select:focus {
    border-color: var(--bc-gold);
    box-shadow: 0 0 0 0.15rem var(--bc-gold-soft);
}

/* ---- Badges --------------------------------------------- */
.badge.bg-primary { background-color: var(--bc-black) !important; color: #fff !important; }

/* ---- Modais / dropdowns: borda sutil ------------------- */
.modal-content { border: 1px solid #e7e9ec; border-radius: 10px; }
.modal-header { border-bottom: 1px solid #eef0f2; }
.modal-footer { border-top: 1px solid #eef0f2; }
.dropdown-menu { border: 1px solid #e7e9ec; box-shadow: 0 6px 24px rgba(0,0,0,0.06); }

/* ---- Tela de login: fundo preto, card branco ------------ */
.auth-page-wrapper, body.auth-bg, .auth-page-content {
    background-color: var(--bc-black) !important;
}
/* Remove resíduos do template Velzon (imagem teal, overlay e onda branca)
   que brigavam com o fundo preto da marca e davam aspecto "quebrado". */
.auth-page-wrapper .auth-one-bg-position {
    display: none !important;
}
.auth-page-content .card {
    border: 1px solid #ececec;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.18);
}
.auth-page-content h5 { color: #1a1a1a; }
.auth-page-content .text-white-50,
.auth-page-content .text-muted { color: var(--bc-on-dark-muted) !important; }

/* Scrollbars discretos no sidebar */
[data-sidebar="dark"] #scrollbar::-webkit-scrollbar { width: 6px; }
[data-sidebar="dark"] #scrollbar::-webkit-scrollbar-thumb { background: #2a2a2a; border-radius: 3px; }
[data-sidebar="dark"] #scrollbar::-webkit-scrollbar-track { background: transparent; }

/* Remover gradientes do tema antigo no header se vierem */
#page-topbar { background-image: none !important; }

/* ---- Header: limpar resíduos azuis Velzon -------------- */
[data-topbar="dark"] .btn-ghost-secondary,
[data-topbar="dark"] .btn-topbar {
    color: #d8d8d8 !important;
}
[data-topbar="dark"] .btn-ghost-secondary:hover,
[data-topbar="dark"] .btn-topbar:hover {
    background-color: rgba(255,255,255,0.06) !important;
    color: #ffffff !important;
}

/* Bloco do usuário (dropdown header): remove azul Velzon */
.topbar-user,
[data-topbar="dark"] .topbar-user {
    --vz-topbar-user-bg: transparent;
    --vz-topbar-user-bg-dark: transparent;
    background-color: transparent !important;
}
[data-topbar="dark"] .topbar-user:hover {
    background-color: rgba(255,255,255,0.04) !important;
}

/* Nome do usuário e subtexto no header */
[data-topbar="dark"] .user-name-text,
.topbar-user .user-name-text { color: #f5f5f5 !important; }
[data-topbar="dark"] .user-name-sub-text,
.topbar-user .user-name-sub-text { color: #a8a8a8 !important; }
[data-topbar="dark"] .topbar-user .btn { color: #f5f5f5; }

/* Breadcrumbs (page title): preto + dourado */
.breadcrumb-item a { color: #1a1a1a; text-decoration: none; }
.breadcrumb-item a:hover { color: var(--bc-gold); }
.breadcrumb-item.active { color: #6e6e6e; }
.page-title-box h4 { color: #1a1a1a; font-weight: 600; }

/* Header das notificações: estava .bg-primary (azul Velzon) -> preto */
.dropdown-head.bg-primary {
    background: var(--bc-black) !important;
    background-image: none !important;
}
.dropdown-head.bg-primary h6,
.dropdown-head.bg-primary .text-white { color: #ffffff !important; }
.dropdown-head .badge.badge-soft-light {
    background-color: rgba(255,255,255,0.12) !important;
    color: #ffffff !important;
}

/* Avatar do usuário: borda dourada sutil em vez de azul */
.header-profile-user {
    border: 2px solid var(--bc-gold);
    padding: 1px;
    background: var(--bc-black);
}

/* Dropdown items do user: hover dourado suave */
.topbar-user .dropdown-menu .dropdown-item:hover,
.topbar-user .dropdown-menu .dropdown-item:focus {
    background-color: var(--bc-gold-soft);
    color: #1a1a1a;
}
.topbar-user .dropdown-header { color: #6e6e6e; font-weight: 600; }

/* Badge de notificação: usa danger (red) - pode trocar por gold se quiser */
.topbar-badge { border: 2px solid var(--bc-black); }

/* Avatares de notificação ainda em info/warning soft - mantém OK */
