{"id":954,"date":"2026-02-20T17:33:23","date_gmt":"2026-02-20T17:33:23","guid":{"rendered":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/?page_id=954"},"modified":"2026-04-21T18:24:21","modified_gmt":"2026-04-21T18:24:21","slug":"rendef","status":"publish","type":"page","link":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/","title":{"rendered":"RENDEF"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"954\" class=\"elementor elementor-954\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3d498c5 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no e-con e-parent\" data-id=\"3d498c5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c4af2de elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"c4af2de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"es\">\r\n\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    <title>Registro Nacional de Denuncias Falsas \u2013 Defensor\u00eda del Padre<\/title>\r\n\r\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n    <link\r\n        href=\"https:\/\/fonts.googleapis.com\/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=DM+Sans:wght@300;400;500;600;700&display=swap\"\r\n        rel=\"stylesheet\">\r\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.5.0\/css\/all.min.css\">\r\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/sweetalert2\/11.10.5\/sweetalert2.min.css\">\r\n\r\n    <style>\r\n    *,\r\n    *::before,\r\n    *::after {\r\n        box-sizing: border-box;\r\n        margin: 0;\r\n        padding: 0;\r\n    }\r\n\r\n    :root {\r\n        --navy: #0d2240;\r\n        --blue: #1a4f8a;\r\n        --blue-mid: #2362a8;\r\n        --sky: #3a7bd5;\r\n        --sky-light: #edf4fb;\r\n        --white: #ffffff;\r\n        --off-white: #f7f9fc;\r\n        --text: #1e2d3d;\r\n        --text-light: #5a6a7e;\r\n        --border: #cdd8e8;\r\n        --r-xs: 6px;\r\n        --r-sm: 10px;\r\n        --r-md: 16px;\r\n        --shadow-xs: 0 1px 3px rgba(13, 34, 64, .07);\r\n        --shadow-sm: 0 2px 10px rgba(13, 34, 64, .09);\r\n        --shadow-md: 0 6px 24px rgba(13, 34, 64, .11);\r\n        --font-display: 'Fraunces', Georgia, serif;\r\n        --font-body: 'DM Sans', system-ui, sans-serif;\r\n        --red: #7b1e1e;\r\n        --red-l: #fff0f0;\r\n    }\r\n\r\n    html {\r\n        scroll-behavior: smooth;\r\n    }\r\n\r\n    body {\r\n        font-family: var(--font-body);\r\n        color: var(--text);\r\n        background: var(--off-white);\r\n        -webkit-font-smoothing: antialiased;\r\n        min-height: 100vh;\r\n    }\r\n\r\n    \/* \u2500\u2500 HERO \u2500\u2500 *\/\r\n    .page-hero {\r\n        background: var(--navy);\r\n        padding: 36px 32px 32px;\r\n        border-bottom: 3px solid #7b1e1e;\r\n    }\r\n\r\n    .page-hero-inner {\r\n        max-width: 1200px;\r\n        margin: 0 auto;\r\n        display: flex;\r\n        align-items: flex-end;\r\n        justify-content: space-between;\r\n        gap: 20px;\r\n        flex-wrap: wrap;\r\n    }\r\n\r\n    .page-hero-supra {\r\n        font-size: .72rem;\r\n        font-weight: 700;\r\n        letter-spacing: .14em;\r\n        text-transform: uppercase;\r\n        color: rgba(255, 255, 255, .5);\r\n        margin-bottom: 8px;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 7px;\r\n    }\r\n\r\n    .page-hero-supra i {\r\n        color: #f87171;\r\n        font-size: .78rem;\r\n    }\r\n\r\n    .page-hero-title {\r\n        font-family: var(--font-display);\r\n        font-size: 2rem;\r\n        font-weight: 700;\r\n        color: #fff;\r\n        letter-spacing: -.02em;\r\n        line-height: 1.15;\r\n        margin-bottom: 8px;\r\n    }\r\n\r\n    .page-hero-sub {\r\n        font-size: .88rem;\r\n        color: rgba(255, 255, 255, .6);\r\n        max-width: 600px;\r\n        line-height: 1.6;\r\n    }\r\n\r\n    .btn-registrar {\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 9px;\r\n        padding: 13px 28px;\r\n        background: #7b1e1e;\r\n        color: #fff;\r\n        border: 2px solid #7b1e1e;\r\n        border-radius: 100px;\r\n        font-family: var(--font-body);\r\n        font-size: .93rem;\r\n        font-weight: 700;\r\n        cursor: pointer;\r\n        transition: all .22s;\r\n        white-space: nowrap;\r\n        text-decoration: none;\r\n        box-shadow: 0 2px 12px rgba(123, 30, 30, .35);\r\n    }\r\n\r\n    .btn-registrar:hover {\r\n        background: #a52525;\r\n        border-color: #a52525;\r\n        transform: translateY(-2px);\r\n    }\r\n\r\n    \/* \u2500\u2500 WRAP \u2500\u2500 *\/\r\n    .page-wrap {\r\n        max-width: 1200px;\r\n        margin: 0 auto;\r\n        padding: 40px 32px 80px;\r\n    }\r\n\r\n    \/* \u2500\u2500 STATS STRIP \u2500\u2500 *\/\r\n    .stats-strip {\r\n        display: grid;\r\n        grid-template-columns: repeat(3, 1fr);\r\n        gap: 16px;\r\n        margin-bottom: 32px;\r\n    }\r\n\r\n    .stat-card {\r\n        background: #fff;\r\n        border: 1px solid var(--border);\r\n        border-radius: var(--r-sm);\r\n        padding: 18px 22px;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 14px;\r\n        box-shadow: var(--shadow-xs);\r\n    }\r\n\r\n    .stat-icon {\r\n        width: 44px;\r\n        height: 44px;\r\n        border-radius: var(--r-xs);\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        font-size: 1.1rem;\r\n        flex-shrink: 0;\r\n    }\r\n\r\n    .stat-icon.red {\r\n        background: #fef2f2;\r\n        color: #991b1b;\r\n    }\r\n\r\n    .stat-icon.green {\r\n        background: #f0fdf4;\r\n        color: #166534;\r\n    }\r\n\r\n    .stat-icon.yellow {\r\n        background: #fffbeb;\r\n        color: #92400e;\r\n    }\r\n\r\n    .stat-num {\r\n        font-family: var(--font-display);\r\n        font-size: 1.8rem;\r\n        font-weight: 700;\r\n        color: var(--navy);\r\n        line-height: 1;\r\n    }\r\n\r\n    .stat-label {\r\n        font-size: .76rem;\r\n        color: var(--text-light);\r\n        font-weight: 500;\r\n        margin-top: 3px;\r\n    }\r\n\r\n    \/* \u2500\u2500 TABLE CARD \u2500\u2500 *\/\r\n    .table-card {\r\n        background: #fff;\r\n        border: 1px solid var(--border);\r\n        border-radius: var(--r-md);\r\n        box-shadow: var(--shadow-sm);\r\n        overflow: hidden;\r\n    }\r\n\r\n    .table-header {\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: space-between;\r\n        padding: 20px 28px;\r\n        border-bottom: 1px solid var(--border);\r\n        gap: 16px;\r\n        flex-wrap: wrap;\r\n    }\r\n\r\n    .table-header h2 {\r\n        font-family: var(--font-display);\r\n        font-size: 1.1rem;\r\n        font-weight: 700;\r\n        color: var(--navy);\r\n    }\r\n\r\n    .search-box {\r\n        position: relative;\r\n    }\r\n\r\n    .search-box input {\r\n        padding: 8px 12px 8px 34px;\r\n        border: 1.5px solid var(--border);\r\n        border-radius: 100px;\r\n        font-family: var(--font-body);\r\n        font-size: .87rem;\r\n        color: var(--text);\r\n        outline: none;\r\n        width: 240px;\r\n        transition: border-color .18s;\r\n    }\r\n\r\n    .search-box input:focus {\r\n        border-color: var(--blue-mid);\r\n    }\r\n\r\n    .search-box i {\r\n        position: absolute;\r\n        left: 11px;\r\n        top: 50%;\r\n        transform: translateY(-50%);\r\n        color: var(--text-light);\r\n        font-size: .8rem;\r\n    }\r\n\r\n    .table-wrap {\r\n        overflow-x: auto;\r\n    }\r\n\r\n    table {\r\n        width: 100%;\r\n        border-collapse: collapse;\r\n        font-size: .87rem;\r\n    }\r\n\r\n    thead th {\r\n        padding: 12px 16px;\r\n        text-align: left;\r\n        font-size: .68rem;\r\n        font-weight: 700;\r\n        letter-spacing: .08em;\r\n        text-transform: uppercase;\r\n        color: var(--text-light);\r\n        background: #f8fafd;\r\n        border-bottom: 2px solid var(--border);\r\n        white-space: nowrap;\r\n    }\r\n\r\n    tbody tr {\r\n        border-bottom: 1px solid #eef2f8;\r\n        transition: background .12s;\r\n    }\r\n\r\n    tbody tr:last-child {\r\n        border-bottom: none;\r\n    }\r\n\r\n    tbody tr:hover {\r\n        background: #f7f9ff;\r\n    }\r\n\r\n    tbody td {\r\n        padding: 13px 16px;\r\n        vertical-align: middle;\r\n        color: var(--text);\r\n    }\r\n\r\n    .folio-code {\r\n        font-family: monospace;\r\n        font-size: .8rem;\r\n        color: var(--blue-mid);\r\n        font-weight: 700;\r\n        background: var(--sky-light);\r\n        padding: 3px 8px;\r\n        border-radius: 4px;\r\n        white-space: nowrap;\r\n    }\r\n\r\n    .td-name {\r\n        font-weight: 600;\r\n        color: var(--navy);\r\n    }\r\n\r\n    .badge {\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 5px;\r\n        padding: 4px 10px;\r\n        border-radius: 100px;\r\n        font-size: .72rem;\r\n        font-weight: 700;\r\n        white-space: nowrap;\r\n    }\r\n\r\n    .badge-pending {\r\n        background: #fffbeb;\r\n        color: #92400e;\r\n        border: 1px solid #fcd34d;\r\n    }\r\n\r\n    .badge-approved {\r\n        background: #f0fdf4;\r\n        color: #166534;\r\n        border: 1px solid #86efac;\r\n    }\r\n\r\n    .badge-rejected {\r\n        background: #fef2f2;\r\n        color: #991b1b;\r\n        border: 1px solid #fca5a5;\r\n    }\r\n\r\n    .badge i {\r\n        font-size: .65rem;\r\n    }\r\n\r\n    .btn-ver {\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 6px;\r\n        padding: 6px 14px;\r\n        background: transparent;\r\n        color: var(--blue-mid);\r\n        border: 1.5px solid var(--blue-mid);\r\n        border-radius: 100px;\r\n        font-family: var(--font-body);\r\n        font-size: .8rem;\r\n        font-weight: 600;\r\n        cursor: pointer;\r\n        transition: all .18s;\r\n        white-space: nowrap;\r\n    }\r\n\r\n    .btn-ver:hover {\r\n        background: var(--blue-mid);\r\n        color: #fff;\r\n    }\r\n\r\n    .empty-state {\r\n        text-align: center;\r\n        padding: 60px 20px;\r\n        color: var(--text-light);\r\n    }\r\n\r\n    .empty-state i {\r\n        font-size: 2.5rem;\r\n        margin-bottom: 12px;\r\n        opacity: .35;\r\n        display: block;\r\n    }\r\n\r\n    .empty-state p {\r\n        font-size: .9rem;\r\n    }\r\n\r\n    .table-footer {\r\n        padding: 14px 28px;\r\n        border-top: 1px solid var(--border);\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: space-between;\r\n        gap: 10px;\r\n    }\r\n\r\n    .count-label {\r\n        font-size: .8rem;\r\n        color: var(--text-light);\r\n    }\r\n\r\n    .loading-row td {\r\n        text-align: center;\r\n        padding: 40px;\r\n        color: var(--text-light);\r\n    }\r\n\r\n    \/* \u2500\u2500 MODAL RENDEF (scoped bajo .modal-overlay para no pisar el modal del navbar) \u2500\u2500 *\/\r\n    .modal-overlay {\r\n        position: fixed;\r\n        inset: 0;\r\n        background: rgba(13, 34, 64, .6);\r\n        z-index: 1000;\r\n        display: none;\r\n        align-items: flex-start;\r\n        justify-content: center;\r\n        padding: 30px 16px;\r\n        overflow-y: auto;\r\n    }\r\n\r\n    .modal-overlay.open {\r\n        display: flex;\r\n    }\r\n\r\n    .modal-overlay .modal {\r\n        background: #fff;\r\n        border-radius: var(--r-md);\r\n        box-shadow: 0 20px 60px rgba(13, 34, 64, .25);\r\n        width: 100%;\r\n        max-width: 760px;\r\n        animation: modalIn .22s ease;\r\n        margin: auto;\r\n        padding: 0;\r\n    }\r\n\r\n    @keyframes modalIn {\r\n        from {\r\n            opacity: 0;\r\n            transform: translateY(-18px) scale(.97);\r\n        }\r\n\r\n        to {\r\n            opacity: 1;\r\n            transform: translateY(0) scale(1);\r\n        }\r\n    }\r\n\r\n    .modal-overlay .modal-head {\r\n        background: var(--navy);\r\n        border-radius: var(--r-md) var(--r-md) 0 0;\r\n        padding: 22px 28px;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: space-between;\r\n        gap: 16px;\r\n    }\r\n\r\n    .modal-overlay .modal-head h3 {\r\n        font-family: var(--font-display);\r\n        font-size: 1.1rem;\r\n        color: #fff;\r\n        font-weight: 700;\r\n    }\r\n\r\n    .modal-folio {\r\n        font-family: monospace;\r\n        font-size: .78rem;\r\n        color: rgba(255, 255, 255, .55);\r\n        margin-top: 2px;\r\n    }\r\n\r\n    .modal-overlay .modal-close {\r\n        width: 34px;\r\n        height: 34px;\r\n        background: rgba(255, 255, 255, .12);\r\n        border: none;\r\n        border-radius: 50%;\r\n        color: rgba(255, 255, 255, .8);\r\n        font-size: 1rem;\r\n        cursor: pointer;\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        transition: background .15s;\r\n        flex-shrink: 0;\r\n        position: static;\r\n        top: auto;\r\n        right: auto;\r\n        transform: none;\r\n    }\r\n\r\n    .modal-overlay .modal-close:hover {\r\n        background: rgba(255, 255, 255, .25);\r\n    }\r\n\r\n    .modal-body {\r\n        padding: 28px;\r\n    }\r\n\r\n    .modal-section {\r\n        margin-bottom: 22px;\r\n    }\r\n\r\n    .modal-section:last-child {\r\n        margin-bottom: 0;\r\n    }\r\n\r\n    .modal-section-title {\r\n        font-size: .68rem;\r\n        font-weight: 700;\r\n        letter-spacing: .1em;\r\n        text-transform: uppercase;\r\n        color: var(--text-light);\r\n        padding-bottom: 8px;\r\n        border-bottom: 1px solid var(--border);\r\n        margin-bottom: 14px;\r\n    }\r\n\r\n    .detail-grid {\r\n        display: grid;\r\n        grid-template-columns: repeat(2, 1fr);\r\n        gap: 12px;\r\n    }\r\n\r\n    .detail-label {\r\n        font-size: .7rem;\r\n        font-weight: 700;\r\n        letter-spacing: .06em;\r\n        text-transform: uppercase;\r\n        color: var(--text-light);\r\n        margin-bottom: 2px;\r\n    }\r\n\r\n    .detail-value {\r\n        font-size: .9rem;\r\n        color: var(--navy);\r\n        font-weight: 500;\r\n    }\r\n\r\n    .detail-value.empty {\r\n        color: #aab6c6;\r\n        font-style: italic;\r\n        font-weight: 400;\r\n    }\r\n\r\n    .modal-overlay .modal-footer {\r\n        padding: 18px 28px;\r\n        border-top: 1px solid var(--border);\r\n        display: flex;\r\n        justify-content: flex-end;\r\n        margin-top: 0;\r\n        flex-wrap: unset;\r\n        gap: 0;\r\n    }\r\n\r\n    .btn-cerrar-modal {\r\n        display: inline-flex;\r\n        align-items: center;\r\n        gap: 8px;\r\n        padding: 10px 24px;\r\n        background: var(--navy);\r\n        color: #fff;\r\n        border: none;\r\n        border-radius: 100px;\r\n        font-family: var(--font-body);\r\n        font-size: .88rem;\r\n        font-weight: 600;\r\n        cursor: pointer;\r\n        transition: background .18s;\r\n    }\r\n\r\n    .btn-cerrar-modal:hover {\r\n        background: var(--blue-mid);\r\n    }\r\n\r\n    \/* \u2500\u2500 RESPONSIVE \u2500\u2500 *\/\r\n    @media (max-width: 900px) {\r\n        .stats-strip {\r\n            grid-template-columns: repeat(2, 1fr);\r\n        }\r\n    }\r\n\r\n    @media (max-width: 600px) {\r\n        .page-hero-inner {\r\n            flex-direction: column;\r\n            align-items: flex-start;\r\n        }\r\n\r\n        .stats-strip {\r\n            grid-template-columns: 1fr;\r\n        }\r\n\r\n        .page-wrap {\r\n            padding: 24px 16px 60px;\r\n        }\r\n\r\n        .table-header {\r\n            flex-direction: column;\r\n            align-items: flex-start;\r\n        }\r\n\r\n        .search-box input {\r\n            width: 100%;\r\n        }\r\n\r\n        .detail-grid {\r\n            grid-template-columns: 1fr;\r\n        }\r\n    }\r\n    <\/style>\r\n<\/head>\r\n\r\n<body>\r\n\r\n    <!-- \u2550\u2550\u2550 HERO \u2550\u2550\u2550 -->\r\n    <div class=\"page-hero\">\r\n        <div class=\"page-hero-inner\">\r\n            <div>\r\n                <p class=\"page-hero-supra\"><i class=\"fas fa-triangle-exclamation\"><\/i> Defensor\u00eda del Padre<\/p>\r\n                <h1 class=\"page-hero-title\">Registro Nacional de Denuncias Falsas<\/h1>\r\n                <p class=\"page-hero-sub\">Consulta las denuncias registradas y su estado de verificaci\u00f3n.<\/p>\r\n            <\/div>\r\n            <a href=\"denuncia-falsa\" class=\"btn-registrar\">\r\n                <i class=\"fas fa-file-circle-plus\"><\/i> Registrar Denuncia\r\n            <\/a>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"page-wrap\">\r\n\r\n        <!-- \u2550\u2550\u2550 STATS \u2550\u2550\u2550 -->\r\n        <div class=\"stats-strip\">\r\n            <div class=\"stat-card\">\r\n                <div class=\"stat-icon red\"><i class=\"fas fa-file-circle-exclamation\"><\/i><\/div>\r\n                <div>\r\n                    <div class=\"stat-num\" id=\"stat-total\">\u2014<\/div>\r\n                    <div class=\"stat-label\">Total registros<\/div>\r\n                <\/div>\r\n            <\/div>\r\n            <div class=\"stat-card\">\r\n                <div class=\"stat-icon yellow\"><i class=\"fas fa-clock\"><\/i><\/div>\r\n                <div>\r\n                    <div class=\"stat-num\" id=\"stat-pending\">\u2014<\/div>\r\n                    <div class=\"stat-label\">En revisi\u00f3n<\/div>\r\n                <\/div>\r\n            <\/div>\r\n            <div class=\"stat-card\">\r\n                <div class=\"stat-icon green\"><i class=\"fas fa-check-circle\"><\/i><\/div>\r\n                <div>\r\n                    <div class=\"stat-num\" id=\"stat-approved\">\u2014<\/div>\r\n                    <div class=\"stat-label\">Aprobadas<\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <!-- \u2550\u2550\u2550 TABLE CARD \u2550\u2550\u2550 -->\r\n        <div class=\"table-card\">\r\n            <div class=\"table-header\">\r\n                <h2><i class=\"fas fa-list\" style=\"color:#7b1e1e;margin-right:8px;\"><\/i>Denuncias Registradas<\/h2>\r\n                <div class=\"search-box\">\r\n                    <i class=\"fas fa-magnifying-glass\"><\/i>\r\n                    <input type=\"text\" id=\"search-input\" placeholder=\"Buscar por nombre, estado, folio\u2026\">\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"table-wrap\">\r\n                <table id=\"tabla-denuncias\">\r\n                    <thead>\r\n                        <tr>\r\n                            <th>Folio<\/th>\r\n                            <th>Estado<\/th>\r\n                            <th>Denunciado<\/th>\r\n                            <th>Denunciante<\/th>\r\n                            <th>Tipo<\/th>\r\n                            <th>Fecha<\/th>\r\n                            <th>Estatus<\/th>\r\n                            <th><\/th>\r\n                        <\/tr>\r\n                    <\/thead>\r\n                    <tbody id=\"tbody\">\r\n                        <tr class=\"loading-row\">\r\n                            <td colspan=\"8\"><i class=\"fas fa-spinner fa-spin\" style=\"margin-right:8px;\"><\/i> Cargando\r\n                                registros\u2026<\/td>\r\n                        <\/tr>\r\n                    <\/tbody>\r\n                <\/table>\r\n            <\/div>\r\n\r\n            <div class=\"table-footer\">\r\n                <span class=\"count-label\" id=\"count-label\">Cargando\u2026<\/span>\r\n            <\/div>\r\n        <\/div>\r\n\r\n    <\/div><!-- \/.page-wrap -->\r\n\r\n    <!-- \u2550\u2550\u2550 MODAL DETALLE \u2550\u2550\u2550 -->\r\n    <div class=\"modal-overlay\" id=\"modal-overlay\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"modal-title\">\r\n        <div class=\"modal\" id=\"modal\">\r\n            <div class=\"modal-head\">\r\n                <div>\r\n                    <h3 id=\"modal-title\">Detalle de la Denuncia<\/h3>\r\n                    <p class=\"modal-folio\" id=\"modal-folio\"><\/p>\r\n                <\/div>\r\n                <button class=\"modal-close\" onclick=\"closeModal()\" aria-label=\"Cerrar\"><i\r\n                        class=\"fas fa-xmark\"><\/i><\/button>\r\n            <\/div>\r\n            <div class=\"modal-body\" id=\"modal-body\"><\/div>\r\n            <div class=\"modal-footer\">\r\n                <button class=\"btn-cerrar-modal\" onclick=\"closeModal()\"><i class=\"fas fa-xmark\"><\/i> Cerrar<\/button>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/sweetalert2\/11.10.5\/sweetalert2.all.min.js\"><\/script>\r\n    <script>\r\n    \/\/ ===================== CONFIGURACI\u00d3N =====================\r\n    \/\/ Cambia esta URL por la ruta real a tu cPanel\r\n    const LIST_URL = 'https:\/\/proyectos.c-onlineweb.net\/defensoria\/sistema\/denuncias-lista-ajax.php';\r\n\r\n    \/\/ ===================== DATOS =====================\r\n    let allRows = [];\r\n\r\n    async function loadDenuncias() {\r\n        try {\r\n            const res = await fetch(LIST_URL);\r\n            const json = await res.json();\r\n            if (!json.success) throw new Error(json.message || 'Error desconocido');\r\n            allRows = json.data || [];\r\n            updateStats(allRows);\r\n            renderTable(allRows.filter(r => +r.estatus === 1));\r\n        } catch (err) {\r\n            document.getElementById('tbody').innerHTML =\r\n                `<tr class=\"loading-row\"><td colspan=\"8\"><i class=\"fas fa-circle-exclamation\" style=\"color:#e74c3c;margin-right:8px;\"><\/i>${escHtml(err.message)}<\/td><\/tr>`;\r\n            document.getElementById('count-label').textContent = 'Error al cargar';\r\n        }\r\n    }\r\n\r\n    function updateStats(rows) {\r\n        document.getElementById('stat-total').textContent = rows.length;\r\n        document.getElementById('stat-pending').textContent = rows.filter(r => +r.estatus === 0).length;\r\n        document.getElementById('stat-approved').textContent = rows.filter(r => +r.estatus === 1).length;\r\n    }\r\n\r\n    function statusBadge(estatus) {\r\n        const s = +estatus;\r\n        if (s === 1) return '<span class=\"badge badge-approved\"><i class=\"fas fa-check\"><\/i> Aprobada<\/span>';\r\n        if (s === 2) return '<span class=\"badge badge-rejected\"><i class=\"fas fa-xmark\"><\/i> Rechazada<\/span>';\r\n        return '<span class=\"badge badge-pending\"><i class=\"fas fa-clock\"><\/i> En revisi\u00f3n<\/span>';\r\n    }\r\n\r\n    function escHtml(str) {\r\n        if (!str) return '';\r\n        return String(str)\r\n            .replace(\/&\/g, '&amp;')\r\n            .replace(\/<\/g, '&lt;')\r\n            .replace(\/>\/g, '&gt;')\r\n            .replace(\/\"\/g, '&quot;')\r\n            .replace(\/'\/g, '&#39;');\r\n    }\r\n\r\n    function renderTable(rows) {\r\n        const tbody = document.getElementById('tbody');\r\n        if (!rows.length) {\r\n            tbody.innerHTML =\r\n                `<tr><td colspan=\"8\"><div class=\"empty-state\"><i class=\"fas fa-folder-open\"><\/i><p>No hay registros<\/p><\/div><\/td><\/tr>`;\r\n            document.getElementById('count-label').textContent = 'Sin resultados';\r\n            return;\r\n        }\r\n        document.getElementById('count-label').textContent = `${rows.length} registro${rows.length !== 1 ? 's' : ''}`;\r\n        tbody.innerHTML = rows.map(r => `\r\n        <tr>\r\n            <td><span class=\"folio-code\">${escHtml(r.folio)}<\/span><\/td>\r\n            <td>${escHtml(r.estado)}<\/td>\r\n            <td><div class=\"td-name\">${escHtml(r.denunciado_nombre)} ${escHtml(r.denunciado_apellidos)}<\/div><\/td>\r\n            <td><div class=\"td-name\">${escHtml(r.denunciante_nombre)} ${escHtml(r.denunciante_apellidos)}<\/div><\/td>\r\n            <td>${escHtml(r.tipo_denuncia) || '<span style=\"color:#aab6c6;\">\u2014<\/span>'}<\/td>\r\n            <td style=\"white-space:nowrap;\">${r.fecha_denuncia ? escHtml(r.fecha_denuncia) : '<span style=\"color:#aab6c6;\">\u2014<\/span>'}<\/td>\r\n            <td>${statusBadge(r.estatus)}<\/td>\r\n            <td><button class=\"btn-ver\" onclick=\"openModal(${+r.id})\"><i class=\"fas fa-eye\"><\/i> Ver<\/button><\/td>\r\n        <\/tr>\r\n    `).join('');\r\n    }\r\n\r\n    \/\/ \u2500\u2500 B\u00daSQUEDA \u2500\u2500\r\n    document.getElementById('search-input').addEventListener('input', function() {\r\n        const q = this.value.toLowerCase().trim();\r\n        const approved = allRows.filter(r => +r.estatus === 1);\r\n        if (!q) {\r\n            renderTable(approved);\r\n            return;\r\n        }\r\n        const filtered = approved.filter(r => [r.folio, r.estado, r.denunciado_nombre, r.denunciado_apellidos,\r\n                r.denunciante_nombre, r.denunciante_apellidos, r.tipo_denuncia,\r\n                r.numero_expediente, r.juzgado\r\n            ]\r\n            .some(v => (v || '').toLowerCase().includes(q))\r\n        );\r\n        renderTable(filtered);\r\n    });\r\n\r\n    \/\/ \u2500\u2500 MODAL \u2500\u2500\r\n    function openModal(id) {\r\n        const r = allRows.find(x => +x.id === id);\r\n        if (!r) return;\r\n\r\n        document.getElementById('modal-folio').textContent = r.folio;\r\n\r\n        const val = (v) => (v && String(v).trim() !== '') ?\r\n            `<span class=\"detail-value\">${escHtml(v)}<\/span>` :\r\n            `<span class=\"detail-value empty\">\u2014<\/span>`;\r\n\r\n        const d = (label, value) => `\r\n        <div class=\"detail-item\">\r\n            <div class=\"detail-label\">${label}<\/div>\r\n            ${val(value)}\r\n        <\/div>`;\r\n\r\n        document.getElementById('modal-body').innerHTML = `\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Datos de la Denuncia<\/div>\r\n            <div class=\"detail-grid\">\r\n                ${d('Estado', r.estado)}\r\n                ${d('Tipo de denuncia', r.tipo_denuncia)}\r\n                ${d('N\u00famero de expediente', r.numero_expediente)}\r\n                ${d('Juzgado', r.juzgado)}\r\n                ${d('Fecha de denuncia', r.fecha_denuncia)}\r\n                ${d('Orden de protecci\u00f3n', r.orden_proteccion)}\r\n                ${d('Denuncia penal', r.denuncia_penal)}\r\n                ${d('Tipo de restricci\u00f3n', r.tipo_restriccion)}\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Denunciado<\/div>\r\n            <div class=\"detail-grid\">\r\n                ${d('Nombre(s)', r.denunciado_nombre)}\r\n                ${d('Apellidos', r.denunciado_apellidos)}\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Denunciante<\/div>\r\n            <div class=\"detail-grid\">\r\n                ${d('Nombre(s)', r.denunciante_nombre)}\r\n                ${d('Apellidos', r.denunciante_apellidos)}\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Representaci\u00f3n Legal y Expediente<\/div>\r\n            <div class=\"detail-grid\">\r\n                ${d('Abogado(a) \u2014 Nombre', r.abogado_nombre)}\r\n                ${d('Abogado(a) \u2014 Apellidos', r.abogado_apellidos)}\r\n                ${d('Expediente custodia\/convivencia', r.expediente_custodia)}\r\n            <\/div>\r\n        <\/div>\r\n\r\n        ${r.comentarios ? `\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Comentarios<\/div>\r\n            <p style=\"font-size:.9rem;line-height:1.7;color:var(--text);\">${escHtml(r.comentarios)}<\/p>\r\n        <\/div>` : ''}\r\n\r\n        <div class=\"modal-section\">\r\n            <div class=\"modal-section-title\">Estatus del Registro<\/div>\r\n            <div style=\"display:flex;align-items:center;gap:12px;flex-wrap:wrap;\">\r\n                ${statusBadge(r.estatus)}\r\n                <span style=\"font-size:.8rem;color:var(--text-light);\">Registrado el ${escHtml(r.fecha_registro)}<\/span>\r\n            <\/div>\r\n        <\/div>\r\n    `;\r\n\r\n        document.getElementById('modal-overlay').classList.add('open');\r\n        document.body.style.overflow = 'hidden';\r\n    }\r\n\r\n    function closeModal() {\r\n        document.getElementById('modal-overlay').classList.remove('open');\r\n        document.body.style.overflow = '';\r\n    }\r\n\r\n    document.getElementById('modal-overlay').addEventListener('click', function(e) {\r\n        if (e.target === this) closeModal();\r\n    });\r\n    document.addEventListener('keydown', e => {\r\n        if (e.key === 'Escape') closeModal();\r\n    });\r\n\r\n    \/\/ \u2500\u2500 INIT \u2500\u2500\r\n    loadDenuncias();\r\n    <\/script>\r\n\r\n<\/body>\r\n\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Registro Nacional de Denuncias Falsas \u2013 Defensor\u00eda del Padre Defensor\u00eda del Padre Registro Nacional de Denuncias Falsas Consulta las denuncias registradas y su estado de verificaci\u00f3n. Registrar Denuncia \u2014 Total registros \u2014 En revisi\u00f3n \u2014 Aprobadas Denuncias Registradas Folio Estado Denunciado Denunciante Tipo Fecha Estatus Cargando registros\u2026 Cargando\u2026 Detalle de la Denuncia Cerrar<\/p>\n","protected":false},"author":1,"featured_media":922,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-954","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>RENDEF \u2013 Registro Nacional<\/title>\n<meta name=\"description\" content=\"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"RENDEF \u2013 Registro Nacional\" \/>\n<meta property=\"og:description\" content=\"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/\" \/>\n<meta property=\"og:site_name\" content=\"My Blog\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-21T18:24:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/\",\"url\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/\",\"name\":\"RENDEF \u2013 Registro Nacional\",\"isPartOf\":{\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg\",\"datePublished\":\"2026-02-20T17:33:23+00:00\",\"dateModified\":\"2026-04-21T18:24:21+00:00\",\"description\":\"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.\",\"breadcrumb\":{\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage\",\"url\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg\",\"contentUrl\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg\",\"width\":2560,\"height\":1707},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"RENDEF\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/#website\",\"url\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/\",\"name\":\"My Blog\",\"description\":\"My WordPress Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/proyectos.c-onlineweb.net\/defensoria\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"RENDEF \u2013 Registro Nacional","description":"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/","og_locale":"en_US","og_type":"article","og_title":"RENDEF \u2013 Registro Nacional","og_description":"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.","og_url":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/","og_site_name":"My Blog","article_modified_time":"2026-04-21T18:24:21+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/","url":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/","name":"RENDEF \u2013 Registro Nacional","isPartOf":{"@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/#website"},"primaryImageOfPage":{"@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage"},"image":{"@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage"},"thumbnailUrl":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg","datePublished":"2026-02-20T17:33:23+00:00","dateModified":"2026-04-21T18:24:21+00:00","description":"Informaci\u00f3n, registro y consulta del RENDEF para la protecci\u00f3n de derechos familiares y paternos.","breadcrumb":{"@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#primaryimage","url":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg","contentUrl":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-content\/uploads\/2026\/02\/defensoria-13-scaled.jpg","width":2560,"height":1707},{"@type":"BreadcrumbList","@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/rendef\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/"},{"@type":"ListItem","position":2,"name":"RENDEF"}]},{"@type":"WebSite","@id":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/#website","url":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/","name":"My Blog","description":"My WordPress Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/pages\/954","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/comments?post=954"}],"version-history":[{"count":34,"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/pages\/954\/revisions"}],"predecessor-version":[{"id":1248,"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/pages\/954\/revisions\/1248"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/media\/922"}],"wp:attachment":[{"href":"https:\/\/proyectos.c-onlineweb.net\/defensoria\/wp-json\/wp\/v2\/media?parent=954"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}