<?php
// modules/facturacion/pagos_convalidacion.php
require_once __DIR__ . '/../../config/app.php';
require_once __DIR__ . '/../../config/onedrive.php';
require_once __DIR__ . '/../../includes/OneDriveStorage.php';
require_once __DIR__ . '/../../includes/auth.php';
require_once __DIR__ . '/../../includes/functions.php';
require_once __DIR__ . '/../../includes/flash.php';
requireRol(ROL_FACTURACION);
$idInst = instId();

$user      = currentUser();
$db        = getDB();
$pageTitle = 'Pagos de Convalidación';

// ── Precio configurado ──────────────────────────────────────
$stCfg = $db->prepare("SELECT clave, valor FROM configuracion_institucional WHERE id_instituto = :id AND clave = 'precio_convalidacion'");
$stCfg->execute([':id' => $idInst]);
$row = $stCfg->fetch();
$precioConv = $row['valor'] ?? '0.00';

// ── Parámetros ──────────────────────────────────────────────
$filtroEstado = $_GET['estado'] ?? 'enviada';
$busqueda     = trim($_GET['q'] ?? '');
$idDetalle    = (int)($_GET['id'] ?? 0);
$filtPeriodo = (int)($_GET['periodo'] ?? 0);
$filtCarrera = (int)($_GET['carrera'] ?? 0);
if ($filtPeriodo === 0 && !isset($_GET['periodo'])) {
    $stAct = $db->prepare("SELECT id_periodo FROM periodos_academicos WHERE activo=1 AND id_instituto=:inst ORDER BY fecha_inicio DESC LIMIT 1");
    $stAct->execute([':inst' => $idInst]); $pa = $stAct->fetchColumn();
    if ($pa) $filtPeriodo = (int)$pa;
}
$stPer = $db->prepare("SELECT id_periodo, nombre, activo FROM periodos_academicos WHERE id_instituto=:inst ORDER BY activo DESC, fecha_inicio DESC");
$stPer->execute([':inst' => $idInst]); $listaPeriodos = $stPer->fetchAll();
$stCar = $db->prepare("SELECT id_carrera, nombre FROM carreras WHERE id_instituto=:inst AND activa=1 ORDER BY nombre");
$stCar->execute([':inst' => $idInst]); $listaCarreras = $stCar->fetchAll();


// ── POST: Aprobar o rechazar ─────────────────────────────────
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $accion      = $_POST['accion'] ?? '';
    $idSol       = (int)($_POST['id_solicitud'] ?? 0);
    $observacion = trim($_POST['observaciones'] ?? '');
    $esExonerado = isset($_POST['exonerado']) ? 1 : 0;

    if ($idSol && in_array($accion, ['aprobar','rechazar'])) {
        if ($accion === 'rechazar' && empty($observacion)) {
            flashSet('err', 'Debes indicar el motivo del rechazo.');
            header('Location: pagos_convalidacion.php?id='.$idSol); exit;
        }
        $nuevoEstado = $accion === 'aprobar' ? 'aprobado' : 'rechazado';
        // Verificar que sea del instituto correcto
        $instCheckQ = $idInst ? "AND c.id_instituto = $idInst" : '';
        $db->prepare("
            UPDATE convalidaciones con
            JOIN practicas c ON c.id_practica = con.id_practica
            SET con.estado_pago = :ep,
                con.exonerado   = :ex,
                con.obs_pago    = :o,
                con.updated_at  = NOW()
            WHERE con.id_solicitud = :id
              AND con.estado_pago  = 'enviada'
              $instCheckQ
        ")->execute([':ep'=>$nuevoEstado,':ex'=>$esExonerado,':o'=>$observacion,':id'=>$idSol]);

        // Notificar al estudiante
        try {
            $stEst = $db->prepare("SELECT e.id_usuario FROM convalidaciones con JOIN estudiantes e ON e.id_estudiante=con.id_estudiante WHERE con.id_solicitud=:id");
            $stEst->execute([':id'=>$idSol]);
            $idUsrEst = $stEst->fetchColumn();
            if ($idUsrEst) {
                $db->prepare("INSERT INTO notificaciones (id_usuario,asunto,mensaje,leida,created_at) VALUES (:u,:a,:m,0,NOW())")->execute([
                    ':u' => $idUsrEst,
                    ':a' => $accion === 'aprobar' ? '✅ Pago de convalidación validado' : '❌ Comprobante de convalidación rechazado',
                    ':m' => $accion === 'aprobar'
                        ? 'Tu comprobante de pago de Convalidación de Prácticas fue validado.'
                        : 'Tu comprobante de convalidación fue rechazado. Motivo: '.$observacion,
                ]);
            }
        } catch (Exception $e) {}

        flashSet('ok', $accion === 'aprobar' ? '✅ Pago validado.' : '❌ Solicitud rechazada.');
        header('Location: pagos_convalidacion.php'); exit;
    }
}

// ── Conteos ──────────────────────────────────────────────────
$conteos = [];
$instCondC = $idInst ? "AND c.id_instituto = $idInst" : '';
$stC = $db->query("
    SELECT con.estado_pago AS estado, COUNT(*) AS n
    FROM convalidaciones con
    JOIN practicas c ON c.id_practica = con.id_practica
    WHERE con.estado_pago IN ('enviada','aprobado','rechazado') $instCondC
    GROUP BY con.estado_pago
");
foreach ($stC->fetchAll() as $row) $conteos[$row['estado']] = (int)$row['n'];

$estadoLabel = [
    'pendiente' => ['txt'=>'Sin enviar',          'bg'=>'#f8fafc','color'=>'#94a3b8','border'=>'#e2e8f0'],
    'enviada'   => ['txt'=>'Esperando validación', 'bg'=>'#eff6ff','color'=>'#1e40af','border'=>'#93c5fd'],
    'aprobado'  => ['txt'=>'Pago validado',        'bg'=>'#f0fdf4','color'=>'#065f46','border'=>'#86efac'],
    'rechazado' => ['txt'=>'Rechazado',            'bg'=>'#fef2f2','color'=>'#991b1b','border'=>'#fca5a5'],
];

// ── Detalle ──────────────────────────────────────────────────
$detalle = null;
if ($idDetalle) {
    $instCondD = $idInst ? "AND c.id_instituto = $idInst" : '';
    $st = $db->prepare("
        SELECT con.id_solicitud, con.id_practica, con.id_estudiante,
               con.estado            AS estado_convalidacion,
               con.comprobante_pago  AS comprobante_pago,
               con.estado_pago       AS estado_pago,
               con.exonerado         AS exonerado,
               con.obs_pago          AS obs_pago,
               con.created_at        AS created_at,
               con.updated_at        AS updated_at,
               CONCAT(u.nombres,' ',u.apellidos) AS estudiante_nombre,
               u.email, u.cedula,
               car.nombre AS carrera,
               e.codigo_estudiante,
               COALESCE(em.razon_social, c.emp_nueva_nombre) AS empresa
        FROM   convalidaciones con
        JOIN   practicas   c   ON c.id_practica   = con.id_practica
        JOIN   estudiantes e   ON e.id_estudiante  = con.id_estudiante
        JOIN   usuarios    u   ON u.id_usuario     = e.id_usuario
        JOIN   carreras    car ON car.id_carrera   = e.id_carrera
        LEFT JOIN empresas em  ON em.id_empresa    = c.id_empresa
        WHERE  con.id_solicitud = :id $instCondD
    ");
    $st->execute([':id' => $idDetalle]);
    $detalle = $st->fetch() ?: null;
}

// ── Lista ────────────────────────────────────────────────────
$solicitudes = [];
if (!$idDetalle) {
    $conds  = ["con.estado_pago != 'pendiente'"];
    $params = [];
    if ($idInst) $conds[] = "c.id_instituto = $idInst";
    if ($filtroEstado !== 'todos') { $conds[] = 'con.estado_pago = :est'; $params[':est'] = $filtroEstado; }
    if ($filtPeriodo)   { $conds[] = 'c.id_periodo = :per';  $params[':per'] = $filtPeriodo; }
    if ($filtCarrera)   { $conds[] = 'car.id_carrera = :car'; $params[':car'] = $filtCarrera; }
    if ($busqueda !== '') {
        $conds[] = "CONCAT(u.nombres,' ',u.apellidos,' ',u.cedula,' ',car.nombre) LIKE :q";
        $params[':q'] = '%'.$busqueda.'%';
    }
    $where = 'WHERE ' . implode(' AND ', $conds);
    $st = $db->prepare("
        SELECT con.id_solicitud, con.estado_pago, con.exonerado, con.comprobante_pago, con.created_at,
               CONCAT(u.nombres,' ',u.apellidos) AS estudiante_nombre,
               u.cedula, car.nombre AS carrera, e.codigo_estudiante,
               COALESCE(em.razon_social, c.emp_nueva_nombre) AS empresa
        FROM   convalidaciones con
        JOIN   practicas   c   ON c.id_practica  = con.id_practica
        JOIN   estudiantes e   ON e.id_estudiante = con.id_estudiante
        JOIN   usuarios    u   ON u.id_usuario    = e.id_usuario
        JOIN   carreras    car ON car.id_carrera  = e.id_carrera
        LEFT JOIN empresas em  ON em.id_empresa   = c.id_empresa
        $where
        ORDER BY FIELD(con.estado_pago,'enviada','rechazado','pendiente','aprobado'), con.created_at ASC
    ");
    $st->execute($params);
    $solicitudes = $st->fetchAll();
}
?>
<!DOCTYPE html>
<html lang="es">
<head>
<?php include __DIR__ . '/../../includes/head.php'; ?>
<link rel="stylesheet" href="<?= BASE_URL ?>/assets/css/sidebar-facturacion.css">
<style>
.sec{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.4rem 1.5rem;box-shadow:0 1px 4px rgba(0,0,0,.04);}
.est-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border-radius:999px;font-size:11px;font-weight:600;}
.tab-btn{background:none;border:none;padding:8px 16px;font-size:13px;font-weight:500;color:#64748b;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s;text-decoration:none;display:inline-block;}
.tab-btn.active{color:#059669;border-bottom-color:#059669;font-weight:700;}
.tab-btn:hover:not(.active){color:#0f172a;}
.comp-thumb{width:100%;max-height:320px;object-fit:contain;border-radius:10px;border:1px solid #e2e8f0;}
.comp-pdf-big{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:2rem;text-align:center;}
.action-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem;}
.th-label{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:#94a3b8;padding:10px 16px;font-weight:700;}
.exon-badge{display:inline-flex;align-items:center;gap:4px;background:#fef3c7;color:#92400e;border:1px solid #fde68a;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700;}
.chk-exon{display:flex;align-items:center;gap:10px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:12px 14px;margin-bottom:14px;cursor:pointer;}
.chk-exon input[type=checkbox]{width:18px;height:18px;accent-color:#d97706;cursor:pointer;}
.chk-exon-lbl{font-size:13px;font-weight:600;color:#92400e;cursor:pointer;user-select:none;}
</style>
</head>
<body>
<?php include __DIR__ . '/../../includes/navbar.php'; ?>
<div class="app-shell">
  <?php $sbActivo = 'pagos_convalidacion'; include __DIR__ . '/../../includes/sidebar_facturacion.php'; ?>

  <main class="main-area">
    <?= flashHtml() ?>

    <?php if ($detalle): ?>
    <!-- ══ DETALLE ══ -->
    <div class="page-header d-flex justify-content-between align-items-center flex-wrap gap-2">
      <div>
        <h4><i class="fa fa-file-invoice-dollar me-2" style="color:#059669;"></i>Validar Comprobante — Convalidación</h4>
        <p style="color:#64748b;">Revisa el documento y aprueba o rechaza el pago</p>
      </div>
      <a href="pagos_convalidacion.php" class="btn btn-outline-secondary btn-sm">
        <i class="fa fa-arrow-left me-1"></i>Volver a lista
      </a>
    </div>

    <div class="row g-3">
      <div class="col-lg-7">
        <div class="sec mb-3">
          <p style="font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#94a3b8;margin-bottom:10px;">Datos del estudiante</p>
          <div style="font-size:1.05rem;font-weight:700;color:#0f172a;"><?= htmlspecialchars($detalle['estudiante_nombre']) ?></div>
          <div style="font-size:12px;color:#64748b;margin-bottom:14px;">
            <?= htmlspecialchars($detalle['carrera']) ?>
            <?php if ($detalle['codigo_estudiante']): ?>&nbsp;·&nbsp;<span style="font-family:monospace;"><?= htmlspecialchars($detalle['codigo_estudiante']) ?></span><?php endif; ?>
          </div>
          <div class="row g-2" style="font-size:12px;">
            <div class="col-sm-6"><div style="color:#94a3b8;margin-bottom:2px;">Cédula</div><div style="font-weight:600;"><?= htmlspecialchars($detalle['cedula'] ?? '—') ?></div></div>
            <div class="col-sm-6"><div style="color:#94a3b8;margin-bottom:2px;">Empresa trabajó</div><div style="font-weight:600;"><?= htmlspecialchars($detalle['empresa'] ?? '—') ?></div></div>
            <div class="col-sm-6 mt-2"><div style="color:#94a3b8;margin-bottom:2px;">Fecha solicitud</div><div style="font-weight:600;"><?= date('d/m/Y H:i', strtotime($detalle['created_at'])) ?></div></div>
          </div>
          <?php if ($detalle['exonerado']): ?>
            <div class="mt-3"><span class="exon-badge"><i class="fa fa-star"></i>EXONERADO DE PAGO</span></div>
          <?php endif; ?>
        </div>

        <div class="sec">
          <p style="font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#94a3b8;margin-bottom:12px;">
            <?= $detalle['exonerado'] ? '📄 Documento de exoneración' : "Comprobante de pago — $$precioConv" ?>
          </p>
          <?php if (!empty($detalle['comprobante_pago'])): ?>
            <?php
            $rutaComp = $detalle['comprobante_pago'];
            $ext = strtolower(pathinfo($rutaComp, PATHINFO_EXTENSION));
            // Soporte OneDrive y local (igual que pagos_practicas)
            if (OneDriveStorage::esOneDrive($rutaComp)) {
                $url = BASE_URL . '/api/ver_comprobante_conv.php?id=' . $detalle['id_solicitud'];
            } else {
                $url = BASE_URL . '/assets/uploads/comprobantes_conv/' . rawurlencode($rutaComp);
            }
            ?>
            <?php if (in_array($ext, ['jpg','jpeg','png']) && !OneDriveStorage::esOneDrive($rutaComp)): ?>
              <img src="<?= $url ?>" alt="Comprobante" class="comp-thumb mb-2">
            <?php else: ?>
              <div class="comp-pdf-big mb-2">
                <i class="fa fa-file-pdf" style="font-size:3rem;color:#dc2626;display:block;margin-bottom:.5rem;"></i>
                <div style="font-weight:600;color:#991b1b;"><?= htmlspecialchars($detalle['comprobante_pago']) ?></div>
              </div>
            <?php endif; ?>
            <a href="<?= $url ?>" target="_blank" class="btn btn-outline-secondary btn-sm w-100">
              <i class="fa fa-eye me-1"></i>Ver / descargar documento
            </a>
          <?php else: ?>
            <div style="background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:1rem;color:#991b1b;font-size:13px;text-align:center;">
              <i class="fa fa-triangle-exclamation me-2"></i>El estudiante no adjuntó documento.
            </div>
          <?php endif; ?>
        </div>
      </div>

      <div class="col-lg-5">
        <?php if ($detalle['estado_pago'] === 'enviada'): ?>
        <div class="sec">
          <p style="font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#94a3b8;margin-bottom:16px;">Acción de validación</p>

          <div class="action-card mb-3" style="border-color:#bbf7d0;background:#f0fdf4;">
            <div style="font-weight:700;color:#065f46;margin-bottom:8px;"><i class="fa fa-circle-check me-2" style="color:#059669;"></i>Validar pago</div>
            <form method="POST" onsubmit="return confirm('¿Confirmas la validación?')">
              <input type="hidden" name="accion" value="aprobar">
              <input type="hidden" name="id_solicitud" value="<?= $detalle['id_solicitud'] ?>">
              <label class="chk-exon" for="chk_exon_a">
                <input type="checkbox" id="chk_exon_a" name="exonerado" value="1" <?= $detalle['exonerado'] ? 'checked' : '' ?>>
                <span class="chk-exon-lbl"><i class="fa fa-star me-1"></i>Exonerado · $0.00</span>
              </label>
              <p style="font-size:12px;color:#059669;margin-bottom:10px;">
                <?= $detalle['exonerado'] ? 'Exonerado de pago. El documento adjunto es el justificativo.' : "Pago de <strong>$$precioConv</strong> recibido correctamente." ?>
              </p>
              <input type="text" name="observaciones" class="form-control form-control-sm mb-2"
                     placeholder="N° recibo o nota opcional..." style="font-size:12px;border-color:#a7f3d0;">
              <button type="submit" class="btn btn-success w-100"><i class="fa fa-check me-2"></i>Aprobar</button>
            </form>
          </div>

          <div class="action-card" style="border-color:#fecaca;background:#fef2f2;">
            <div style="font-weight:700;color:#991b1b;margin-bottom:6px;"><i class="fa fa-circle-xmark me-2" style="color:#dc2626;"></i>Rechazar comprobante</div>
            <form method="POST" onsubmit="return confirm('¿Seguro que deseas rechazar?')">
              <input type="hidden" name="accion" value="rechazar">
              <input type="hidden" name="id_solicitud" value="<?= $detalle['id_solicitud'] ?>">
              <textarea name="observaciones" class="form-control form-control-sm mb-2" rows="2" required
                        placeholder="Motivo del rechazo (obligatorio)..." style="font-size:12px;border-color:#fca5a5;"></textarea>
              <button type="submit" class="btn btn-danger w-100"><i class="fa fa-xmark me-2"></i>Rechazar solicitud</button>
            </form>
          </div>
        </div>

        <?php else: ?>
        <div class="sec">
          <?php $e = $estadoLabel[$detalle['estado_pago']] ?? $estadoLabel['pendiente']; ?>
          <p style="font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#94a3b8;margin-bottom:12px;">Estado del comprobante</p>
          <div style="background:<?= $e['bg'] ?>;border:1px solid <?= $e['border'] ?>;border-radius:10px;padding:1rem 1.25rem;margin-bottom:12px;">
            <div style="font-weight:700;color:<?= $e['color'] ?>;font-size:.95rem;"><?= $e['txt'] ?></div>
            <?php if (!empty($detalle['obs_pago'])): ?>
              <div style="font-size:12px;color:<?= $e['color'] ?>;margin-top:6px;opacity:.85;"><?= htmlspecialchars($detalle['obs_pago']) ?></div>
            <?php endif; ?>
          </div>
          <?php if ($detalle['exonerado']): ?><div class="mt-2"><span class="exon-badge"><i class="fa fa-star"></i>EXONERADO — $0.00</span></div><?php endif; ?>
          <div style="font-size:12px;color:#64748b;text-align:center;margin-top:10px;"><i class="fa fa-clock me-1"></i>Procesado el <?= date('d/m/Y H:i', strtotime($detalle['updated_at'])) ?></div>
        </div>
        <?php endif; ?>
      </div>
    </div>

    <?php else: ?>
    <!-- ══ LISTA ══ -->
    <div class="page-header d-flex justify-content-between align-items-center flex-wrap gap-2">
      <div>
        <h4><i class="fa fa-money-check-dollar me-2" style="color:#059669;"></i>Pagos — Convalidación de Prácticas</h4>
        <p style="color:#64748b;">Precio configurado: <strong>$<?= htmlspecialchars($precioConv) ?></strong></p>
      </div>
    </div>

    <form method="GET" class="mb-3" id="form-filtros">
      <input type="hidden" name="estado" value="<?= htmlspecialchars($filtroEstado) ?>">
      <div class="d-flex gap-2 flex-wrap align-items-end">
        <div>
          <label style="font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#94a3b8;display:block;margin-bottom:3px;"><i class="fa fa-search me-1"></i>Buscar</label>
      <input type="text" name="q" class="form-control" placeholder="Buscar nombre, cédula o carrera..."
             value="<?= htmlspecialchars($busqueda) ?>" style="max-width:300px;">
      <button type="submit" class="btn btn-outline-secondary"><i class="fa fa-search me-1"></i>Buscar</button>
      <?php if ($busqueda): ?><a href="pagos_convalidacion.php?estado=<?= $filtroEstado ?>" class="btn btn-outline-secondary"><i class="fa fa-xmark me-1"></i>Limpiar</a><?php endif; ?>
    </form>

    <div style="border-bottom:2px solid #e2e8f0;margin-bottom:1rem;">
      <?php foreach (['enviada'=>'⏳ Pendientes','aprobado'=>'✅ Aprobados','rechazado'=>'❌ Rechazados','todos'=>'📋 Todos'] as $k=>$v): ?>
        <a href="pagos_convalidacion.php?estado=<?= $k ?>&periodo=<?= $filtPeriodo ?>&carrera=<?= $filtCarrera ?>" class="tab-btn <?= $filtroEstado===$k?'active':'' ?>">
          <?= $v ?>
          <?php $cnt = $conteos[$k] ?? 0; if ($cnt > 0 && $k !== 'todos'): ?>
            <span style="background:<?= $k==='enviada'?'#dc2626':($k==='aprobado'?'#059669':'#64748b') ?>;color:#fff;border-radius:999px;padding:1px 7px;font-size:10px;margin-left:4px;"><?= $cnt ?></span>
          <?php endif; ?>
        </a>
      <?php endforeach; ?>
    </div>

    <?php if (empty($solicitudes)): ?>
      <div style="text-align:center;padding:3rem 1rem;color:#94a3b8;">
        <i class="fa fa-inbox" style="font-size:2.5rem;display:block;margin-bottom:.75rem;"></i>
        <div style="font-weight:600;">No hay comprobantes con estado "<?= htmlspecialchars($filtroEstado) ?>"</div>
      </div>
    <?php else: ?>
      <div style="background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.04);">
        <table class="table table-borderless mb-0" style="color:#0f172a;">
          <thead style="background:#f8fafc;">
            <tr>
              <th class="th-label">Estudiante</th>
              <th class="th-label">Empresa</th>
              <th class="th-label">Documento</th>
              <th class="th-label">Exonerado</th>
              <th class="th-label">Estado</th>
              <th class="th-label">Acción</th>
            </tr>
          </thead>
          <tbody>
            <?php foreach ($solicitudes as $s):
              $e = $estadoLabel[$s['estado_pago']] ?? $estadoLabel['pendiente'];
            ?>
            <tr style="border-bottom:1px solid #f1f5f9;">
              <td style="padding:12px 16px;">
                <div style="font-weight:600;"><?= htmlspecialchars($s['estudiante_nombre']) ?></div>
                <div style="font-size:11px;color:#64748b;"><?= htmlspecialchars($s['carrera']) ?></div>
              </td>
              <td style="padding:12px 16px;font-size:12px;"><?= htmlspecialchars($s['empresa'] ?? '—') ?></td>
              <td style="padding:12px 16px;font-size:12px;">
                <?= !empty($s['comprobante_pago']) ? '<span style="color:#059669;"><i class="fa fa-paperclip me-1"></i>Adjunto</span>' : '<span style="color:#dc2626;"><i class="fa fa-xmark me-1"></i>Sin archivo</span>' ?>
              </td>
              <td style="padding:12px 16px;">
                <?= $s['exonerado'] ? '<span class="exon-badge"><i class="fa fa-star"></i>Sí · $0</span>' : '<span style="font-size:12px;color:#94a3b8;">—</span>' ?>
              </td>
              <td style="padding:12px 16px;">
                <span class="est-badge" style="background:<?= $e['bg'] ?>;color:<?= $e['color'] ?>;border:1px solid <?= $e['border'] ?>;"><?= $e['txt'] ?></span>
              </td>
              <td style="padding:12px 16px;">
                <a href="?id=<?= $s['id_solicitud'] ?>" class="btn btn-sm <?= $s['estado_pago']==='enviada'?'btn-primary':'btn-outline-secondary' ?>">
                  <i class="fa fa-<?= $s['estado_pago']==='enviada'?'eye':'magnifying-glass' ?> me-1"></i>
                  <?= $s['estado_pago']==='enviada'?'Revisar':'Ver' ?>
                </a>
              </td>
            </tr>
            <?php endforeach; ?>
          </tbody>
        </table>
      </div>
    <?php endif; ?>
    <?php endif; ?>
  </main>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.3/js/bootstrap.bundle.min.js"></script>
<script>var BASE_URL = '<?= BASE_URL ?>';</script>
<script src="<?= BASE_URL ?>/assets/js/sigvp.js"></script>
</body>
</html>