// ============================================================
// IUVENIS · Inteligência Estratégica de Conteúdo
// Compilado de 11 perfis analisados — padrões, roteiros, ganchos
// ============================================================

const INTEL = {

  // ── 1. DIAGNÓSTICO ─────────────────────────────────────────
  benchmark: [
    { handle:"@matheustomoto",    seg:"920K+", topLikes:4914, tipo:"Direto BR",     gap:"30x", cor:"#dc2626" },
    { handle:"@partiuintercambio",seg:"105K",  topLikes:3755, tipo:"Direto BR",     gap:"23x", cor:"#ea580c" },
    { handle:"@ultimateivyleague",seg:"961K",  topLikes:943000,tipo:"Referência EUA",gap:"1.835x",cor:"#7c3aed" },
    { handle:"@ivy_roadmap",      seg:"160K",  topLikes:23000, tipo:"Referência EUA",gap:"141x", cor:"#7c3aed" },
    { handle:"@lucaspertusati",   seg:"N/D",   topLikes:622,  tipo:"Direto BR",     gap:"4x",  cor:"#ca8a04" },
    { handle:"@gobrasa",          seg:"N/D",   topLikes:570,  tipo:"Referência BR", gap:"3,5x",cor:"#16a34a" },
    { handle:"@estudarfora",      seg:"88K",   topLikes:null, tipo:"Direto BR",     gap:"—",   cor:"#0891b2" },
    { handle:"@iuvenisoficial",   seg:"N/D",   topLikes:514,  tipo:"Próprio",       gap:"base",cor:"var(--accent)" },
  ],

  diagnostico: {
    top3_gaps: [
      { titulo:"Sem origin story", desc:"A Maria nunca publicou a história pessoal dela. @matheustomoto fez 4.020 likes com esse formato. @lucaspertusati fez 622 likes. É o maior gap identificado.", urgencia:"crítico" },
      { titulo:"Trigger desatualizado", desc:"A Iuvenis usa 'QUERO'. O mercado já migrou para 'EU QUERO' — quem digita 'EU QUERO' está declarando desejo ativo, não só pedindo informação. +15-25% de conversão estimado.", urgencia:"alto" },
      { titulo:"Frequência de oportunidades", desc:"O post FAO/ONU fez 514 likes em 3 dias e é o único do tipo. Precisa ser o formato semanal fixo, não esporádico.", urgencia:"alto" },
    ],
    pontos_fortes: [
      "Fórmula ONU/FAO JÁ FUNCIONA — 514 likes em 3 dias prova que o formato está certo",
      "Trigger ManyChat 'QUERO' ativo — só precisa ser ajustado para 'EU QUERO'",
      "Conteúdo informativo de qualidade — diferenciação real vs concorrentes superficiais",
      "Nicho de bolsas é subexplorado em PT — ainda há muito espaço para crescer",
    ],
  },

  // ── 2. O QUE COPIAR ────────────────────────────────────────
  copiar: [
    {
      id:"C01",
      nome:"Origin Story Pessoal",
      formato:"Carrossel 10 slides",
      ref:"@matheustomoto (4.020 likes) + @lucaspertusati (622 likes)",
      link_ref:"https://www.instagram.com/p/",
      impacto:"300–600 likes estimados",
      como_funciona:"Linha do tempo cronológica da trajetória pessoal. Cada slide = 1 marco. Começa no ponto mais difícil, termina no produto/resultado. Última linha sempre ancora no serviço.",
      copy_pronta: `Slide 1 (capa):
"Não foi fácil chegar até aqui."

Slide 2:
Aos [X], eu [situação difícil/humilde].

Slide 3:
Aos [X+2], [tentativa + resultado inesperado].

Slide 4:
Aos [X+4], [primeira virada — descoberta de bolsas].

Slide 5:
Aos [X+6], fui aprovada pela primeira vez.
[Instituição] + [benefício concreto].

Slide 6:
Aos [X+8], percebi que ninguém explicava isso em português de forma simples.

Slide 7:
Aos [X+10], ajudei o primeiro aluno a ser aprovado.
A sensação foi diferente de qualquer coisa que eu já tinha sentido.

Slide 8:
Hoje, [N] alunos depois,
cada aprovação ainda me dá aquela mesma sensação.

Slide 9:
Se eu pudesse voltar no tempo,
daria só um conselho para mim mesma:
Comece antes. O processo demora menos do que você imagina.

Slide 10 (CTA):
Se você quer aprender como funciona na prática —
comenta EU QUERO que eu te mando o link.`,
      trigger:"EU QUERO",
    },
    {
      id:"C02",
      nome:"Post de Oportunidade ONU/FAO",
      formato:"Post estático ou carrossel",
      ref:"@iuvenisoficial top post (514 likes em 3 dias)",
      link_ref:"",
      impacto:"400–600 likes / semana se feito toda segunda",
      como_funciona:"Instituição de prestígio + valor financeiro concreto + barreira baixa (sem IELTS, gratuito) + deadline específico. Trigger como PRIMEIRA linha antes de qualquer explicação.",
      copy_pronta: `Só comentar EU QUERO que te mando o link oficial 👇

Já pensou em [ação aspiracional] direto na sede de [INSTITUIÇÃO PRESTÍGIO]?

[NOME DO PROGRAMA] está com inscrições abertas para [DESCRIÇÃO BREVE].

O que inclui:
✅ [Benefício financeiro em moeda local — ex: US$700/mês]
✅ [Benefício 2 — ex: cobertura médica]
✅ [Diferencial — ex: sem IELTS, processo gratuito]
✅ [Rede e experiência internacional]

Quem pode se inscrever:
☑️ Brasileiro/cidadão de país membro
☑️ [Nível acadêmico]
☑️ [Área de estudo relevante]
☑️ Idade entre [X] e [Y] anos

📍 [Local] | ⏰ Inscrições até [DATA EXATA]

#onu #bolsa #intercambio #estudarfora #iuvenis`,
      trigger:"EU QUERO",
    },
    {
      id:"C03",
      nome:"Gancho 'Ganhar X na Cidade'",
      formato:"Reel ou carrossel",
      ref:"@partiuintercambio (629 likes) + @scholarshipscorner",
      link_ref:"",
      impacto:"500–800 likes estimados",
      como_funciona:"Concretiza o valor da bolsa em número real + cidade aspiracional. A pergunta cria curiosidade imediata. Resposta confirma no próximo slide. Funciona porque transforma bolsa abstrata em dinheiro real.",
      copy_pronta: `OPÇÕES DE GANCHO PRONTAS:

"Ganhar £1.800 por mês em Oxford estudando?
Sim — o Chevening paga."

"Receber €1.400 por mês na Europa fazendo mestrado?
É o que o Erasmus Mundus cobre."

"Ganhar $3.000 mensais fazendo PhD nos EUA de graça?
Fully-funded funciona assim."

"¥117.000 por mês morando no Japão?
O MEXT paga tudo — e ainda é pouco conhecido no Brasil."

"4 mil francos suíços por mês em Genebra?
Sim, é real. A OMC tem trainee internacional."

"€850 por mês fazendo mestrado na Alemanha?
O DAAD Helmut-Schmidt paga isso — e tem vagas abertas."

ESTRUTURA DO POST:
Slide 1: Pergunta com valor + cidade (cima)
Slide 2: "Sim. [NOME DA BOLSA] paga."
Slide 3: O que inclui + quem pode
Slide 4: Deadline
Slide 5: CTA — "Comenta EU QUERO"`,
      trigger:"EU QUERO",
    },
    {
      id:"C04",
      nome:"BRICS/China — Nicho Quente BR",
      formato:"Carrossel",
      ref:"@partiuintercambio (3.755 likes no post de Shanghai)",
      link_ref:"",
      impacto:"1.000–3.000 likes estimados (nicho subexplorado)",
      como_funciona:"Brasileiros têm acesso preferencial a programas BRICS porque o Brasil é membro. Pouquíssimo conteúdo em português sobre isso = alta curiosidade + baixa concorrência de posts. Gancho de surpresa é o motor.",
      copy_pronta: `Versão 1 — Shanghai:
"Quer passar um mês em Xangai estudando em
uma das melhores universidades da China?
Com tudo pago?"

Versão 2 — BRICS genérico:
"O Brasil é membro do BRICS. Isso dá direito
a bolsas que 99% dos brasileiros não conhecem."

Versão 3 — Provocação:
"Enquanto todo mundo briga por Fulbright e Erasmus,
tem países pagando mestrado completo para brasileiros
e quase ninguém está aplicando."
[Próximo slide: China, Colômbia, Turquia, Coreia]

Versão 4 — Específico:
"Shanghai Jiao Tong University.
Top 50 do mundo.
1 mês de imersão com tudo pago.
O Brasil é elegível por ser membro BRICS.
Prazo: [DATA]"

SÉRIE EDITORIAL:
Post 1 — China
Post 2 — Coreia do Sul (GKS)
Post 3 — Colômbia (Beca Colombia)
Post 4 — Turquia (Türkiye Bursları)
Post 5 — Índia (ICCR)
[= 5 posts de alto engajamento garantidos]`,
      trigger:"EU QUERO / CHINA / BRICS",
    },
    {
      id:"C05",
      nome:"Trigger SECRETA (exclusividade)",
      formato:"Qualquer",
      ref:"@lucaspertusati — 398 + 289 likes",
      link_ref:"",
      impacto:"+20% conversão vs trigger genérico (estimado)",
      como_funciona:"A palavra 'SECRETA' ativa o gatilho de exclusividade — quem comenta sente que vai receber algo especial que não está público. É psicologicamente mais poderoso do que 'LINK' ou 'QUERO' genérico.",
      copy_pronta: `APLICAÇÕES DIRETAS:

"Comenta SECRETA que eu te mando
o mapa completo das 40 bolsas abertas agora."

"Comenta SEGREDO que eu te mando
a lista de bolsas que aceitam TOEFL abaixo de 90."

"Comenta EXCLUSIVO que te envio
o cronograma exato do Fulbright 2027."

"Comenta INTERNO que te mando
os 3 documentos que separam aprovados de reprovados."

TESTE RECOMENDADO:
Semanas 1-2: postar com "EU QUERO"
Semanas 3-4: postar com "SECRETA"
→ Comparar taxa de comentários + conversão no ManyChat`,
      trigger:"SECRETA / SEGREDO / EXCLUSIVO",
    },
    {
      id:"C06",
      nome:"LIE List (desmistificação em lista)",
      formato:"Reel ou carrossel",
      ref:"@ivy_roadmap — padrão recorrente nos posts de alta performance",
      link_ref:"",
      impacto:"800–2.000 likes (provoca compartilhamento)",
      como_funciona:"Lista de mitos com 'MENTIRA' em vermelho. Provoca quem acredita nos mitos (eles comentam discordando) e valida quem já desconfia (eles salvam e compartilham). Alto alcance orgânico por engajamento de oposição.",
      copy_pronta: `Versão 1 — Geral:
"Tudo que te falaram sobre bolsas é mentira.

Precisa de inglês perfeito. MENTIRA.
Só quem estuda em USP consegue. MENTIRA.
O Fulbright é para quem tem publicações. MENTIRA.
Você precisa ter morado fora antes. MENTIRA.
O processo é longo demais pra começar agora. MENTIRA.

Comenta EU QUERO que te mando o guia real."

Versão 2 — Específica Fulbright:
"O que te disseram sobre o Fulbright que é mentira:

Precisa de doutorado. MENTIRA.
Só serve para áreas de humanas. MENTIRA.
TOEFL 100+ é obrigatório. MENTIRA.
Sem publicações acadêmicas você nem tenta. MENTIRA.
O processo leva mais de 2 anos. MENTIRA.

A verdade é diferente. Comenta FULBRIGHT."

Versão 3 — Intercâmbio:
"Sobre estudar fora de graça:

Só rico consegue. MENTIRA.
Inglês básico te elimina automaticamente. MENTIRA.
Você precisa ser o melhor da sua turma. MENTIRA.
Só funciona para quem já tem experiência internacional. MENTIRA.
Comenta EU QUERO e eu te mando o que funciona de verdade."`,
      trigger:"EU QUERO / nome da bolsa",
    },
    {
      id:"C07",
      nome:"Manifesto de Missão",
      formato:"Carrossel 6 slides",
      ref:"@gobrasa (570 likes — post mais curtido do perfil)",
      link_ref:"",
      impacto:"Alto compartilhamento por identificação de valores",
      como_funciona:"Post de identidade, não de informação. Quem se identifica com a missão compartilha para mostrar quem é. Gera seguidores mais fiéis que posts informativos. Publicar fixado no perfil.",
      copy_pronta: `Slide 1 (capa):
"Por que a Iuvenis existe."

Slide 2:
Acreditamos que todo brasileiro merece
uma chance nas melhores universidades do mundo —
independente de renda, de onde nasceu,
ou de quem conhece.

Slide 3:
Por anos, as melhores bolsas internacionais
ficaram restritas a quem tinha acesso à informação certa,
no momento certo, no idioma certo.

Isso estava errado.

Slide 4:
A Iuvenis existe para mudar isso.
Não com burocracia.
Não com promessas vazias.
Com mentoria real, informação clara
e acompanhamento do início ao fim.

Slide 5:
Cada aprovação de aluno nosso não é só uma bolsa.
É uma família que muda de trajetória.
É um Brasil diferente, construído um estudante de cada vez.

Slide 6 (CTA):
Se você acredita nisso também —
você está no lugar certo.
Comenta EU QUERO e começa agora.`,
      trigger:"EU QUERO",
    },
    {
      id:"C08",
      nome:"Série Educativa Numerada",
      formato:"Reel ou carrossel",
      ref:"@ultimateivyleagueguide — 7 posts com esse padrão",
      link_ref:"",
      impacto:"Série gera saves e retorno recorrente ao perfil",
      como_funciona:"Título com número + benefício claro. Pessoa sabe exatamente o que vai aprender. Cria hábito de consumo do perfil. Episódios numerados criam razão para seguir para não perder.",
      copy_pronta: `TÍTULOS PRONTOS POR SÉRIE:

SÉRIE — BOLSAS:
"5 bolsas abertas agora que aceitam TOEFL abaixo de 90"
"3 bolsas que a maioria dos brasileiros ignora e não deveria"
"6 bolsas que cobrem passagem, moradia e pagam salário mensal"
"4 diferenças entre Fulbright e Chevening que definem qual tentar"
"7 bolsas de curta duração (1-3 meses) com tudo pago"

SÉRIE — CANDIDATURA:
"3 hábitos de quem ganha bolsa que quem não ganha não tem"
"5 erros que eliminam 90% dos candidatos antes da entrevista"
"4 documentos que separam aprovados de reprovados no Fulbright"
"O checklist de 8 semanas antes do deadline que ninguém faz"

SÉRIE — PAÍSES:
"Japão vs Coreia: qual bolsa é melhor para você?"
"Europa vs EUA: 5 diferenças que definem onde candidatar"
"3 destinos inesperados com bolsa integral e quase sem concorrência"

FORMATO PADRÃO DE REEL:
Hook (3s): "[NÚMERO] [coisa surpreendente]"
Desenvolvimento: 1 item por corte, máx 8 segundos cada
CTA final: "Comenta [PALAVRA] para receber o guia completo"`,
      trigger:"BOLSA / nome específico da série",
    },
  ],

  // ── 3. ROTEIROS PRONTOS ────────────────────────────────────
  roteiros: [
    {
      id:"R01",
      titulo:"Reel — Post de Oportunidade (formato vencedor)",
      duracao:"30-45s",
      formato:"Talking head ou texto na tela",
      gancho_abertura:"[Pausa de 2s olhando para câmera] Você sabia que dá para fazer estágio na sede da ONU — em Roma — recebendo 700 dólares por mês? E sem precisar de IELTS?",
      corpo:`[Corte rápido]
Eu vou te contar tudo sobre o estágio da FAO —
que é uma das agências mais importantes da ONU.

[Slide ou texto na tela: FAO — Organização para Alimentação e Agricultura]

O programa está aberto agora para brasileiros.
Você precisa estar matriculado na graduação ou pós.
Não precisa ter experiência internacional prévia.
E o processo é 100% gratuito — sem IELTS.

[Corte]
O estágio dura até 11 meses,
pode ser em Roma ou em mais de 130 países,
e inclui cobertura médica e uma bolsa de até 700 dólares por mês.

[Corte — direto para câmera]
Se isso é algo que faz sentido pra você —
comenta EU QUERO aqui embaixo
que eu te mando o link oficial das inscrições.`,
      cta:"Comenta EU QUERO que te mando o link",
      obs:"Substituir FAO por qualquer oportunidade da mesma categoria. A estrutura funciona para qualquer bolsa ONU, Erasmus, DAAD, Fulbright etc.",
    },
    {
      id:"R02",
      titulo:"Reel — Desmistificação Fulbright",
      duracao:"45-60s",
      formato:"Talking head — tom direto, quase irritado",
      gancho_abertura:"Para de achar que você não pode aplicar pro Fulbright por causa do inglês. Isso é o maior mito que existe nesse nicho.",
      corpo:`[Corte — mais próximo da câmera]
Eu vou te mostrar o que o Fulbright realmente quer.

[Texto na tela: O Fulbright reprovou candidatos com TOEFL 115]
[Texto na tela: Aprovou candidatos com TOEFL 88]

A diferença não foi o inglês.

[Corte]
O Fulbright não está procurando o candidato mais fluente.
Está procurando o candidato com o propósito mais claro.

[Texto na tela: Propósito > Proficiência]

Qual é o impacto que você vai gerar
com essa experiência nos EUA?
É ESSA a pergunta que a banca quer responder.

[Corte — call to action]
Se você quer entender como o Fulbright realmente funciona —
comenta FULBRIGHT aqui embaixo
que eu te mando o guia completo.`,
      cta:"Comenta FULBRIGHT",
      obs:"Adaptar para qualquer bolsa: Chevening, Erasmus, DAAD. O padrão 'mito + verdade revelada + CTA' é universal.",
    },
    {
      id:"R03",
      titulo:"Carrossel — BRICS (China / Coreia / Colômbia)",
      duracao:"8-10 slides",
      formato:"Carrossel com fundo sólido + texto grande",
      gancho_abertura:"Capa: 'O Brasil é membro do BRICS. Isso dá direito a bolsas que 99% dos brasileiros não conhecem.'",
      corpo:`Slide 2:
O que ser membro do BRICS significa na prática:
programas acadêmicos nos países do bloco
reservam vagas específicas para cidadãos brasileiros.

Slide 3:
Mas quase ninguém fala sobre isso em português.
Resultado: pouquíssima concorrência de brasileiros.
Você tem uma vantagem real simplesmente por saber que existe.

Slide 4: 🇨🇳 CHINA
Shanghai BRICS Program — 1 mês em Xangai, tudo pago
Inclui: hospedagem, curso, seguro, traslado
Quem pode: graduação e pós + inglês intermediário

Slide 5: 🇰🇷 COREIA DO SUL
Global Korea Scholarship (GKS) — mestrado e doutorado integral
Inclui: mensalidade + moradia + KRW 900k/mês de bolsa
Competição mínima de brasileiros

Slide 6: 🇨🇴 COLÔMBIA
Beca Colombia 2026 — mestrado, especialização e espanhol
Inclui: mensalidade + bolsa mensal
Vantagem: próximo culturalmente + espanhol (não precisa de TOEFL)

Slide 7: 🇹🇷 TURQUIA
Türkiye Bursları — mestrado e doutorado completo
Inclui: mensalidade + moradia + TL 1.200/mês + seguro
Menos conhecida = menos concorrência

Slide 8:
Qual desses países você nunca tinha considerado?
Comenta o nome do país aqui embaixo
que eu te mando o guia específico.`,
      cta:"Comenta o nome do país (CHINA / COREIA / COLOMBIA / TURQUIA)",
      obs:"Cada país pode se tornar um post separado depois. A série rende pelo menos 4 posts de alto engajamento.",
    },
    {
      id:"R04",
      titulo:"Reel — Transformação 'Aos X anos'",
      duracao:"60-90s",
      formato:"Carrossel ou reel com texto na tela",
      gancho_abertura:"Capa: 'Não foi fácil chegar até aqui. Mas chegou.' [foto ou visual pessoal]",
      corpo:`[Linha do tempo pessoal da Maria — adaptar com história real]

Aos [X], eu achava que estudar fora era
para pessoas com família rica ou notas perfeitas.

Aos [X+2], fiz minha primeira candidatura.
Reprovou.
Não por falta de qualificação —
mas porque ninguém tinha me ensinado como funciona.

Aos [X+4], tentei de novo.
Dessa vez com a candidatura certa, no programa certo.
Aprovada.

Aos [X+6], comecei a ajudar a primeira pessoa.
Ela foi aprovada em 4 meses.

Hoje, [N] alunos depois,
cada aprovação ainda me lembra por que eu faço isso.

[Slide final]
Se você está onde eu estava —
não por falta de capacidade,
mas por falta de direção —
comenta EU QUERO que a gente conversa.`,
      cta:"Comenta EU QUERO",
      obs:"Este é o post mais importante a publicar. Deve ser o primeiro a sair e ser fixado no perfil.",
    },
    {
      id:"R05",
      titulo:"Reel — Comparação A vs B",
      duracao:"30-45s",
      formato:"Split screen ou slides alternados",
      gancho_abertura:"Dois candidatos para o Fulbright. Os dois têm mestrado. Os dois têm inglês avançado. Qual foi aprovado?",
      corpo:`[Perfil A na tela]
Candidato A: 3 publicações acadêmicas, TOEFL 108,
média 9.2, sem experiência profissional relevante.

[Perfil B na tela]
Candidato B: 0 publicações, TOEFL 91,
projeto social de 2 anos com impacto documentado,
carta de motivação com propósito específico.

[Pausa]
O Fulbright aprovou o candidato B.

[Corte direto para câmera]
Não porque o currículo era melhor.
Porque o propósito estava mais claro.

Comenta FULBRIGHT que te mando
o framework exato para construir esse propósito.`,
      cta:"Comenta FULBRIGHT",
      obs:"Adaptar para qualquer bolsa. O padrão comparação + virada inesperada + explicação funciona universalmente.",
    },
    {
      id:"R06",
      titulo:"Carrossel — 'Fui aprovado. E agora?' (gap de mercado)",
      duracao:"8 slides",
      formato:"Carrossel checklist",
      gancho_abertura:"Capa: 'Aprovado. Matrícula feita. Passagem comprada. Ainda faltam 3 meses. O que fazer agora?'",
      corpo:`Slide 2:
A maioria dos guias de estudar fora para
quando você é aprovado.
Mas é exatamente nesse momento que começa
a fase mais importante.

Slide 3 — Semana 1 após aprovação:
☑ Aceitar a oferta dentro do prazo (geralmente 2 semanas)
☑ Verificar tipo de visto necessário
☑ Abrir pasta de documentos digitais

Slide 4 — Mês 1:
☑ Solicitar visto com antecedência mínima de 60 dias
☑ Pesquisar moradia próxima à universidade
☑ Verificar se a bolsa inclui passagem aérea ou reembolso

Slide 5 — Mês 2:
☑ Abrir conta bancária no destino (ou internacional — Wise, Nomad)
☑ Verificar cobertura de saúde da bolsa
☑ Conectar com estudantes no mesmo programa (LinkedIn, grupos)

Slide 6 — Mês 3 (pré-embarque):
☑ Fazer lista de documentos em 3 cópias (físico + digital + nuvem)
☑ Avisar banco brasileiro sobre viagem
☑ Confirmar detalhes de chegada e alojamento

Slide 7:
Cada detalhe ignorado aqui
pode virar um problema sério lá fora.
Nenhum guia de bolsas te conta isso.

Slide 8 (CTA):
Comenta APROVADA/APROVADO que te mando
o checklist completo em PDF para baixar.`,
      cta:"Comenta APROVADA / APROVADO",
      obs:"Nicho 100% inexplorado. Nenhum concorrente cobre o pós-aprovação. Vai gerar saves altíssimos e compartilhamentos entre aprovados.",
    },
  ],

  // ── 4. PILARES EDITORIAIS ──────────────────────────────────
  pilares: [
    {
      id:"P1",
      nome:"Oportunidades abertas",
      freq:"2x por semana (seg + qui)",
      desc:"Posts de bolsas, estágios, programas com deadline real. Fórmula: Instituição + Valor $ + Sem barreiras + EU QUERO.",
      exemplos:["FAO/ONU estágio Roma — US$700/mês", "DAAD Alemanha — €850/mês", "GKS Coreia — mestrado integral"],
      cor:"#0891b2",
    },
    {
      id:"P2",
      nome:"Desmistificação",
      freq:"1x por semana (ter)",
      desc:"Derruba mitos sobre bolsas e intercâmbio. Formatos: LIE list, dado-virada, provocação CAPS. Alto alcance por oposição.",
      exemplos:["Inglês básico te elimina. MENTIRA.", "Sem publicações você não consegue Fulbright. MENTIRA.", "Precisa ser o melhor da turma. MENTIRA."],
      cor:"#dc2626",
    },
    {
      id:"P3",
      nome:"Educação + Comparação",
      freq:"1x por semana (qua)",
      desc:"Conteúdo que ensina e compara. Listas numeradas, A vs B, série de países. Gera saves e retorno ao perfil.",
      exemplos:["Fulbright vs Chevening: 4 diferenças", "Japão vs Coreia: qual bolsa para você?", "3 hábitos de quem ganha bolsa"],
      cor:"#7c3aed",
    },
    {
      id:"P4",
      nome:"Cases de alunos",
      freq:"1x por semana (sex)",
      desc:"História real de aluno aprovado. Humaniza o serviço e é prova social concreta. Melhor formato: reel de depoimento.",
      exemplos:["Como [nome] foi aprovada no Erasmus com inglês B1", "De Campo Grande para Oxford — história do [nome]"],
      cor:"#16a34a",
    },
    {
      id:"P5",
      nome:"Missão e identidade",
      freq:"1x por mês",
      desc:"Manifesto, marcos da Iuvenis, bastidores. Gera seguidores fiéis, não só curiosos. Publica após cada marco importante.",
      exemplos:["Manifesto Iuvenis — por que existimos", "100 alunos aprovados", "Origin story da Maria"],
      cor:"#ca8a04",
    },
    {
      id:"P6",
      nome:"Ofertas diretas (ManyChat)",
      freq:"1-2x por semana integrado aos outros pilares",
      desc:"Todo post dos outros pilares pode ter uma versão com CTA 'EU QUERO' acoplado. Não é pilar separado — é camada.",
      exemplos:["Comenta EU QUERO → link da oportunidade", "Comenta FULBRIGHT → guia PDF", "Comenta BRICS → lista de 5 programas"],
      cor:"var(--accent)",
    },
  ],

  // ── 5. INOVAR ─────────────────────────────────────────────
  inovar: [
    {
      id:"I01",
      nome:"Série 'Fui aprovado. E agora?'",
      status:"Gap total — nenhum concorrente faz",
      potencial:"muito alto",
      desc:"Guia completo do pós-aprovação: visto, moradia, conta bancária, chegada, adaptação. Salvo por quem foi aprovado e compartilhado para quem quer ser. Audiência altamente qualificada.",
      como_comecar:"Publicar o carrossel R06 (roteiro pronto acima). Medir saves. Se >100 saves, virar série de 4 posts.",
    },
    {
      id:"I02",
      nome:"Bolsas para mulheres — série dedicada",
      status:"@estudarfora fez 1 post. Ninguém faz série.",
      potencial:"alto",
      desc:"Segmentação por gênero gera compartilhamentos mulher-para-mulher. Uma série mensal de bolsas específicas para mulheres (Oxford 50%, AAUW, Cartier Impact...) pode criar uma audiência própria e leal.",
      como_comecar:"Post: 'Bolsas que dão prioridade para mulheres brasileiras' — listar 5 com deadline e valor.",
    },
    {
      id:"I03",
      nome:"'Quão longe vai o seu dinheiro' — custo de vida por cidade",
      status:"Nenhum concorrente faz sistematicamente",
      potencial:"alto",
      desc:"Não é sobre bolsa — é sobre o que a bolsa significa na prática. 'Com a bolsa do DAAD você paga aluguel, comida e ainda sobra €200. Veja como é o custo de vida em Berlim.' Tangibiliza a oportunidade.",
      como_comecar:"Post: 'O que €850/mês cobre em Berlim' com breakdown real de custo de vida.",
    },
    {
      id:"I04",
      nome:"Bastidores de candidatura em tempo real",
      status:"Inexistente no nicho BR",
      potencial:"médio-alto",
      desc:"Acompanhar um aluno (com permissão) ao vivo durante 30-60 dias de candidatura. Stories diários: 'Hoje ele enviou o SOP', 'chegou a carta de recomendação', 'resultado amanhã'. Gera expectativa e engajamento recorrente.",
      como_comecar:"Selecionar 1 aluno voluntário. Criar destaque 'Candidatura ao vivo' nos stories.",
    },
    {
      id:"I05",
      nome:"Quiz 'Qual bolsa é para você?' como conteúdo orgânico",
      status:"Já existe como ferramenta no site — nunca virou post",
      potencial:"alto",
      desc:"Transformar o quiz em reel interativo. 'Responde nos comentários: qual é seu nível de inglês + sua área? Eu te digo qual bolsa é certa para você.' Gera comentários massivos e segmentação natural.",
      como_comecar:"Reel: 'Comenta sua área de estudo + país preferido que eu te indico a bolsa certa para você'.",
    },
    {
      id:"I06",
      nome:"Série 'A bolsa que ninguém conta'",
      status:"Espaço aberto",
      potencial:"alto",
      desc:"Bolsas pouco conhecidas no Brasil mas com altíssima qualidade e pouquíssima concorrência. Romênia, Eslováquia, Hungria, Índia. O ângulo de surpresa + baixa concorrência = alto compartilhamento.",
      como_comecar:"Post: '5 bolsas que aceitam brasileiros e você nunca ouviu falar' com valores e links.",
    },
    {
      id:"I07",
      nome:"Vida depois da bolsa — o que acontece depois",
      status:"Inexistente no nicho",
      potencial:"médio",
      desc:"Alumni da Iuvenis contam como a experiência mudou carreira, salário, perspectiva. Não é 'como eu fui aprovado' — é 'como isso transformou minha vida 2 anos depois'. Ancoragem de longo prazo no produto.",
      como_comecar:"Entrevistar 2-3 alunos que concluíram o programa há +1 ano. Formato: carrossel ou reel.",
    },
  ],

  // ── 6. CALENDÁRIO SUGERIDO ────────────────────────────────
  calendario_semana: [
    { dia:"Segunda", pilar:"P1 — Oportunidade", formato:"Post/carrossel", titulo:"Oportunidade da semana — [Instituição + valor]", trigger:"EU QUERO" },
    { dia:"Terça",   pilar:"P2 — Desmistificação", formato:"Reel", titulo:"[Mito sobre bolsa] — MENTIRA. A verdade é:", trigger:"EU QUERO / nome bolsa" },
    { dia:"Quarta",  pilar:"P3 — Educação", formato:"Carrossel educativo", titulo:"[Número] [coisa sobre bolsas que vale saber]", trigger:"GUIA / nome bolsa" },
    { dia:"Quinta",  pilar:"P1 — Oportunidade", formato:"Post de urgência", titulo:"Deadline se aproximando — [Bolsa] fecha em [X dias]", trigger:"EU QUERO" },
    { dia:"Sexta",   pilar:"P4 — Case de aluno", formato:"Reel ou carrossel", titulo:"Como [nome] foi de [situação] para [resultado]", trigger:"EU QUERO / MENTORIA" },
    { dia:"Sábado",  pilar:"P3 — Série BRICS", formato:"Carrossel", titulo:"[País inesperado] tem bolsa integral para brasileiros", trigger:"nome do país" },
    { dia:"Domingo", pilar:"Repost/Engajamento", formato:"Story reposta", titulo:"Repostar post de melhor performance da semana", trigger:"—" },
  ],
};

// ============================================================
// Componentes
// ============================================================

function IntelTabs({ aba, setAba }) {
  const tabs = [
    { id:"diagnostico", label:"Diagnóstico" },
    { id:"copiar",      label:"O que copiar" },
    { id:"roteiros",    label:"Roteiros prontos" },
    { id:"pilares",     label:"Pilares & calendário" },
    { id:"inovar",      label:"Inovar" },
  ];
  return (
    <div style={{ display:"flex", gap:8, marginBottom:28, flexWrap:"wrap" }}>
      {tabs.map(t => (
        <button key={t.id} onClick={() => setAba(t.id)}
          style={{ padding:"8px 18px", borderRadius:8, border:"1px solid var(--border)",
            background: aba === t.id ? "var(--accent)" : "var(--card-bg)",
            color: aba === t.id ? "#fff" : "var(--text-2)",
            cursor:"pointer", fontSize:13, fontWeight: aba === t.id ? 600 : 400 }}>
          {t.label}
        </button>
      ))}
    </div>
  );
}

function UrgBadge({ u }) {
  const map = { crítico:["#fee2e2","#dc2626"], alto:["#fef3c7","#d97706"], médio:["#dcfce7","#16a34a"] };
  const [bg, fg] = map[u] || map["médio"];
  return <span style={{ fontSize:11, padding:"2px 8px", borderRadius:99, background:bg, color:fg, fontWeight:700, textTransform:"uppercase" }}>{u}</span>;
}

function PotencialBadge({ p }) {
  const map = { "muito alto":["#f0fdf4","#15803d"], alto:["#eff6ff","#1d4ed8"], "médio-alto":["#faf5ff","#7e22ce"], médio:["#fefce8","#a16207"] };
  const [bg, fg] = map[p] || ["#f3f4f6","#374151"];
  return <span style={{ fontSize:11, padding:"2px 8px", borderRadius:99, background:bg, color:fg, fontWeight:700 }}>{p}</span>;
}

function CopyBtn({ text }) {
  const [ok, setOk] = React.useState(false);
  return (
    <button onClick={() => { navigator.clipboard.writeText(text); setOk(true); setTimeout(() => setOk(false), 1800); }}
      style={{ fontSize:11, padding:"5px 12px", borderRadius:6, border:"1px solid var(--border)",
        background: ok ? "#dcfce7" : "var(--card-bg)", color: ok ? "#16a34a" : "var(--text-3)",
        cursor:"pointer", fontWeight:600, whiteSpace:"nowrap", transition:"all .15s" }}>
      {ok ? "✓ copiado" : "copiar"}
    </button>
  );
}

function AbaDignostico() {
  return (
    <div style={{ display:"flex", flexDirection:"column", gap:20 }}>
      {/* Benchmark */}
      <div>
        <div style={{ fontSize:14, fontWeight:700, marginBottom:14 }}>Benchmark de engajamento — top post por perfil</div>
        <div style={{ display:"flex", flexDirection:"column", gap:6 }}>
          {INTEL.benchmark.map(p => (
            <div key={p.handle} style={{ display:"flex", alignItems:"center", gap:16, background:"var(--card-bg)", border:`1px solid ${p.handle === "@iuvenisoficial" ? "var(--accent)" : "var(--border)"}`, borderRadius:10, padding:"12px 18px" }}>
              <div style={{ width:8, height:8, borderRadius:"50%", background:p.cor, flexShrink:0 }}/>
              <div style={{ flex:1, fontWeight: p.handle === "@iuvenisoficial" ? 700 : 400, fontSize:13 }}>{p.handle}</div>
              <div style={{ fontSize:12, color:"var(--text-3)", width:100 }}>{p.tipo}</div>
              <div style={{ fontSize:12, color:"var(--text-3)", width:60 }}>{p.seg}</div>
              <div style={{ fontSize:14, fontWeight:700, width:80, textAlign:"right", color: p.handle === "@iuvenisoficial" ? "var(--accent)" : "var(--text-1)" }}>
                {p.topLikes ? p.topLikes.toLocaleString("pt-BR") : "N/D"}
              </div>
              <div style={{ fontSize:12, fontWeight:600, width:60, textAlign:"right", color: p.gap === "base" ? "var(--accent)" : p.cor }}>{p.gap}</div>
            </div>
          ))}
        </div>
        <div style={{ marginTop:8, fontSize:12, color:"var(--text-3)", textAlign:"right" }}>
          * Gap calculado sobre o top post da Iuvenis (514 likes em 3 dias · 02/06/2026)
        </div>
      </div>

      {/* Gaps críticos */}
      <div>
        <div style={{ fontSize:14, fontWeight:700, marginBottom:14 }}>3 gaps críticos identificados</div>
        <div style={{ display:"flex", flexDirection:"column", gap:12 }}>
          {INTEL.diagnostico.top3_gaps.map((g, i) => (
            <div key={i} style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"16px 20px" }}>
              <div style={{ display:"flex", justifyContent:"space-between", alignItems:"flex-start", marginBottom:8 }}>
                <div style={{ fontWeight:700, fontSize:14 }}>{i+1}. {g.titulo}</div>
                <UrgBadge u={g.urgencia}/>
              </div>
              <div style={{ fontSize:13, color:"var(--text-2)", lineHeight:1.7 }}>{g.desc}</div>
            </div>
          ))}
        </div>
      </div>

      {/* Pontos fortes */}
      <div>
        <div style={{ fontSize:14, fontWeight:700, marginBottom:12 }}>O que já está funcionando</div>
        <div style={{ display:"grid", gridTemplateColumns:"1fr 1fr", gap:8 }}>
          {INTEL.diagnostico.pontos_fortes.map((p, i) => (
            <div key={i} style={{ background:"#f0fdf4", border:"1px solid #bbf7d0", borderRadius:8, padding:"12px 14px", fontSize:13, color:"#166534", lineHeight:1.6 }}>
              ✓ {p}
            </div>
          ))}
        </div>
      </div>
    </div>
  );
}

function AbaCopiar() {
  const [sel, setSel] = React.useState(null);
  if (sel) {
    const c = INTEL.copiar.find(x => x.id === sel);
    return (
      <div>
        <button onClick={() => setSel(null)} style={{ background:"none", border:"none", color:"var(--accent)", cursor:"pointer", fontSize:13, marginBottom:20, padding:0 }}>← Voltar</button>
        <div style={{ marginBottom:20 }}>
          <div style={{ fontSize:20, fontWeight:800, marginBottom:4 }}>{c.nome}</div>
          <div style={{ fontSize:13, color:"var(--text-3)" }}>{c.formato} · Ref: {c.ref}</div>
        </div>
        <div style={{ display:"grid", gridTemplateColumns:"1fr 1fr", gap:16, marginBottom:20 }}>
          <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"14px 16px" }}>
            <div style={{ fontSize:11, color:"var(--text-3)", marginBottom:4 }}>Impacto estimado</div>
            <div style={{ fontSize:14, fontWeight:700, color:"var(--accent)" }}>{c.impacto}</div>
          </div>
          <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"14px 16px" }}>
            <div style={{ fontSize:11, color:"var(--text-3)", marginBottom:4 }}>Trigger ManyChat</div>
            <div style={{ fontSize:14, fontWeight:700 }}>{c.trigger}</div>
          </div>
        </div>
        <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"16px 20px", marginBottom:16 }}>
          <div style={{ fontSize:13, fontWeight:700, marginBottom:8 }}>Como funciona</div>
          <div style={{ fontSize:13, color:"var(--text-2)", lineHeight:1.8 }}>{c.como_funciona}</div>
        </div>
        <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"16px 20px" }}>
          <div style={{ display:"flex", justifyContent:"space-between", alignItems:"center", marginBottom:12 }}>
            <div style={{ fontSize:13, fontWeight:700 }}>Copy pronta para usar</div>
            <CopyBtn text={c.copy_pronta}/>
          </div>
          <pre style={{ fontSize:12, color:"var(--text-2)", lineHeight:1.9, whiteSpace:"pre-wrap", fontFamily:"var(--font-mono, monospace)", margin:0, background:"var(--bg)", padding:"16px", borderRadius:8 }}>{c.copy_pronta}</pre>
        </div>
      </div>
    );
  }
  return (
    <div style={{ display:"flex", flexDirection:"column", gap:12 }}>
      <div style={{ fontSize:13, color:"var(--text-3)", marginBottom:4 }}>
        {INTEL.copiar.length} padrões comprovados identificados em 11 perfis. Clique para ver a copy pronta.
      </div>
      {INTEL.copiar.map(c => (
        <div key={c.id} onClick={() => setSel(c.id)}
          style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:12, padding:"16px 20px", cursor:"pointer", transition:"border-color .15s" }}
          onMouseEnter={e => e.currentTarget.style.borderColor = "var(--accent)"}
          onMouseLeave={e => e.currentTarget.style.borderColor = "var(--border)"}>
          <div style={{ display:"flex", justifyContent:"space-between", alignItems:"flex-start", marginBottom:8 }}>
            <div>
              <div style={{ fontWeight:700, fontSize:14 }}>{c.nome}</div>
              <div style={{ fontSize:12, color:"var(--text-3)", marginTop:2 }}>{c.formato}</div>
            </div>
            <div style={{ textAlign:"right" }}>
              <div style={{ fontSize:13, fontWeight:600, color:"var(--accent)" }}>{c.impacto}</div>
              <div style={{ fontSize:11, color:"var(--text-3)", marginTop:2 }}>trigger: {c.trigger}</div>
            </div>
          </div>
          <div style={{ fontSize:12, color:"var(--text-3)", borderLeft:"3px solid var(--accent)", paddingLeft:10, lineHeight:1.6 }}>
            Ref: {c.ref}
          </div>
        </div>
      ))}
    </div>
  );
}

function AbaRoteiros() {
  const [sel, setSel] = React.useState(null);
  if (sel) {
    const r = INTEL.roteiros.find(x => x.id === sel);
    return (
      <div>
        <button onClick={() => setSel(null)} style={{ background:"none", border:"none", color:"var(--accent)", cursor:"pointer", fontSize:13, marginBottom:20, padding:0 }}>← Voltar</button>
        <div style={{ marginBottom:20 }}>
          <div style={{ fontSize:20, fontWeight:800, marginBottom:4 }}>{r.titulo}</div>
          <div style={{ fontSize:13, color:"var(--text-3)" }}>{r.formato} · Duração: {r.duracao}</div>
        </div>
        <div style={{ background:"#fef3c7", border:"1px solid #fcd34d", borderRadius:10, padding:"14px 16px", marginBottom:16, fontSize:13, color:"#92400e", lineHeight:1.6 }}>
          <strong>Gancho de abertura:</strong> "{r.gancho_abertura}"
        </div>
        <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"16px 20px", marginBottom:12 }}>
          <div style={{ display:"flex", justifyContent:"space-between", alignItems:"center", marginBottom:12 }}>
            <div style={{ fontSize:13, fontWeight:700 }}>Roteiro completo</div>
            <CopyBtn text={r.gancho_abertura + "\n\n" + r.corpo + "\n\n" + r.cta}/>
          </div>
          <pre style={{ fontSize:12, color:"var(--text-2)", lineHeight:1.9, whiteSpace:"pre-wrap", fontFamily:"var(--font-mono, monospace)", margin:0, background:"var(--bg)", padding:"16px", borderRadius:8 }}>{r.corpo}</pre>
        </div>
        <div style={{ display:"grid", gridTemplateColumns:"1fr 1fr", gap:12 }}>
          <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"14px 16px" }}>
            <div style={{ fontSize:11, color:"var(--text-3)", marginBottom:4 }}>CTA final</div>
            <div style={{ fontSize:14, fontWeight:700 }}>{r.cta}</div>
          </div>
          <div style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"14px 16px" }}>
            <div style={{ fontSize:11, color:"var(--text-3)", marginBottom:4 }}>Observação estratégica</div>
            <div style={{ fontSize:12, color:"var(--text-2)", lineHeight:1.6 }}>{r.obs}</div>
          </div>
        </div>
      </div>
    );
  }
  return (
    <div style={{ display:"flex", flexDirection:"column", gap:12 }}>
      <div style={{ fontSize:13, color:"var(--text-3)", marginBottom:4 }}>
        {INTEL.roteiros.length} roteiros prontos para gravar ou postar. Clique para ver o script completo.
      </div>
      {INTEL.roteiros.map(r => (
        <div key={r.id} onClick={() => setSel(r.id)}
          style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:12, padding:"16px 20px", cursor:"pointer", transition:"border-color .15s" }}
          onMouseEnter={e => e.currentTarget.style.borderColor = "var(--accent)"}
          onMouseLeave={e => e.currentTarget.style.borderColor = "var(--border)"}>
          <div style={{ display:"flex", justifyContent:"space-between", alignItems:"flex-start", marginBottom:8 }}>
            <div>
              <div style={{ fontWeight:700, fontSize:14 }}>{r.titulo}</div>
              <div style={{ fontSize:12, color:"var(--text-3)", marginTop:2 }}>{r.formato} · {r.duracao}</div>
            </div>
            <div style={{ fontSize:11, padding:"3px 10px", borderRadius:99, background:"var(--bg)", color:"var(--text-3)", fontWeight:600 }}>CTA: {r.cta.split(" ").slice(1, 3).join(" ")}</div>
          </div>
          <div style={{ fontSize:12, color:"var(--text-2)", fontStyle:"italic", background:"var(--bg)", borderRadius:6, padding:"8px 10px" }}>
            "{r.gancho_abertura.slice(0, 100)}{r.gancho_abertura.length > 100 ? "..." : ""}"
          </div>
        </div>
      ))}
    </div>
  );
}

function AbaPilares() {
  return (
    <div style={{ display:"flex", flexDirection:"column", gap:24 }}>
      {/* Pilares */}
      <div>
        <div style={{ fontSize:14, fontWeight:700, marginBottom:14 }}>6 pilares editoriais da Iuvenis</div>
        <div style={{ display:"grid", gridTemplateColumns:"1fr 1fr 1fr", gap:12 }}>
          {INTEL.pilares.map(p => (
            <div key={p.id} style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:12, padding:"16px 18px" }}>
              <div style={{ display:"flex", justifyContent:"space-between", alignItems:"flex-start", marginBottom:10 }}>
                <div style={{ width:10, height:10, borderRadius:"50%", background:p.cor, flexShrink:0, marginTop:4 }}/>
                <span style={{ fontSize:11, color:"var(--text-3)", fontWeight:600 }}>{p.freq}</span>
              </div>
              <div style={{ fontWeight:700, fontSize:14, marginBottom:6 }}>{p.nome}</div>
              <div style={{ fontSize:12, color:"var(--text-2)", lineHeight:1.6, marginBottom:12 }}>{p.desc}</div>
              <div style={{ display:"flex", flexDirection:"column", gap:4 }}>
                {p.exemplos.map((ex, i) => (
                  <div key={i} style={{ fontSize:11, color:"var(--text-3)", padding:"4px 8px", background:"var(--bg)", borderRadius:4 }}>"{ex}"</div>
                ))}
              </div>
            </div>
          ))}
        </div>
      </div>

      {/* Calendário semanal */}
      <div>
        <div style={{ fontSize:14, fontWeight:700, marginBottom:14 }}>Calendário semanal sugerido</div>
        <div style={{ display:"flex", flexDirection:"column", gap:8 }}>
          {INTEL.calendario_semana.map(d => (
            <div key={d.dia} style={{ display:"grid", gridTemplateColumns:"80px 1fr 160px 140px", gap:12, alignItems:"center", background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:10, padding:"12px 16px" }}>
              <div style={{ fontWeight:700, fontSize:13 }}>{d.dia}</div>
              <div>
                <div style={{ fontSize:13, fontWeight:600, marginBottom:2 }}>{d.titulo}</div>
                <div style={{ fontSize:11, color:"var(--text-3)" }}>{d.formato}</div>
              </div>
              <div style={{ fontSize:12, color:"var(--text-3)" }}>{d.pilar}</div>
              <div style={{ fontSize:12, fontWeight:600, color:"var(--accent)", textAlign:"right" }}>{d.trigger}</div>
            </div>
          ))}
        </div>
      </div>
    </div>
  );
}

function AbaInovar() {
  return (
    <div style={{ display:"flex", flexDirection:"column", gap:12 }}>
      <div style={{ background:"#eff6ff", border:"1px solid #bfdbfe", borderRadius:10, padding:"14px 18px", fontSize:13, color:"#1e40af", lineHeight:1.7 }}>
        <strong>O que é esta aba:</strong> oportunidades que nenhum concorrente está explorando hoje. Aqui a Iuvenis pode ser a primeira a criar o padrão — em vez de seguir o que já existe.
      </div>
      {INTEL.inovar.map(item => (
        <div key={item.id} style={{ background:"var(--card-bg)", border:"1px solid var(--border)", borderRadius:12, padding:"18px 20px" }}>
          <div style={{ display:"flex", justifyContent:"space-between", alignItems:"flex-start", marginBottom:10 }}>
            <div style={{ fontWeight:700, fontSize:15 }}>{item.nome}</div>
            <PotencialBadge p={item.potencial}/>
          </div>
          <div style={{ fontSize:12, fontWeight:600, color:"var(--text-3)", marginBottom:10, padding:"4px 10px", background:"var(--bg)", borderRadius:6, display:"inline-block" }}>
            {item.status}
          </div>
          <div style={{ fontSize:13, color:"var(--text-2)", lineHeight:1.8, marginBottom:12 }}>{item.desc}</div>
          <div style={{ borderTop:"1px solid var(--border)", paddingTop:12 }}>
            <span style={{ fontSize:11, fontWeight:700, color:"var(--accent)", textTransform:"uppercase", letterSpacing:0.5 }}>Como começar: </span>
            <span style={{ fontSize:13, color:"var(--text-2)" }}>{item.como_comecar}</span>
          </div>
        </div>
      ))}
    </div>
  );
}

// ============================================================
// Page principal
// ============================================================
function PageIntelEstrategica() {
  const [aba, setAba] = React.useState("diagnostico");
  return (
    <div style={{ maxWidth:960, margin:"0 auto" }}>
      {/* Header card */}
      <div style={{ background:"linear-gradient(135deg, var(--accent) 0%, #0369a1 100%)", borderRadius:16, padding:"24px 32px", marginBottom:28, color:"#fff" }}>
        <div style={{ fontSize:12, fontWeight:600, opacity:.8, marginBottom:6, textTransform:"uppercase", letterSpacing:1 }}>
          Inteligência de conteúdo · 11 perfis analisados · 05/06/2026
        </div>
        <div style={{ fontSize:22, fontWeight:800, marginBottom:6 }}>
          Estratégia editorial baseada em dados reais
        </div>
        <div style={{ fontSize:13, opacity:.85, lineHeight:1.7 }}>
          Padrões vencedores identificados em 11 perfis do nicho · Copy pronta · Roteiros · Pilares · O que inovar
        </div>
        <div style={{ display:"flex", gap:24, marginTop:16 }}>
          {[
            { v:INTEL.copiar.length, l:"padrões para copiar" },
            { v:INTEL.roteiros.length, l:"roteiros prontos" },
            { v:INTEL.pilares.length, l:"pilares editoriais" },
            { v:INTEL.inovar.length, l:"oportunidades de inovar" },
          ].map(s => (
            <div key={s.l}>
              <div style={{ fontSize:24, fontWeight:800 }}>{s.v}</div>
              <div style={{ fontSize:11, opacity:.8 }}>{s.l}</div>
            </div>
          ))}
        </div>
      </div>

      <IntelTabs aba={aba} setAba={setAba}/>

      {aba === "diagnostico" && <AbaDignostico/>}
      {aba === "copiar"      && <AbaCopiar/>}
      {aba === "roteiros"    && <AbaRoteiros/>}
      {aba === "pilares"     && <AbaPilares/>}
      {aba === "inovar"      && <AbaInovar/>}
    </div>
  );
}
