<?php $moneda = 'S/'; ?>
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <title>Flujo de Caja <?php echo date('d/m/Y', strtotime($desde)); ?> — <?php echo date('d/m/Y', strtotime($hasta)); ?></title>
    <style>
        * { box-sizing: border-box; }
        body { font-family: Arial, sans-serif; font-size: 12px; color: #000; margin: 0; padding: 0; }
        .page { width: 210mm; margin: 0 auto; padding: 10mm 12mm; }
        .clearfix::after { content: ""; display: block; clear: both; }
        .text-right  { text-align: right; }
        .text-center { text-align: center; }
        .mb-10 { margin-bottom: 10px; }
        /* Header */
        .header-empresa { float: left; width: 60%; }
        .header-doc     { float: right; width: 36%; border: 1px solid #000; padding: 8px; text-align: center; }
        .header-doc .titulo { font-size: 15px; font-weight: bold; margin: 5px 0 3px; }
        /* Resumen */
        .resumen { display: flex; gap: 10px; margin-bottom: 12px; }
        .resumen-box {
            flex: 1; border: 1px solid #ccc; border-radius: 4px; padding: 8px;
            text-align: center;
        }
        .resumen-box .label { font-size: 10px; color: #666; }
        .resumen-box .valor { font-size: 15px; font-weight: bold; margin-top: 3px; }
        .verde { color: #27ae60; }
        .rojo  { color: #e74c3c; }
        /* Tablas */
        table { width: 100%; border-collapse: collapse; margin-bottom: 8px; }
        th, td { padding: 3px 5px; }
        .tbl thead th { background: #e9e9e9; border: 1px solid #000; font-size: 11px; }
        .tbl tbody td { border-bottom: 1px solid #eee; font-size: 11px; }
        .tbl tbody tr:last-child td { border-bottom: 1px solid #000; }
        .tbl tfoot td { font-weight: bold; border-top: 2px solid #000; }
        /* Secciones */
        .seccion-titulo {
            font-weight: bold; font-size: 12px; padding: 4px 8px;
            border-left: 3px solid #000; background: #f5f5f5;
            margin-bottom: 6px; margin-top: 10px;
            display: flex; justify-content: space-between;
        }
        .seccion-titulo.verde { border-left-color: #27ae60; }
        .seccion-titulo.rojo  { border-left-color: #e74c3c; }
        /* Totales finales */
        .total-final {
            background: #f0f0f0; border: 1px solid #ccc; border-radius: 4px;
            padding: 10px 14px; margin-top: 10px;
        }
        .total-final table td, .total-final table th { padding: 3px 8px; }
        .total-final .fila-final th, .total-final .fila-final td {
            font-size: 14px; font-weight: bold; border-top: 2px solid #000;
        }
        /* No print */
        .no-print { text-align: center; padding: 8px; background: #f5f5f5; border-bottom: 1px solid #ddd; }
        .btn-print { padding: 7px 20px; background: #337ab7; color: #fff; border: none; border-radius: 4px; cursor: pointer; }
        @media print { .no-print { display: none !important; } .page { padding: 8mm 10mm; } }
    </style>
</head>
<body>

<div class="no-print">
    <button class="btn-print" onclick="window.print()">&#128438; Imprimir / Guardar PDF</button>
</div>

<div class="page">

    <!-- ENCABEZADO -->
    <div class="clearfix mb-10">
        <div class="header-empresa">
            <?php if ($empresa): ?>
                <?php if (!empty($empresa->logo)): ?>
                    <div style="margin-bottom:5px;">
                        <img src="<?php echo base_url('uploads/empresa/'.$empresa->logo); ?>"
                             style="max-width:180px; max-height:60px; object-fit:contain;">
                    </div>
                <?php endif; ?>
                <div style="font-weight:bold; font-size:14px;"><?php echo $empresa->nombre; ?></div>
                <div>RUC: <?php echo $empresa->ruc; ?></div>
            <?php endif; ?>
        </div>
        <div class="header-doc">
            <div class="titulo">FLUJO DE CAJA</div>
            <div style="font-size:12px; margin-top:4px;">
                <?php echo date('d/m/Y', strtotime($desde)); ?> —
                <?php echo date('d/m/Y', strtotime($hasta)); ?>
            </div>
        </div>
    </div>

    <!-- RESUMEN EJECUTIVO -->
    <div class="resumen">
        <div class="resumen-box">
            <div class="label">Saldo inicial</div>
            <div class="valor"><?php echo $moneda . ' ' . number_format($saldo_inicial, 2); ?></div>
        </div>
        <div class="resumen-box">
            <div class="label">Total ingresos</div>
            <div class="valor verde"><?php echo $moneda . ' ' . number_format($total_ingresos, 2); ?></div>
        </div>
        <div class="resumen-box">
            <div class="label">Total egresos</div>
            <div class="valor rojo"><?php echo $moneda . ' ' . number_format($total_egresos, 2); ?></div>
        </div>
        <div class="resumen-box">
            <div class="label">Saldo final</div>
            <div class="valor <?php echo $saldo_final >= 0 ? 'verde' : 'rojo'; ?>">
                <?php echo $moneda . ' ' . number_format($saldo_final, 2); ?>
            </div>
        </div>
    </div>

    <!-- INGRESOS -->
    <div class="seccion-titulo verde">
        <span>&#9660; INGRESOS DEL PERÍODO</span>
        <span><?php echo $moneda . ' ' . number_format($total_ingresos, 2); ?></span>
    </div>

    <table class="tbl">
        <thead>
            <tr>
                <th style="width:12%;">Fecha</th>
                <th style="width:15%;">Comprobante</th>
                <th style="width:30%;">Cliente / Concepto</th>
                <th style="width:15%;">Medio pago</th>
                <th style="width:10%;">Tipo</th>
                <th style="width:13%;" class="text-right">Importe</th>
            </tr>
        </thead>
        <tbody>
            <?php foreach ($cobros_clientes as $c): ?>
                <tr>
                    <td><?php echo date('d/m/Y', strtotime($c->fecha)); ?></td>
                    <td><?php echo $c->serie . '-' . $c->numero; ?></td>
                    <td><?php echo $c->cliente; ?></td>
                    <td><?php echo $c->medio_pago ?? '—'; ?></td>
                    <td>Cobro cliente</td>
                    <td class="text-right"><?php echo number_format($c->importe, 2); ?></td>
                </tr>
            <?php endforeach; ?>
            <?php foreach ($ingresos_caja as $c): ?>
                <tr>
                    <td><?php echo date('d/m/Y', strtotime($c->fecha)); ?></td>
                    <td>—</td>
                    <td><?php echo $c->concepto; ?></td>
                    <td><?php echo $c->origen; ?></td>
                    <td>Caja chica</td>
                    <td class="text-right"><?php echo number_format($c->importe, 2); ?></td>
                </tr>
            <?php endforeach; ?>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="5" class="text-right">TOTAL INGRESOS:</td>
                <td class="text-right"><?php echo number_format($total_ingresos, 2); ?></td>
            </tr>
        </tfoot>
    </table>

    <!-- EGRESOS -->
    <div class="seccion-titulo rojo">
        <span>&#9650; EGRESOS DEL PERÍODO</span>
        <span><?php echo $moneda . ' ' . number_format($total_egresos, 2); ?></span>
    </div>

    <table class="tbl">
        <thead>
            <tr>
                <th style="width:12%;">Fecha</th>
                <th style="width:15%;">Comprobante</th>
                <th style="width:32%;">Proveedor / Concepto</th>
                <th style="width:10%;">Tipo gasto</th>
                <th style="width:10%;">Tipo</th>
                <th style="width:11%;" class="text-right">Importe</th>
            </tr>
        </thead>
        <tbody>
            <?php foreach ($pagos_proveedores as $p): ?>
                <tr>
                    <td><?php echo date('d/m/Y', strtotime($p->fecha)); ?></td>
                    <td><?php echo $p->serie . '-' . $p->numero; ?></td>
                    <td><?php echo $p->proveedor; ?></td>
                    <td><?php echo $p->tipo_gasto === 'S' ? 'Servicio' : 'Compra'; ?></td>
                    <td>Pago prov.</td>
                    <td class="text-right"><?php echo number_format($p->importe, 2); ?></td>
                </tr>
            <?php endforeach; ?>
            <?php foreach ($egresos_caja as $e): ?>
                <tr>
                    <td><?php echo date('d/m/Y', strtotime($e->fecha)); ?></td>
                    <td>—</td>
                    <td>
                        <?php echo $e->concepto; ?>
                        <?php if (!empty($e->proveedor_nombre)): ?>
                            — <?php echo $e->proveedor_nombre; ?>
                        <?php endif; ?>
                    </td>
                    <td>Gasto menor</td>
                    <td>Caja chica</td>
                    <td class="text-right"><?php echo number_format($e->importe, 2); ?></td>
                </tr>
            <?php endforeach; ?>
        </tbody>
        <tfoot>
            <tr>
                <td colspan="5" class="text-right">TOTAL EGRESOS:</td>
                <td class="text-right"><?php echo number_format($total_egresos, 2); ?></td>
            </tr>
        </tfoot>
    </table>

    <!-- TOTALES FINALES -->
    <div class="total-final">
        <table>
            <tr>
                <th>Saldo inicial</th>
                <td class="text-right"><?php echo $moneda; ?></td>
                <td class="text-right"><?php echo number_format($saldo_inicial, 2); ?></td>
            </tr>
            <tr>
                <th class="verde">(+) Total ingresos</th>
                <td class="text-right"><?php echo $moneda; ?></td>
                <td class="text-right verde"><?php echo number_format($total_ingresos, 2); ?></td>
            </tr>
            <tr>
                <th class="rojo">(-) Total egresos</th>
                <td class="text-right"><?php echo $moneda; ?></td>
                <td class="text-right rojo"><?php echo number_format($total_egresos, 2); ?></td>
            </tr>
            <tr class="fila-final">
                <th>SALDO FINAL</th>
                <td class="text-right"><?php echo $moneda; ?></td>
                <td class="text-right <?php echo $saldo_final >= 0 ? 'verde' : 'rojo'; ?>">
                    <?php echo number_format($saldo_final, 2); ?>
                </td>
            </tr>
        </table>
    </div>

    <!-- PROYECTADO -->
    <?php
    $total_cobrar = array_sum(array_map(fn($c) => (float)$c->saldo, $por_cobrar));
    $total_pagar  = array_sum(array_map(fn($p) => (float)$p->saldo, $por_pagar));
    $saldo_proy   = $saldo_final + $total_cobrar - $total_pagar;
    ?>
    <div style="margin-top:16px; border-top:2px solid #ccc; padding-top:10px;">
        <div style="font-weight:bold; font-size:12px; margin-bottom:6px;">
            RESUMEN PROYECTADO (saldos pendientes al <?php echo date('d/m/Y'); ?>)
        </div>
        <table style="width:50%;">
            <tr>
                <td>Saldo actual:</td>
                <td class="text-right"><?php echo $moneda . ' ' . number_format($saldo_final, 2); ?></td>
            </tr>
            <tr>
                <td class="verde">(+) Por cobrar:</td>
                <td class="text-right verde"><?php echo $moneda . ' ' . number_format($total_cobrar, 2); ?></td>
            </tr>
            <tr>
                <td class="rojo">(-) Por pagar:</td>
                <td class="text-right rojo"><?php echo $moneda . ' ' . number_format($total_pagar, 2); ?></td>
            </tr>
            <tr style="border-top:2px solid #000; font-weight:bold;">
                <td>Saldo proyectado:</td>
                <td class="text-right <?php echo $saldo_proy >= 0 ? 'verde' : 'rojo'; ?>">
                    <?php echo $moneda . ' ' . number_format($saldo_proy, 2); ?>
                </td>
            </tr>
        </table>
    </div>

    <!-- PIE -->
    <div class="text-center" style="margin-top:20px; border-top:1px solid #ccc; padding-top:6px; font-size:10px; color:#777;">
        <?php if ($empresa): echo $empresa->nombre . ' | RUC: ' . $empresa->ruc . ' | '; endif; ?>
        Generado el <?php echo date('d/m/Y H:i'); ?>
    </div>

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