/* global React, useT, useLocale */

const LAST_UPDATED = {
  pt: '29 de abril de 2026',
  en: 'April 29, 2026',
  es: '29 de abril de 2026',
};
const CONTACT_EMAIL = 'contato@vermeuip.com';

// ── Privacy Policy content per locale ─────────────────────────────────────
const PRIVACY = {
  pt: {
    title: 'Política de Privacidade',
    toc: [
      'Quem somos', 'Quais dados coletamos', 'Cookies e tecnologias similares',
      'Google Analytics', 'Google AdSense e parceiros', 'Armazenamento local (localStorage)',
      'Compartilhamento de dados', 'Transferência internacional', 'Seus direitos (LGPD / RGPD)',
      'Alterações desta política', 'Contato',
    ],
    sections: [
      { h: '1. Quem somos', body: [
        ['p', 'O <b>Ver meu IP</b> (vermeuip.com) é um site de ferramentas gratuitas de rede. Esta política descreve como tratamos seus dados em conformidade com a <b>Lei Geral de Proteção de Dados (LGPD — Lei 13.709/2018)</b> do Brasil e o <b>Regulamento Geral de Proteção de Dados (RGPD/GDPR — Regulamento UE 2016/679)</b> aplicável a Portugal e demais países da UE.'],
      ]},
      { h: '2. Quais dados coletamos', body: [
        ['p', 'Tratamos o mínimo de dados necessário para oferecer o serviço:'],
        ['ul', [
          '<b>Endereço IP público:</b> exibido no momento da consulta, mas <b>não armazenado</b> em banco de dados.',
          '<b>Geolocalização aproximada:</b> derivada do seu IP (cidade, estado, país, ISP, ASN). Não armazenada.',
          '<b>Dados de navegação anônimos:</b> via Google Analytics (Seção 4) — sempre com IP anonimizado.',
          '<b>Domínios e IPs consultados:</b> processados em tempo real, não vinculados ao seu IP.',
        ]],
        ['p', '<b>Não coletamos:</b> nome, e-mail, telefone, CPF, dados bancários ou geolocalização precisa por GPS.'],
      ]},
      { h: '3. Cookies e tecnologias similares', body: [
        ['ul', [
          '<b>Cookies essenciais:</b> mantêm a aplicação funcionando. Não exigem consentimento.',
          '<b>Cookies analíticos (Google Analytics):</b> carregados <b>somente após seu consentimento</b>.',
          '<b>Cookies de publicidade (Google AdSense):</b> também só após consentimento.',
        ]],
        ['p', 'Você pode revogar o consentimento a qualquer momento limpando os dados do navegador.'],
      ]},
      { h: '4. Google Analytics', body: [
        ['p', 'Usamos o <b>Google Analytics 4 (GA4)</b> com:'],
        ['ul', [
          '<b>Anonimização de IP</b> habilitada.',
          'Sinais do Google (Google Signals) <b>desativados</b>.',
          'Compartilhamento com outros produtos Google <b>desativado</b>.',
          'Período de retenção: <b>14 meses</b>.',
        ]],
        ['p', 'Você pode optar por não ser rastreado pelo <a href="https://tools.google.com/dlpage/gaoptout" target="_blank" rel="noopener">complemento de desativação</a>.'],
      ]},
      { h: '5. Google AdSense e parceiros', body: [
        ['p', 'Para manter o serviço gratuito, exibimos anúncios via Google AdSense. Você pode desativar a publicidade personalizada em <a href="https://adssettings.google.com" target="_blank" rel="noopener">adssettings.google.com</a> ou <a href="https://www.youronlinechoices.eu" target="_blank" rel="noopener">youronlinechoices.eu</a>.'],
        ['p', 'Eventuais links de afiliado (ex.: VPNs) são identificados como <i>"Patrocinado · link de afiliado"</i>.'],
      ]},
      { h: '6. Armazenamento local (localStorage)', body: [
        ['p', 'O site grava no seu navegador (sem enviar nada para nossos servidores):'],
        ['ul', [
          '<code>vermeip:theme</code> — tema escolhido (claro/escuro).',
          '<code>vermeip:locale</code> — idioma escolhido.',
          '<code>vermeip:history</code> — últimas 12 consultas.',
          '<code>vermeip:rl</code> — controle local de limite de verificações.',
          '<code>vermeip:cookies-consent</code> — registro do consentimento.',
        ]],
      ]},
      { h: '7. Compartilhamento de dados', body: [
        ['p', 'Não vendemos seus dados. Compartilhamos apenas com:'],
        ['ul', [
          '<b>Google LLC</b> (Analytics, AdSense, Fonts).',
          '<b>ip-api.com</b> (provedor de geolocalização).',
          '<b>Servidores DNS / WHOIS públicos</b>, ao usar as ferramentas correspondentes.',
        ]],
      ]},
      { h: '8. Transferência internacional', body: [
        ['p', 'Algumas ferramentas (Google, ip-api.com) podem processar dados em servidores fora do Brasil ou da UE, em países com nível adequado de proteção ou com cláusulas contratuais padrão (art. 33 LGPD / art. 46 RGPD).'],
      ]},
      { h: '9. Seus direitos (LGPD / RGPD)', body: [
        ['p', 'Você tem direito a:'],
        ['ul', [
          'Confirmar a existência de tratamento, acessar e corrigir seus dados.',
          'Solicitar anonimização, bloqueio ou eliminação.',
          'Solicitar portabilidade.',
          'Revogar o consentimento a qualquer momento.',
          'Apresentar reclamação à <b>ANPD</b> (Brasil) ou à <b>CNPD</b> (Portugal).',
        ]],
        ['p', `Para exercer esses direitos: <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>. Resposta em até 15 dias.`],
      ]},
      { h: '10. Alterações desta política', body: [
        ['p', 'Podemos atualizar esta política. A data acima indica a última alteração. Mudanças relevantes serão comunicadas em destaque na página inicial por pelo menos 30 dias.'],
      ]},
      { h: '11. Contato', body: [
        ['p', `Encarregado de Proteção de Dados (DPO): <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>.`],
      ]},
    ],
  },

  en: {
    title: 'Privacy Policy',
    toc: [
      'Who we are', 'What data we collect', 'Cookies and similar technologies',
      'Google Analytics', 'Google AdSense and partners', 'Local storage (localStorage)',
      'Data sharing', 'International transfer', 'Your rights (LGPD / GDPR)',
      'Changes to this policy', 'Contact',
    ],
    sections: [
      { h: '1. Who we are', body: [
        ['p', '<b>Ver meu IP</b> (vermeuip.com) is a free network tools website. This policy describes how we handle your data in compliance with Brazil\'s <b>General Data Protection Law (LGPD — Law 13,709/2018)</b> and the <b>General Data Protection Regulation (GDPR — EU Regulation 2016/679)</b> applicable to Portugal and other EU countries.'],
      ]},
      { h: '2. What data we collect', body: [
        ['p', 'We process the minimum data necessary to provide the service:'],
        ['ul', [
          '<b>Public IP address:</b> shown to you at lookup time, but <b>not stored</b> in any database.',
          '<b>Approximate geolocation:</b> derived from your IP (city, state, country, ISP, ASN). Not stored.',
          '<b>Anonymous browsing data:</b> via Google Analytics (Section 4) — always with anonymized IP.',
          '<b>Queried domains and IPs:</b> processed in real time, not linked to your IP.',
        ]],
        ['p', '<b>We do not collect:</b> name, email, phone, ID, banking data, or precise GPS location.'],
      ]},
      { h: '3. Cookies and similar technologies', body: [
        ['ul', [
          '<b>Essential cookies:</b> keep the app working. No consent required.',
          '<b>Analytics cookies (Google Analytics):</b> loaded <b>only after your consent</b>.',
          '<b>Advertising cookies (Google AdSense):</b> also only after consent.',
        ]],
        ['p', 'You can revoke consent at any time by clearing your browser data.'],
      ]},
      { h: '4. Google Analytics', body: [
        ['p', 'We use <b>Google Analytics 4 (GA4)</b> with:'],
        ['ul', [
          '<b>IP anonymization</b> enabled.',
          'Google Signals <b>disabled</b>.',
          'Sharing with other Google products <b>disabled</b>.',
          'Retention period: <b>14 months</b>.',
        ]],
        ['p', 'You can opt out via the <a href="https://tools.google.com/dlpage/gaoptout" target="_blank" rel="noopener">opt-out browser add-on</a>.'],
      ]},
      { h: '5. Google AdSense and partners', body: [
        ['p', 'We display ads via Google AdSense to keep the service free. You can disable personalized advertising at <a href="https://adssettings.google.com" target="_blank" rel="noopener">adssettings.google.com</a> or <a href="https://www.aboutads.info" target="_blank" rel="noopener">aboutads.info</a>.'],
        ['p', 'Affiliate links (e.g. VPNs) are identified as <i>"Sponsored · affiliate link"</i>.'],
      ]},
      { h: '6. Local storage (localStorage)', body: [
        ['p', 'The site stores in your browser (nothing is sent to our servers):'],
        ['ul', [
          '<code>vermeip:theme</code> — chosen theme.',
          '<code>vermeip:locale</code> — chosen language.',
          '<code>vermeip:history</code> — last 12 queries.',
          '<code>vermeip:rl</code> — local rate-limit tracking.',
          '<code>vermeip:cookies-consent</code> — consent record.',
        ]],
      ]},
      { h: '7. Data sharing', body: [
        ['p', 'We do not sell your data. We share only with:'],
        ['ul', [
          '<b>Google LLC</b> (Analytics, AdSense, Fonts).',
          '<b>ip-api.com</b> (geolocation provider).',
          '<b>Public DNS / WHOIS servers</b> when you use those tools.',
        ]],
      ]},
      { h: '8. International transfer', body: [
        ['p', 'Some tools (Google, ip-api.com) may process data on servers outside Brazil or the EU, in countries with adequate data protection or under standard contractual clauses (LGPD art. 33 / GDPR art. 46).'],
      ]},
      { h: '9. Your rights (LGPD / GDPR)', body: [
        ['p', 'You have the right to:'],
        ['ul', [
          'Confirm processing, access and correct your data.',
          'Request anonymization, blocking or deletion.',
          'Request data portability.',
          'Revoke consent at any time.',
          'File a complaint with <b>ANPD</b> (Brazil) or <b>CNPD</b> (Portugal) or your local DPA.',
        ]],
        ['p', `To exercise these rights: <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>. Reply within 15 days.`],
      ]},
      { h: '10. Changes to this policy', body: [
        ['p', 'We may update this policy. The date above shows the last change. Significant changes will be highlighted on the home page for at least 30 days.'],
      ]},
      { h: '11. Contact', body: [
        ['p', `Data Protection Officer (DPO): <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>.`],
      ]},
    ],
  },

  es: {
    title: 'Política de Privacidad',
    toc: [
      'Quiénes somos', 'Qué datos recopilamos', 'Cookies y tecnologías similares',
      'Google Analytics', 'Google AdSense y socios', 'Almacenamiento local (localStorage)',
      'Compartición de datos', 'Transferencia internacional', 'Tus derechos (LGPD / RGPD)',
      'Cambios en esta política', 'Contacto',
    ],
    sections: [
      { h: '1. Quiénes somos', body: [
        ['p', '<b>Ver meu IP</b> (vermeuip.com) es un sitio web de herramientas gratuitas de red. Esta política describe cómo tratamos tus datos conforme a la <b>Ley General de Protección de Datos de Brasil (LGPD — Ley 13.709/2018)</b> y el <b>Reglamento General de Protección de Datos (RGPD/GDPR — Reglamento UE 2016/679)</b> aplicable en Portugal, España y demás países de la UE.'],
      ]},
      { h: '2. Qué datos recopilamos', body: [
        ['p', 'Tratamos el mínimo de datos necesario para ofrecer el servicio:'],
        ['ul', [
          '<b>Dirección IP pública:</b> se muestra al consultar, pero <b>no se almacena</b>.',
          '<b>Geolocalización aproximada:</b> derivada de tu IP (ciudad, provincia, país, ISP, ASN). No se almacena.',
          '<b>Datos de navegación anónimos:</b> vía Google Analytics (Sección 4) — siempre con IP anonimizada.',
          '<b>Dominios e IPs consultados:</b> procesados en tiempo real, no vinculados a tu IP.',
        ]],
        ['p', '<b>No recopilamos:</b> nombre, correo, teléfono, DNI, datos bancarios ni ubicación GPS precisa.'],
      ]},
      { h: '3. Cookies y tecnologías similares', body: [
        ['ul', [
          '<b>Cookies esenciales:</b> mantienen la aplicación funcionando. No requieren consentimiento.',
          '<b>Cookies analíticas (Google Analytics):</b> se cargan <b>solo tras tu consentimiento</b>.',
          '<b>Cookies publicitarias (Google AdSense):</b> también solo tras consentimiento.',
        ]],
        ['p', 'Puedes revocar el consentimiento en cualquier momento borrando los datos del navegador.'],
      ]},
      { h: '4. Google Analytics', body: [
        ['p', 'Usamos <b>Google Analytics 4 (GA4)</b> con:'],
        ['ul', [
          '<b>Anonimización de IP</b> activada.',
          'Google Signals <b>desactivadas</b>.',
          'Compartición con otros productos Google <b>desactivada</b>.',
          'Periodo de retención: <b>14 meses</b>.',
        ]],
        ['p', 'Puedes optar por no ser rastreado mediante el <a href="https://tools.google.com/dlpage/gaoptout" target="_blank" rel="noopener">complemento de exclusión</a>.'],
      ]},
      { h: '5. Google AdSense y socios', body: [
        ['p', 'Mostramos anuncios vía Google AdSense para mantener el servicio gratuito. Puedes desactivar la publicidad personalizada en <a href="https://adssettings.google.com" target="_blank" rel="noopener">adssettings.google.com</a> o <a href="https://www.youronlinechoices.eu" target="_blank" rel="noopener">youronlinechoices.eu</a>.'],
        ['p', 'Los enlaces de afiliados (p. ej. VPNs) se identifican como <i>"Patrocinado · enlace de afiliado"</i>.'],
      ]},
      { h: '6. Almacenamiento local (localStorage)', body: [
        ['p', 'El sitio guarda en tu navegador (sin enviar nada a nuestros servidores):'],
        ['ul', [
          '<code>vermeip:theme</code> — tema elegido.',
          '<code>vermeip:locale</code> — idioma elegido.',
          '<code>vermeip:history</code> — últimas 12 consultas.',
          '<code>vermeip:rl</code> — control local de límite de verificaciones.',
          '<code>vermeip:cookies-consent</code> — registro del consentimiento.',
        ]],
      ]},
      { h: '7. Compartición de datos', body: [
        ['p', 'No vendemos tus datos. Solo compartimos con:'],
        ['ul', [
          '<b>Google LLC</b> (Analytics, AdSense, Fonts).',
          '<b>ip-api.com</b> (proveedor de geolocalización).',
          '<b>Servidores DNS / WHOIS públicos</b> cuando usas las herramientas correspondientes.',
        ]],
      ]},
      { h: '8. Transferencia internacional', body: [
        ['p', 'Algunas herramientas (Google, ip-api.com) pueden procesar datos en servidores fuera de Brasil o la UE, en países con nivel adecuado de protección o con cláusulas contractuales tipo (art. 33 LGPD / art. 46 RGPD).'],
      ]},
      { h: '9. Tus derechos (LGPD / RGPD)', body: [
        ['p', 'Tienes derecho a:'],
        ['ul', [
          'Confirmar el tratamiento, acceder y corregir tus datos.',
          'Solicitar anonimización, bloqueo o eliminación.',
          'Solicitar la portabilidad de los datos.',
          'Revocar el consentimiento en cualquier momento.',
          'Presentar reclamación ante la <b>ANPD</b> (Brasil), la <b>AEPD</b> (España) o tu autoridad de protección local.',
        ]],
        ['p', `Para ejercer estos derechos: <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>. Respuesta en hasta 15 días.`],
      ]},
      { h: '10. Cambios en esta política', body: [
        ['p', 'Podemos actualizar esta política. La fecha de arriba indica el último cambio. Los cambios relevantes se anunciarán en la página principal durante al menos 30 días.'],
      ]},
      { h: '11. Contacto', body: [
        ['p', `Delegado de Protección de Datos (DPO): <a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>.`],
      ]},
    ],
  },
};

// ── Terms of Use content per locale ───────────────────────────────────────
const TERMS = {
  pt: {
    title: 'Termos de Uso',
    toc: [
      'Aceitação dos termos', 'Descrição do serviço', 'Uso permitido',
      'Limites de uso', 'Conduta proibida', 'Anúncios e links de afiliado',
      'Propriedade intelectual', 'Isenção de garantias', 'Limitação de responsabilidade',
      'Modificações dos termos', 'Lei aplicável e foro', 'Contato',
    ],
    sections: [
      { h: '1. Aceitação dos termos', body: [['p', 'Ao usar o <b>Ver meu IP</b>, você concorda com estes Termos e com nossa <a href="#/privacidade">Política de Privacidade</a>.']]},
      { h: '2. Descrição do serviço', body: [
        ['p', 'O Ver meu IP oferece, sem custo, ferramentas informativas de rede:'],
        ['ul', ['Detecção de IP público (IPv4/IPv6) e geolocalização.', 'Consulta DNS, Ping, WHOIS, DNS Reverso e teste de velocidade.']],
      ]},
      { h: '3. Uso permitido', body: [['p', 'Uso pessoal e não-comercial direto pelo navegador, para diagnóstico de rede e aprendizado.']]},
      { h: '4. Limites de uso', body: [
        ['p', 'Para proteger a infraestrutura aplicamos limites por IP:'],
        ['ul', ['Verificações de IP: 4 a cada 12 horas.', 'DNS / WHOIS / DNS Reverso: 30 a cada 15 minutos.', 'Requisições gerais: 100 a cada 15 minutos.']],
      ]},
      { h: '5. Conduta proibida', body: [
        ['ul', [
          'Automatizar requisições por bots/scrapers.',
          'Burlar limites com proxies ou VPNs em massa.',
          'Usar o serviço para invadir, atacar ou mapear redes de terceiros.',
          'Sobrecarregar a infraestrutura.',
          'Engenharia reversa do código.',
        ]],
        ['p', 'O descumprimento pode resultar em bloqueio do IP e medidas legais.'],
      ]},
      { h: '6. Anúncios e links de afiliado', body: [['p', 'Exibimos anúncios via Google AdSense e podemos incluir links de afiliado, sempre identificados como <i>"Patrocinado · link de afiliado"</i>.']]},
      { h: '7. Propriedade intelectual', body: [['p', 'Todo o conteúdo do site é protegido por direitos autorais. Não é permitido copiar ou redistribuir sem autorização.']]},
      { h: '8. Isenção de garantias', body: [['p', 'O serviço é fornecido <b>"como está"</b>. Os dados exibidos são aproximados e meramente informativos.']]},
      { h: '9. Limitação de responsabilidade', body: [['p', 'Não nos responsabilizamos por danos diretos ou indiretos decorrentes do uso ou impossibilidade de uso do serviço, exceto quando a lei impedir tal limitação.']]},
      { h: '10. Modificações dos termos', body: [['p', 'Podemos alterar estes Termos a qualquer momento. O uso continuado após a alteração implica aceitação.']]},
      { h: '11. Lei aplicável e foro', body: [['p', 'Estes Termos são regidos pela legislação da <b>República Federativa do Brasil</b>. Para usuários em <b>Portugal</b> e na <b>UE</b>, aplicam-se também os direitos do RGPD/GDPR. Foro: Comarca da Capital de São Paulo, ressalvado o foro do consumidor.']]},
      { h: '12. Contato', body: [['p', `<a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>`]]},
    ],
  },

  en: {
    title: 'Terms of Use',
    toc: [
      'Acceptance', 'Service description', 'Permitted use',
      'Usage limits', 'Prohibited conduct', 'Ads and affiliate links',
      'Intellectual property', 'Disclaimer of warranties', 'Limitation of liability',
      'Changes to these terms', 'Governing law and venue', 'Contact',
    ],
    sections: [
      { h: '1. Acceptance', body: [['p', 'By using <b>Ver meu IP</b>, you agree to these Terms and to our <a href="#/privacidade">Privacy Policy</a>.']]},
      { h: '2. Service description', body: [
        ['p', 'Ver meu IP offers free network informational tools:'],
        ['ul', ['Public IP detection (IPv4/IPv6) and geolocation.', 'DNS Lookup, Ping, WHOIS, Reverse DNS and speed test.']],
      ]},
      { h: '3. Permitted use', body: [['p', 'Personal, non-commercial use through your browser, for network diagnostics and learning.']]},
      { h: '4. Usage limits', body: [
        ['p', 'To protect our infrastructure we apply per-IP limits:'],
        ['ul', ['IP checks: 4 every 12 hours.', 'DNS / WHOIS / Reverse DNS: 30 every 15 minutes.', 'General requests: 100 every 15 minutes.']],
      ]},
      { h: '5. Prohibited conduct', body: [
        ['ul', [
          'Automating requests via bots/scrapers.',
          'Bypassing limits via proxies or mass VPN use.',
          'Using the service to attack, scan or compromise third-party networks.',
          'Overloading the infrastructure.',
          'Reverse-engineering the code.',
        ]],
        ['p', 'Violations may result in IP blocking and legal action.'],
      ]},
      { h: '6. Ads and affiliate links', body: [['p', 'We display ads via Google AdSense and may include affiliate links, always identified as <i>"Sponsored · affiliate link"</i>.']]},
      { h: '7. Intellectual property', body: [['p', 'All site content is protected by copyright. No copying or redistribution without permission.']]},
      { h: '8. Disclaimer of warranties', body: [['p', 'The service is provided <b>"as is"</b>. Data shown is approximate and for informational purposes only.']]},
      { h: '9. Limitation of liability', body: [['p', 'We are not liable for direct or indirect damages from use or inability to use the service, except where the law prevents such limitation.']]},
      { h: '10. Changes to these terms', body: [['p', 'We may update these Terms at any time. Continued use after changes implies acceptance.']]},
      { h: '11. Governing law and venue', body: [['p', 'These Terms are governed by the laws of the <b>Federative Republic of Brazil</b>. For users in <b>Portugal</b> and the <b>EU</b>, GDPR/RGPD rights also apply. Venue: Capital District of São Paulo, except where consumer law provides otherwise.']]},
      { h: '12. Contact', body: [['p', `<a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>`]]},
    ],
  },

  es: {
    title: 'Términos de Uso',
    toc: [
      'Aceptación', 'Descripción del servicio', 'Uso permitido',
      'Límites de uso', 'Conducta prohibida', 'Anuncios y enlaces de afiliados',
      'Propiedad intelectual', 'Exención de garantías', 'Limitación de responsabilidad',
      'Modificaciones', 'Ley aplicable y jurisdicción', 'Contacto',
    ],
    sections: [
      { h: '1. Aceptación', body: [['p', 'Al usar <b>Ver meu IP</b>, aceptas estos Términos y nuestra <a href="#/privacidade">Política de Privacidad</a>.']]},
      { h: '2. Descripción del servicio', body: [
        ['p', 'Ver meu IP ofrece, sin coste, herramientas informativas de red:'],
        ['ul', ['Detección de IP pública (IPv4/IPv6) y geolocalización.', 'Consulta DNS, Ping, WHOIS, DNS Inverso y test de velocidad.']],
      ]},
      { h: '3. Uso permitido', body: [['p', 'Uso personal y no comercial desde el navegador, para diagnóstico de red y aprendizaje.']]},
      { h: '4. Límites de uso', body: [
        ['p', 'Para proteger la infraestructura aplicamos límites por IP:'],
        ['ul', ['Verificaciones de IP: 4 cada 12 horas.', 'DNS / WHOIS / DNS Inverso: 30 cada 15 minutos.', 'Peticiones generales: 100 cada 15 minutos.']],
      ]},
      { h: '5. Conducta prohibida', body: [
        ['ul', [
          'Automatizar peticiones con bots/scrapers.',
          'Eludir los límites con proxies o VPNs masivas.',
          'Usar el servicio para atacar, escanear o comprometer redes de terceros.',
          'Sobrecargar la infraestructura.',
          'Hacer ingeniería inversa del código.',
        ]],
        ['p', 'El incumplimiento puede resultar en bloqueo de IP y acciones legales.'],
      ]},
      { h: '6. Anuncios y enlaces de afiliados', body: [['p', 'Mostramos anuncios mediante Google AdSense y podemos incluir enlaces de afiliados, siempre identificados como <i>"Patrocinado · enlace de afiliado"</i>.']]},
      { h: '7. Propiedad intelectual', body: [['p', 'Todo el contenido del sitio está protegido por derechos de autor. No se permite copiar ni redistribuir sin autorización.']]},
      { h: '8. Exención de garantías', body: [['p', 'El servicio se ofrece <b>"tal cual"</b>. Los datos mostrados son aproximados y meramente informativos.']]},
      { h: '9. Limitación de responsabilidad', body: [['p', 'No nos responsabilizamos de daños directos o indirectos derivados del uso o imposibilidad de uso del servicio, salvo cuando la ley impida dicha limitación.']]},
      { h: '10. Modificaciones', body: [['p', 'Podemos modificar estos Términos en cualquier momento. El uso continuado tras los cambios implica aceptación.']]},
      { h: '11. Ley aplicable y jurisdicción', body: [['p', 'Estos Términos se rigen por la legislación de la <b>República Federativa de Brasil</b>. Para usuarios en <b>España, Portugal</b> y la <b>UE</b>, también aplican los derechos del RGPD. Jurisdicción: Comarca de la Capital de São Paulo, sin perjuicio del fuero del consumidor.']]},
      { h: '12. Contacto', body: [['p', `<a href="mailto:${CONTACT_EMAIL}">${CONTACT_EMAIL}</a>`]]},
    ],
  },
};

// ── Render helpers ─────────────────────────────────────────────────────────
function Body({ blocks }) {
  return (
    <>
      {blocks.map((block, i) => {
        const [tag, content] = block;
        if (tag === 'p') return <p key={i} dangerouslySetInnerHTML={{ __html: content }}/>;
        if (tag === 'ul') return (
          <ul key={i}>{content.map((item, j) => <li key={j} dangerouslySetInnerHTML={{ __html: item }}/>)}</ul>
        );
        return null;
      })}
    </>
  );
}

function LegalShell({ data }) {
  const t = useT();
  const locale = useLocale();
  return (
    <div className="page legal-page">
      <div className="container-narrow">
        <span className="eyebrow">{t('legal.eyebrow')}</span>
        <h1>{data.title}</h1>
        <p className="updated">{t('legal.updated', { date: LAST_UPDATED[locale] })}</p>

        <div className="legal-toc">
          <strong>{t('legal.toc')}</strong>
          <ol>
            {data.toc.map((item, i) => <li key={i}><a href={`#sec-${i+1}`}>{item}</a></li>)}
          </ol>
        </div>

        {data.sections.map((s, i) => (
          <section key={i} id={`sec-${i+1}`}>
            <h2>{s.h}</h2>
            <Body blocks={s.body}/>
          </section>
        ))}
      </div>
    </div>
  );
}

function PrivacyPage() {
  const locale = useLocale();
  return <LegalShell data={PRIVACY[locale] || PRIVACY.pt}/>;
}

function TermsPage() {
  const locale = useLocale();
  return <LegalShell data={TERMS[locale] || TERMS.pt}/>;
}

Object.assign(window, { PrivacyPage, TermsPage });
