{"id":504,"date":"2026-03-06T05:16:46","date_gmt":"2026-03-06T04:16:46","guid":{"rendered":"https:\/\/ccinternacional.com\/capellania\/registro-capellan\/"},"modified":"2026-03-06T05:16:46","modified_gmt":"2026-03-06T04:16:46","slug":"registro-capellan","status":"publish","type":"page","link":"https:\/\/ccinternacional.com\/capellania\/registro-capellan\/","title":{"rendered":"Registro de Capell\u00e1n"},"content":{"rendered":"    <div class=\"ccint-reg-container\">\n        <div class=\"ccint-reg-glass\">\n            <div class=\"ccint-reg-header\">\n                <div class=\"ccint-reg-badge\">CAPELLAN ACCREDITATION<\/div>\n                <h1>Solicitud de Alta Institucional<\/h1>\n                <p>Complete el expediente digital para iniciar su proceso de validaci\u00f3n.<\/p>\n            <\/div>\n\n            \n            <form method=\"POST\" action=\"\" class=\"ccint-modern-form\" id=\"ccint-registration-steps\">\n                <input type=\"hidden\" id=\"ccint_register_nonce\" name=\"ccint_register_nonce\" value=\"634af72418\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/capellania\/wp-json\/wp\/v2\/pages\/504\" \/>                \n                <!-- \ud83d\udee1\ufe0f HONEYPOT (Anti-Spam) -->\n                <div style=\"display:none !important; visibility:hidden !important; position:absolute; left:-9999px;\">\n                    <input type=\"text\" name=\"sion_full_verification\" value=\"\">\n                <\/div>\n\n                <!-- \ud83d\udcca PROGRESS BAR -->\n                <div class=\"ccint-progress-container\">\n                    <div class=\"ccint-progress-bar\">\n                        <div class=\"ccint-progress-fill\" id=\"sion-progress-fill\"><\/div>\n                    <\/div>\n                    <div class=\"ccint-progress-labels\">\n                        <span class=\"ccint-prog-step active\">Identidad<\/span>\n                        <span class=\"ccint-prog-step\">Perfil<\/span>\n                        <span class=\"ccint-prog-step\">Residencia<\/span>\n                        <span class=\"ccint-prog-step\">Biometr\u00eda<\/span>\n                        <span class=\"ccint-prog-step\">Final<\/span>\n                    <\/div>\n                <\/div>\n                \n                <!-- \ud83d\ude80 PASO 01: IDENTIDAD DIGITAL -->\n                <div class=\"ccint-form-step active\" data-step=\"1\">\n                    <div class=\"google-fast-track\">\n                        <div id=\"google_btn_container\"><\/div>\n                        <span class=\"google-hint\">EXPEDIENTE R\u00c1PIDO: Autocompletado inteligente con su cuenta Google<\/span>\n                    <\/div>\n\n                    <div class=\"section-title\">\n                        <span class=\"step-num\">01<\/span>\n                        <h3>Expediente de Identidad<\/h3>\n                    <\/div>\n                    \n                    <div class=\"ccint-field\">\n                        <label>Nombre y Apellido Completo<\/label>\n                        <div class=\"info-tag\">Como figura en su documento legal<\/div>\n                        <input type=\"text\" name=\"nombre_completo\" placeholder=\"Ej: Oscar Crolla\" required>\n                    <\/div>\n\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Nombre de Usuario<\/label>\n                            <div class=\"info-tag\">Su identidad \u00fanica en el Hub<\/div>\n                            <input type=\"text\" name=\"user_login\" placeholder=\"Ej: oscarcrolla\" required>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>Correo Electr\u00f3nico Oficial<\/label>\n                            <div class=\"info-tag\">&nbsp;<\/div> <!-- Spacer para alineaci\u00f3n -->\n                            <input type=\"email\" name=\"email\" placeholder=\"nombre@ejemplo.com\" required>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-field\">\n                        <label>Contrase\u00f1a Institucional<\/label>\n                        <div class=\"info-tag\">M\u00ednimo 8 caracteres, use s\u00edmbolos para mayor seguridad<\/div>\n                        <input type=\"password\" name=\"password\" placeholder=\"\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022\" required>\n                    <\/div>\n\n                    <div class=\"ccint-step-navigation\">\n                        <button type=\"button\" class=\"ccint-btn-next\" onclick=\"window.SionBridge.nextStep(1)\">\n                            CONTINUAR AL PASO 02\n                            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg>\n                        <\/button>\n                    <\/div>\n                <\/div>\n\n\n\n                <!-- \ud83d\ude80 PASO 02: PERFIL INSTITUCIONAL -->\n                <div class=\"ccint-form-step\" data-step=\"2\">\n                    <div class=\"section-title\">\n                        <span class=\"step-num\">02<\/span>\n                        <h3>Perfil Institucional<\/h3>\n                    <\/div>\n\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Sexo \/ G\u00e9nero<\/label>\n                            <div class=\"ccint-select-wrapper\">\n                                <select name=\"genero\" required>\n                                    <option value=\"\" disabled selected>Seleccionar...<\/option>\n                                    <option value=\"Masculino\">Masculino<\/option>\n                                    <option value=\"Femenino\">Femenino<\/option>\n                                <\/select>\n                            <\/div>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>Grado Jer\u00e1rquico<\/label>\n                            <div class=\"ccint-select-wrapper\">\n                                <select name=\"grado\" readonly style=\"opacity: 0.7; pointer-events: none; background: rgba(255,255,255,0.02) !important;\">\n                                    <option value=\"Aspirante\" selected>Aspirante (Protocolo Inicial)<\/option>\n                                <\/select>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-field\">\n                        <label>Funci\u00f3n Ministerial \/ Cargo<\/label>\n                        <div class=\"ccint-select-wrapper\">\n                            <select name=\"cargo\" required>\n                                <option value=\"\" disabled selected>Seleccionar su funci\u00f3n...<\/option>\n                                <option value=\"Pastor\">Pastor<\/option>\n                                <option value=\"Pastora\">Pastora<\/option>\n                                <option value=\"Apostol\">Ap\u00f3stol<\/option>\n                                <option value=\"Profeta\">Profeta<\/option>\n                                <option value=\"Otro\">Otro \/ Colaborador<\/option>\n                            <\/select>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"section-title\" style=\"margin-top: 30px;\">\n                        <span class=\"step-num\">02.1<\/span>\n                        <h3>Presencia Digital<\/h3>\n                    <\/div>\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Instagram<\/label>\n                            <div class=\"info-tag\">Pegue el enlace (URL) de su perfil<\/div>\n                            <input type=\"url\" name=\"instagram\" placeholder=\"https:\/\/instagram.com\/usuario\">\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>Facebook<\/label>\n                            <div class=\"info-tag\">Pegue el enlace (URL) de su perfil<\/div>\n                            <input type=\"url\" name=\"facebook\" placeholder=\"https:\/\/facebook.com\/usuario\">\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-step-navigation\">\n                        <button type=\"button\" class=\"ccint-btn-prev\" onclick=\"window.SionBridge.prevStep(2)\">ATR\u00c1S<\/button>\n                        <button type=\"button\" class=\"ccint-btn-next\" onclick=\"window.SionBridge.nextStep(2)\">CONTINUAR AL PASO 03<\/button>\n                    <\/div>\n                <\/div>\n\n                <!-- \ud83d\ude80 PASO 03: RESIDENCIA Y UBICACI\u00d3N -->\n                <div class=\"ccint-form-step\" data-step=\"3\">\n\n                    <div class=\"section-title\">\n                        <span class=\"step-num\">03<\/span>\n                        <h3>Informaci\u00f3n de Residencia<\/h3>\n                    <\/div>\n                    \n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>DNI \/ Documento (N\u00famero)<\/label>\n                            <input type=\"text\" name=\"dni_numero\" placeholder=\"Ej: 35.123.456\" required>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>Nacionalidad<\/label>\n                            <input type=\"text\" name=\"nacionalidad\" placeholder=\"Ej: Argentina\" required>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Tel\u00e9fono de Contacto<\/label>\n                            <input type=\"text\" name=\"telefono\" placeholder=\"+54 9 11 ...\" required>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>WhatsApp<\/label>\n                            <input type=\"text\" name=\"whatsapp\" placeholder=\"Ej: 11223344\" required>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-field\">\n                        <label>Direcci\u00f3n Residencial<\/label>\n                        <input type=\"text\" name=\"direccion\" placeholder=\"Calle, N\u00famero, Depto\" required>\n                    <\/div>\n\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Ciudad<\/label>\n                            <input type=\"text\" name=\"ciudad\" placeholder=\"Ej: CABA\" required>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>C\u00f3digo Postal<\/label>\n                            <input type=\"text\" name=\"cp\" placeholder=\"Ej: 1425\" required>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-grid\">\n                        <div class=\"ccint-field\">\n                            <label>Provincia \/ Estado<\/label>\n                            <input type=\"text\" name=\"provincia\" placeholder=\"Ej: Buenos Aires\" required>\n                        <\/div>\n                        <div class=\"ccint-field\">\n                            <label>Pa\u00eds<\/label>\n                            <div class=\"ccint-select-wrapper\">\n                                <select name=\"pais\" required>\n                                    <option value=\"Argentina\" selected>Argentina<\/option>\n                                    <option value=\"Uruguay\">Uruguay<\/option>\n                                    <option value=\"Chile\">Chile<\/option>\n                                    <option value=\"Bolivia\">Bolivia<\/option>\n                                    <option value=\"Paraguay\">Paraguay<\/option>\n                                    <option value=\"Brasil\">Brasil<\/option>\n                                    <option value=\"Otro\">Otro (Especificar en Bio)<\/option>\n                                <\/select>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-step-navigation\">\n                        <button type=\"button\" class=\"ccint-btn-prev\" onclick=\"window.SionBridge.prevStep(3)\">ATR\u00c1S<\/button>\n                        <button type=\"button\" class=\"ccint-btn-next\" onclick=\"window.SionBridge.nextStep(3)\">CONTINUAR AL PASO 04<\/button>\n                    <\/div>\n                <\/div>\n\n                <!-- \ud83d\ude80 PASO 04: B\u00d3VEDA BIOM\u00c9TRICA (Forge) -->\n                <div class=\"ccint-form-step\" data-step=\"4\">\n                    <div class=\"section-title\">\n                        <span class=\"step-num\">04<\/span>\n                        <h3>Validaci\u00f3n Bio-Identidad<\/h3>\n                    <\/div>\n\n                    <div class=\"ccint-capture-group\">\n                        <div class=\"ccint-capture-item\">\n                            <label>Retrato Institucional (Selfie)<\/label>\n                            <div class=\"ccint-warning-tag\">\u26a0\ufe0f EVITAR ROPA BLANCA: Use vestimenta de color para evitar que la IA borre su ropa.<\/div>\n                            <div class=\"ccint-capture-slot selfie\" style=\"position:relative; overflow:hidden;\">\n                                <input type=\"file\" id=\"perfil_fallback\" accept=\"image\/*\" capture=\"user\"\n                                       style=\"position:absolute; inset:0; opacity:0; z-index:10; cursor:pointer; width:100%; height:100%;\" \n                                       onclick=\"window.SionBridge.handleInputClick(event, {previewId: 'preview_perfil', hiddenId: 'hidden_perfil', fallbackId: 'perfil_fallback'})\"\n                                       onchange=\"window.SionBridge.handleNative(this, 'preview_perfil', 'hidden_perfil')\">\n                                \n                                <input type=\"hidden\" name=\"foto_carnet_base64\" id=\"hidden_perfil\">\n                                <img id=\"preview_perfil\" class=\"ccint-preview-img\">\n                                <div class=\"slot-overlay\">\n                                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\"><path d=\"M12 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\"\/><\/svg>\n                                    <span>SUBIR FOTO<\/span>\n                                <\/div>\n                            <\/div>\n                            <div class=\"bridge-opt-btn\" onclick=\"window.SionBridge.openBridge({previewId: 'preview_perfil', hiddenId: 'hidden_perfil', fallbackId: 'perfil_fallback'})\">\n                                \ud83d\udcf2 Link M\u00f3vil (QR)\n                            <\/div>\n                        <\/div>\n\n                        <div class=\"ccint-capture-item full\">\n                            <label>Documento Nacional de Identidad<\/label>\n                            <div class=\"dni-slots\">\n                                <div class=\"dni-col\">\n                                    <div class=\"ccint-capture-slot dni\" style=\"position:relative; overflow:hidden;\">\n                                        <input type=\"file\" id=\"frente_fallback\" accept=\"image\/*\" capture=\"environment\"\n                                               style=\"position:absolute; inset:0; opacity:0; z-index:10; cursor:pointer; width:100%; height:100%;\" \n                                               onclick=\"window.SionBridge.handleInputClick(event, {previewId: 'preview_frente', hiddenId: 'hidden_frente', fallbackId: 'frente_fallback'})\"\n                                               onchange=\"window.SionBridge.handleNative(this, 'preview_frente', 'hidden_frente')\">\n                                        \n                                        <input type=\"hidden\" name=\"foto_dni_base64[]\" id=\"hidden_frente\">\n                                        <img id=\"preview_frente\" class=\"ccint-preview-img\">\n                                        <div class=\"slot-overlay\">\n                                            <span>FRENTE<\/span>\n                                        <\/div>\n                                    <\/div>\n                                    <div class=\"bridge-opt-btn\" onclick=\"window.SionBridge.openBridge({previewId: 'preview_frente', hiddenId: 'hidden_frente', fallbackId: 'frente_fallback'})\">\ud83d\udcf2 QR<\/div>\n                                <\/div>\n                                <div class=\"dni-col\">\n                                    <div class=\"ccint-capture-slot dni\" style=\"position:relative; overflow:hidden;\">\n                                        <input type=\"file\" id=\"dorso_fallback\" accept=\"image\/*\" capture=\"environment\"\n                                               style=\"position:absolute; inset:0; opacity:0; z-index:10; cursor:pointer; width:100%; height:100%;\" \n                                               onclick=\"window.SionBridge.handleInputClick(event, {previewId: 'preview_dorso', hiddenId: 'hidden_dorso', fallbackId: 'dorso_fallback'})\"\n                                               onchange=\"window.SionBridge.handleNative(this, 'preview_dorso', 'hidden_dorso')\">\n                                               \n                                        <input type=\"hidden\" name=\"foto_dni_base64[]\" id=\"hidden_dorso\">\n                                        <img id=\"preview_dorso\" class=\"ccint-preview-img\">\n                                        <div class=\"slot-overlay\">\n                                            <span>DORSO<\/span>\n                                        <\/div>\n                                    <\/div>\n                                    <div class=\"bridge-opt-btn\" onclick=\"window.SionBridge.openBridge({previewId: 'preview_dorso', hiddenId: 'hidden_dorso', fallbackId: 'dorso_fallback'})\">\ud83d\udcf2 QR<\/div>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n\n                    <div class=\"ccint-step-navigation\">\n                        <button type=\"button\" class=\"ccint-btn-prev\" onclick=\"window.SionBridge.prevStep(4)\">ATR\u00c1S<\/button>\n                        <button type=\"button\" class=\"ccint-btn-next\" onclick=\"window.SionBridge.nextStep(4)\">CONTINUAR AL PASO 05<\/button>\n                    <\/div>\n                <\/div>\n\n                <!-- \ud83d\ude80 PASO 05: REVISI\u00d3N FINAL -->\n                <div class=\"ccint-form-step\" data-step=\"5\">\n                    <div class=\"section-title\">\n                        <span class=\"step-num\">05<\/span>\n                        <h3>Finalizar Expediente<\/h3>\n                    <\/div>\n                    <p class=\"privacy-note\" style=\"margin-bottom: 20px;\">Al enviar esta solicitud, declaro que todos los datos y biometr\u00edas proporcionadas son veraces y corresponden a mi identidad legal.<\/p>\n\n                    <div class=\"ccint-step-navigation\">\n                        <button type=\"button\" class=\"ccint-btn-prev\" onclick=\"window.SionBridge.prevStep(5)\">ATR\u00c1S<\/button>\n                        <button type=\"submit\" class=\"ccint-btn-next\" style=\"background: #d4af37; color: #fff;\">\n                            EJECUTAR ALTA DE EXPEDIENTE\n                            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\"><path d=\"M5 12h14M12 5l7 7-7 7\"\/><\/svg>\n                        <\/button>\n                    <\/div>\n                <\/div>\n            <\/form>\n        <\/div>\n    <\/div>\n\n    <style>\n        @import url('https:\/\/fonts.googleapis.com\/css2?family=Outfit:wght@300;400;600;800&display=swap');\n\n        .ccint-reg-container {\n            width: 100%;\n            padding: 20px 0;\n            font-family: 'Outfit', sans-serif;\n            color: #fff;\n        }\n\n        .ccint-reg-glass {\n            background: rgba(10, 10, 10, 0.95);\n            backdrop-filter: blur(25px);\n            -webkit-backdrop-filter: blur(25px);\n            border: 1px solid rgba(212, 175, 55, 0.3);\n            border-radius: 40px;\n            max-width: 850px;\n            margin: 0 auto;\n            padding: 60px;\n            box-shadow: 0 40px 100px rgba(0, 0, 0, 0.8);\n        }\n\n        .ccint-reg-header {\n            text-align: center;\n            margin-bottom: 50px;\n        }\n\n        .ccint-reg-badge {\n            display: inline-block;\n            background: rgba(212, 175, 55, 0.15);\n            color: #d4af37;\n            padding: 6px 16px;\n            border-radius: 100px;\n            font-size: 10px;\n            font-weight: 800;\n            letter-spacing: 2px;\n            margin-bottom: 20px;\n            border: 1px solid rgba(212, 175, 55, 0.3);\n        }\n\n        .ccint-reg-container * {\n            box-sizing: border-box !important;\n        }\n\n        .ccint-reg-header h1 {\n            font-size: 42px;\n            font-weight: 800;\n            margin: 0 0 15px 0;\n            letter-spacing: -1px;\n            background: linear-gradient(to right, #ffffff, #d4af37);\n            -webkit-background-clip: text;\n            -webkit-text-fill-color: transparent;\n        }\n\n        .ccint-reg-header p {\n            color: rgba(255, 255, 255, 0.5);\n            font-size: 16px;\n        }\n\n        \/* Forms logic *\/\n        .ccint-form-section {\n            margin-bottom: 45px;\n        }\n\n        .section-title {\n            display: flex;\n            align-items: center;\n            gap: 15px;\n            margin-bottom: 30px;\n        }\n\n        .step-num {\n            font-size: 14px;\n            font-weight: 800;\n            color: #d4af37;\n            opacity: 0.6;\n        }\n\n        .section-title h3 {\n            font-size: 20px;\n            font-weight: 600;\n            \/* Version: 1.2.99 SION-SHIELD *\/\n            color: #fff;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n        }\n\n        .ccint-grid {\n            display: flex !important;\n            flex-wrap: wrap !important;\n            gap: 30px !important;\n            margin-bottom: 25px !important;\n            width: 100% !important;\n        }\n\n        .ccint-grid > .ccint-field {\n            flex: 1 1 calc(50% - 15px) !important;\n            min-width: 0 !important;\n        }\n\n        @media (max-width: 768px) {\n            .ccint-grid > .ccint-field {\n                flex: 1 1 100% !important;\n            }\n        }\n\n        .ccint-field {\n            margin-bottom: 25px !important;\n            width: 100% !important;\n            position: relative !important;\n            display: flex !important;\n            flex-direction: column !important;\n        }\n\n        .ccint-field label {\n            display: block;\n            font-size: 13px;\n            font-weight: 600;\n            color: rgba(255, 255, 255, 0.4);\n            margin-bottom: 10px;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n        }\n\n        .info-tag {\n            font-size: 11px;\n            color: #d4af37;\n            margin-bottom: 10px;\n            opacity: 0.7;\n        }\n\n        .ccint-warning-tag {\n            background: rgba(212, 175, 55, 0.1);\n            border: 1px solid rgba(212, 175, 55, 0.3);\n            color: #d4af37;\n            padding: 10px 15px;\n            border-radius: 12px;\n            font-size: 11px;\n            font-weight: 700;\n            margin-bottom: 15px;\n            line-height: 1.4;\n            display: flex;\n            align-items: center;\n            gap: 8px;\n        }\n\n        .ccint-modern-form input,\n        .ccint-modern-form select {\n            width: 100% !important;\n            background: rgba(255, 255, 255, 0.05) !important;\n            border: 1px solid rgba(255, 255, 255, 0.1) !important;\n            border-radius: 18px !important;\n            padding: 16px 20px !important;\n            color: #fff !important;\n            font-family: inherit;\n            font-size: 16px;\n            transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);\n        }\n\n        .ccint-modern-form input:focus,\n        .ccint-modern-form select:focus {\n            outline: none !important;\n            border-color: #d4af37 !important;\n            background: rgba(255, 255, 255, 0.08) !important;\n            box-shadow: 0 0 20px rgba(212, 175, 55, 0.15) !important;\n        }\n\n        \/* Prevent Chrome Autocomplete White\/Blue background *\/\n        .ccint-modern-form input:-webkit-autofill,\n        .ccint-modern-form input:-webkit-autofill:hover, \n        .ccint-modern-form input:-webkit-autofill:focus {\n            -webkit-text-fill-color: #fff !important;\n            -webkit-box-shadow: 0 0 0px 1000px #0a0a0a inset !important;\n            transition: background-color 5000s ease-in-out 0s;\n        }\n\n        \/* Select Styling *\/\n        .ccint-select-wrapper {\n            position: relative;\n            width: 100%;\n        }\n\n        .ccint-select-wrapper::after {\n            content: '\u25bc';\n            position: absolute;\n            right: 20px;\n            top: 50%;\n            transform: translateY(-50%);\n            color: #d4af37;\n            font-size: 10px;\n            pointer-events: none;\n        }\n\n        .ccint-modern-form select {\n            width: 100%;\n            background: rgba(255, 255, 255, 0.04);\n            border: 1px solid rgba(255, 255, 255, 0.1);\n            border-radius: 16px;\n            padding: 16px 20px;\n            color: #fff;\n            font-family: inherit;\n            font-size: 16px;\n            appearance: none;\n            -webkit-appearance: none;\n            transition: all 0.3s;\n            cursor: pointer;\n        }\n\n        .ccint-modern-form select:focus {\n            outline: none;\n            border-color: #d4af37;\n            background: rgba(255, 255, 255, 0.07);\n        }\n\n        .ccint-modern-form select option {\n            background: #111;\n            color: #fff;\n            padding: 10px;\n        }\n\n        \/* Capture items *\/\n        .ccint-capture-group {\n            display: flex;\n            gap: 30px;\n            flex-wrap: wrap;\n        }\n\n        .ccint-capture-item {\n            flex: 0 0 200px;\n        }\n\n        .ccint-capture-item.full {\n            flex: 1;\n        }\n\n        .ccint-capture-item label {\n            display: block;\n            font-size: 13px;\n            font-weight: 600;\n            color: rgba(255, 255, 255, 0.4);\n            margin-bottom: 15px;\n            text-transform: uppercase;\n        }\n\n        .ccint-capture-slot {\n            background: rgba(255, 255, 255, 0.03);\n            border: 2px dashed rgba(255, 255, 255, 0.1);\n            border-radius: 24px;\n            position: relative;\n            cursor: pointer;\n            overflow: hidden;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.3s;\n        }\n\n        .ccint-capture-slot:hover {\n            border-color: #d4af37;\n            background: rgba(212, 175, 55, 0.05);\n        }\n\n        .ccint-capture-slot.selfie {\n            width: 180px;\n            height: 180px;\n            border-radius: 50%;\n            border: 3px solid rgba(212, 175, 55, 0.2);\n            box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.4);\n            animation: sion-pulse 2s infinite;\n        }\n\n        @keyframes sion-pulse {\n            0% { box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.4); }\n            70% { box-shadow: 0 0 0 20px rgba(212, 175, 55, 0); }\n            100% { box-shadow: 0 0 0 0 rgba(212, 175, 55, 0); }\n        }\n\n        .ccint-capture-slot.has-file {\n            animation: none !important;\n            border-color: #d4af37 !important;\n            border-style: solid !important;\n        }\n\n        .dni-slots {\n            display: grid;\n            grid-template-columns: 1fr 1fr;\n            gap: 15px;\n        }\n\n        .dni-col {\n            display: flex;\n            flex-direction: column;\n            gap: 10px;\n        }\n\n        .ccint-capture-slot.dni {\n            height: 120px;\n        }\n\n        .bridge-opt-btn {\n            background: rgba(212,175,55,0.08);\n            border: 1px solid rgba(212,175,55,0.2);\n            color: #d4af37;\n            font-size: 10px;\n            padding: 8px;\n            border-radius: 12px;\n            cursor: pointer;\n            text-align: center;\n            transition: all 0.3s;\n            font-weight: 700;\n            text-transform: uppercase;\n            letter-spacing: 0.5px;\n            position: relative;\n            z-index: 50; \/* Prioridad de click *\/\n        }\n\n        .bridge-opt-btn:hover {\n            background: #d4af37;\n            color: #000;\n            border-color: #d4af37;\n        }\n\n        .ccint-capture-slot.dni {\n            flex: 1;\n            height: 100%;\n        }\n\n        .slot-overlay {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            gap: 10px;\n            color: rgba(255, 255, 255, 0.3);\n            text-align: center;\n        }\n\n        .slot-overlay svg {\n            width: 32px;\n            height: 32px;\n        }\n\n        .slot-overlay span {\n            font-size: 10px;\n            font-weight: 800;\n            letter-spacing: 1px;\n        }\n\n        .ccint-preview-img {\n            position: absolute;\n            inset: 0;\n            width: 100%;\n            height: 100%;\n            object-fit: cover;\n            display: none;\n            z-index: 2;\n        }\n\n        .ccint-capture-slot.has-file .ccint-preview-img {\n            display: block;\n        }\n\n        \/* Success\/Error logic *\/\n        .ccint-error {\n            background: rgba(220, 38, 38, 0.1);\n            border: 1px solid rgba(220, 38, 38, 0.3);\n            color: #ef4444;\n            padding: 15px 20px;\n            border-radius: 12px;\n            margin-bottom: 30px;\n            font-size: 14px;\n            text-align: center;\n        }\n\n        .ccint-success-box {\n            background: rgba(5, 6, 8, 0.8);\n            border: 1px solid #d4af37;\n            border-radius: 30px;\n            padding: 60px;\n            text-align: center;\n            box-shadow: 0 40px 100px rgba(0, 0, 0, 0.2);\n        }\n\n        .ccint-success-box h3 {\n            font-size: 32px;\n            font-weight: 800;\n            color: #d4af37;\n            margin-bottom: 15px;\n        }\n\n        \/* Footer button *\/\n        .ccint-form-footer {\n            margin-top: 50px;\n            text-align: center;\n            border-top: 1px solid rgba(255, 255, 255, 0.08);\n            padding-top: 40px;\n        }\n\n        .privacy-note {\n            font-size: 12px;\n            color: rgba(255, 255, 255, 0.4);\n            margin-bottom: 25px;\n        }\n\n        .ccint-btn-submit {\n            width: 100%;\n            background: #ffffff;\n            color: #000;\n            border: none;\n            border-radius: 20px;\n            padding: 22px;\n            font-size: 16px;\n            font-weight: 800;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 15px;\n            cursor: pointer;\n            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);\n        }\n\n        .ccint-btn-submit:hover {\n            background: #d4af37;\n            color: #fff;\n            transform: translateY(-5px);\n            box-shadow: 0 20px 40px rgba(212, 175, 55, 0.3);\n        }\n\n        .ccint-btn-submit svg {\n            width: 20px;\n            height: 20px;\n        }\n\n        @media (max-width: 768px) {\n            .ccint-reg-glass { padding: 30px; }\n            .ccint-grid { grid-template-columns: 1fr; }\n            .ccint-capture-group { justify-content: center; }\n            .ccint-reg-header h1 { font-size: 32px; }\n        }\n\n\n\n\n\n        \/* --- SION MULTI-STEP ARCHITECTURE --- *\/\n        .ccint-progress-container {\n            margin-bottom: 50px;\n            padding: 0 10px;\n        }\n\n        .ccint-progress-bar {\n            height: 6px;\n            background: rgba(255, 255, 255, 0.05);\n            border-radius: 10px;\n            position: relative;\n            overflow: hidden;\n            margin-bottom: 15px;\n        }\n\n        .ccint-progress-fill {\n            position: absolute;\n            top: 0;\n            left: 0;\n            height: 100%;\n            background: linear-gradient(90deg, #d4af37, #f0cc60);\n            width: 20%; \/* Inicial *\/\n            transition: width 0.6s cubic-bezier(0.19, 1, 0.22, 1);\n            box-shadow: 0 0 20px rgba(212, 175, 55, 0.4);\n        }\n\n        .ccint-progress-labels {\n            display: flex;\n            justify-content: space-between;\n        }\n\n        .ccint-prog-step {\n            font-size: 10px;\n            font-weight: 800;\n            color: rgba(255, 255, 255, 0.2);\n            text-transform: uppercase;\n            letter-spacing: 1px;\n            transition: color 0.4s;\n        }\n\n        .ccint-prog-step.active {\n            color: #d4af37;\n        }\n\n        \/* Step Logic *\/\n        .ccint-form-step {\n            display: none;\n            animation: sion-fade-in 0.5s ease forwards;\n        }\n\n        .ccint-form-step.active {\n            display: block;\n        }\n\n        @keyframes sion-fade-in {\n            from { opacity: 0; transform: translateY(10px); }\n            to { opacity: 1; transform: translateY(0); }\n        }\n\n        \/* Navigation Buttons *\/\n        .ccint-step-navigation {\n            display: flex;\n            gap: 20px;\n            margin-top: 40px;\n            padding-top: 30px;\n            border-top: 1px solid rgba(255, 255, 255, 0.08);\n        }\n\n        .ccint-btn-prev {\n            flex: 1;\n            background: rgba(255, 255, 255, 0.03);\n            border: 1px solid rgba(255, 255, 255, 0.1);\n            color: rgba(255, 255, 255, 0.6);\n            padding: 18px;\n            border-radius: 16px;\n            font-weight: 700;\n            cursor: pointer;\n            transition: 0.3s;\n        }\n\n        .ccint-btn-prev:hover {\n            background: rgba(255, 255, 255, 0.08);\n            color: #fff;\n        }\n\n        .ccint-btn-next {\n            flex: 2;\n            background: #fff;\n            color: #000;\n            border: none;\n            padding: 18px;\n            border-radius: 16px;\n            font-weight: 800;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 10px;\n            transition: 0.3s;\n        }\n\n        .ccint-btn-next:hover {\n            background: #d4af37;\n            color: #fff;\n            box-shadow: 0 10px 30px rgba(212, 175, 55, 0.3);\n        }\n\n        .ccint-btn-next svg { width: 18px; height: 18px; }\n\n        \/* Google Fast-Track Button *\/\n        .google-fast-track {\n            margin-bottom: 35px;\n            padding-bottom: 35px;\n            border-bottom: 1px dashed rgba(255, 255, 255, 0.1);\n            text-align: center;\n        }\n\n        .btn-google-auth {\n            background: rgba(255, 255, 255, 0.03);\n            color: #fff;\n            width: 100%;\n            padding: 18px;\n            border-radius: 18px;\n            font-weight: 700;\n            font-size: 15px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 12px;\n            cursor: not-allowed;\n            opacity: 0.6;\n            border: 1px solid rgba(255, 255, 255, 0.1);\n            transition: 0.3s;\n        }\n\n        .btn-google-auth:hover {\n            background: rgba(255, 255, 255, 0.08);\n            border-color: rgba(255, 255, 255, 0.2);\n        }\n\n        .google-hint {\n            display: block;\n            font-size: 10px;\n            color: rgba(255, 255, 255, 0.3);\n            margin-top: 10px;\n            font-weight: 600;\n        }\n\n        \/* --- REST OF STYLES --- *\/\n        .ccint-bridge-modal {\n            position: fixed;\n            inset: 0;\n            background: rgba(0,0,0,0.95);\n            backdrop-filter: blur(10px);\n            z-index: 9999;\n            display: none;\n            align-items: center;\n            justify-content: center;\n            padding: 20px;\n        }\n        .ccint-bridge-modal.active { display: flex; }\n        .bridge-content {\n            background: #0a0a0a;\n            border: 1px solid rgba(212,175,55,0.4);\n            border-radius: 40px;\n            padding: 50px;\n            max-width: 500px;\n            width: 100%;\n            text-align: center;\n            box-shadow: 0 40px 100px rgba(0,0,0,0.8);\n        }\n        .bridge-content h3 { color: #d4af37; margin-bottom: 20px; }\n        .qr-placeholder {\n            background: #fff;\n            padding: 15px;\n            border-radius: 20px;\n            display: inline-block;\n            margin-bottom: 30px;\n        }\n        .qr-placeholder img { display: block; width: 200px; height: 200px; }\n        .bridge-close {\n            margin-top: 30px;\n            background: transparent;\n            border: 1px solid rgba(255,255,255,0.2);\n            color: #fff;\n            padding: 10px 25px;\n            border-radius: 100px;\n            cursor: pointer;\n            font-size: 13px;\n        }\n    <\/style>\n\n    <!-- \ud83d\udd0d MODAL DE C\u00c1MARA EN VIVO (PC) -->\n    <div id=\"ccintCameraModal\" class=\"ccint-bridge-modal\">\n        <div class=\"bridge-content\" style=\"max-width: 650px;\">\n            <div class=\"ccint-reg-badge\">SION LIVE CAM<\/div>\n            <h3 id=\"camModalTitle\">Captura de Identidad<\/h3>\n            \n            <div class=\"live-stream-container\" style=\"position:relative; width:100%; aspect-ratio: 4\/3; background:#000; border-radius:20px; overflow:hidden; border:2px solid rgba(212,175,55,0.3); margin-bottom:20px;\">\n                <video id=\"sionLiveVideo\" autoplay playsinline style=\"width:100%; height:100%; object-fit:cover;\"><\/video>\n                <div id=\"camOverlay\" style=\"position:absolute; inset:0; border:2px dashed rgba(212,175,55,0.5); border-radius:50%; margin:20px; pointer-events:none; display:none;\"><\/div>\n            <\/div>\n\n            <div style=\"display:grid; grid-template-columns: 1fr 1fr; gap:15px;\">\n                <button class=\"bridge-close\" onclick=\"window.SionBridge.closeCamModal()\" style=\"width: 100%; margin-top:0;\">CANCELAR<\/button>\n                <button id=\"shutterBtn\" style=\"background:#fff; color:#000; border:none; padding:15px; border-radius:100px; font-weight:800; cursor:pointer; font-size:13px;\">TOMAR FOTO<\/button>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <!-- \ud83d\udcf2 MODAL DE QR (BRIDGE) -->\n    <div id=\"ccintBridgeModal\" class=\"ccint-bridge-modal\">\n        <div class=\"bridge-content\">\n            <div class=\"ccint-reg-badge\">SION BRIDGE<\/div>\n            <h3>Protocolo de Bio-Identidad<\/h3>\n            \n            <div class=\"protocol-grid\" style=\"display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin: 25px 0;\">\n                <div class=\"protocol-item\" style=\"background: rgba(255,255,255,0.03); padding: 15px; border-radius: 20px; border: 1px solid rgba(212,175,55,0.2);\">\n                    <div style=\"font-size: 20px; margin-bottom: 5px;\">\ud83e\uddf1<\/div>\n                    <div style=\"font-size: 10px; font-weight: 800; color: #d4af37;\">FONDO LISO<\/div>\n                    <div style=\"font-size: 9px; opacity: 0.5;\">Use una pared clara<\/div>\n                <\/div>\n                <div class=\"protocol-item\" style=\"background: rgba(255,255,255,0.03); padding: 15px; border-radius: 20px; border: 1px solid rgba(212,175,55,0.2);\">\n                    <div style=\"font-size: 20px; margin-bottom: 5px;\">\ud83d\udca1<\/div>\n                    <div style=\"font-size: 10px; font-weight: 800; color: #d4af37;\">LUZ FRONTAL<\/div>\n                    <div style=\"font-size: 9px; opacity: 0.5;\">Evite sombras<\/div>\n                <\/div>\n                <div class=\"protocol-item\" style=\"background: rgba(255,255,255,0.03); padding: 15px; border-radius: 20px; border: 1px solid rgba(212,175,55,0.2);\">\n                    <div style=\"font-size: 20px; margin-bottom: 5px;\">\ud83d\udd76\ufe0f<\/div>\n                    <div style=\"font-size: 10px; font-weight: 800; color: #d4af37;\">DESCAMUFLAJE<\/div>\n                    <div style=\"font-size: 9px; opacity: 0.5;\">Sin anteojos\/gorra<\/div>\n                <\/div>\n                <div class=\"protocol-item\" style=\"background: rgba(255,255,255,0.03); padding: 15px; border-radius: 20px; border: 1px solid rgba(212,175,55,0.2);\">\n                    <div style=\"font-size: 20px; margin-bottom: 5px;\">\ud83d\udc64<\/div>\n                    <div style=\"font-size: 10px; font-weight: 800; color: #d4af37;\">ENFOQUE<\/div>\n                    <div style=\"font-size: 9px; opacity: 0.5;\">Rostro centrado<\/div>\n                <\/div>\n            <\/div>\n\n            <div class=\"qr-placeholder\" style=\"margin-bottom: 15px;\">\n                <img decoding=\"async\" id=\"bridgeQR\" src=\"\" alt=\"Bridge QR\">\n            <\/div>\n            <div id=\"bridgePollStatus\" style=\"font-size: 14px; color: #d4af37; min-height: 40px;\">Esperando conexi\u00f3n m\u00f3vil...<\/div>\n            <button class=\"bridge-close\" onclick=\"window.SionBridge.closeModal()\" style=\"width: 100%; border-color: rgba(255,255,255,0.05); opacity: 0.5;\">DESCARTAR OPERACI\u00d3N<\/button>\n        <\/div>\n    <\/div>\n\n    <!-- SION FORGE V5.0: Captura H\u00edbrida (IA movida al Panel Administrativo) -->\n    <script>\n        window.SionBridge = {\n            ajaxurl: \"\/wp-admin\/admin-ajax.php\",\n            currentOptions: null,\n            pollInterval: null,\n            stream: null,\n            currentStep: 1,\n\n            \/\/ \ud83d\udeb6 NAVEGACI\u00d3N MULTI-PASO\n            nextStep: function(step) {\n                \/\/ Validaci\u00f3n b\u00e1sica antes de avanzar\n                const currentContainer = document.querySelector(`.ccint-form-step[data-step=\"${step}\"]`);\n                const inputs = currentContainer.querySelectorAll('input[required], select[required]');\n                let valid = true;\n                \n                inputs.forEach(input => {\n                    if (!input.value) {\n                        input.style.borderColor = '#ef4444';\n                        valid = false;\n                    } else {\n                        input.style.borderColor = 'rgba(255,255,255,0.1)';\n                    }\n                });\n\n                if (!valid) {\n                    alert(\"Por favor, complete los campos obligatorios antes de continuar.\");\n                    return;\n                }\n\n                \/\/ Avanzar paso\n                this.currentStep = step + 1;\n                this.updateStepUI();\n            },\n\n            \/\/ \ud83e\udd85 GOOGLE IDENTITY ENGINE\n            initGoogle: function() {\n                if (typeof google === 'undefined') return;\n                \n                google.accounts.id.initialize({\n                    client_id: \"95172625231-571o06c6boo4k9uapclghfqthaclhdbq.apps.googleusercontent.com\",\n                    callback: window.SionBridge.handleGoogleResponse\n                });\n                \n                google.accounts.id.renderButton(\n                    document.getElementById(\"google_btn_container\"),\n                    { theme: \"outline\", size: \"large\", width: \"100%\", text: \"continue_with\", shape: \"pill\" }\n                );\n            },\n\n            handleGoogleResponse: function(response) {\n                console.log(\"SION LOG: Token de Google Recibido.\");\n                \n                const googleHint = document.querySelector('.google-hint');\n                if (googleHint) googleHint.innerHTML = \"\u231b Verificando identidad en el Comando...\";\n\n                \/\/ Enviar al servidor para decodificar y validar\n                const params = new URLSearchParams();\n                params.append('action', 'ccint_google_verify');\n                params.append('credential', response.credential);\n\n                fetch( SionBridge.ajaxurl, {\n                    method: 'POST',\n                    headers: { \n                        'Content-Type': 'application\/x-www-form-urlencoded',\n                        'X-Requested-With': 'XMLHttpRequest'\n                    },\n                    body: params.toString()\n                })\n                .then(res => {\n                    console.log(\"SION LOG: Respuesta del servidor recibida.\");\n                    return res.json();\n                })\n                .then(data => {\n                    if (data.success) {\n                        console.log(\"SION LOG: Verificaci\u00f3n exitosa.\", data.data);\n                        \n                        \/\/ Autocompletar campos del Paso 1\n                        const fName = document.querySelector('input[name=\"nombre_completo\"]');\n                        const fEmail = document.querySelector('input[name=\"email\"]');\n                        const fUser = document.querySelector('input[name=\"user_login\"]');\n\n                        if (fName) fName.value = data.data.name;\n                        if (fEmail) fEmail.value = data.data.email;\n                        \n                        \/\/ Generar sugerencia de usuario basada en el email\n                        const userSuggest = data.data.email.split('@')[0].toLowerCase().replace(\/[^a-z0-9]\/g, '');\n                        if (fUser) fUser.value = userSuggest;\n\n                        if (googleHint) googleHint.innerHTML = \"\u2705 Identidad Verificada: \" + data.data.name;\n                        \n                        alert(\"\u00a1Identidad Google Verificada! Hemos autocompletado tu expediente.\");\n                        \n                        \/\/ Avanzar autom\u00e1ticamente al paso 2\n                        setTimeout(() => window.SionBridge.nextStep(1), 500);\n                    } else {\n                        console.error(\"SION ERROR: \" + data.data);\n                        alert(\"Error de validaci\u00f3n: \" + data.data);\n                        if (googleHint) googleHint.innerHTML = \"\u274c Error: \" + data.data;\n                    }\n                })\n                .catch(err => {\n                    console.error(\"SION BRIDGE CRITICAL ERROR:\", err);\n                    alert(\"Error cr\u00edtico de conexi\u00f3n con el Hub.\");\n                });\n            },\n\n            prevStep: function(step) {\n                this.currentStep = step - 1;\n                this.updateStepUI();\n            },\n\n            updateStepUI: function() {\n                \/\/ Ocultar todos los pasos\n                document.querySelectorAll('.ccint-form-step').forEach(step => {\n                    step.classList.remove('active');\n                });\n\n                \/\/ Mostrar paso actual\n                const target = document.querySelector(`.ccint-form-step[data-step=\"${this.currentStep}\"]`);\n                if (target) {\n                    target.classList.add('active');\n                    \/\/ Scroll suave al inicio del formulario\n                    document.getElementById('ccint-registration-steps').scrollIntoView({ behavior: 'smooth', block: 'start' });\n                }\n\n                \/\/ Actualizar Barra de Progreso\n                const progress = (this.currentStep \/ 5) * 100;\n                document.getElementById('sion-progress-fill').style.width = `${progress}%`;\n\n                \/\/ Actualizar etiquetas\n                document.querySelectorAll('.ccint-prog-step').forEach((label, index) => {\n                    if (index < this.currentStep) {\n                        label.classList.add('active');\n                    } else {\n                        label.classList.remove('active');\n                    }\n                });\n            },\n            \n            \/\/ \ud83e\udde0 INTELIGENCIA DE DISPOSITIVO (Si\u00f3n Sense v2.0)\n            isMobile: function() {\n                const userAgent = navigator.userAgent || navigator.vendor || window.opera;\n                const isBasicMobile = \/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini\/i.test(userAgent);\n                \/\/ Detecci\u00f3n especial para iPads modernos que se identifican como Macintosh\n                const isIPadOS = (navigator.maxTouchPoints > 0 && \/Macintosh\/.test(userAgent));\n                return isBasicMobile || isIPadOS;\n            },\n\n            \/\/ \ud83d\udcf8 SION FORGE V5.0: Procesamiento de Imagen (Optimizado para Memoria M\u00f3vil)\n            processPortrait: async function(imageUrl, callback) {\n                const status = document.getElementById('bridgePollStatus');\n                if(status) status.innerHTML = \"<span style='color:#d4af37;'>\ud83d\udcf8 SION CAPTURE: Encuadrando...<\/span>\";\n                \n                const img = new Image();\n                img.onload = () => {\n                    const canvas = document.createElement('canvas');\n                    const ctx = canvas.getContext('2d');\n                    canvas.width = 800; canvas.height = 800;\n                    ctx.fillStyle = '#f3f4f6';\n                    ctx.fillRect(0, 0, 800, 800);\n\n                    const side = Math.min(img.width, img.height);\n                    const startX = (img.width - side) \/ 2;\n                    const startY = (img.height - side) \/ 2;\n                    ctx.drawImage(img, startX, startY, side, side, 0, 0, 800, 800);\n                    \n                    const vignette = ctx.createRadialGradient(400, 400, 250, 400, 400, 450);\n                    vignette.addColorStop(0, 'rgba(0,0,0,0)');\n                    vignette.addColorStop(1, 'rgba(243,244,246,0.8)');\n                    ctx.fillStyle = vignette;\n                    ctx.fillRect(0, 0, 800, 800);\n                    \n                    callback(canvas.toDataURL('image\/jpeg', 0.8));\n                };\n                img.src = imageUrl;\n            },\n\n            \/\/ \ud83d\udddc\ufe0f Compresor Gen\u00e9rico para DNI (Evita env\u00edos de 50MB)\n            compressDocument: function(imageUrl, callback) {\n                const img = new Image();\n                img.onload = () => {\n                    const canvas = document.createElement('canvas');\n                    const ctx = canvas.getContext('2d');\n                    \n                    \/\/ Tama\u00f1o m\u00e1ximo 1200px para DNI\n                    const MAX_WIDTH = 1200;\n                    const MAX_HEIGHT = 1200;\n                    let width = img.width;\n                    let height = img.height;\n\n                    if (width > height) {\n                        if (width > MAX_WIDTH) {\n                            height *= MAX_WIDTH \/ width;\n                            width = MAX_WIDTH;\n                        }\n                    } else {\n                        if (height > MAX_HEIGHT) {\n                            width *= MAX_HEIGHT \/ height;\n                            height = MAX_HEIGHT;\n                        }\n                    }\n\n                    canvas.width = width;\n                    canvas.height = height;\n                    ctx.drawImage(img, 0, 0, width, height);\n                    \n                    callback(canvas.toDataURL('image\/jpeg', 0.8));\n                };\n                img.src = imageUrl;\n            },\n\n            applyImage: function(b64, previewId, hiddenId, slotElement) {\n                const preview = document.getElementById(previewId);\n                const hidden = document.getElementById(hiddenId);\n                preview.src = b64;\n                hidden.value = b64;\n                slotElement.classList.add('has-file');\n                slotElement.style.borderColor = '#d4af37';\n                slotElement.style.boxShadow = '0 0 30px rgba(212,175,55,0.4)';\n            },\n\n            \/\/ \ud83c\udfdb\ufe0f MANEJO DE CLICKS EN SLOTS (Disparador Inteligente)\n            handleInputClick: function(e, options) {\n                this.currentOptions = options;\n                \n                if (!this.isMobile()) {\n                    \/\/ PC: Prevenimos el explorador de archivos nativo y abrimos nuestra c\u00e1mara web\n                    if (e) e.preventDefault();\n                    console.log(\"SION LOG: PC detectado. Bloqueando input nativo e iniciando flujo de webcam...\");\n                    this.openCamModal(options);\n                } else {\n                    \/\/ M\u00d3VIL\/TABLET: No hacemos preventDefault. Dejamos que el sistema operativo abra la c\u00e1mara\/galer\u00eda.\n                    console.log(\"SION LOG: Dispositivo m\u00f3vil detectado. Usando c\u00e1mara nativa del SO...\");\n                }\n            },\n\n            \/\/ \ud83d\udd0d LIVE CAM MODAL (PC)\n            openCamModal: async function(options) {\n                const modal = document.getElementById('ccintCameraModal');\n                const video = document.getElementById('sionLiveVideo');\n                const overlay = document.getElementById('camOverlay');\n                const title = document.getElementById('camModalTitle');\n                \n                title.innerText = options.previewId.includes('perfil') ? 'Retrato Institucional' : 'Captura de Documento';\n                overlay.style.display = options.previewId.includes('perfil') ? 'block' : 'none';\n                \n                modal.classList.add('active');\n\n                try {\n                    \/\/ Mostrar feedback de carga mientras el navegador solicita el permiso\n                    title.innerText = \"Solicitando Acceso...\";\n                    \n                    this.stream = await navigator.mediaDevices.getUserMedia({ \n                        video: { width: 1280, height: 720, facingMode: \"user\" } \n                    });\n                    \n                    title.innerText = options.previewId.includes('perfil') ? 'Retrato Institucional' : 'Captura de Documento';\n                    video.srcObject = this.stream;\n                    \n                    document.getElementById('shutterBtn').onclick = () => this.takeSnapshot();\n                } catch (err) {\n                    console.error(\"SION ERROR: Acceso a c\u00e1mara denegado o no disponible.\", err);\n                    alert(\"No se pudo acceder a la c\u00e1mara. Por favor, aseg\u00farese de otorgar los permisos o use el Bridge QR.\");\n                    this.closeCamModal();\n                    \/\/ Fallback a QR si no hay webcam o se deneg\u00f3 el permiso\n                    this.openBridge(options);\n                }\n            },\n\n            takeSnapshot: function() {\n                const video = document.getElementById('sionLiveVideo');\n                const canvas = document.createElement('canvas');\n                canvas.width = video.videoWidth;\n                canvas.height = video.videoHeight;\n                canvas.getContext('2d').drawImage(video, 0, 0);\n                \n                const b64 = canvas.toDataURL('image\/jpeg', 0.9);\n                \n                if(this.currentOptions.previewId.includes('perfil')) {\n                    this.processPortrait(b64, (processed) => {\n                        this.applyImage(processed, this.currentOptions.previewId, this.currentOptions.hiddenId, document.getElementById(this.currentOptions.previewId).parentElement);\n                    });\n                } else {\n                    this.applyImage(b64, this.currentOptions.previewId, this.currentOptions.hiddenId, document.getElementById(this.currentOptions.previewId).parentElement);\n                }\n                \n                this.closeCamModal();\n            },\n\n            closeCamModal: function() {\n                document.getElementById('ccintCameraModal').classList.remove('active');\n                if (this.stream) {\n                    this.stream.getTracks().forEach(track => track.stop());\n                }\n            },\n\n            \/\/ \ud83d\udcf2 QR BRIDGE (Para cuando el PC no tiene c\u00e1mara o prefieren el m\u00f3vil)\n            openBridge: function(options) {\n                this.currentOptions = options;\n                const sessionId = Math.floor(Date.now() \/ 1000);\n                const type = options.previewId.includes('perfil') ? 'portrait' : 'document';\n                const bridgeUrl = 'https:\/\/ccinternacional.com\/capellania\/registro-capellan\/';\n                \n                const finalUrl = new URL(bridgeUrl);\n                finalUrl.searchParams.set('mode', 'bridge');\n                finalUrl.searchParams.set('session_id', sessionId);\n                finalUrl.searchParams.set('type', type);\n\n                document.getElementById('bridgeQR').src = 'https:\/\/api.qrserver.com\/v1\/create-qr-code\/?size=300x300&data=' + encodeURIComponent(finalUrl.toString());\n                document.getElementById('ccintBridgeModal').classList.add('active');\n                this.startPolling(sessionId);\n            },\n\n            startPolling: function(sessionId) {\n                const status = document.getElementById('bridgePollStatus');\n                const productionAjaxUrl = 'https:\/\/ccinternacional.com\/capellania\/wp-admin\/admin-ajax.php';\n\n                status.innerHTML = \"\ud83d\udef0\ufe0f Radar SION Activo...<br><span style='font-size:10px; opacity:0.5;'>Canal: \" + sessionId + \"<\/span>\";\n\n                this.pollInterval = setInterval(() => {\n                    const oldScript = document.getElementById('sion_probe_script');\n                    if(oldScript) oldScript.remove();\n\n                    window.sion_receive = (data) => {\n                        if (data) {\n                            clearInterval(this.pollInterval);\n                            if(this.currentOptions.previewId.includes('perfil')) {\n                                this.processPortrait(data, (processed) => {\n                                    this.applyImage(processed, this.currentOptions.previewId, this.currentOptions.hiddenId, document.getElementById(this.currentOptions.previewId).parentElement);\n                                });\n                            } else {\n                                this.applyImage(data, this.currentOptions.previewId, this.currentOptions.hiddenId, document.getElementById(this.currentOptions.previewId).parentElement);\n                            }\n                            this.closeModal();\n                        }\n                    };\n\n                    const script = document.createElement('script');\n                    script.id = 'sion_probe_script';\n                    script.src = productionAjaxUrl + '?action=ccint_bridge_probe&session_id=' + sessionId + '&callback=sion_receive&v=' + Date.now();\n                    document.body.appendChild(script);\n                }, 3000);\n            },\n\n            handleNative: function(input, previewId, hiddenId) {\n                if (input.files && input.files[0]) {\n                    const file = input.files[0];\n                    \/\/ Usar ObjectURL previene cargar todo el archivo en la RAM del navegador (Crash en m\u00f3viles con c\u00e1maras de alta resoluci\u00f3n)\n                    const objectUrl = URL.createObjectURL(file);\n                    \n                    if(previewId.includes('perfil')) {\n                        this.processPortrait(objectUrl, (processedB64) => {\n                            this.applyImage(processedB64, previewId, hiddenId, input.parentElement);\n                            URL.revokeObjectURL(objectUrl);\n                        });\n                    } else {\n                        this.compressDocument(objectUrl, (compressedB64) => {\n                            this.applyImage(compressedB64, previewId, hiddenId, input.parentElement);\n                            URL.revokeObjectURL(objectUrl);\n                        });\n                    }\n                }\n            },\n\n            closeModal: function() {\n                document.getElementById('ccintBridgeModal').classList.remove('active');\n                clearInterval(this.pollInterval);\n            }\n        };\n\n        \/\/ Inicializar Google al cargar\n        document.addEventListener('DOMContentLoaded', function() {\n            if (window.SionBridge && typeof window.SionBridge.initGoogle === 'function') {\n                \/\/ Esperar un momento a que la librer\u00eda cargue si es necesario\n                setTimeout(() => window.SionBridge.initGoogle(), 1000);\n            }\n        });\n    <\/script>\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-504","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/pages\/504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/comments?post=504"}],"version-history":[{"count":0,"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/pages\/504\/revisions"}],"wp:attachment":[{"href":"https:\/\/ccinternacional.com\/capellania\/wp-json\/wp\/v2\/media?parent=504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}