/**
 * Curta CRM — esconde 5 módulos da sidebar + command palette (Cmd+K)
 *
 * Módulos escondidos: Influencers, Campanhas, Modelos de Contrato, Executivos, Metas
 *
 * Estratégia: CSS-only (sem JS), targeting via [href*="/objects/<namePlural>"]
 * que é o padrão estável do Twenty 1.x pros links da sidebar e command palette.
 *
 * Backend INTOCADO — relacionamentos opportunity.executivoId, opportunity.influencerId,
 * etc continuam funcionando perfeitamente. Apenas a apresentação está oculta.
 *
 * Pra reverter: remover esse arquivo do bind-mount no docker-compose + tirar tag
 * <link> do index.html.
 */

/* ============================================================
 * 1. Sidebar (menu lateral esquerdo)
 * ============================================================ */
/* esconde elementos âncora que linkam pra esses objetos */
a[href*="/objects/influencers"],
a[href*="/objects/campaigns"],
a[href*="/objects/contractTemplates"],
a[href*="/objects/executivos"],
a[href*="/objects/metas"] {
  display: none !important;
}

/* alguns containers do Twenty envolvem o link em <li> ou <div> — esconder o pai
   pra evitar "buraco" vazio onde o item estava */
li:has(> a[href*="/objects/influencers"]),
li:has(> a[href*="/objects/campaigns"]),
li:has(> a[href*="/objects/contractTemplates"]),
li:has(> a[href*="/objects/executivos"]),
li:has(> a[href*="/objects/metas"]),
div:has(> a[href*="/objects/influencers"]),
div:has(> a[href*="/objects/campaigns"]),
div:has(> a[href*="/objects/contractTemplates"]),
div:has(> a[href*="/objects/executivos"]),
div:has(> a[href*="/objects/metas"]) {
  display: none !important;
}

/* ============================================================
 * 2. Command palette (Cmd+K) — Twenty usa data-* ou role pra itens
 * ============================================================ */
/* targets por href dentro de listas de comando */
[role="option"]:has(a[href*="/objects/influencers"]),
[role="option"]:has(a[href*="/objects/campaigns"]),
[role="option"]:has(a[href*="/objects/contractTemplates"]),
[role="option"]:has(a[href*="/objects/executivos"]),
[role="option"]:has(a[href*="/objects/metas"]) {
  display: none !important;
}

/* fallback agressivo: qualquer texto que contenha o nome do módulo
   dentro de elementos com role="menuitem" ou role="option" — usado pelo Cmd+K */
[role="menuitem"]:has(:not(:empty)),
[role="option"]:has(:not(:empty)) {
  /* CSS não tem :contains() oficial — então o targeting precisa ser via href acima.
     Se Cmd+K do Twenty não usar <a href>, vamos precisar de JS pra esconder por texto.
     Por ora, deixamos só o targeting por href que cobre o caso da sidebar 100%. */
}

/* ============================================================
 * 3. Settings → Data Model — esconder esses objetos da página de admin
 * ============================================================ */
/* só esconder na navegação "normal", não no admin (admin precisa pra config) */
/* Não vou esconder em Settings → Data Model porque você (admin) precisa enxergar. */
