<?php
// loja/relatorio_zap.php
ini_set('display_errors', 1);
error_reporting(E_ALL);
date_default_timezone_set('America/Sao_Paulo');

include_once('../config.php');
include_once('../header.php');

$hoje = date('Y-m-d');
$hoje_br = date('d/m/Y');
$mes_atual = date('m');
$ano_atual = date('Y');

// ==========================================
// 1. DADOS DO LIVRO CAIXA (Fechamento de Hoje)
// ==========================================
$sql_caixa = "SELECT * FROM fechamentos_caixa WHERE data = '$hoje' LIMIT 1";
$res_caixa = $conn->query($sql_caixa);
$dados_caixa = $res_caixa ? $res_caixa->fetch_assoc() : null;

$total_abertura = 0;
$total_caixa_f = 0;
$diferenca = 0;

// Novas variáveis extraídas da lógica do seu Livro Caixa
$troco_ontem = 0;
$entradas_dia = 0;
$saidas_dia = 0;
$saldo_calculado = 0;

// Valores individuais do fechamento do livro_caixa.php para somar nas contas
$caixa_moedas = $dados_caixa['moedas'] ?? 0;
$caixa_notas = $dados_caixa['notas'] ?? 0;
$caixa_bolsinha = $dados_caixa['bolsinha'] ?? 0;
$caixa_mercado_pago = $dados_caixa['mercado_pago'] ?? 0;

// Busca o troco do dia anterior (último fechamento antes de hoje)
$sql_troco_ant = "SELECT (moedas + notas + bolsinha + mercado_pago) as troco FROM fechamentos_caixa WHERE data < '$hoje' ORDER BY data DESC LIMIT 1";
$res_troco_ant = $conn->query($sql_troco_ant);
if ($res_troco_ant && $res_troco_ant->num_rows > 0) {
    $row_troco = $res_troco_ant->fetch_assoc();
    $troco_ontem = $row_troco['troco'] ?? 0;
}

// Busca somatória de Entradas e Saídas do dia na tabela movimentacoes
$sql_somas_mov = "
    SELECT 
        SUM(CASE WHEN TIPO = 'ENTRADA' THEN VALOR_TOTAL ELSE 0 END) as total_entradas,
        SUM(CASE WHEN TIPO = 'SAÍDA' THEN VALOR_TOTAL ELSE 0 END) as total_saidas
    FROM movimentacoes 
    WHERE DATE(DATA_MOVIMENTACAO) = '$hoje'
";
$res_somas_mov = $conn->query($sql_somas_mov);
if ($res_somas_mov) {
    $row_somas = $res_somas_mov->fetch_assoc();
    $entradas_dia = $row_somas['total_entradas'] ?? 0;
    $saidas_dia = $row_somas['total_saidas'] ?? 0;
}

// Cálculo do Saldo Calculado (Troco Ontem + Entradas - Saídas)
$saldo_calculado = $troco_ontem + $entradas_dia - $saidas_dia;

if ($dados_caixa) {
    // Cálculo da Abertura Informada
    $total_abertura = ($dados_caixa['moedas_ab'] ?? 0) + ($dados_caixa['notas_ab'] ?? 0) + ($dados_caixa['bolsinha_ab'] ?? 0) + ($dados_caixa['mp_ab'] ?? 0);
    
    // Cálculo do Fechamento Realizado
    $total_caixa_f = $caixa_moedas + $caixa_notas + $caixa_bolsinha + $caixa_mercado_pago;
    
    // Diferença baseada no Fechamento Real contra o Saldo Calculado do sistema
    $diferenca = $total_caixa_f - $saldo_calculado;
}

// ==========================================
// 2. DADOS DOS FILHOS (Dia, Mês, Ano e Total Geral)
// ==========================================
$sql_filhos_dados = "
    SELECT 
        PRODUTO_NOME,
        VALOR_TOTAL,
        DATE(DATA_MOVIMENTACAO) as data_mov,
        MONTH(DATA_MOVIMENTACAO) as mes_mov,
        YEAR(DATA_MOVIMENTACAO) as ano_mov
    FROM movimentacoes 
    WHERE TIPO = 'SAÍDA' AND ABONADO = 0 AND ESCONDER_FILHOS = 0
    AND (PRODUTO_NOME IN ('PIX TULIO', 'RETIRADA TULIO', 'LANCHE TULIO', 'PIX JULIA', 'RETIRADA JULIA', 'LANCHE JULIA'))
";
$res_filhos_dados = $conn->query($sql_filhos_dados);

$filhos = [
    'TULIO' => ['dia' => 0, 'mes' => 0, 'ano' => 0, 'total' => 0],
    'JULIA' => ['dia' => 0, 'mes' => 0, 'ano' => 0, 'total' => 0]
];

if ($res_filhos_dados) {
    while ($row = $res_filhos_dados->fetch_assoc()) {
        $perfil = (strpos($row['PRODUTO_NOME'], 'TULIO') !== false) ? 'TULIO' : 'JULIA';
        $v = $row['VALOR_TOTAL'];
        
        // Total Geral de todo o histórico
        $filhos[$perfil]['total'] += $v;
        
        // Filtro por Dia
        if ($row['data_mov'] == $hoje) {
            $filhos[$perfil]['dia'] += $v;
        }
        // Filtro por Mês Corrente
        if ($row['mes_mov'] == $mes_atual && $row['ano_mov'] == $ano_atual) {
            $filhos[$perfil]['mes'] += $v;
        }
        // Filtro por Ano Corrente
        if ($row['ano_mov'] == $ano_atual) {
            $filhos[$perfil]['ano'] += $v;
        }
    }
}

// ==========================================
// 3. DADOS DO FIADO (Total de Devedores Ativos e Top 5)
// ==========================================
$coluna_fiado = "VALOR"; 
$check_col = $conn->query("SHOW COLUMNS FROM fiado LIKE 'TOTAL_DEVEDOR'");
if ($check_col && $check_col->num_rows > 0) {
    $coluna_fiado = "TOTAL_DEVEDOR";
} else {
    $check_col2 = $conn->query("SHOW COLUMNS FROM fiado LIKE 'VALOR'");
    if (!$check_col2 || $check_col2->num_rows == 0) {
        $check_col3 = $conn->query("SHOW COLUMNS FROM fiado LIKE 'DEBITO'");
        if ($check_col3 && $check_col3->num_rows > 0) {
            $coluna_fiado = "DEBITO";
        } else {
            $check_col4 = $conn->query("SHOW COLUMNS FROM fiado LIKE 'TOTAL'");
            if ($check_col4 && $check_col4->num_rows > 0) {
                $coluna_fiado = "TOTAL";
            }
        }
    }
}

// Busca totais unificados agrupados por cliente para evitar duplicidade
$sql_fiado_totais = "SELECT COUNT(DISTINCT CLIENTE_NOME) as qtd_clientes, SUM($coluna_fiado) as total_fiado FROM fiado WHERE $coluna_fiado > 0";
$res_fiado_totais = $conn->query($sql_fiado_totais);
$dados_fiado = $res_fiado_totais ? $res_fiado_totais->fetch_assoc() : ['total_fiado' => 0, 'qtd_clientes' => 0];

// Busca os top 5 agrupando pelo nome do cliente e somando o saldo real da pasta dele
$sql_top5_fiado = "
    SELECT CLIENTE_NOME, SUM($coluna_fiado) as saldo 
    FROM fiado 
    WHERE $coluna_fiado > 0 
    GROUP BY CLIENTE_NOME 
    ORDER BY saldo DESC 
    LIMIT 5
";
$res_top5_fiado = $conn->query($sql_top5_fiado);
$top5_fiado_html = "";

if ($res_top5_fiado && $res_top5_fiado->num_rows > 0) {
    $pos_f = 1;
    while ($dev = $res_top5_fiado->fetch_assoc()) {
        $nome_resumido = (strlen($dev['CLIENTE_NOME']) > 18) ? substr($dev['CLIENTE_NOME'], 0, 16) . ".." : $dev['CLIENTE_NOME'];
        $top5_fiado_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444;">';
        $top5_fiado_html .= '  <span>' . $pos_f . 'º ' . strtoupper($nome_resumido) . '</span>';
        $top5_fiado_html .= '  <span style="font-weight: bold;">R$ ' . number_format($dev['saldo'], 2, ',', '.') . '</span>';
        $top5_fiado_html .= '</div>';
        $pos_f++;
    }
} else {
    $top5_fiado_html = '<div class="text-center text-muted py-1" style="font-size: 10px;">NENHUM DEVEDOR ATIVO.</div>';
}

// ==========================================
// 4. DINHEIRO NAS CONTAS (Caixa de Casa) + VALORES LIVRO CAIXA
// ==========================================
$sql_contas = "
    SELECT 
        c.id, 
        c.nome_conta,
        COALESCE(SUM(CASE WHEN l.tipo = 'ENTRADA' THEN l.valor ELSE 0 END), 0) - 
        COALESCE(SUM(CASE WHEN l.tipo = 'SAIDA' THEN l.valor ELSE 0 END), 0) as saldo_real
    FROM contas_bancarias_casa c
    LEFT JOIN lancamentos_casa l ON c.id = l.conta_id
    GROUP BY c.id, c.nome_conta
    ORDER BY c.nome_conta ASC
";
$res_contas = $conn->query($sql_contas);
$contas_html = "";
$total_geral_contas = 0;

if ($res_contas && $res_contas->num_rows > 0) {
    while ($cnt = $res_contas->fetch_assoc()) {
        $saldo_conta = $cnt['saldo_real'];
        $total_geral_contas += $saldo_conta;
        
        $contas_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444;">';
        $contas_html .= '  <span>🔹 ' . strtoupper($cnt['nome_conta']) . '</span>';
        $contas_html .= '  <span style="font-weight: bold; color: ' . ($saldo_conta >= 0 ? '#1b5e20' : '#b71c1c') . ';">R$ ' . number_format($saldo_conta, 2, ',', '.') . '</span>';
        $contas_html .= '</div>';
    }
} else {
    $contas_html = '<div class="text-center text-muted py-1" style="font-size: 10px;">NENHUMA CONTA CADASTRADA.</div>';
}

// Adiciona os valores individuais vindos do fechamento do Livro Caixa ao Bloco de Contas
$total_geral_contas += ($caixa_moedas + $caixa_notas + $caixa_bolsinha + $caixa_mercado_pago);

$contas_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444; background-color: #fafafa;">';
$contas_html .= '  <span>🪙 CAIXA (MOEDAS)</span>';
$contas_html .= '  <span style="font-weight: bold; color: #1b5e20;">R$ ' . number_format($caixa_moedas, 2, ',', '.') . '</span>';
$contas_html .= '</div>';

$contas_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444; background-color: #fafafa;">';
$contas_html .= '  <span>💵 CAIXA (NOTAS)</span>';
$contas_html .= '  <span style="font-weight: bold; color: #1b5e20;">R$ ' . number_format($caixa_notas, 2, ',', '.') . '</span>';
$contas_html .= '</div>';

$contas_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444; background-color: #fafafa;">';
$contas_html .= '  <span>👛 CAIXA (BOLSINHA)</span>';
$contas_html .= '  <span style="font-weight: bold; color: #1b5e20;">R$ ' . number_format($caixa_bolsinha, 2, ',', '.') . '</span>';
$contas_html .= '</div>';

$contas_html .= '<div style="font-size: 11px; border-bottom: 1px dashed #eee; padding: 3px 0; display: flex; justify-content: space-between; color: #444; background-color: #fafafa;">';
$contas_html .= '  <span>💳 CAIXA (MERCADO PAGO)</span>';
$contas_html .= '  <span style="font-weight: bold; color: #1b5e20;">R$ ' . number_format($caixa_mercado_pago, 2, ',', '.') . '</span>';
$contas_html .= '</div>';

// ==========================================
// 5. TODOS OS LANÇAMENTOS DO DIA (Entradas e Saídas)
// ==========================================
$sql_hoje_mov = "
    SELECT DATA_MOVIMENTACAO, TIPO, PRODUTO_NOME, SUM(QUANTIDADE) as QTD, SUM(VALOR_TOTAL) as TOTAL 
    FROM movimentacoes 
    WHERE DATE(DATA_MOVIMENTACAO) = '$hoje' 
    GROUP BY DATA_MOVIMENTACAO, TIPO, PRODUTO_NOME 
    ORDER BY DATA_MOVIMENTACAO ASC
";
$res_hoje_mov = $conn->query($sql_hoje_mov);
$lista_movimentos_html = "";

if ($res_hoje_mov && $res_hoje_mov->num_rows > 0) {
    while ($m_hoje = $res_hoje_mov->fetch_assoc()) {
        $hora_m = date('H:i', strtotime($m_hoje['DATA_MOVIMENTACAO']));
        $tipo_m = strtoupper($m_hoje['TIPO']);
        $cor_tipo = ($tipo_m == 'SAÍDA') ? '#c62828' : '#2e7d32';
        
        $lista_movimentos_html .= '<div style="border-bottom: 1px solid #f1f1f1; padding: 4px 0; display: flex; justify-content: space-between; align-items: center; font-size: 10px;">';
        $lista_movimentos_html .= '  <div style="text-overflow: ellipsis; overflow: hidden; white-space: nowrap; max-width: 75%;">';
        $lista_movimentos_html .= '    <span style="color: #777;">' . $hora_m . '</span> ';
        $lista_movimentos_html .= '    <span style="color:' . $cor_tipo . '; font-weight:bold; margin-right: 2px;">[' . substr($tipo_m,0,3) . ']</span>';
        $lista_movimentos_html .= '    <span style="color: #222;">' . $m_hoje['PRODUTO_NOME'] . ' (' . (int)$m_hoje['QTD'] . ')</span>';
        $lista_movimentos_html .= '  </div>';
        $lista_movimentos_html .= '  <span style="color:' . $cor_tipo . '; font-weight: bold; white-space: nowrap;">R$ ' . number_format($m_hoje['TOTAL'], 2, ',', '.') . '</span>';
        $lista_movimentos_html .= '</div>';
    }
} else {
    $lista_movimentos_html = '<div class="text-center text-muted py-2" style="font-size: 10px;">NENHUMA MOVIMENTAÇÃO HOJE.</div>';
}
?>

<script src="https://cdn.jsdelivr.net/npm/html2canvas@1.4.1/dist/html2canvas.min.js"></script>

<style>
    body { background-color: #f4f6f9; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
    
    /* Container principal ajustado para telas mobile */
    .container-mobile-report { max-width: 400px; margin: 10px auto; background: #ffffff; padding: 4px; }
    
    /* Área específica que será capturada e transformada em imagem */
    #area_comprovante { background: #ffffff; border: 1px solid #e0e0e0; border-radius: 8px; padding: 12px; }
    
    .card-zap { background: #fff; border: 1px solid #eef2f5; margin-bottom: 10px; border-radius: 6px; box-shadow: 0 1px 3px rgba(0,0,0,0.02); overflow: hidden; }
    
    /* Títulos dos blocos pintados de Preto Claro (#222222) com fundo sutil */
    .section-title-zap { background-color: #f1f5f9; font-weight: bold; padding: 6px 10px; border-bottom: 1px solid #e2e8f0; color: #222222; font-size: 10px; letter-spacing: 0.5px; text-transform: uppercase; }
    
    .content-zap { padding: 8px 10px; font-size: 11px; }
    .label-custom { font-weight: 500; color: #475569; }
    .item-row-zap { display: flex; justify-content: space-between; margin-bottom: 4px; padding-bottom: 4px; border-bottom: 1px solid #f8fafc; }
    .sub-filho-row { display: flex; justify-content: space-between; padding: 3px 0; border-bottom: 1px dashed #f1f5f9; color: #475569; font-size: 10px; }
    
    /* Botão de gerar Imagem estilo WhatsApp */
    .btn-gerar-imagem { background-color: #25D366; color: white; font-weight: bold; width: 100%; border: none; padding: 12px; font-size: 12px; border-radius: 6px; text-transform: uppercase; box-shadow: 0 2px 5px rgba(0,0,0,0.15); display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 10px; cursor: pointer; }
    .btn-gerar-imagem:hover { background-color: #1ebd54; color: white; }
    
    /* Remove completamente qualquer barra de rolagem interna */
    .movimentos-container-print { max-height: none !important; overflow: visible !important; }
</style>

<div class="container-mobile-report">
    
    <div id="area_comprovante">
        <div class="text-center mb-3" style="background: #1e3a8a; padding: 10px; border-radius: 6px; color: #ffffff;">
            <h2 style="font-size: 14px; font-weight: bold; margin: 0; letter-spacing: 1px;">TJ PRESENTES</h2>
            <div style="font-size: 11px; opacity: 0.9; margin-top: 2px; font-weight: 500;">Balanço Geral Consolidado Diário</div>
            <span class="badge badge-light" style="font-size: 10px; padding: 4px 8px; margin-top: 6px; color: #1e3a8a; font-weight: bold;"><?php echo $hoje_br; ?></span>
        </div>

        <div class="card-zap">
            <div class="section-title-zap">📖 Balanço do Livro Caixa</div>
            <div class="content-zap">
                <div class="item-row-zap"><span class="label-custom">🕒 Troco de Ontem:</span> <span style="color:#64748b; font-weight: bold;">R$ <?php echo number_format($troco_ontem, 2, ',', '.'); ?></span></div>
                <div class="item-row-zap"><span class="label-custom">🟢 (+) Entradas Hoje:</span> <span style="color:#16a34a; font-weight: bold;">R$ <?php echo number_format($entradas_dia, 2, ',', '.'); ?></span></div>
                <div class="item-row-zap"><span class="label-custom">🔴 (-) Saídas Hoje:</span> <span style="color:#dc2626; font-weight: bold;">R$ <?php echo number_format($saidas_dia, 2, ',', '.'); ?></span></div>
                <div class="item-row-zap" style="background: #f8fafc; padding: 4px; border-top: 1px solid #e2e8f0; margin-top: 2px;"><span class="label-custom">🧮 (=) Saldo Calculado:</span> <span style="color:#2563eb; font-weight: bold;">R$ <?php echo number_format($saldo_calculado, 2, ',', '.'); ?></span></div>
                
                <?php if ($dados_caixa): ?>
                    <div class="item-row-zap" style="margin-top: 4px; padding-top: 4px; border-top: 1px dashed #cbd5e1;"><span class="label-custom">🔒 Fechamento Informado:</span> <span style="color:#16a34a; font-weight: bold;">R$ <?php echo number_format($total_caixa_f, 2, ',', '.'); ?></span></div>
                    <div style="margin-top: 4px; font-weight: bold; font-size: 11px; display: flex; justify-content: space-between; padding: 2px 0;">
                        <span>📊 Status Diferença:</span> 
                        <?php if (abs($diferenca) < 0.01): ?>
                            <span style="color: #16a34a;">✅ CAIXA OK</span>
                        <?php elseif ($diferenca > 0): ?>
                            <span style="color: #2563eb;">🔵 SOBROU R$ <?php echo number_format($diferenca, 2, ',', '.'); ?></span>
                        <?php else: ?>
                            <span style="color: #dc2626;">🔴 FALTOU R$ <?php echo number_format(abs($diferenca), 2, ',', '.'); ?></span>
                        <?php endif; ?>
                    </div>
                <?php else: ?>
                    <div class="text-center text-muted py-1" style="font-style: italic; font-size: 10px; margin-top: 4px; border-top: 1px dashed #cbd5e1;">Caixa do dia não fechado no informativo.</div>
                <?php endif; ?>
            </div>
        </div>

        <div class="card-zap">
            <div class="section-title-zap">📊 Últimas Movimentações do Dia</div>
            <div class="content-zap movimentos-container-print">
                <?php echo $lista_movimentos_html; ?>
            </div>
        </div>

        <div class="card-zap">
            <div class="section-title-zap">💰 Saldo Disponível nas Contas</div>
            <div class="content-zap">
                <?php echo $contas_html; ?>
                <div style="margin-top: 6px; padding-top: 6px; border-top: 1px dashed #cbd5e1; font-weight: bold; font-size: 11px; display: flex; justify-content: space-between;">
                    <span>TOTAL GERAL:</span>
                    <span style="color: #1e3a8a; font-size: 12px;">R$ <?php echo number_format($total_geral_contas, 2, ',', '.'); ?></span>
                </div>
            </div>
        </div>

        <div class="card-zap">
            <div class="section-title-zap">👦👧 Gestão de Gastos dos Filhos</div>
            <div class="content-zap" style="padding-bottom: 4px;">
                <div style="font-weight: bold; color: #1e3a8a; margin-bottom: 2px; font-size: 11px;">👦 TÚLIO</div>
                <div class="sub-filho-row"><span>Hoje (Dia):</span> <span>R$ <?php echo number_format($filhos['TULIO']['dia'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row"><span>Mês Atual:</span> <span>R$ <?php echo number_format($filhos['TULIO']['mes'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row"><span>Ano Atual:</span> <span>R$ <?php echo number_format($filhos['TULIO']['ano'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row" style="font-weight: bold; border-bottom: none; color: #1e3a8a; margin-bottom: 6px;"><span>Total Histórico:</span> <span>R$ <?php echo number_format($filhos['TULIO']['total'], 2, ',', '.'); ?></span></div>
                
                <div style="font-weight: bold; color: #db2777; margin-bottom: 2px; font-size: 11px; padding-top: 4px; border-top: 1px dashed #e2e8f0;">👧 JÚLIA</div>
                <div class="sub-filho-row"><span>Hoje (Dia):</span> <span>R$ <?php echo number_format($filhos['JULIA']['dia'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row"><span>Mês Atual:</span> <span>R$ <?php echo number_format($filhos['JULIA']['mes'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row"><span>Ano Atual:</span> <span>R$ <?php echo number_format($filhos['JULIA']['ano'], 2, ',', '.'); ?></span></div>
                <div class="sub-filho-row" style="font-weight: bold; border-bottom: none; color: #db2777;"><span>Total Histórico:</span> <span>R$ <?php echo number_format($filhos['JULIA']['total'], 2, ',', '.'); ?></span></div>
            </div>
        </div>

        <div class="card-zap">
            <div class="section-title-zap">🔴 Carteira de Fiado Ativa</div>
            <div class="content-zap">
                <div class="item-row-zap"><span class="label-custom">Clientes Ativos:</span> <span style="color:#1e293b; font-weight: bold;"><?php echo $dados_fiado['qtd_clientes'] ?? 0; ?> Devedores</span></div>
                <div class="item-row-zap" style="padding-bottom: 4px; margin-bottom: 6px; border-bottom: 1px solid #e2e8f0;"><span class="label-custom">Total na Rua:</span> <span style="color: #dc2626; font-weight: bold;">R$ <?php echo number_format(($dados_fiado['total_fiado'] ?? 0), 2, ',', '.'); ?></span></div>
                
                <div class="label-custom" style="font-size: 9px; color: #64748b; margin-bottom: 3px; text-transform: uppercase; font-weight: bold; letter-spacing: 0.3px;">🔝 Top 5 Maiores Saldos:</div>
                <?php echo $top5_fiado_html; ?>
            </div>
        </div>
        
        <div class="text-center mt-2" style="font-size: 9px; color: #94a3b8; font-weight: 500;">
            Fim do relatório de hoje · Gerado em tempo real
        </div>
    </div>

    <button type="button" class="btn-gerar-imagem" onclick="compartilharRelatorioImagem()">
        <i class="fab fa-whatsapp"></i> Gerar e Compartilhar Imagem
    </button>
</div>

<script>
function compartilharRelatorioImagem() {
    const alvo = document.getElementById('area_comprovante');
    
    // Configura o html2canvas para renderizar perfeitamente em alta definição mobile
    html2canvas(alvo, {
        scale: 2, 
        useCORS: true,
        backgroundColor: '#ffffff'
    }).then(canvas => {
        // Converte o canvas gerado em arquivo de imagem real blob (PNG)
        canvas.toBlob(function(blob) {
            const data_atual = "<?php echo date('d-m-Y'); ?>";
            const arquivo = new File([blob], "relatorio_tj_presentes_" + data_atual + ".png", { type: "image/png" });
            
            // Verifica se o celular possui suporte nativo para compartilhamento de arquivos diretos
            if (navigator.canShare && navigator.canShare({ files: [arquivo] })) {
                navigator.share({
                    files: [arquivo],
                    title: 'Relatório TJ Presentes',
                    text: 'Balanço Geral Consolidado - ' + data_atual
                }).catch(err => {
                    baixarComoAlternativa(canvas);
                });
            } else {
                // Caso seja desktop ou navegador antigo, faz o download automático da imagem
                baixarComoAlternativa(canvas);
            }
        }, 'image/png');
    });
}

function baixarComoAlternativa(canvas) {
    const link = document.createElement('a');
    link.download = 'relatorio_tj_presentes_<?php echo date('d-m-Y'); ?>.png';
    link.href = canvas.toDataURL('image/png');
    link.click();
    alert("IMAGEM GERADA COM SUCESSO! Ela foi baixada em sua galeria. Agora basta anexar e enviar no WhatsApp.");
}
</script>

</div> </body>
</html>