/* PUBLIC/ASSETS/CSS/APP.CSS */
:root{
    --header-h: 92px;
    --menu-h: 48px;
}
body{
    background: #f6f7fb;
}
.band-header{
    height: var(--header-h);
    background: #ffffff;
    border-bottom: 1px solid rgba(0,0,0,.08);
    z-index: 1030;
}
.band-menu{
    height: var(--menu-h);
    background: #3f6f97;                               /* Alterado por Paulo (steelblue;)*/
    border-bottom: 1px solid rgba(0,0,0,.12);
    z-index: 1029;

    /* Banda azul não corta dropdown */
    overflow: visible !important;
}

.band-menu a, .band-menu .nav-link, .band-menu .dropdown-toggle{
    color: #fff !important;
}
.band-menu .dropdown-menu a{
    color: #212529 !important;
}
.page-wrap{
    padding-top: calc(var(--header-h) + var(--menu-h) + 12px);
}

/* Container intermediário para páginas mais estreitas */
.container-wide-960{
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

.container-wide-1140{
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

/* Container intermediário para páginas normais */
.container-wide-1320{
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

/* Container intermediário para páginas administrativas largas */
.container-wide-1490{
    max-width: 1490px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

/* Container intermediário para páginas administrativas largas */
.container-wide-1600{
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

/* Container intermediário para páginas administrativas largas */
.container-wide-1750{
    max-width: 1750px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

/* Container intermediário para páginas administrativas 100% largas */
.container-wide-1900{
    max-width: 1900px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 12px;
    padding-right: 12px;
}

.system-badge{
    font-size: 22px;
    font-weight: 1000;
    color: royalblue;           /* Paulo */
}

.system-title{
    font-weight: 700;
    letter-spacing: .2px;
    margin: 0;
    line-height: 1.15;
    color: royalblue;           /* Paulo */
}
.system-subtitle{
    margin: 0;
    color: #6c757d;
    line-height: 1.15;
    margin-top: -12px;
}
.tenant-line{
    margin: 0;
    color: green;
    font-weight: 600;
    line-height: 1.15;
}
.box3-label{
    margin: 0;
    line-height: 1.15;
}
.content-card{
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
}

/* Botões claros no menu precisam de texto escuro */
.band-menu .btn-light{
    color: #212529 !important;
}

/* scroll horizontal no miolo */
.band-menu .menu-scroll{
    overflow-x: auto !important;
    overflow-y: hidden !important;
    max-width: 100%;
}
.band-menu .menu-scroll .nav{
    flex-wrap: nowrap;
    white-space: nowrap;
}

/* Ajuste fino links da barra */
.band-menu .nav-link{
    line-height: 1.1;
    padding-top: .45rem;
    padding-bottom: .45rem;
}

/* Dropdown acima de tudo */
.band-menu .dropdown-menu{
    z-index: 5000 !important;
    border-radius: 12px;
    border: 1px solid rgba(0,0,0,.10);
    background: #5fb1f5;
    box-shadow: 0 18px 40px rgba(0,0,0,.18);
    min-width: 240px;
    margin-top: .35rem;
}

/* ===== ESTILO RBAC (COMPACTO) ===== */
.band-menu .dropdown-menu.rbac-dd{
    padding: .20rem !important;        /* MENOR */
    list-style: none !important;
}
.band-menu .dropdown-menu.rbac-dd .rbac-li{
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Grupo aberto: amarelo */
.band-menu .nav-link.dropdown-toggle.show,
.band-menu .dropdown.show > .nav-link.dropdown-toggle {
    color: #ffd65a !important;
    font-weight: 600;
    text-shadow: 0 1px 0 rgba(0,0,0,.25);
}

/* ITEM COMPACTO (VERTICAL) */
.band-menu .dropdown-item.rbac-item{
    display: flex;
    align-items: center;
    gap: .45rem !important;

    padding: .28rem .55rem !important; /* MUITO menor que o padrão */
    line-height: 1.05 !important;      /* aperta no vertical */
    font-size: .95rem;

    border-radius: 10px;
}

/* Coluna do ícone (fixa) */
.band-menu .dropdown-item.rbac-item .rbac-ico{
    width: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: .90;
}

/* Subitem: leve recuo */
.band-menu .dropdown-item.rbac-item.rbac-sub{
    padding-left: 1.60rem !important;
}

/* Hover */
.band-menu .dropdown-item.rbac-item:hover{
    background: #ffd65a;
    color: #212529;
}

/* Divider mais “fino” */
.band-menu .dropdown-divider.rbac-div{
    margin: .20rem .35rem !important;
    opacity: .35;
}

/* Indentação progressiva por nível */
.rbac-li.rbac-lvl-0 .rbac-item { padding-left: .75rem; }
.rbac-li.rbac-lvl-1 .rbac-item { padding-left: 1.50rem; }
.rbac-li.rbac-lvl-2 .rbac-item { padding-left: 2.25rem; }
.rbac-li.rbac-lvl-3 .rbac-item { padding-left: 3.00rem; }
.rbac-li.rbac-lvl-4 .rbac-item { padding-left: 3.75rem; }

/* (Opcional) deixa o ícone sempre alinhado, e recua mais o texto */
.rbac-item .rbac-ico { width: 1.25rem; display: inline-flex; justify-content: center; }

/* =========================================================
   INDENTAÇÃO RBAC POR NÍVEL (SUPORTE NÍVEL 3,4,5...)
   ========================================================= */

/* Nível raiz (sem recuo extra) */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-0 .rbac-item{
    padding-left: .55rem !important;
}

/* Nível 1 */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-1 .rbac-item{
    padding-left: 1.60rem !important;   /* mantém teu padrão atual */
}

/* Nível 2  ← ESTE É O CASO DOS FILHOS DO 29 */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-2 .rbac-item{
    padding-left: 2.60rem !important;
}

/* Nível 3 (caso cresça mais no futuro) */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3 .rbac-item{
    padding-left: 3.60rem !important;
}

/* Nível 4 */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4 .rbac-item{
    padding-left: 4.60rem !important;
}

/* =========================================================
   RBAC "TREE LOOK": linha vertical + bolinha (corp style)
   (somente CSS, sem mexer no HTML)
   ========================================================= */

/* garante base para pseudo-elementos */
.band-menu .dropdown-menu.rbac-dd .rbac-li{
    position: relative;
}

/* alinhamento: reserva um "corredor" para a árvore
   OBS: ajuste fino se teu layout mudar muito */
.band-menu .dropdown-menu.rbac-dd .rbac-li[class*="rbac-lvl-"] .rbac-item{
    position: relative;
}

/* ---- Linha vertical por nível (do lvl-1 em diante) ----
   A linha fica no "corredor" antes do texto.
*/
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-1::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-2::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4::before{
    content: "";
    position: absolute;
    top: .10rem;
    bottom: .10rem;
    width: 1px;
    opacity: .55;
    background: rgba(33, 37, 41, .35); /* cinza escuro translúcido */
}

/* posição da linha por nível (tem que casar com teu padding-left) */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-1::before{ left: 1.05rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-2::before{ left: 2.05rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3::before{ left: 3.05rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4::before{ left: 4.05rem; }

/* ---- Bolinha (nó) antes do item, do lvl-1 em diante ---- */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-1 .rbac-item::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-2 .rbac-item::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3 .rbac-item::before,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4 .rbac-item::before{
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .85);          /* bolinha clara */
    border: 1px solid rgba(33, 37, 41, .30);       /* contorno suave */
    box-shadow: 0 1px 0 rgba(0,0,0,.10);
}

/* posição da bolinha por nível */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-1 .rbac-item::before{ left: .82rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-2 .rbac-item::before{ left: 1.82rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3 .rbac-item::before{ left: 2.82rem; }
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4 .rbac-item::before{ left: 3.82rem; }

/* ---- Efeito no hover: nó “acende” e linha dá uma destacada ---- */
.band-menu .dropdown-menu.rbac-dd .rbac-li:hover::before{
    opacity: .85;
    background: rgba(33, 37, 41, .45);
}
.band-menu .dropdown-menu.rbac-dd .rbac-li:hover .rbac-item::before{
    background: rgba(255, 214, 90, .95);           /* amarelo hover */
    border-color: rgba(33, 37, 41, .35);
}

/* ---- Opcional: reduzir um pouquinho a opacidade dos itens muito profundos ---- */
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-3 .rbac-item,
.band-menu .dropdown-menu.rbac-dd .rbac-li.rbac-lvl-4 .rbac-item{
    opacity: .95;
}

/*===== Remove a pequena combo do google tradutor ao lado das bandeirinhas ======= */

/* Esconde o widget padrão */
.goog-te-gadget {
    display: none !important;
}

/*====== Esconde a barra superior do google tradutor quando de uma tradução ======= */

body > .skiptranslate,
.goog-te-banner-frame,
.goog-te-gadget-icon {
    display: none !important;
}

body {
    top: 0 !important;
}

