/* Painel de atendimento — suprime scroll do body quando o painel está ativo */
body:has(.pa-root) {
    overflow: hidden;
    height: 100vh;
}

/* Sidebar background — purple iCEV */
#nav-sidebar,
#nav-sidebar-inner {
    background: linear-gradient(160deg, #7A225E 0%, #5a1045 100%) !important;
    border-right-color: rgba(255, 255, 255, 0.1) !important;
}

/* Divisor do header interno */
#nav-sidebar-inner > div:first-child {
    border-bottom-color: rgba(255, 255, 255, 0.15) !important;
}

/* Links, textos e ícones do sidebar */
#nav-sidebar a,
#nav-sidebar span:not(.material-symbols-outlined),
#nav-sidebar p,
#nav-sidebar li {
    color: rgba(255, 255, 255, 0.85) !important;
}

/* App group headers — label de seção (uppercase, mudo) */
/* Suporta tanto o formato antigo (h2 > a) quanto o novo SIDEBAR.navigation (h2 direto) */
#nav-sidebar-apps h2 a,
#nav-sidebar h2 {
    text-transform: uppercase !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.1em !important;
    font-weight: 700 !important;
    color: rgba(255, 255, 255, 0.5) !important;
    margin-top: 1.25rem !important;
    margin-bottom: 2px !important;
    pointer-events: none;
}

/* Separador visual acima de cada grupo de app */
#nav-sidebar-apps .module + .module {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding-top: 2px !important;
}

/* Links de features — itens navegáveis */
#nav-sidebar-apps ol ol a {
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    padding-left: 0.5rem !important;
    border-left: 2px solid transparent;
    transition: border-color 0.15s, background 0.15s !important;
}

#nav-sidebar-apps ol ol a:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border-left-color: rgba(255, 255, 255, 0.5) !important;
}

/* Item ativo de feature */
#nav-sidebar-apps ol ol a.active,
#nav-sidebar-apps ol ol a[class*="font-semibold"] {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-left-color: #ffffff !important;
    font-weight: 600 !important;
}

/* Ícones material */
#nav-sidebar .material-symbols-outlined {
    color: rgba(255, 255, 255, 0.75) !important;
}

/* Hover dos itens */
#nav-sidebar a:hover {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
}

#nav-sidebar a:hover .material-symbols-outlined,
#nav-sidebar a:hover span {
    color: #ffffff !important;
}

/* Item ativo */
#nav-sidebar a[class*="bg-primary"],
#nav-sidebar a[aria-current],
#nav-sidebar a.active {
    background: rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
}

/* Search box dentro do sidebar — container branco, estilo padrão */
#nav-sidebar #search-results div[class*="bg-white"],
#nav-sidebar #search-results div[class*="bg-white"] a,
#nav-sidebar #search-results div[class*="bg-white"] span {
    color: #374151 !important;
}

#nav-sidebar #search-results div[class*="bg-white"] a:hover,
#nav-sidebar #search-results div[class*="bg-white"] [class*="bg-base-100"] {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

/* Dark mode: search results */
.dark #nav-sidebar #search-results div[class*="bg-white"],
.dark #nav-sidebar #search-results [class*="bg-base"] {
    background: #1f2937 !important;
    border-color: #374151 !important;
}
.dark #nav-sidebar #search-results div[class*="bg-white"] a,
.dark #nav-sidebar #search-results div[class*="bg-white"] span {
    color: #d1d5db !important;
}
.dark #nav-sidebar #search-results div[class*="bg-white"] a:hover,
.dark #nav-sidebar #search-results div[class*="bg-white"] [class*="bg-base-100"] {
    background: #374151 !important;
    color: #f1f5f9 !important;
}

#nav-sidebar input[type="search"],
#nav-sidebar input[type="text"] {
    color: #111827 !important;
}

.dark #nav-sidebar input[type="search"],
.dark #nav-sidebar input[type="text"] {
    color: #f1f5f9 !important;
    background: transparent !important;
}

#nav-sidebar input::placeholder {
    color: #9ca3af !important;
}

.dark #nav-sidebar input::placeholder {
    color: #6b7280 !important;
}

/* Usuário no rodapé do sidebar */
#nav-sidebar [class*="border-t"] {
    border-top-color: rgba(255, 255, 255, 0.15) !important;
}

/* Área clicável do usuário (cursor-pointer é único desse div) */
#nav-sidebar [class*="border-t"] div.cursor-pointer,
#nav-sidebar [class*="border-t"] div.cursor-pointer * {
    color: rgba(255, 255, 255, 0.9) !important;
}

#nav-sidebar [class*="border-t"] div.cursor-pointer [class*="text-xs"] {
    color: rgba(255, 255, 255, 0.65) !important;
}

/* Fundo do div do usuário — transparente em repouso e ao abrir o dropdown */
#nav-sidebar [class*="border-t"] div.cursor-pointer {
    background: transparent !important;
}

#nav-sidebar [class*="border-t"] div.cursor-pointer:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

/* Popup dropdown do usuário — fundo branco, texto escuro */
#nav-sidebar nav[class*="absolute"][class*="bg-white"] {
    background: #ffffff !important;
    border-color: #e5e7eb !important;
}

#nav-sidebar nav[class*="absolute"][class*="bg-white"] *,
#nav-sidebar nav[class*="absolute"][class*="bg-white"] a,
#nav-sidebar nav[class*="absolute"][class*="bg-white"] button,
#nav-sidebar nav[class*="absolute"][class*="bg-white"] span:not(.material-symbols-outlined) {
    color: #374151 !important;
}

#nav-sidebar nav[class*="absolute"][class*="bg-white"] .material-symbols-outlined {
    color: #6b7280 !important;
}

#nav-sidebar nav[class*="absolute"][class*="bg-white"] a:hover,
#nav-sidebar nav[class*="absolute"][class*="bg-white"] button:hover {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

/* Dark mode: dropdown do usuário */
.dark #nav-sidebar nav[class*="absolute"] {
    background: #1f2937 !important;
    border-color: #374151 !important;
}
.dark #nav-sidebar nav[class*="absolute"] *,
.dark #nav-sidebar nav[class*="absolute"] a,
.dark #nav-sidebar nav[class*="absolute"] button,
.dark #nav-sidebar nav[class*="absolute"] span:not(.material-symbols-outlined) {
    color: #d1d5db !important;
}
.dark #nav-sidebar nav[class*="absolute"] .material-symbols-outlined {
    color: #9ca3af !important;
}
.dark #nav-sidebar nav[class*="absolute"] a:hover,
.dark #nav-sidebar nav[class*="absolute"] button:hover {
    background: #374151 !important;
    color: #f1f5f9 !important;
}

/* Popup "Ir para o site" (SITE_DROPDOWN) — div.absolute.bg-white no topo do
   sidebar (navigation_header). Sem isto, a regra global #nav-sidebar a/span
   {color:#fff} deixa o texto branco sobre o painel branco → caixa vazia.
   Alvo pelo atributo único x-show="openDropdown". */
#nav-sidebar [x-show="openDropdown"] {
    background: #ffffff !important;
    border-color: #e5e7eb !important;
}

#nav-sidebar [x-show="openDropdown"] a,
#nav-sidebar [x-show="openDropdown"] span:not(.material-symbols-outlined) {
    color: #374151 !important;
}

#nav-sidebar [x-show="openDropdown"] .material-symbols-outlined {
    color: #6b7280 !important;
}

#nav-sidebar [x-show="openDropdown"] a:hover,
#nav-sidebar [x-show="openDropdown"] a:hover span {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

/* Dark mode: popup "Ir para o site" */
.dark #nav-sidebar [x-show="openDropdown"] {
    background: #1f2937 !important;
    border-color: #374151 !important;
}

.dark #nav-sidebar [x-show="openDropdown"] a,
.dark #nav-sidebar [x-show="openDropdown"] span:not(.material-symbols-outlined) {
    color: #d1d5db !important;
}

.dark #nav-sidebar [x-show="openDropdown"] a:hover,
.dark #nav-sidebar [x-show="openDropdown"] a:hover span {
    background: #374151 !important;
    color: #f1f5f9 !important;
}

/* ---------------------------------------------------------------------------
   Dialogs (modais) — centralizados vertical e horizontalmente em todo o admin.
   O showModal() nativo já centraliza via margin:auto, mas o reset do
   Tailwind/Unfold zera a margem e ancora o dialog no canto superior esquerdo.
   Reasseguramos o centramento para qualquer <dialog> do sistema.
   --------------------------------------------------------------------------- */
dialog[open] {
  position: fixed;
  inset: 0;
  margin: auto;
  max-height: 90vh;
}

/* ---------------------------------------------------------------------------
   SITE_DROPDOWN (links no topo da sidebar, ex.: "Ir para o site").
   O painel do dropdown tem fundo branco (bg-white), mas a regra branca da
   sidebar acima deixava o texto invisível (branco no branco). Restaura texto
   legível no painel e remove o hover esbranquiçado do cabeçalho clicável.
   --------------------------------------------------------------------------- */
#nav-sidebar [x-show="openDropdown"] a,
#nav-sidebar [x-show="openDropdown"] span:not(.material-symbols-outlined) {
    color: #252d34 !important;
}
.dark #nav-sidebar [x-show="openDropdown"] a,
.dark #nav-sidebar [x-show="openDropdown"] span:not(.material-symbols-outlined) {
    color: #e5e7eb !important;
}
#nav-sidebar [x-show="openDropdown"] a:hover {
    background: #f3f4f6 !important;
    color: #111827 !important;
}
/* Cabeçalho clicável que abre o dropdown: hover discreto sobre o roxo, não branco. */
#nav-sidebar div.cursor-pointer:hover {
    background: rgba(255, 255, 255, 0.10) !important;
}
