<?php
require '../conexao/conexao.php';
//require '../sessao.php';
require '../conexao/acesso.php';
require '../configuacoes.php';
require '../configuracao/get_config.php';
require '../logs/gera-log.php';

gerarLog(
    1, // tipo de log (acesso)
    $basePath, // módulo
    $_SESSION['CodUsuario'],
    $_SESSION['NomeUsuario']
);

//recuperando combo filial
$filial = $_GET['filial'] ?? null;
require '../querys/query-filiais.php';
$filiais = new Filiais($connectionmysql);
$configuracoes = new Configuracoes;

$operacoes = $configuracoes->get_operacoes_em_uso(); // Supondo que já seja um array
if (!empty($operacoes)) {
    sort($operacoes);
    $operacoes = implode(',', array_map('intval', $operacoes));
} else {
    $operacoes = 'NULL';
}



$query_representante = "SELECT MR.codigo_funcionario, RP.nomefuncionario 
                        FROM MEDICO_REPRESENTANTE MR
                        INNER JOIN FUNCIONARIO RP ON MR.CODIGO_FUNCIONARIO = RP.CODIGO
                        WHERE RP.ATIVO = '-1'
                        GROUP BY MR.codigo_funcionario, RP.nomefuncionario";
$result_representante = ibase_query($connection, $query_representante);

if (!$result_representante) {
    die('Erro na consulta: ' . ibase_errmsg());
}

$representante = [];
while ($row = ibase_fetch_assoc($result_representante)) {
    $representante[] = $row;
}

function getBadgeClass($status)
{
    $lowerStatus = strtolower($status);

    if (strpos($lowerStatus, 'rejeitado') !== false) {
        return 'badge-danger';
    } elseif (strpos($lowerStatus, 'aprovado') !== false) {
        return 'badge-success';
    } else {
        return 'badge-secondary';  // ou qualquer outra classe padrão
    }
}


$filial = 'Todos';
$records_per_page = 10;
$current_page = $_GET['page'] ?? 1;
$start_from = ($current_page - 1) * $records_per_page;
$hasResults = false;

if (isset($_GET['pesquisar'])) {

    gerarLog(
        5, // tipo de log (acesso)
        $basePath, // módulo
        $_SESSION['CodUsuario'],
        $_SESSION['NomeUsuario']
    );

    $nome_relatorio = 'Médicos';

    // Obtendo os parâmetros
    //$nome_consulta = 'fun.nomefun';
    $nomeMedico = $_GET['nomeMedico'] ?? null;
    $idVisitador = $_GET['visitador'] ?? [];
    if (!is_array($idVisitador)) {
        $idVisitador = [$idVisitador];
    }
    $DataInicial = $_GET['DataInicial'] ?? null;
    $DataFinal = $_GET['DataFinal'] ?? null;
    $situacao = $_GET['situacao'] ?? null;

    $filial = $_GET['filial'] ?? null;

    // Iniciando a construção do SQL BASE

    $sql_base = "SELECT 
    ME.NOMEMEDICO AS Nome_Medico,
    CR.SIGLA || '-' || ME.CR_ESTADO || '-' || ME.CRM AS CRM_COMPLETO,
    ESPEC.NOMEESPECIALIDADE,
      RP.codigo,
    -- Traz apenas um representante (o menor código encontrado)
    MIN(RP.NOMEFUNCIONARIO) AS REPRESENTANTE,

    -- Soma correta sem duplicação
    SUM(CAST(COALESCE(A1.VALORVENDA_DESC, 0) AS NUMERIC(18,2))) AS Valor_Recebido
FROM 
    ATENDIMENTO_A1 A1
INNER JOIN CLIENTE CL ON CL.CODIGO = A1.CODIGO_CLIENTE
INNER JOIN MEDICO ME ON ME.CODIGO = A1.CODIGO_MEDICO
LEFT JOIN MEDICO_CR CR ON ME.CODIGO_CONSELHO_REGIONAL = CR.CODIGO
LEFT JOIN MEDICO_ESPECIALIDADE ESPEC ON ESPEC.CODIGO = ME.CODIGO_MEDICO_ESPECIALIDADE
LEFT JOIN FUNCIONARIO FU ON FU.CODIGO = CASE WHEN A1.STATUS_MOV = 0 THEN A1.CADASTRO_LJ ELSE A1.AVIADA_CF END

-- JOIN para garantir que a soma não seja afetada pela quantidade de representantes
LEFT JOIN (
    SELECT 
        MR.CODIGO_MEDICO, 
        MIN(RP.CODIGO) as CODIGO, 
        MIN(RP.NOMEFUNCIONARIO) AS NOMEFUNCIONARIO
    FROM 
        MEDICO_REPRESENTANTE MR
    LEFT JOIN 
        FUNCIONARIO RP ON MR.CODIGO_FUNCIONARIO = RP.CODIGO ";
    if (!empty($idVisitador) && !in_array("Todos", $idVisitador)) {
        $visitadoresStr = "'" . implode("','", $idVisitador) . "'";
        $sql_base .= " AND RP.CODIGO IN ({$visitadoresStr})";
    }
    $sql_base .= " GROUP BY 
        MR.CODIGO_MEDICO
) RP ON ME.CODIGO = RP.CODIGO_MEDICO

WHERE 
    A1.TIPO_ATENDIMENTO = 1";

    if (!empty($idVisitador) && !in_array("Todos", $idVisitador)) {
        $visitadoresStr = "'" . implode("','", $idVisitador) . "'";
        $sql_base .= " AND RP.CODIGO IN ({$visitadoresStr})";
    }

     if (!empty($operacoes)) {
        $sql_base .= " AND A1.CODIGO_TIPOOPERACAO NOT IN ($operacoes)";
    }
    if ($filial && $filial != "Todos") {
        $sql_base .= " AND A1.AVIADA_LJ IN ('$filial')";
    }

    if ($nomeMedico && $nomeMedico != "Todos") {
        $nomeMedico = strtoupper($nomeMedico);
        $sql_base .= " AND UPPER(ME.NOMEMEDICO) LIKE '" . firebird_escape_string($nomeMedico) . "%'";
    }

    if ($DataInicial && $DataFinal) {
        $DataInicial = date('Y-m-d', strtotime($DataInicial));
        $DataFinal = date('Y-m-d', strtotime($DataFinal));
        $sql_base .= " AND CAST(A1.ENTREGUE_DT AS DATE) BETWEEN '$DataInicial' AND '$DataFinal'";
    }

    $sql_base .= " GROUP BY 
    ME.NOMEMEDICO, 
    CR.SIGLA, 
    ME.CR_ESTADO, 
    ME.CRM, 
    ESPEC.NOMEESPECIALIDADE, 
     RP.codigo
ORDER BY 
    Valor_Recebido DESC";

// // Debug da query para verificar formatação
// echo "<pre>";
//        print_r($sql_base);
//        echo "</pre>";
//      exit;

    // Executa a consulta final
    $result = ibase_query($connection, $sql_base);

    if (!$result) {
        die('Erro na consulta: ' . ibase_errmsg());
    }
}

function firebird_escape_string($value)
{
    return str_replace(["'", "\""], ["''", "\"\""], $value);
}

//echo $sql_base  ; 

?>


<!DOCTYPE html>
<html lang="pt-br">
<?php
$pageTitle = "Consultar Médico"; // Definir o título da página aqui
include('../geral/header.php');
?>

<body>

    <!-- Navigation Bar-->
    <?php
    include('../geral/menu.php');
    ?>
    <!-- End Navigation Bar-->

    <!-- ============================================================== -->
    <!-- Start Page Content here -->
    <!-- ============================================================== -->

    <div class="wrapper candidato">
        <div class="container-fluid">

            <div class="card-box mt-3">
                <div class="row">

                    <div class="col-6 text-left">
                        <h4 class="page-title">Consultar <?php echo !empty($nome_relatorio) ? $nome_relatorio : 'Relatórios'; ?></h4>

                    </div>


                    <div class="col-12">
                        <hr>
                    </div>

                    <div class="col-12">
                        <form id="indexForm" method="get" action="" onsubmit="return validarFormulario()">
                            <div class="form-row mb-3">

                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label class="col-form-label">Filiais</label>
                                    <select name="filial" class="form-control">
                                        <option value="Todos" <?php if ($filial == 'Todos') echo 'selected'; ?>>Todos</option>
                                        <?php
                                        $listagemFiliais = $filiais->listarFiliais();
                                        foreach ($listagemFiliais as $itens) { ?>
                                            <option value="<?php echo $itens['id']; ?>" <?php if ($itens['id'] == $filial) {
                                                                                            echo 'selected';
                                                                                        } ?>>
                                                <?php echo $itens['nome_filial']; ?>
                                            </option>
                                        <?php } ?>
                                    </select>
                                </div>

                                <div class="col-6 col-md-4 col-lg-2">
                                    <label for="DataInicial" class="col-form-label">Data Inicial</label>
                                    <input type="date" id="DataInicial" name="DataInicial" class="form-control" value="<?php echo isset($DataInicial) ? $DataInicial : ''; ?>">
                                </div>
                                <div class="col-6 col-md-4 col-lg-2">
                                    <label for="DataFinal" class="col-form-label">Data Final</label>
                                    <input type="date" id="DataFinal" name="DataFinal" class="form-control" value="<?php echo isset($DataFinal) ? $DataFinal : ''; ?>">
                                </div>
                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="nomeMedico" class="col-form-label">Médico</label>
                                    <input type="text" class="form-control" id="nomeMedico" name="nomeMedico" placeholder="Médico" value="<?php echo isset($nomeMedico) ? htmlspecialchars($nomeMedico) : ''; ?>">

                                </div>

                                <div class="form-group col-6 col-md-4 col-lg-2">
                                    <label for="nomeVisitador" class="col-form-label">Representante</label>
                                    <select name="visitador[]" id="nomeVisitador" class="form-control select2" multiple="multiple">
                                        <?php
                                        $selectedVisitadores = isset($_GET['visitador']) ? (is_array($_GET['visitador']) ? $_GET['visitador'] : [$_GET['visitador']]) : [];
                                        foreach ($representante as $itens) {
                                            $selected = in_array($itens['CODIGO_FUNCIONARIO'], $selectedVisitadores) ? 'selected' : '';
                                        ?>
                                            <option value="<?php echo $itens['CODIGO_FUNCIONARIO']; ?>" <?php echo $selected; ?>>
                                                <?php echo $itens['NOMEFUNCIONARIO'] ?>
                                            </option>
                                        <?php } ?>
                                    </select>
                                </div>
                                <div class="col-6 col-md-4 col-lg-12 d-flex mt-3" style="align-items:center;justify-content: end;">
                                    <div>
                                        <a href="index.php" class="btn btn-warning mr-2"><i class="mdi mdi-plus"></i> Limpar</a>
                                    </div>
                                    <div>
                                        <button name="pesquisar" type="submit" class="btn btn-primary"><i class="mdi mdi-magnify"></i> Pesquisar</button>
                                    </div>
                                </div>


                        </form>
                    </div>
                </div>
                <?php $totalValor = 0;
                if (isset($_GET['pesquisar'])) { ?>
                    <div class="col-12">
                        <h6>Lista de <?php echo !empty($nome_relatorio) ? $nome_relatorio : 'Dados'; ?></h6>

                        <div class="row">
                            <div class="col-12">
                                <table id="minhaTabela" class="table table-bordered table-hover table-sm" style="width:100%;">
                                    <thead class="thead-light">
                                        <tr>
                                            <th>Nome</th>
                                            <th>CRM</th>
                                            <th>Especialidade</th>
                                            <th>Valor Recebido</th>
                                            <th>Visitador</th>
                                            <th>Ações</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <?php
                                        $hasResults = false;
                                        $totalValorRecebido = 0; // Inicializa o totalizador
                                        if (isset($result)) {

                                            while ($row = ibase_fetch_assoc($result)) {
                                                // foreach ($row as $key => $value) {
                                                //$row[$key] = mb_convert_encoding($value, 'UTF-8', 'ISO-8859-1');
                                                // }
                                                /* // Verifica se o campo REPRESENTANTE é um identificador de BLOB
                                            if (is_string($row['REPRESENTANTE']) && strpos($row['REPRESENTANTE'], '0x') === 0) {
                                            $blobId = $row['REPRESENTANTE'];
                                            $blobInfo = ibase_blob_info($blobId);
                                            $blobData = ibase_blob_get($blobId, $blobInfo[0]);
                                            $representante = utf8_encode($blobData);
                                            } else {
                                            $representante = utf8_encode($row['REPRESENTANTE']);
                                            } */


                                                $hasResults = true; // Indica que encontrou ao menos um resultado

                                                $query_representantes = "SELECT 
                                            RP.nomefuncionario as NomeFuncionario, MR.codigo_funcionario AS codigoFuncionario
                                            FROM MEDICO_REPRESENTANTE MR
                                            INNER JOIN FUNCIONARIO RP ON MR.CODIGO_FUNCIONARIO = RP.CODIGO
                                            WHERE MR.codigo_funcionario || ' - ' || RP.nomefuncionario = '" . firebird_escape_string($row['REPRESENTANTE']) . "'
                                            GROUP BY RP.nomefuncionario, MR.codigo_funcionario
                                        ";

                                                //echo $query_representantes;

                                                // Executar a consulta de representante para pegar o código do funcionário
                                                $result_representante = ibase_query($connection, $query_representantes);
                                                $representante_row = ibase_fetch_assoc($result_representante);
                                                //print_r($row);

                                                echo '<tr>';
                                                echo '<th scope="row">' . ($row['NOME_MEDICO'] !== null ? $row['NOME_MEDICO'] : 'Orçamentos sem ' . $nome_relatorio) . '</th>';
                                                echo '<td>' . htmlspecialchars($row['CRM_COMPLETO']) . ' </td>';
                                                echo '<td>' . (!empty($row['NOMEESPECIALIDADE']) ? $row['NOMEESPECIALIDADE'] : 'Sem Especialidade') . '</td>';
                                                echo '<td data-order="' . $row['VALOR_RECEBIDO'] . '">';
                                                echo '<span class="badge badge-success" style="font-size: 0.92em;">';
                                                echo 'R$ ' . number_format($row['VALOR_RECEBIDO'], 2, ',', '.');
                                                echo '</span>';
                                                echo '</td>';
                                                echo '<td>' . (!empty($row['REPRESENTANTE']) ? $row['REPRESENTANTE'] : 'N/A') . '</td>';

                                                echo '<td>' . '<a href="detalhar_medico.php?id_medico=' . urlencode($row['CRM_COMPLETO']) . '&dtinicial=' . urlencode($DataInicial) . '&dtfinal=' . urlencode($DataFinal) . '&filial=' . urlencode($filial) . '&visitador=' . urlencode($row['CODIGO']) .
                                                    '&medico=' . urlencode($row['NOME_MEDICO']) . '&nome_visitador=' . urlencode($row['REPRESENTANTE']) . '&especialidade=' . urlencode($row['NOMEESPECIALIDADE']) . '" class="table-actions link-view">';
                                                echo '<i class="mdi mdi-account-search"></i>';
                                                echo '</a>' . '</td>';

                                                echo '</tr>';

                                                // Atualiza o totalizador
                                                $totalValorRecebido += floatval($row['VALOR_RECEBIDO']);
                                            }
                                        }
                                        if (!$hasResults) {
                                            echo "<tr><td colspan='7' class='text-center'>Sem resultado para a consulta</td></tr>";
                                        }
                                        ?>
                                    </tbody>
                                </table>

                                <!-- Adiciona a linha com o totalizador -->
                                <div class="row">
                                    <div class="col-md-12">
                                        <h4>Total Valor Recebido: R$ <?php echo number_format($totalValorRecebido, 2, ',', '.'); ?></h4>
                                    </div>
                                </div>

                            </div>
                        </div>
                    </div>
                <?php }; ?>
            </div>
        </div> <!-- end container -->
    </div>

    <!-- end wrapper -->

    <!-- ============================================================== -->
    <!-- End Page content -->
    <!-- ============================================================== -->
    <!-- Footer Start -->
    <?php
    include('../geral/footer.php');
    ?>
    <!-- end Footer -->

    <?php
    include('../geral/mensagens_modais.php');
    ?>

    <!-- Vendor js -->
    <script src="../../assets/js/vendor.min.js"></script>

    <!-- knob plugin -->
    <script src="../../assets/libs/jquery-knob/jquery.knob.min.js"></script>
    <!-- App js-->
    <script src="../../assets/js/app.min.js"></script>

</body>

</html>


<script src="../geral/javascript.js"></script>

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="https://cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.11.3/js/dataTables.bootstrap5.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.11.3/css/dataTables.bootstrap5.min.css">


<script src="https://cdn.datatables.net/buttons/2.0.1/js/dataTables.buttons.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.66/pdfmake.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.66/vfs_fonts.js"></script>
<script src="https://cdn.datatables.net/buttons/2.0.1/js/buttons.html5.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/buttons/2.0.1/css/buttons.dataTables.min.css">
<link rel="stylesheet" href="../../assets/css/resetedatatable.css">


<script type="text/javascript">
    function showModal(modalId, title, message) {
        const modalElement = document.getElementById(modalId);
        const modal = new bootstrap.Modal(modalElement);
        modalElement.querySelector('.modal-title').textContent = title;
        modalElement.querySelector('.modal-body p').textContent = message;
        modal.show();
    }

    document.addEventListener("DOMContentLoaded", function() {
        const form = document.getElementById("indexForm");

        form.addEventListener("submit", function(event) {
            // Validar as datas antes de submeter o formulário
            if (!validarDatas('DataInicial', 'DataFinal')) {
                event.preventDefault(); // Impede o envio do formulário se houver erros
            }
        });

        const dataInicial = document.getElementById('DataInicial');
        const dataFinal = document.getElementById('DataFinal');

        dataInicial.addEventListener('input', function() {
            validarDataObrigatoria('DataInicial', 'DataFinal');
        });

        dataFinal.addEventListener('input', function() {
            validarDataObrigatoria('DataFinal', 'DataInicial');
        });
    });

    function validarDatas(idDataInicial, idDataFinal) {
        const campoInicial = document.getElementById(idDataInicial);
        const campoFinal = document.getElementById(idDataFinal);

        const dataInicial = campoInicial.value.trim();
        const dataFinal = campoFinal.value.trim();

        // Verificar se as datas estão preenchidas
        if (dataInicial === '' || dataFinal === '') {
            showModal('exampleModal', 'Informação', 'Por favor informar um período válido.');
            campoInicial.classList.add('is-invalido');
            campoFinal.classList.add('is-invalido');
            return false;
        } else {
            campoInicial.classList.remove('is-invalido');
            campoFinal.classList.remove('is-invalido');
        }

        // Converter as datas para objetos Date
        const dateInicial = new Date(dataInicial);
        const dateFinal = new Date(dataFinal);

        // Verificar se a data inicial é maior que a data final
        if (dateInicial > dateFinal) {
            showModal('exampleModal', 'Informação', 'A data inicial não pode ser maior que a data final.');
            campoInicial.classList.add('is-invalido');
            campoFinal.classList.add('is-invalido');
            return false;
        } else {
            campoInicial.classList.remove('is-invalido');
            campoFinal.classList.remove('is-invalido');
        }

        return true; // Retorna true se as datas são válidas
    }

    function validarDataObrigatoria(idCampo, idOutroCampo) {
        const campo = document.getElementById(idCampo);
        const outroCampo = document.getElementById(idOutroCampo);
        const valor = campo.value.trim();
        const outroValor = outroCampo.value.trim();

        if (valor === '') {
            campo.classList.add('is-invalido');
        } else {
            campo.classList.remove('is-invalido');
        }

        if (valor !== '' && outroValor !== '') {
            campo.classList.remove('is-invalido');
            outroCampo.classList.remove('is-invalido');
        }
    }
</script>

<style>
    .is-invalido {
        box-shadow: 0 0 5px red !important;
    }
</style>

<script>
    $(document).ready(function() {
        // Define um tipo de coluna personalizado para valores monetários
        $.fn.dataTable.ext.type.order['currency-br-pre'] = function(d) {
            // Converte a string monetária formatada em um número float para ordenação correta
            return parseFloat(d.replace(/[^\d,-]/g, '').replace(',', '.'));
        };

        // Inicializa o DataTable
        $('#minhaTabela').DataTable({
            "language": {
                "url": "https://cdn.datatables.net/plug-ins/1.10.21/i18n/Portuguese-Brasil.json"
            },
            "columnDefs": [{
                "type": "currency-br", // Usa o tipo de coluna personalizado 'currency-br' para ordenação
                "targets": [4] // Aplica o tipo de coluna personalizado à coluna de índice 4
            }],
            "order": [
                [4, "desc"] // Ordena pela coluna de índice 4 descendentemente
            ],
            "ordering": true,
            "lengthMenu": [
                [10, 25, 50, 100, -1],
                [10, 25, 50, 100, "Todos"]
            ],
            "buttons": [
                'excelHtml5'
            ],
            //"dom": 'lBfrtip',
            dom: '<"d-flex justify-content-between align-items-center mb-2"Bf>t<"datatable-footer d-flex justify-content-between align-items-center mt-2 w-100"<"footer-left"l><"footer-center"i><"footer-right"p>>',
        });
    });
</script>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/1.1.2/css/bootstrap-multiselect.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/1.1.2/js/bootstrap-multiselect.min.js"></script>


<style>
    .multiselect-container {
        max-height: 400px;
        overflow-y: auto;
    }

    .multiselect-container>li>a>label {
        padding: 3px 20px 3px 40px;
    }

    .multiselect-container>li>a>label>input[type="checkbox"] {
        margin-right: 5px;
    }

    .btn-group {
        width: 100%;
    }

    .multiselect {
        text-align: left;
        width: 100%;
    }

    .multiselect-container .multiselect-filter>.fa-search {
        z-index: 1;
        padding-left: 0.75rem;
    }

    .multiselect-container .multiselect-filter>input.multiselect-search {
        padding-left: 2rem;
    }
</style>

<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
<link href="https://cdn.jsdelivr.net/npm/select2-bootstrap-5-theme@1.3.0/dist/select2-bootstrap-5-theme.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
<script>
    $(document).ready(function() {
        $('#nomeVisitador').select2({
            theme: 'bootstrap-5',
            width: '100%',
            language: {
                noResults: function() {
                    return "Nenhum resultado encontrado";
                },
                searching: function() {
                    return "Pesquisando...";
                }
            }
        });
    });
</script>
<style>
    .select2-container--bootstrap-5 .select2-selection {
        border: 1px solid #ced4da;
        min-height: 38px;
    }

    .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered {
        display: flex;
        flex-wrap: wrap;
        gap: 4px;
    }

    .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__choice {
        background-color: #e9ecef;
        border: 1px solid #ced4da;
        border-radius: 4px;
        padding: 2px 6px;
        margin: 2px;
    }

    /* Remove o select adicional */
    .select2-container--bootstrap-5 .select2-selection__placeholder {
        display: none;
    }

    .select2-container--bootstrap-5 .select2-selection--multiple::after {
        display: none;
    }

    .select2-container--bootstrap-5 .select2-selection--multiple .select2-search {
        flex: 1;
        min-width: 100px;
    }

    /* Ajusta o espaçamento do container */
    .select2-container {
        margin-bottom: 0 !important;
    }

    .select2-container--bootstrap-5 {
        margin-bottom: 0 !important;
    }
</style>
<style>
    #minhaTabela_length label,
    #minhaTabela_info {
        margin: 0 !important;
        padding: 0 !important;
        align-items: center;
    }
</style>