Revisão de 08/09/2026. O escopo é redesign da experiência: identidade, reposicionamento de elementos e mobile web. Pesquisa oficial e inspeção responsiva realizadas; nenhuma skin foi injetada ou salva no CRM.
Conclusão para decidir
Podemos planejar uma experiência própria sobre o Growtify nativo. Não há evidência para prometer liberdade total em todas as páginas. A compra do tema ainda não está tecnicamente liberada.
Não confundir: medir a interface atual comprova o problema; testar CSS/JS comprova a solução; o protótipo aprova o visual. São três entregas distintas.
Evidências no Growtify real
Amostra da subconta de referência, com o estado e as personalizações já existentes. Não houve comparação com uma conta limpa; os problemas abaixo não foram atribuídos exclusivamente ao código original do fornecedor. Valores aproximados em pixels CSS.
A largura total do documento permaneceu em 390 px em várias dessas telas mesmo quando havia conteúdo cortado. Verificar só
scrollWidth da página não é um teste visual suficiente.
Cobertura: agência/white label, dashboard, oportunidades e modal vazio, contatos, conversas sem abrir mensagem, calendário, lista de automações, entrada de AI Agents e lista de Sites. Não coberto: todos os submenus, estados de erro, perfis de acesso, formulário de contato preenchido, login desautenticado, recuperação/OAuth, editores internos, pagamentos, envio/salvamento e aparelho físico. A sessão do usuário não foi encerrada.
O que podemos mover
A tabela é uma recomendação de engenharia, não uma coleção de alterações já implementadas.
O GHL documenta reorganização de widgets e configuração de cards/colunas de oportunidades. Há também List View; usar um recurso nativo existente é preferível a reproduzi-lo por API.
A MDN explica que CSS order não altera a ordem de leitura e tabulação. A documentação React alerta para alterações manuais em nós que o framework controla. Isso justifica preservar a estrutura funcional, sem afirmar qual framework governa cada módulo do GHL.
Contrato do mobile
Não é “desktop menor”. Estes são os requisitos de implementação e aceitação:Formulários, conversas e teclado
Formulários, conversas e teclado
- Uma coluna nos formulários estreitos; rótulos acima dos campos e erros junto do campo.
- Conteúdo rolável sem cortar os botões finais; teclado virtual não pode cobrir o campo ativo ou envio.
- Conversas: lista, mensagem e detalhes acessíveis por navegação explícita, preservando rascunho, anexos e retorno.
- Não desativar zoom. Testar orientação, barras do navegador e áreas seguras; somente safe-area não resolve teclado virtual.
Dashboard, tabelas, kanban e calendário
Dashboard, tabelas, kanban e calendário
- Cards legíveis; número, rótulo e unidade não podem depender de tooltip.
- Tabelas e kanban podem ter rolagem horizontal contextual; não transformar a página inteira em uma faixa larga.
- Preferir lista/agenda nativa quando adequada, mantendo acesso à informação completa.
- Filtros recolhíveis e explicação do filtro ativo. Não remover colunas ou ações essenciais só para caber.
- Drag-and-drop precisa de alternativa por ação acessível quando a função nativa oferecer essa possibilidade.
Matriz de aceitação
Matriz de aceitação
- Larguras-alvo: 320, 390, 768, 1024 e 1440 px. Testar carregamento direto e mudança de largura.
- Dark/light; conteúdo vazio, longo, carregando, erro e modal aberto.
- Teclado e foco; zoom; toque real; iOS/Safari e Android/Chrome.
- Não publicar sem conferir ações críticas e saída da skin.
- Nesta auditoria foram medidos 390/1440 px e dashboard a 768 px; os outros cenários continuam pendentes.
Aplicação, distribuição e limites
- CSS/JS nativo
- Plugin Marketplace
- Iframes, gráficos e login
- Fora do caminho escolhido
Os campos Custom CSS/JS foram observados em Company → White Label. A documentação do GHL permite personalização visual, mas alerta para quebras e áreas desaconselhadas, incluindo builders, modais sensíveis e elementos sem seletor estável. O tema nativo da agência não comprova dark/light das subcontas. Fonte oficial.Estratégia: tokens próprios → CSS específico por superfície → JavaScript mínimo, idempotente e reversível apenas quando necessário. Sem importar reset global, Tailwind/Bootstrap inteiro, sobrescrever funções do GHL ou acessar dados internos.O tema comprado será instalado no protótipo. No CRM entram adaptações compatíveis, não um aplicativo React sobre o aplicativo existente.
Prova pendente e segurança
1
Preparar teste local de sessão
Usar uma superfície de inspeção que permita estilos temporários no navegador ou ambiente de teste explicitamente isolado. Nenhuma publicação global e nenhuma conta nova sem necessidade. Preservar o código existente em local privado antes de qualquer mudança persistente futura.
2
Provar o recorte crítico sem tema
Sidebar + barra de ações + modal vazio de oportunidade + grade do dashboard, com CSS neutro mínimo. Medir antes/depois em mobile e desktop; conferir navegação e foco. Identificar separadamente o alcance em frames.
3
Remover e repetir
Desativar os estilos de teste, recarregar e confirmar retorno à apresentação anterior. Depois validar estados dinâmicos e permissões no ambiente apropriado, sem usar dados comerciais reais para testes de escrita.
4
Liberar escolha e compra
Entregar matriz passou/falhou. Só então confirmar o pacote, a licença e os componentes da opção visual de Marcelo. O protótipo completo começa após receber o tema.