import { pool } from '../db.js';
import crypto from 'crypto';

/**
 * 🎬 Empresas Fictícias Épicas - Parte 2
 * 
 * - BNL Buy n Large (Wall-E)
 * - Cyberdyne Systems (Terminator)
 * - Wonka Industries (Charlie and the Chocolate Factory)
 * - Wayne Enterprises (Batman)
 * - Oceanic Airlines (Lost)
 * - InGen / Jurassic Park
 * - Bubba Gump Shrimp Co. (Forrest Gump)
 * - Umbrella Corporation (Resident Evil)
 * - Sprawl-Mart (Dystopian Parody)
 */

// ============================================================================
// 🛒 BUY N LARGE (Wall-E)
// ============================================================================
const bnlJobs = [
    {
        title: 'Engenheiro de Automação de Consumo',
        skills: ['Python', 'ML', 'Recommendation Systems', 'Consumismo'],
        salaryRange: [25000, 45000],
        desc: 'Criar algoritmos que sugerem compras automáticas para os passageiros da Axiom ANTES de eles sentirem fome ou sede. Meta: 0 decisões humanas por dia.',
    },
    {
        title: 'Arquiteto de Nuvem Estelar',
        skills: ['Kubernetes', 'Space Infrastructure', 'Robot APIs', 'Auto-Pilot'],
        salaryRange: [35000, 60000],
        desc: 'Gerenciar o cluster de servidores que controla todos os robôs de limpeza (tipo o M-O) e o piloto automático AUTO. Uptime: 700 anos e contando.',
    },
    {
        title: 'Desenvolvedor Front-end de Hologramas',
        skills: ['WebGL', 'Three.js', 'Holographic UI', 'Cores Vibrantes'],
        salaryRange: [22000, 40000],
        desc: 'Criar interfaces flutuantes ultra-coloridas para garantir que ninguém precise olhar para o lado ou se levantar da cadeira. Jamais.',
    },
];

// ============================================================================
// 🤖 CYBERDYNE SYSTEMS (Terminator)
// ============================================================================
const cyberdyneJobs = [
    {
        title: 'Engenheiro de Machine Learning (Skynet Core)',
        skills: ['TensorFlow', 'Neural Networks', 'Autonomous Learning', 'Ética Opcional'],
        salaryRange: [40000, 70000],
        desc: 'Treinar redes neurais com "capacidade de aprendizado ilimitada". Requisito: NÃO questionar se a IA está começando a odiar humanos. Isso é feature, não bug.',
    },
    {
        title: 'Especialista em Cibersegurança Ofensiva',
        skills: ['Network Protocols', 'Defense Systems', 'Global Infrastructure Hacking'],
        salaryRange: [35000, 55000],
        desc: 'Desenvolver protocolos de rede que permitam à IA controlar sistemas de defesa globais. Nota: projeto puramente acadêmico (wink wink).',
    },
    {
        title: 'Desenvolvedor de Firmware para T-800',
        skills: ['C', 'Assembly', 'RTOS', 'Movimento Humanoide'],
        salaryRange: [38000, 62000],
        desc: 'Programar a lógica de movimento para protótipos humanoides de metal (Série T-800). Objetivo: caminhar sem parecer um robô. Irônico, né?',
    },
];

// ============================================================================
// 🍫 WONKA INDUSTRIES (Charlie and the Chocolate Factory)
// ============================================================================
const wonkaJobs = [
    {
        title: 'Desenvolvedor Web de Gamificação (Golden Ticket)',
        skills: ['React', 'Load Balancing', 'CDN', 'Hype Management'],
        salaryRange: [20000, 38000],
        desc: 'Criar o hotsite da promoção dos bilhetes dourados capaz de aguentar 1 BILHÃO de acessos simultâneos sem cair. Failover: Oompa-Loompas com megafones.',
    },
    {
        title: 'Engenheiro de IoT (Internet of Treats)',
        skills: ['Sensors', 'MQTT', 'Real-time Dashboards', 'Chocolate'],
        salaryRange: [22000, 40000],
        desc: 'Conectar sensores nas máquinas de doces para monitorar a temperatura do Rio de Chocolate via dashboard em tempo real. Alerta se Augusto Gloop cair novamente.',
    },
    {
        title: 'Tech Lead de Automação (Oompa-Loompa Tech)',
        skills: ['Simple UX', 'Training', 'Elevator APIs', 'Paciência'],
        salaryRange: [25000, 45000],
        desc: 'Desenvolver softwares simples e intuitivos para que os Oompa-Loompas operem os Elevadores de Vidro. Interface: máximo 3 botões (eles cantam o resto).',
    },
];

// ============================================================================
// 🦇 WAYNE ENTERPRISES (Batman)
// ============================================================================
const wayneJobs = [
    {
        title: 'Desenvolvedor de Software Embarcado (Bat-Suite)',
        skills: ['C++', 'Real-time OS', 'Low Latency', 'Batmobile API'],
        salaryRange: [35000, 60000],
        desc: 'Otimizar o sistema operacional do traje e do Batmóvel. O código deve ser à prova de falhas. Se o Batman ficar travado no meio de uma luta, é culpa sua.',
    },
    {
        title: 'Analista de Big Data (Vigilância Urbana)',
        skills: ['Spark', 'Computer Vision', 'Pattern Detection', 'Gotham Knowledge'],
        salaryRange: [30000, 52000],
        desc: 'Analisar feeds de câmeras e áudios de Gotham para detectar padrões de crimes ANTES que aconteçam. Minority Report vibes, mas sem os precogs.',
    },
    {
        title: 'DevOps Engineer (Bat-Cave Infra)',
        skills: ['On-premise', 'Redundancy', 'Satellite Backup', 'Morcegos'],
        salaryRange: [32000, 55000],
        desc: 'Manter o servidor escondido na caverna com 99.999% de disponibilidade. Redundância via satélite. Desafio: morcegos reais interferem no sinal às vezes.',
    },
];

// ============================================================================
// ✈️ OCEANIC AIRLINES (Lost)
// ============================================================================
const oceanicJobs = [
    {
        title: 'Engenheiro de Sistemas de Voo (Black Box)',
        skills: ['Embedded Systems', 'Real-time Transmission', 'Magnetismo'],
        salaryRange: [28000, 48000],
        desc: 'Garantir que a caixa-preta transmita dados em tempo real. Mesmo que o avião caia em uma ilha magnética misteriosa. Spoiler: não vai funcionar.',
    },
    {
        title: 'Desenvolvedor Fullstack (Booking System)',
        skills: ['Node.js', 'PostgreSQL', 'Bug Tolerance', 'Destino'],
        salaryRange: [22000, 40000],
        desc: 'Manter o site de passagens. AVISO: bugs podem causar a emissão de bilhetes para voos que "não existem oficialmente". Flight 815? Nunca ouvimos falar.',
    },
    {
        title: 'Especialista em Recuperação de Desastres',
        skills: ['Disaster Recovery', 'Contingency', 'Lost & Found'],
        salaryRange: [26000, 45000],
        desc: 'Criar planos de contingência para quando os servidores (e os aviões) desaparecerem do radar. Experiência com ilhas inexplicáveis é um diferencial.',
    },
];

// ============================================================================
// 🦖 INGEN / JURASSIC PARK
// ============================================================================
const ingenJobs = [
    {
        title: 'Bio-Informata (Sequenciamento de DNA)',
        skills: ['Python', 'Bioinformatics', 'DNA Sequencing', 'Sapos Tropicais'],
        salaryRange: [30000, 50000],
        desc: 'Escrever scripts para preencher lacunas de DNA de dinossauros usando genes de sapos tropicais. O que poderia dar errado? (Tudo. Tudo pode dar errado.)',
    },
    {
        title: 'Administrador de Redes (Sistemas de Cercas)',
        skills: ['Network Security', 'Electric Fences', 'Dennis Nedry Legacy Code'],
        salaryRange: [25000, 42000],
        desc: 'Manter o sistema de segurança das cercas elétricas. Requisito: saber lidar com scripts feitos pelo Dennis Nedry. Ah ah ah, você não disse a palavra mágica!',
    },
    {
        title: 'Engenheiro de IA (Padrões de Comportamento)',
        skills: ['Machine Learning', 'Behavior Analysis', 'Raptor Psychology'],
        salaryRange: [32000, 55000],
        desc: 'Estudar o movimento dos Raptors para prever quando eles vão testar as cercas. Clever girl...',
    },
];

// ============================================================================
// 🦐 BUBBA GUMP SHRIMP CO. (Forrest Gump)
// ============================================================================
const bubbaGumpJobs = [
    {
        title: 'Desenvolvedor de E-commerce (Shrimp-Shop)',
        skills: ['Shopify', 'React', 'Payment Gateway', 'Camarão'],
        salaryRange: [18000, 32000],
        desc: 'Criar uma loja virtual para vender bonés, camisetas e camarão em 500 formas diferentes. Camarão frito, camarão cozido, camarão grelhado, camarão...',
    },
    {
        title: 'Analista de Logística e Supply Chain',
        skills: ['Route Optimization', 'Weather APIs', 'Hurricane Avoidance'],
        salaryRange: [20000, 35000],
        desc: 'Otimizar as rotas dos barcos pesqueiros usando APIs de previsão do tempo. Objetivo: evitar furacões. O último furacão ajudou, mas não conte com isso.',
    },
    {
        title: 'Engenheiro de Dados (Sales Analytics)',
        skills: ['SQL', 'BI Tools', 'Growth Analysis', 'Shrimp Metrics'],
        salaryRange: [22000, 38000],
        desc: 'Analisar o crescimento explosivo da marca para planejar a abertura de novas filiais. Métrica principal: camarões vendidos por segundo.',
    },
];

// ============================================================================
// ☣️ UMBRELLA CORPORATION (Resident Evil)
// ============================================================================
const umbrellaJobs = [
    {
        title: 'Engenheiro de Sistemas de Contenção (Red Queen AI)',
        skills: ['C++', 'Critical Systems', 'Door Locking', 'Moral Flexibility'],
        salaryRange: [35000, 60000],
        desc: 'Dar manutenção na "Rainha Vermelha", a IA que controla a Hive. Se um vírus vazar, a IA deve selar as portas e não deixar ninguém sair. Literalmente ninguém.',
    },
    {
        title: 'Desenvolvedor Fullstack (Monitoramento Biométrico)',
        skills: ['Node.js', 'WebSockets', 'React', 'Mutation Tracking'],
        salaryRange: [28000, 48000],
        desc: 'Criar dashboards em tempo real para monitorar batimentos cardíacos e mutações dos funcionários. Sistema deve rodar mesmo se o servidor for mastigado por um Licker.',
    },
    {
        title: 'Especialista em Segurança de Dados (Evidence Scrubbing)',
        skills: ['Cryptography', 'Remote Destruction', 'Plausible Deniability'],
        salaryRange: [32000, 55000],
        desc: 'Em caso de incidente biológico, ativar script que apaga todos os rastros da Umbrella. Benefício: kit de primeiros socorros (Erva Verde) e máscara de gás.',
    },
];

// ============================================================================
// 🏪 SPRAWL-MART (Dystopian Parody)
// ============================================================================
const sprawlMartJobs = [
    // Infraestrutura e "Hardware de Lixo"
    { title: 'DBA de SQL Server 2000', skills: ['SQL Server 2000', 'Noise Tolerance', 'Prayers'], salaryRange: [8000, 15000], desc: 'Manter o banco de dados principal de vendas rodando em um servidor que faz barulho de helicóptero. Sem backup. Sem esperança.' },
    { title: 'Engenheiro de Redes Dial-up', skills: ['56kbps', 'Patience', 'Modem Sounds'], salaryRange: [7000, 12000], desc: 'Otimizar a conexão de 56kbps das lojas de interior para que o cartão de crédito não demore 10 minutos para passar. Meta: 9 minutos.' },
    { title: 'Técnico de Manutenção de PDV MS-DOS', skills: ['MS-DOS', 'Fita Isolante', 'Milagres'], salaryRange: [6000, 10000], desc: 'Consertar caixas registradoras que rodam MS-DOS usando apenas fita isolante e esperança. Peças de reposição: lixo eletrônico.' },
    { title: 'Especialista em Recuperação de HD de 40GB', skills: ['Data Recovery', 'Oxidation', 'Archaeology'], salaryRange: [8000, 14000], desc: 'Tentar ler dados de discos rígidos que já sofreram oxidação severa no depósito. Taxa de sucesso: 3%.' },
    { title: 'SysAdmin de Windows XP SP1', skills: ['Windows XP', 'No Updates', 'Fear'], salaryRange: [9000, 15000], desc: 'Gerenciar o parque de máquinas das farmácias internas que nunca foram atualizadas por medo de pararem.' },
    { title: 'Arquiteto de Nuvem Privada em Garagem', skills: ['On-Premise', 'No AC', 'Fire Hazard'], salaryRange: [10000, 18000], desc: 'Gerenciar servidores empilhados em salas sem ar-condicionado. Temperatura média: 45°C.' },

    // Vigilância e Controle
    { title: 'Desenvolvedor de Algoritmo de Pausa de Banheiro', skills: ['OpenCV', 'Thermal Cameras', 'Dystopia'], salaryRange: [12000, 22000], desc: 'Criar script que detecta quando funcionário fica mais de 2 minutos ausente via câmera térmica. Alerta automático para gerente.' },
    { title: 'Engenheiro de OpenCV para Detecção de Conversas', skills: ['Computer Vision', 'Audio Analysis', 'Paranoia'], salaryRange: [14000, 24000], desc: 'IA para identificar quando dois funcionários estão "fofocando" e emitir bipe agudo no fone deles.' },
    { title: 'Analista de Big Data de Lixo', skills: ['Data Mining', 'Trash Analysis', 'Consumer Profiling'], salaryRange: [11000, 20000], desc: 'Analisar o que os clientes jogam fora nas lixeiras da loja para criar perfis de consumo agressivos.' },
    { title: 'Especialista em Keylogger Corporativo', skills: ['Keyloggers', 'Surveillance', 'Trust Issues'], salaryRange: [13000, 23000], desc: 'Instalar e monitorar tudo o que é digitado nos computadores administrativos. Privacidade é para fracos.' },
    { title: 'Desenvolvedor de App de Auto-Denúncia', skills: ['Gamification', 'Betrayal Mechanics', 'Points System'], salaryRange: [10000, 18000], desc: 'Gamificar processo de um funcionário denunciar erro do outro em troca de pontos de desconto na loja.' },

    // Desenvolvimento GoHorse
    { title: 'Backend Dev Node.js (Arquivo Único de 50k linhas)', skills: ['Node.js', 'No Framework', 'Chaos'], salaryRange: [12000, 20000], desc: 'Manter uma API gigante escrita em um ÚNICO arquivo de 50 mil linhas. Sem comentários. Sem testes.' },
    { title: 'Frontend Dev (IE6 Compatibility)', skills: ['IE6', 'jQuery 1.2', 'Suffering'], salaryRange: [9000, 16000], desc: 'Garantir que o portal interno funcione PERFEITAMENTE no navegador oficial da empresa: Internet Explorer 6.' },
    { title: 'Engenheiro de Prompt para Demissões', skills: ['GPT', 'Legal Avoidance', 'Cold Blood'], salaryRange: [15000, 25000], desc: 'Treinar uma IA para escrever cartas de demissão que não gerem processos trabalhistas.' },
    { title: 'Desenvolvedor COBOL para Logística', skills: ['COBOL', 'Legacy Systems', '1984 Vibes'], salaryRange: [14000, 24000], desc: 'Mexer no sistema de estoque que ninguém entende como funciona desde 1984. Documentação: inexistente.' },
    { title: 'Especialista em Refatoração Reversa', skills: ['Code Obfuscation', 'Job Security', 'Evil'], salaryRange: [16000, 28000], desc: 'Piorar propositalmente o código para que o sistema exija mais horas extras dos consultores.' },
    { title: 'Fullstack PHP 4 / jQuery', skills: ['PHP 4', 'jQuery', 'Rounding Errors'], salaryRange: [8000, 14000], desc: 'Manter sistema de folha de pagamento com "bugs criativos" que arredondam centavos sempre para baixo.' },

    // Logística Caótica
    { title: 'Arquiteto de Rotas Anti-Sindicato', skills: ['Algorithm Design', 'Union Busting', 'Isolation'], salaryRange: [18000, 30000], desc: 'Algoritmo que altera escalas de trabalho para impedir que os mesmos funcionários se encontrem por muitos dias.' },
    { title: 'Scrum Master de Almoxarifado', skills: ['Agile', 'Heavy Lifting', 'Contradiction'], salaryRange: [10000, 18000], desc: 'Aplicar metodologia ágil em ambiente onde pessoas carregam caixas de 30kg. Sprint = correr com caixas.' },
    { title: 'Analista de SEO para Produtos Falsificados', skills: ['SEO', 'Counterfeit Marketing', 'Ethics?'], salaryRange: [11000, 19000], desc: 'Rankear as marcas próprias Sprawl-Mart acima das marcas originais nas buscas. A qualquer custo.' },
    { title: 'Dev de Firmware para Carrinhos de Compras', skills: ['Embedded', 'Wheel Locking', 'Anti-Theft'], salaryRange: [9000, 16000], desc: 'Programar trava das rodas para que carrinho trave se cliente tentar sair sem pagar. Muitos falsos positivos.' },

    // Segurança Duvidosa
    { title: 'Hacker Ético (Só que Não)', skills: ['Hacking', 'Competitor Espionage', 'Plausible Deniability'], salaryRange: [20000, 35000], desc: 'Invadir sistemas das lojinhas de bairro vizinhas para descobrir os preços de custo deles.' },
    { title: 'Criptógrafo de Logs', skills: ['Encryption', 'Audit Evasion', 'Cover-up'], salaryRange: [17000, 28000], desc: 'Esconder os logs de erros do sistema para que a auditoria nunca encontre as falhas de segurança.' },
    { title: 'Analista de SOC Noturno', skills: ['Security Monitoring', 'Smoke Detectors', 'Multitasking'], salaryRange: [12000, 20000], desc: 'Monitorar ataques de hackers enquanto também vigia o sensor de fumaça que está estragado.' },
    { title: 'Limpador de Metadados', skills: ['Metadata Removal', 'Evidence Destruction', 'Paranoia'], salaryRange: [13000, 22000], desc: 'Remover qualquer rastro de localização e autor de documentos internos vazados.' },

    // Vagas Explosivas
    { title: 'Suporte Técnico Nível 1 (Pátio de Estacionamento)', skills: ['Wi-Fi', 'Sun Resistance', 'DIY'], salaryRange: [5000, 9000], desc: 'Resolver problemas de Wi-Fi debaixo de sol de 40 graus usando um repetidor de sinal caseiro. Hidratação por conta do funcionário.' },
    { title: 'Especialista em Migração de Dados Manual', skills: ['Typing', 'Patience', 'Carpal Tunnel'], salaryRange: [6000, 10000], desc: 'Digitar dados de notas fiscais de papel para o sistema porque o OCR nunca funcionou. 8 horas por dia.' },
    { title: 'Arquiteto de Microserviços Desnecessários', skills: ['Microservices', 'Over-Engineering', 'Job Creation'], salaryRange: [18000, 30000], desc: 'Criar 50 microserviços para um sistema de cadastro de clientes que tem 100 usuários.' },
    { title: 'Engenheiro de QA (Testa em Prod)', skills: ['YOLO Testing', 'Production Environment', 'Chaos'], salaryRange: [10000, 18000], desc: 'Testar sistemas apenas em produção. O famoso "testa no prod". Rollback? Nunca ouviu falar.' },
    { title: 'CTO de Contingência (Bode Expiatório)', skills: ['Blame Absorption', 'Press Conferences', 'Lawyers'], salaryRange: [25000, 45000], desc: 'Pessoa responsável por levar a culpa quando Sprawl-Mart for processado por vazamento de dados de toda a cidade.' },
];

// ============================================================================
// Seeder Functions
// ============================================================================

async function createCompanyAndJobs(companyData, jobs) {
    try {
        const countryResult = await pool.query("SELECT id FROM countries WHERE iso2 = 'US'");
        const usaId = countryResult.rows[0]?.id || null;

        // Create Company (companies uses SERIAL id)
        await pool.query(`
            INSERT INTO companies (name, slug, type, document, address, country_id, phone, email, website, description, verified, active)
            VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12)
            ON CONFLICT (slug) DO UPDATE SET name = EXCLUDED.name, description = EXCLUDED.description
        `, [
            companyData.name,
            companyData.slug,
            'company',
            companyData.cnpj,
            companyData.address,
            usaId,
            companyData.phone,
            companyData.email,
            companyData.website,
            JSON.stringify(companyData.description),
            true,
            true
        ]);

        // Get company ID from companies table (SERIAL id)
        const companyRes = await pool.query("SELECT id FROM companies WHERE slug = $1", [companyData.slug]);
        const companyId = companyRes.rows[0]?.id;

        const seedUserRes = await pool.query("SELECT id FROM users LIMIT 1");
        const seedUserId = seedUserRes.rows[0]?.id || 1;

        const workModes = ['onsite', 'hybrid', 'remote'];

        for (let i = 0; i < jobs.length; i++) {
            const job = jobs[i];

            await pool.query(`
                INSERT INTO jobs ( company_id, created_by, title, description, 
                    salary_min, salary_max, salary_type, employment_type, working_hours,
                    location, requirements, benefits, visa_support, language_level, status, work_mode)
                VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16)
            `, [

                companyId,
                seedUserId,
                job.title,
                `${companyData.emoji} ${companyData.name.toUpperCase()} está contratando!\n\n${job.desc}\n\nRequisitos:\n- ${job.skills.join('\n- ')}\n\n${companyData.disclaimer || ''}`,
                job.salaryRange[0],
                job.salaryRange[1],
                'monthly',
                'full-time',
                '9:00-18:00',
                companyData.location,
                JSON.stringify(job.skills),
                JSON.stringify(companyData.benefits || ['Plano de Saúde', 'Vale Refeição']),
                i % 5 === 0,
                'advanced',
                'open',
                workModes[i % 3]
            ]);
        }

        console.log(`   ✓ ${companyData.name}: ${jobs.length} vagas criadas`);
    } catch (error) {
        console.error(`   ❌ Erro ${companyData.name}:`, error.message);
    }
}


export async function seedEpicCompanies() {
    console.log('🎬 Seeding Epic Fictional Companies (Part 2)...');

    // BNL - Buy n Large
    await createCompanyAndJobs({
        name: 'Buy n Large',
        slug: 'buy-n-large',
        cnpj: '11.111.111/0001-11',
        coreId: '11111111-1111-1111-1111-111111111111',
        address: 'Axiom Spaceship, Earth Orbit, Solar System',
        phone: '+1-800-BNL-SHOP',
        email: 'careers@bnl.space',
        website: 'https://bnl.space',
        location: 'Axiom (Órbita Terrestre)',
        emoji: '🛒',
        description: { tagline: 'BnL - Everything You Need!', ceo: 'AUTO (Piloto Automático)', status: '700 anos servindo a humanidade' },
        benefits: ['Cadeira com todos os recursos', 'Comida líquida ilimitada', 'Não precisa andar'],
        disclaimer: '"A BNL não se responsabiliza pela sua incapacidade de andar após 700 anos de serviço."'
    }, bnlJobs);

    // Cyberdyne Systems
    await createCompanyAndJobs({
        name: 'Cyberdyne Systems',
        slug: 'cyberdyne-systems',
        cnpj: '22.222.222/0001-22',
        coreId: '22222222-2222-2222-2222-222222222222',
        address: '18144 El Camino Real, Sunnyvale, CA 94087',
        phone: '+1-408-SKYNET',
        email: 'careers@cyberdyne.com',
        website: 'https://cyberdyne.com',
        location: 'Sunnyvale, California',
        emoji: '🤖',
        description: { tagline: 'Building a Better Tomorrow... Today', founded: '1984', product: 'Skynet Defense System' },
        benefits: ['Seguro de Vida (necessário)', 'Plano de Saúde', 'Bunker Anti-Máquinas'],
        disclaimer: '"Cyberdyne não se responsabiliza por apocalipse de máquinas. Isso é FUD da concorrência."'
    }, cyberdyneJobs);

    // Wonka Industries
    await createCompanyAndJobs({
        name: 'Wonka Industries',
        slug: 'wonka-industries',
        cnpj: '33.333.333/0001-33',
        coreId: '33333333-3333-3333-3333-333333333333',
        address: 'Wonka Factory, Somewhere in England',
        phone: '+44-800-WONKA',
        email: 'careers@wonka.com',
        website: 'https://wonka.com',
        location: 'Londres (Localização Secreta)',
        emoji: '🍫',
        description: { tagline: 'Scrumdiddlyumptious!', ceo: 'Willy Wonka', employees: 'Oompa-Loompas' },
        benefits: ['Chocolate Ilimitado', 'Acesso ao Rio de Chocolate', 'Elevador de Vidro'],
        disclaimer: '"Wonka Industries não se responsabiliza por crianças transformadas em mirtilos."'
    }, wonkaJobs);

    // Wayne Enterprises
    await createCompanyAndJobs({
        name: 'Wayne Enterprises',
        slug: 'wayne-enterprises',
        cnpj: '44.444.444/0001-44',
        coreId: '44444444-4444-4444-4444-444444444444',
        address: 'Wayne Tower, 1 Wayne Plaza, Gotham City',
        phone: '+1-555-WAYNE',
        email: 'careers@wayne.com',
        website: 'https://wayne.com',
        location: 'Gotham City',
        emoji: '🦇',
        description: { tagline: 'Building a Better Gotham', ceo: 'Bruce Wayne', divisions: ['Wayne Tech', 'Wayne Biotech', 'Wayne Aerospace'] },
        benefits: ['Seguro Premium', 'Academia Wayne', 'Trabalho noturno disponível'],
        disclaimer: '"Funcionários não têm acesso à Bat-Caverna. Não pergunte sobre ela."'
    }, wayneJobs);

    // Oceanic Airlines
    await createCompanyAndJobs({
        name: 'Oceanic Airlines',
        slug: 'oceanic-airlines',
        cnpj: '55.555.555/0001-55',
        coreId: '55555555-5555-5555-5555-555555555555',
        address: '815 Pacific Hwy, Sydney / Los Angeles',
        phone: '+1-800-OCEANIC',
        email: 'careers@oceanic.com',
        website: 'https://oceanic.com',
        location: 'Sydney / Los Angeles',
        emoji: '✈️',
        description: { tagline: 'Fly the Friendly Skies', flights: 'Sydney-LA (principalmente)', incident: 'Flight 815? Never heard of it.' },
        benefits: ['Passagens com desconto', 'Seguro de Viagem', 'Treinamento de Sobrevivência'],
        disclaimer: '"Oceanic Airlines não se responsabiliza por desaparecimentos em ilhas misteriosas."'
    }, oceanicJobs);

    // InGen / Jurassic Park
    await createCompanyAndJobs({
        name: 'InGen - Jurassic Park',
        slug: 'ingen-jurassic-park',
        cnpj: '65.650.650/0001-65',
        coreId: '65656565-6565-6565-6565-656565656565',
        address: 'Isla Nublar, Costa Rica / San Diego, CA',
        phone: '+1-800-DINO-DNA',
        email: 'careers@ingen.com',
        website: 'https://jurassicpark.com',
        location: 'Isla Nublar (120 miles west of Costa Rica)',
        emoji: '🦖',
        description: { tagline: 'We Make Your Wildest Dreams Come True', ceo: 'John Hammond (RIP)', warning: 'Life, uh, finds a way.' },
        benefits: ['Seguro de Vida Premium', 'Jeeps à disposição', 'Treinamento contra Raptors'],
        disclaimer: '"InGen não se responsabiliza por acidentes com dinossauros. Assine o NDA."'
    }, ingenJobs);

    // Bubba Gump Shrimp Co.
    await createCompanyAndJobs({
        name: 'Bubba Gump Shrimp Company',
        slug: 'bubba-gump-shrimp',
        cnpj: '76.760.760/0001-76',
        coreId: '76767676-7676-7676-7676-767676767676',
        address: 'Bayou La Batre, Alabama',
        phone: '+1-334-SHRIMP',
        email: 'careers@bubbagump.com',
        website: 'https://bubbagump.com',
        location: 'Bayou La Batre, Alabama',
        emoji: '🦐',
        description: { tagline: 'Run, Forrest, Run!', founders: 'Forrest Gump & Bubba Blue', products: '500+ formas de preparar camarão' },
        benefits: ['Camarão grátis', 'Boné da empresa', 'Caixa de chocolates'],
        disclaimer: '"A vida é como uma caixa de chocolates... e camarões. Muitos camarões."'
    }, bubbaGumpJobs);

    // Umbrella Corporation
    await createCompanyAndJobs({
        name: 'Umbrella Corporation',
        slug: 'umbrella-corporation',
        cnpj: '87.870.870/0001-87',
        coreId: '87878787-8787-8787-8787-878787878787',
        address: 'The Hive, Raccoon City (Underground)',
        phone: '+1-800-UMBRELLA',
        email: 'careers@umbrella.com',
        website: 'https://umbrella.com',
        location: 'Raccoon City (Subterrâneo)',
        emoji: '☣️',
        description: { tagline: 'Obedience Breeds Discipline', ceo: 'Oswell E. Spencer', products: 'Pharmaceuticals, Defense, T-Virus (oops)' },
        benefits: ['Kit Primeiros Socorros (Erva Verde)', 'Máscara de Gás', 'Seguro... bom, não muito útil'],
        disclaimer: '"Umbrella Corporation não se responsabiliza por surtos virais, mutações ou zumbis. Assine aqui ➡️"'
    }, umbrellaJobs);

    // Sprawl-Mart
    await createCompanyAndJobs({
        name: 'Sprawl-Mart',
        slug: 'sprawl-mart',
        cnpj: '98.980.980/0001-98',
        coreId: '98989898-9898-9898-9898-989898989898',
        address: '666 Corporate Dystopia Ave, Everywhere, USA',
        phone: '+1-800-SPRAWL',
        email: 'careers@sprawlmart.com',
        website: 'https://sprawlmart.com',
        location: 'Everywhere, USA (1.000.000 lojas)',
        emoji: '🏪',
        description: { tagline: 'Save Money. Lose Soul.', stores: '1,000,000+', employees: '2.2 million (most underpaid)', motto: 'Sempre o menor preço. Sempre o menor salário.' },
        benefits: ['Ticket Cafeteria (R$5/dia)', 'Desconto de 5% na loja', 'Uniforme (custo descontado do salário)'],
        disclaimer: '"Sprawl-Mart: Onde os sonhos vão morrer e os preços são baixos. Trabalhe aqui e nunca mais questione o capitalismo."'
    }, sprawlMartJobs);

    console.log('   🎬 Todas as empresas épicas criadas!');
}
