APP Formação de Preço de Venda (Trial + Admin)
===================================================

Principais features desta versão
--------------------------------
- Cálculo de preço de venda (direto e reverso) baseado na sua planilha.
- Cadastro/edição de plataformas (Shopee, Shein, TikTok, Mercado Livre etc.).
- Integração com Mercado Pago (Checkout Pro) para venda do APP (R$ 29,90).
- Login por e-mail para usuários pagantes (verifica tabela vendas_app).
- Modo Trial com:
  - Limite de SIMULAÇÕES: 3
  - Limite de DIAS: 7 dias a partir da criação
- Painel ADMIN com visualização de:
  - Usuários em Trial
  - Vendas registradas na tabela vendas_app

Rotas / Arquivos
----------------
- config.php
- db.php
- header.php
- footer.php
- index.php              -> app principal de cálculo
- login.php              -> login por e-mail (usuário que já pagou)
- logout.php
- cadastro.php           -> tela de cadastro + redireciona para pagamento
- pagamento.php          -> resumo e botão "Pagar com Mercado Pago"
- criar_pagamento.php    -> cria preferência no Mercado Pago (SDK via Composer)
- sucesso.php            -> retorno sucesso do Mercado Pago, grava vendas_app
- erro.php               -> retorno erro do pagamento
- pendente.php           -> retorno pagamento pendente
- trial.php              -> tela de ativação/entrada no modo Trial
- conta_simulacao.php    -> endpoint AJAX que controla as simulações do Trial
- admin_login.php        -> login administrativo simples (senha em config.php)
- admin.php              -> painel com listagem de usuarios_trial e vendas_app

Banco de dados
--------------
Ajuste db.php com as credenciais do seu MySQL e crie as tabelas abaixo:

1) Tabela para Trial:

  CREATE TABLE usuarios_trial (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    nome VARCHAR(190) NOT NULL,
    email VARCHAR(190) NOT NULL UNIQUE,
    sim_count INT UNSIGNED NOT NULL DEFAULT 0,
    created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

2) Tabela de vendas (se ainda não existir), modelo sugerido:

  CREATE TABLE vendas_app (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    payment_id VARCHAR(64) NOT NULL UNIQUE,
    preference_id VARCHAR(64) DEFAULT NULL,
    status VARCHAR(32) DEFAULT NULL,
    status_detail VARCHAR(64) DEFAULT NULL,
    nome VARCHAR(190) DEFAULT NULL,
    email VARCHAR(190) DEFAULT NULL,
    whatsapp VARCHAR(50) DEFAULT NULL,
    tipo VARCHAR(10) DEFAULT NULL,
    doc VARCHAR(32) DEFAULT NULL,
    amount DECIMAL(10,2) DEFAULT NULL,
    raw_json LONGTEXT DEFAULT NULL,
    created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_at DATETIME NULL DEFAULT NULL
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Configurações importantes
-------------------------
1) config.php
   - Ajustar os valores:
       $TRIAL_MAX_SIMULACOES = 3;
       $TRIAL_MAX_DIAS        = 7;
   - Ajustar a senha ADMIN:
       $ADMIN_PASSWORD = 'mude_esta_senha_forte';

2) Mercado Pago
   - Instale o SDK via Composer na pasta do projeto:

       composer require "mercadopago/dx-php:3.7.1"

   - Em criar_pagamento.php e sucesso.php, configure:

       $accessToken = 'SEU_ACCESS_TOKEN_AQUI';

   - Em criar_pagamento.php, quando estiver com HTTPS em produção,
     defina o domínio para ativar back_urls e auto_return:

       $baseUrl = 'https://seu-dominio.com';

Fluxos de uso
-------------
- Trial:
  - Usuário acessa trial.php, informa nome e e-mail.
  - É criado/atualizado em usuarios_trial com sim_count e created_at.
  - Cada recalculo na tela principal chama conta_simulacao.php:
      - Incrementa sim_count até o limite ($TRIAL_MAX_SIMULACOES).
      - Valida também o limite de dias ($TRIAL_MAX_DIAS).
  - Quando o Trial termina (limite de simulações ou de dias):
      - Usuário recebe alert explicando.
      - O sistema redireciona automaticamente para pagamento.php
        passando nome e e-mail na URL (quando disponíveis).

- Licença completa:
  - Usuário faz cadastro em cadastro.php.
  - É redirecionado para pagamento.php com os dados via GET.
  - Em pagamento.php clica em "Pagar com Mercado Pago".
  - criar_pagamento.php cria uma preferência e redireciona para o checkout.
  - Ao voltar do Mercado Pago (sucesso.php):
      - Dados do pagamento são registrados em vendas_app.
  - login.php:
      - Usuário digita o e-mail da compra.
      - Se houver venda com status 'approved' para esse e-mail, o acesso é liberado.

- Admin:
  - Acesse admin_login.php
  - Informe a senha definida em config.php ($ADMIN_PASSWORD).
  - Em admin.php você vê:
      - Tabela de usuarios_trial (nome, e-mail, sim_count, dias desde início).
      - Tabela de vendas_app (últimas vendas, status, valor).

Segurança
---------
- Altere SEMPRE o $ADMIN_PASSWORD em config.php antes de subir para produção.
- Proteja admin.php/ admin_login.php com IP fixo ou .htaccess se possível.
- Não suba o projeto em ambiente público sem HTTPS configurado para usar
  corretamente as back_urls do Mercado Pago.
