/*
 * letmechat.css
 * Branding override para o Chatwoot via sub_filter do Nginx
 *
 * Cor primária:  #3a9e57  rgb(58 158 87)
 * Fundo geral:   #f9fafb  rgb(249 250 251)
 *
 * Última atualização: 2026-06-06
 *
 * Changelog:
 * 2026-06-06 — v5: oculta "Help Center" no modo COLAPSADO (button com ícone
 *   i-lucide-library-big / title) e esconde "Preferred Language" em
 *   Perfil → Interface (idioma segue sempre o default da conta). [seção 12]
 * 2026-06-05 — v4: ativa ocultação de Central de Ajuda [name="Portals"] e
 *   Respostas Prontas [href*="/settings/canned-response"]. Configurações
 *   mantida visível (recebe a tela custom "Agentes e Times").
 * 2026-05-21 — v3: ocultação de itens da sidebar para tenants
 *   - Campanhas, Central de Ajuda e Configurações ocultos
 *   - Seletores por atributo name — estáveis entre updates
 * 2026-05-13 — v2: CSS de entrega
 *   - Popover do usuário: fundo opaco branco (light) / dark nativo
 *   - Dark mode: sidebar neutra #1a1d21 com acentos verdes
 *   - Seletores restritos com :not(.n-dropdown-body *) em toda sidebar
 *   - Cobertura: badges, tooltips, modais, toasts, steppers,
 *     status indicators, conversation cards, message bubbles,
 *     empty states, filtros, tabs, toggles, avatares
 *   - Seção de monitoramento pós-update documentada no fim
 * 2026-05-11 — v1: sidebar verde, variáveis :root, classes .n-brand
 */


/* =============================================================
   1. VARIÁVEIS — MODO CLARO
   Sobrescreve a escala blue-* pelo verde primário
   ============================================================= */
:root {
  --background-color: 249 250 251;

  --blue-1: 240 249 244;
  --blue-2: 224 242 231;
  --blue-3: 196 229 207;
  --blue-4: 163 213 179;
  --blue-5: 130 196 150;
  --blue-6: 100 178 123;
  --blue-7: 74 158 98;
  --blue-8: 58 140 78;
  --blue-9: 58 158 87;
  --blue-10: 46 138 70;
  --blue-11: 36 120 58;
  --blue-12: 14 60 26;

  --border-blue: 58, 158, 87, .5;
  --solid-blue: 196 229 207;
  --solid-blue-2: 240 249 244;
  --text-blue: 36 120 58;
  --border-blue-strong: 14 60 26;
}


/* =============================================================
   2. VARIÁVEIS — MODO ESCURO
   ============================================================= */
.dark {
  --blue-1: 10 28 16;
  --blue-2: 14 38 22;
  --blue-3: 18 55 30;
  --blue-4: 22 72 38;
  --blue-5: 26 90 46;
  --blue-6: 32 108 56;
  --blue-7: 40 125 66;
  --blue-8: 48 140 76;
  --blue-9: 58 158 87;
  --blue-10: 46 138 70;
  --blue-11: 120 200 144;
  --blue-12: 196 235 210;

  --border-blue: 58, 158, 87, .5;
  --solid-blue: 18 55 30;
  --solid-blue-2: 14 38 22;
  --text-blue: 120 200 144;
  --border-blue-strong: 196 235 210;
}


/* =============================================================
   3. CLASSES HARDCODED .n-brand
   O Chatwoot fixa #2781F6 — override explícito
   ============================================================= */

/* --- Backgrounds --- */
.bg-n-brand,
.banner.primary,
.notification--unread-indicator,
.ProseMirror-prompt .ProseMirror-prompt-buttons button[type="submit"],
.before\:bg-n-brand::before,
.after\:bg-n-brand::after,
.checked\:bg-n-brand:checked,
.indeterminate\:bg-n-brand:indeterminate,
.hover\:bg-n-brand:hover,
.group:hover .group-hover\:bg-n-brand,
.dark\:bg-n-brand:is(.dark *),
.dark\:checked\:bg-n-brand:checked:is(.dark *),
.dark\:hover\:text-n-brand:hover:is(.dark *) {
  background-color: rgb(58 158 87 / var(--tw-bg-opacity, 1)) !important;
}

/* --- Textos --- */
.text-n-brand,
.hover\:text-n-brand:hover,
.group:hover .group-hover\:text-n-brand,
.group:focus-within .group-focus-within\:text-n-brand,
p a,
p a:is(.dark *) {
  color: rgb(58 158 87 / var(--tw-text-opacity, 1)) !important;
}

/* --- Bordas --- */
.border-n-brand,
.focus\:border-n-brand:focus,
.checked\:border-n-brand:checked,
.indeterminate\:border-n-brand:indeterminate,
.hover\:border-n-brand:hover,
.dark\:border-n-brand:is(.dark *),
.dark\:checked\:border-n-brand:checked:is(.dark *),
.before\:\!border-t-n-brand::before,
.border-t-n-brand {
  border-color: rgb(58 158 87 / var(--tw-border-opacity, 1)) !important;
}

/* --- Rings (focus outlines) --- */
.ring-n-brand,
.focus\:ring-n-brand:focus,
.focus-within\:ring-n-brand:focus-within,
.dark\:ring-n-brand:is(.dark *),
.dark\:focus\:ring-woot-500:focus:is(.dark *) {
  --tw-ring-color: rgb(58 158 87 / var(--tw-ring-opacity, 1)) !important;
}

/* --- Outline --- */
.outline-n-blue-9,
.focus\:outline-n-blue-9:focus {
  outline-color: rgb(58 158 87 / 1) !important;
}

/* --- Search input focus --- */
.search-input:focus {
  border-color: rgb(58, 158, 87) !important;
}

/* --- Accent color (checkboxes, range inputs) --- */
.accent-n-blue-9 {
  accent-color: rgb(58 158 87 / 1) !important;
}


/* =============================================================
   4. COMPONENTES GLOBAIS — MODO CLARO + ESCURO
   Elementos que aparecem fora da sidebar e precisam
   de override pontual para manter consistência verde
   ============================================================= */

/* Menu hover (sidebar navigation) — NÃO aplicar aos dropdowns da área de
   conversa (etiquetas/agentes/times). Eles são <ul class="dropdown menu ...">
   e o .menu:hover pintava o container inteiro de verde ao passar o mouse
   ("todo mundo verde"). Como esses dropdowns têm também a classe .dropdown,
   o :not(.dropdown) os exclui e preserva o hover só para menus de navegação. */
.menu:hover:not(.dropdown) {
  background-color: rgb(58, 158, 87) !important;
  color: rgb(255, 255, 255) !important;
}

/* Ninja keys (command palette) */
ninja-keys {
  --ninja-accent-color: rgba(58, 158, 87, 1) !important;
}

/* Badges de contagem — unread, notificação */
.badge--count,
.unread-count {
  background-color: #3a9e57 !important;
}

/* Stepper / wizard (tela de setup WhatsApp etc.) */
.wizard-box .step--active .step__indicator,
.step-wrap .step--active .step-indicator {
  background-color: #3a9e57 !important;
  border-color: #3a9e57 !important;
}

.wizard-box .step--completed .step__indicator,
.step-wrap .step--completed .step-indicator {
  background-color: #3a9e57 !important;
  border-color: #3a9e57 !important;
}

/* Tabs ativas */
.tabs .tab.active,
.tabs .tab.active::after {
  border-bottom-color: #3a9e57 !important;
  color: #3a9e57 !important;
}

/* Toggles / switches que escapam do .bg-n-brand */
.toggle--checked,
.toggle-button.active {
  background-color: #3a9e57 !important;
}

/* Spinner / loading */
.spinner::after,
.loading-spinner {
  border-top-color: #3a9e57 !important;
}

/* Links em mensagens */
.conversation--message a:not(.button) {
  color: #3a9e57 !important;
}

.dark .conversation--message a:not(.button) {
  color: #78c890 !important;
}

/* Status online dot — manter verde padrão do Chatwoot */
.status-badge--online,
.availability-status--online {
  background-color: #44ce4b !important;
}

/* Conversation cards — borda de seleção */
.conversation--card.active {
  border-left-color: #3a9e57 !important;
}

.dark .conversation--card.active {
  border-left-color: #78c890 !important;
}

/* Filter chips / tags ativos */
.filter--active,
.label--active {
  background-color: rgba(58, 158, 87, 0.1) !important;
  border-color: #3a9e57 !important;
  color: #3a9e57 !important;
}

.dark .filter--active,
.dark .label--active {
  background-color: rgba(58, 158, 87, 0.15) !important;
  border-color: #78c890 !important;
  color: #78c890 !important;
}

/* Progress bars */
.progress-bar .progress-bar__fill {
  background-color: #3a9e57 !important;
}


/* =============================================================
   5. SIDEBAR — MODO CLARO
   Verde escuro com textos brancos.
   Seletores restritos com :not() para excluir o
   popover do usuário (.n-dropdown-body)
   ============================================================= */

/* --- Container --- */
aside.bg-n-background {
  background-color: #1a5c2e !important;
  border-right-color: #144924 !important;
}

/* --- Seções diretas --- */
aside.bg-n-background > section {
  background-color: #1a5c2e !important;
}

/* --- Separador vertical logo/nome --- */
aside.bg-n-background .bg-n-strong:not(.n-dropdown-body .bg-n-strong) {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

/* --- Textos gerais (excluindo popover) --- */
aside.bg-n-background .text-n-slate-12:not(.n-dropdown-body .text-n-slate-12),
aside.bg-n-background .text-n-slate-11:not(.n-dropdown-body .text-n-slate-11),
aside.bg-n-background .text-n-slate-10:not(.n-dropdown-body .text-n-slate-10),
aside.bg-n-background span.truncate:not(.n-dropdown-body span.truncate),
aside.bg-n-background .text-body-main:not(.n-dropdown-body .text-body-main) {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* --- Ícones (excluindo popover) --- */
aside.bg-n-background .i-lucide-chevron-down:not(.n-dropdown-body .i-lucide-chevron-down),
aside.bg-n-background .i-lucide-chevron-up:not(.n-dropdown-body .i-lucide-chevron-up),
aside.bg-n-background [class*="i-lucide-"]:not(.n-dropdown-body [class*="i-lucide-"]) {
  color: rgba(255, 255, 255, 0.7) !important;
}

/* --- Campo de busca --- */
aside.bg-n-background a[href*="search"] {
  background-color: rgba(255, 255, 255, 0.08) !important;
  outline-color: rgba(255, 255, 255, 0.15) !important;
  color: rgba(255, 255, 255, 0.6) !important;
}

aside.bg-n-background a[href*="search"] span {
  color: rgba(255, 255, 255, 0.6) !important;
}

/* --- Botão nova conversa --- */
aside.bg-n-background button.bg-n-button-color:not(.n-dropdown-body button) {
  background-color: rgba(255, 255, 255, 0.08) !important;
  outline-color: rgba(255, 255, 255, 0.15) !important;
  color: rgba(255, 255, 255, 0.8) !important;
}

/* --- Itens de menu --- */
aside.bg-n-background nav a,
aside.bg-n-background nav div[role="button"] {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* --- Hover itens --- */
aside.bg-n-background nav a:hover,
aside.bg-n-background nav div[role="button"]:hover,
aside.bg-n-background .hover\:bg-n-alpha-2:hover:not(.n-dropdown-body .hover\:bg-n-alpha-2:hover) {
  background-color: rgba(255, 255, 255, 0.1) !important;
}

aside.bg-n-background nav a.hover\:bg-gradient-to-r:hover {
  background: rgba(255, 255, 255, 0.1) !important;
}

/* --- Item ativo --- */
aside.bg-n-background .router-link-exact-active.active {
  background-color: #3a9e57 !important;
  color: #ffffff !important;
}

aside.bg-n-background .router-link-exact-active.active * {
  color: #ffffff !important;
}

/* --- Sub-item vertical line --- */
aside.bg-n-background .child-item::before {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

/* --- Gradiente fade rodapé --- */
aside.bg-n-background .from-n-background {
  --tw-gradient-from: #1a5c2e !important;
}

/* --- Rodapé --- */
aside.bg-n-background > section:last-of-type {
  background-color: #1a5c2e !important;
  border-top-color: rgba(255, 255, 255, 0.12) !important;
}

aside.bg-n-background .shadow-\[0px_-2px_4px_0px_rgba\(27\,28\,29\,0\.02\)\] {
  box-shadow: 0px -2px 4px 0px rgba(0, 0, 0, 0.15) !important;
}

/* --- Hover botão perfil --- */
aside.bg-n-background button.hover\:bg-n-alpha-1:hover:not(.n-dropdown-body button:hover) {
  background-color: rgba(255, 255, 255, 0.1) !important;
}

/* --- Resize handle --- */
aside.bg-n-background .group-hover\:bg-n-brand {
  background-color: rgba(255, 255, 255, 0.3) !important;
}

/* --- Unread badge na sidebar --- */
aside.bg-n-background .badge--count,
aside.bg-n-background .unread-count {
  background-color: #e74c3c !important;
  color: #ffffff !important;
}


/* =============================================================
   6. POPOVER DO USUÁRIO — MODO CLARO
   Fundo opaco branco, sem translucidez.
   Garante legibilidade independente do que
   está por trás (sidebar verde).
   ============================================================= */

aside.bg-n-background .n-dropdown-body {
  background-color: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-color: #e5e7eb !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12),
              0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

/* Reset de cores — texto escuro sobre fundo branco */
aside.bg-n-background .n-dropdown-body .text-n-slate-12 {
  color: #111827 !important;
}

aside.bg-n-background .n-dropdown-body .text-n-slate-11 {
  color: #6b7280 !important;
}

aside.bg-n-background .n-dropdown-body .text-n-slate-10 {
  color: #9ca3af !important;
}

aside.bg-n-background .n-dropdown-body [class*="i-lucide-"] {
  color: #6b7280 !important;
}

aside.bg-n-background .n-dropdown-body button,
aside.bg-n-background .n-dropdown-body a {
  color: #111827 !important;
}

aside.bg-n-background .n-dropdown-body .hover\:bg-n-alpha-2:hover {
  background-color: #f3f4f6 !important;
}

aside.bg-n-background .n-dropdown-body .bg-n-strong {
  background-color: #e5e7eb !important;
}

/* Divider dentro do popover */
aside.bg-n-background .n-dropdown-body .border-n-strong {
  border-color: #e5e7eb !important;
}

/* Toggle switch verde no popover */
aside.bg-n-background .n-dropdown-body .bg-n-brand {
  background-color: #3a9e57 !important;
}

/* Dropdown de disponibilidade dentro do popover */
aside.bg-n-background .n-dropdown-body .bg-n-slate-9\/10 {
  background-color: rgba(107, 114, 128, 0.1) !important;
}

aside.bg-n-background .n-dropdown-body .bg-n-teal-9 {
  background-color: #14b8a6 !important;
}


/* =============================================================
   7. POPOVER DO USUÁRIO — MODO ESCURO
   Fundo opaco escuro, consistente com o dark theme.
   ============================================================= */

.dark aside.bg-n-background .n-dropdown-body {
  background-color: #1f2937 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-color: #374151 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4),
              0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.dark aside.bg-n-background .n-dropdown-body .text-n-slate-12 {
  color: #f3f4f6 !important;
}

.dark aside.bg-n-background .n-dropdown-body .text-n-slate-11 {
  color: #9ca3af !important;
}

.dark aside.bg-n-background .n-dropdown-body .text-n-slate-10 {
  color: #6b7280 !important;
}

.dark aside.bg-n-background .n-dropdown-body [class*="i-lucide-"] {
  color: #9ca3af !important;
}

.dark aside.bg-n-background .n-dropdown-body button,
.dark aside.bg-n-background .n-dropdown-body a {
  color: #f3f4f6 !important;
}

.dark aside.bg-n-background .n-dropdown-body .hover\:bg-n-alpha-2:hover {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

.dark aside.bg-n-background .n-dropdown-body .bg-n-strong {
  background-color: #374151 !important;
}

.dark aside.bg-n-background .n-dropdown-body .border-n-strong {
  border-color: #374151 !important;
}

.dark aside.bg-n-background .n-dropdown-body .bg-n-brand {
  background-color: #3a9e57 !important;
}

.dark aside.bg-n-background .n-dropdown-body .bg-n-slate-9\/10 {
  background-color: rgba(156, 163, 175, 0.15) !important;
}

.dark aside.bg-n-background .n-dropdown-body .bg-n-teal-9 {
  background-color: #14b8a6 !important;
}


/* =============================================================
   8. SIDEBAR — MODO ESCURO
   Neutra (#1a1d21) com acentos verdes.
   Integra visualmente com o dark theme nativo.
   ============================================================= */

/* --- Container --- */
.dark aside.bg-n-background {
  background-color: #1a1d21 !important;
  border-right-color: #2a2d32 !important;
}

.dark aside.bg-n-background > section {
  background-color: #1a1d21 !important;
}

/* --- Textos — claros, não branco puro --- */
.dark aside.bg-n-background .text-n-slate-12:not(.n-dropdown-body .text-n-slate-12),
.dark aside.bg-n-background span.truncate:not(.n-dropdown-body span.truncate),
.dark aside.bg-n-background .text-body-main:not(.n-dropdown-body .text-body-main) {
  color: rgba(235, 238, 241, 0.9) !important;
}

.dark aside.bg-n-background .text-n-slate-11:not(.n-dropdown-body .text-n-slate-11),
.dark aside.bg-n-background .text-n-slate-10:not(.n-dropdown-body .text-n-slate-10) {
  color: rgba(180, 188, 196, 0.75) !important;
}

/* --- Ícones — verde suave --- */
.dark aside.bg-n-background [class*="i-lucide-"]:not(.n-dropdown-body [class*="i-lucide-"]) {
  color: rgba(120, 200, 144, 0.7) !important;
}

.dark aside.bg-n-background .i-lucide-chevron-down:not(.n-dropdown-body .i-lucide-chevron-down),
.dark aside.bg-n-background .i-lucide-chevron-up:not(.n-dropdown-body .i-lucide-chevron-up) {
  color: rgba(180, 188, 196, 0.6) !important;
}

/* --- Separador --- */
.dark aside.bg-n-background .bg-n-strong:not(.n-dropdown-body .bg-n-strong) {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

/* --- Campo de busca --- */
.dark aside.bg-n-background a[href*="search"] {
  background-color: rgba(255, 255, 255, 0.06) !important;
  outline-color: rgba(255, 255, 255, 0.1) !important;
  color: rgba(180, 188, 196, 0.5) !important;
}

.dark aside.bg-n-background a[href*="search"] span {
  color: rgba(180, 188, 196, 0.5) !important;
}

/* --- Botão nova conversa --- */
.dark aside.bg-n-background button.bg-n-button-color:not(.n-dropdown-body button) {
  background-color: rgba(255, 255, 255, 0.06) !important;
  outline-color: rgba(255, 255, 255, 0.1) !important;
  color: rgba(235, 238, 241, 0.8) !important;
}

/* --- Itens de menu --- */
.dark aside.bg-n-background nav a,
.dark aside.bg-n-background nav div[role="button"] {
  color: rgba(235, 238, 241, 0.8) !important;
}

/* --- Hover — verde translúcido --- */
.dark aside.bg-n-background nav a:hover,
.dark aside.bg-n-background nav div[role="button"]:hover,
.dark aside.bg-n-background .hover\:bg-n-alpha-2:hover:not(.n-dropdown-body .hover\:bg-n-alpha-2:hover) {
  background-color: rgba(58, 158, 87, 0.12) !important;
}

.dark aside.bg-n-background nav a.hover\:bg-gradient-to-r:hover {
  background: rgba(58, 158, 87, 0.12) !important;
}

/* --- Item ativo — verde sutil --- */
.dark aside.bg-n-background .router-link-exact-active.active {
  background-color: rgba(58, 158, 87, 0.2) !important;
  color: #78c890 !important;
}

.dark aside.bg-n-background .router-link-exact-active.active * {
  color: #78c890 !important;
}

/* --- Sub-item vertical line --- */
.dark aside.bg-n-background .child-item::before {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

/* --- Gradiente fade --- */
.dark aside.bg-n-background .from-n-background {
  --tw-gradient-from: #1a1d21 !important;
}

/* --- Rodapé --- */
.dark aside.bg-n-background > section:last-of-type {
  background-color: #1a1d21 !important;
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}

.dark aside.bg-n-background .shadow-\[0px_-2px_4px_0px_rgba\(27\,28\,29\,0\.02\)\] {
  box-shadow: 0px -2px 4px 0px rgba(0, 0, 0, 0.3) !important;
}

/* --- Hover botão perfil --- */
.dark aside.bg-n-background button.hover\:bg-n-alpha-1:hover:not(.n-dropdown-body button:hover) {
  background-color: rgba(58, 158, 87, 0.12) !important;
}

/* --- Resize handle --- */
.dark aside.bg-n-background .group-hover\:bg-n-brand {
  background-color: rgba(58, 158, 87, 0.4) !important;
}

/* --- Unread badge dark --- */
.dark aside.bg-n-background .badge--count,
.dark aside.bg-n-background .unread-count {
  background-color: #e74c3c !important;
  color: #ffffff !important;
}


/* =============================================================
   9. SCROLLBAR CUSTOMIZADA
   Estiliza scrollbar dentro da sidebar para
   consistência visual
   ============================================================= */

aside.bg-n-background ::-webkit-scrollbar {
  width: 4px;
}

aside.bg-n-background ::-webkit-scrollbar-track {
  background: transparent;
}

aside.bg-n-background ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}

aside.bg-n-background ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.25);
}

.dark aside.bg-n-background ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
}

.dark aside.bg-n-background ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}


/* =============================================================
   10. OCULTAÇÃO DE ITENS NATIVOS PARA TENANTS
   Itens nativos do Chatwoot não expostos ao tenant.

   Ocultos:
   - Central de Ajuda (sidebar primária)         [name="Portals"]
   - Respostas Prontas (dentro de Configurações) [href*="/settings/canned-response"]

   Configurações permanece VISÍVEL — é onde vive a tela custom
   "Agentes e Times" do Letmechat.

   Seletores por atributo name / href — mais estáveis que classes
   geradas dinamicamente e resistentes a updates do Chatwoot.
   ============================================================= */

/* Central de Ajuda (Help Center) — barra expandida E modo colapsado.
   No colapsado o item NÃO é um <li>/<a>: vira um <button title="Help Center">
   com o ícone `i-lucide-library-big` (DOM real fornecido). Por isso, além do
   `li:has`/`[name="Portals"]` do expandido, escondemos o botão do colapsado
   pelo ícone (independe de idioma) e pelo title (fallback). */
aside.bg-n-background li:has([name="Portals"]),
li:has([name="Portals"]),
[name="Portals"],
li:has(> a[href*="/portals"]),
a[href*="/portals"],
aside button:has(> .i-lucide-library-big),
aside button:has(.i-lucide-library-big),
button[title="Help Center"],
button[title="Central de Ajuda"] {
  display: none !important;
}

/* Respostas Prontas (Canned Responses) — menu de Configurações.
   `li:has(> a)` esconde a linha no expandido (o `>` evita pegar a seção
   Configurações inteira); o `a` direto cobre o flyout do colapsado, cuja
   estrutura é diferente. */
li:has(> a[href*="/settings/canned-response"]),
a[href*="/settings/canned-response"] {
  display: none !important;
}

/* Agentes/Times NATIVOS dentro de Configurações — substituídos pelas nossas
   telas custom (injetadas pelo letmechat.js como .lmc-settings-item). Escondemos
   os nativos para não duplicar. Escopo `aside` para não afetar o conteúdo. */
aside.bg-n-background a[href*="/settings/agents"],
aside.bg-n-background a[href*="/settings/teams"] {
  display: none !important;
}


/* =============================================================
   11. ATIVO ÚNICO — com a tela do Letmechat aberta
   O `body.lmc-panel-open` é setado pelo letmechat.js enquanto uma
   tela nossa está visível. Nesse estado, o item NATIVO "ativo" (a
   rota que ficou por trás) não deve parecer ativo — só o nosso item
   fica destacado (evita "dois ativos" ao mesmo tempo).
   ============================================================= */

body.lmc-panel-open aside.bg-n-background .router-link-exact-active.active {
  background: transparent !important;
}

body.lmc-panel-open aside.bg-n-background .router-link-exact-active.active,
body.lmc-panel-open aside.bg-n-background .router-link-exact-active.active * {
  color: rgba(255, 255, 255, 0.85) !important;
}

.dark body.lmc-panel-open aside.bg-n-background .router-link-exact-active.active,
.dark body.lmc-panel-open aside.bg-n-background .router-link-exact-active.active * {
  color: rgba(235, 238, 241, 0.8) !important;
}


/* =============================================================
   12. PERFIL → INTERFACE — ESCONDER "PREFERRED LANGUAGE"
   O idioma deve seguir SEMPRE o default da conta — o tenant não
   escolhe idioma por usuário. Escondemos a linha inteira (label +
   descrição + <select name="language">), não só o campo.

   A linha é o container .flex.justify-between.items-start que CONTÉM
   o select de idioma (DOM real fornecido). Mira por :has para pegar
   a linha sem afetar as demais (ex.: Font Size).
   ============================================================= */

.flex.justify-between.items-start:has(select[name="language"]) {
  display: none !important;
}


/* =============================================================
   13. LOGO DA MARCA — SIDEBAR (wordmark full-width)
   O letmechat.js (injectSidebarLogo) insere um banner
   .lmc-logo-banner no topo da seção do logo com o wordmark
   BRANCO. Aqui: estilizamos o banner e ESCONDEMOS o ícone
   pequeno original + o divisor vertical da linha da conta.
   ============================================================= */

/* Banner do wordmark — ocupa a largura toda (ponta a ponta), acima da conta */
aside.bg-n-background .lmc-logo-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px 10px;
  width: 100%;
  min-width: 0;
}

/* width:100% = wordmark de ponta a ponta (cresce com a largura da sidebar).
   max-height evita exagero se a barra ficar muito larga.
   Centralizado horizontalmente na sidebar. */
aside.bg-n-background .lmc-logo-banner__img {
  width: 100%;
  height: auto;
  max-height: 44px;
  object-fit: contain;
  object-position: center;
  display: block;
}

/* Esconde o ícone pequeno original (letmechat-logo.png) e seu container */
aside.bg-n-background section img[src*="letmechat-logo"],
aside.bg-n-background section .size-6:has(img[src*="letmechat-logo"]) {
  display: none !important;
}

/* Esconde o divisor vertical que ficava entre o logo e o seletor de conta */
aside.bg-n-background section .flex.items-center:has(img[src*="letmechat-logo"]) > .w-px.bg-n-strong {
  display: none !important;
}

/* Modo colapsado (56px): wordmark fica largo demais — esconder o banner */
aside[style*="width: 56px"] .lmc-logo-banner {
  display: none !important;
}


/* =============================================================
   14. LOGO DA MARCA — TELA DE LOGIN
   Substitui o logo do Chatwoot (/brand-assets/logo*.svg) pelo
   wordmark do LetMeChat via `content` (image replacement).
   Convenção dos assets: "_white" = versão p/ FUNDO BRANCO (grafismo escuro);
   "_black" = versão p/ FUNDO ESCURO (grafismo claro).
   - Tema claro (fundo claro)  → logo_white.png
   - Tema escuro (fundo escuro) → logo_black.png
   O <img> mantém a caixa (h-8 etc.); o `content` troca o pixel.
   ============================================================= */

/* Logo do tema CLARO do Chatwoot (fundo claro) → versão p/ fundo branco */
img[alt="LetMeChat"][src*="/brand-assets/logo.svg"],
img[src$="/brand-assets/logo.svg"],
img[src$="/brand-assets/logo_thumbnail.svg"] {
  content: url('https://letmechat-brand-page.s3.us-east-1.amazonaws.com/logo_white.png') !important;
}

/* Logo do tema ESCURO do Chatwoot (fundo escuro) → versão p/ fundo escuro */
img[alt="LetMeChat"][src*="/brand-assets/logo_dark.svg"],
img[src$="/brand-assets/logo_dark.svg"] {
  content: url('https://letmechat-brand-page.s3.us-east-1.amazonaws.com/logo_black.png') !important;
}


/* =============================================================
   FIM DO ARQUIVO
   =============================================================

   CHECKLIST DE MONITORAMENTO PÓS-UPDATE DO CHATWOOT
   ──────────────────────────────────────────────────
   Verificar após cada docker compose pull:

   1. SIDEBAR VERDE (light) / NEUTRA (dark)
      - Fundo, textos, ícones, item ativo, hover
      - Gradiente de fade antes do rodapé

   2. POPOVER DO USUÁRIO
      - Fundo opaco (não translúcido)
      - Textos legíveis em ambos os temas
      - Toggle de disponibilidade funcional
      - Hover nos itens de menu

   3. VARIÁVEIS CSS
      - Botões primários verdes (não azuis)
      - Focus rings verdes
      - Badges de notificação verdes

   4. CLASSES .n-brand
      - Buscar no DevTools por #2781F6 ou rgb(39, 129, 246)
      - Se aparecer, há uma classe nova não coberta

   5. CSP (Content Security Policy)
      - Console do browser: buscar violações de CSP
      - Se report-only virar enforce, CSS externo pode quebrar
      - Header a monitorar: Content-Security-Policy

   6. SELETORES FRÁGEIS (maior risco de quebra)
      - aside.bg-n-background — se renomear, sidebar inteira quebra
      - .n-dropdown-body — se renomear, popover volta a ter texto branco
      - .router-link-exact-active.active — se mudar, item ativo perde destaque
      - [class*="i-lucide-"] — se trocar icon library, ícones perdem override
      - .from-n-background — se renomear, gradiente de fade quebra

   7. NOVOS COMPONENTES
      - Qualquer componente novo pode trazer azul hardcoded
      - Testar: modais, drawers, toasts, banners, empty states

   8. OCULTAÇÃO DE ITENS (seção 10) — seletores verificados 2026-06-05 (acc 6)
      - Central de Ajuda [name="Portals"] deve estar oculto
      - Respostas Prontas: leaf li > a[href*="/settings/canned-response"] oculto
      - Configurações deve permanecer VISÍVEL (tela Agentes e Times)
      - Conversas, Contatos, Relatórios devem estar visíveis

   ============================================================= */
