{"id":80,"date":"2026-04-08T01:12:15","date_gmt":"2026-04-08T01:12:15","guid":{"rendered":"https:\/\/elviajeroast.com\/?p=80"},"modified":"2026-04-08T01:44:58","modified_gmt":"2026-04-08T01:44:58","slug":"80","status":"publish","type":"post","link":"https:\/\/elviajeroast.com\/?p=80","title":{"rendered":""},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"es\">\n<head>\n  <meta charset=\"UTF-8\" \/>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" \/>\n  <title>Or\u00e1culo Sagrado | El Viajero AST<\/title>\n\n  <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n  <link\n    rel=\"stylesheet\"\n    href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\"\n  \/>\n\n  <style>\n    .step {\n      display: none;\n      opacity: 0;\n      transition: opacity 0.5s ease-in-out;\n    }\n\n    .step.active {\n      display: block;\n      opacity: 1;\n    }\n\n    .bg-stars {\n      background: radial-gradient(circle at 50% 50%, #1e1b4b 0%, #020617 100%);\n    }\n  <\/style>\n<\/head>\n<body class=\"bg-[#020617]\">\n\n  <div id=\"oraculo-app\" class=\"min-h-screen bg-[#020617] text-slate-200 font-light relative bg-stars overflow-x-hidden font-sans\">\n    <div class=\"relative z-10 max-w-5xl mx-auto px-4 py-12 flex flex-col items-center\">\n\n      <div class=\"flex flex-col items-center mb-12\">\n        <i class=\"fa-solid fa-moon text-indigo-400 text-4xl mb-3 animate-pulse\"><\/i>\n        <p class=\"text-[10px] tracking-[0.5em] uppercase text-indigo-400 font-bold text-center\">\n          Or\u00e1culo Sagrado | El Viajero AST\n        <\/p>\n      <\/div>\n\n      <div id=\"step-portal\" class=\"step active text-center space-y-10 max-w-3xl\">\n        <h1 class=\"text-4xl md:text-6xl font-serif italic text-white leading-tight\">\n          Tu destino es una <br \/>\n          <span class=\"text-indigo-400 font-bold underline decoration-indigo-500\/20\">\n            resonancia sagrada\n          <\/span>.\n        <\/h1>\n\n        <div class=\"bg-white\/5 border border-white\/10 p-8 rounded-3xl backdrop-blur-xl text-left space-y-4 shadow-2xl\">\n          <p class=\"text-slate-300 leading-relaxed font-light italic text-base\">\n            Viajar no es simplemente trasladar el cuerpo; es sincronizar tu campo energ\u00e9tico con la vibraci\u00f3n de la Tierra.\n            Este or\u00e1culo decodifica tu configuraci\u00f3n estelar para encontrar la coordenada exacta donde tu alma alcanzar\u00e1\n            su m\u00e1ximo potencial evolutivo.\n          <\/p>\n        <\/div>\n\n        <button\n          onclick=\"nextStep('step-zodiac')\"\n          class=\"px-10 py-5 border border-indigo-500\/30 rounded-full hover:bg-indigo-500\/10 transition-all uppercase tracking-widest text-[11px] font-bold shadow-lg shadow-indigo-500\/10\"\n        >\n          Iniciar Sincronizaci\u00f3n <i class=\"fa-solid fa-arrow-right ml-2\"><\/i>\n        <\/button>\n      <\/div>\n\n      <div id=\"step-zodiac\" class=\"step w-full max-w-3xl space-y-10\">\n        <h3 class=\"text-2xl font-serif text-center text-white italic\">\u00bfBajo qu\u00e9 astro naciste?<\/h3>\n        <div id=\"zodiac-grid\" class=\"grid grid-cols-3 md:grid-cols-4 gap-4\"><\/div>\n      <\/div>\n\n      <div id=\"step-ritual\" class=\"step w-full max-w-2xl space-y-8 text-center text-slate-300\">\n        <p class=\"text-[10px] text-indigo-500 uppercase tracking-widest font-bold\" id=\"question-counter\">Fase 1 de 5<\/p>\n        <div class=\"h-1 bg-slate-800 rounded-full overflow-hidden mb-6\">\n          <div id=\"progress-bar\" class=\"h-full bg-indigo-500 transition-all duration-500\" style=\"width: 20%\"><\/div>\n        <\/div>\n        <h3 id=\"question-text\" class=\"text-2xl font-serif text-white leading-snug italic\"><\/h3>\n        <div id=\"options-grid\" class=\"grid gap-4 mt-6\"><\/div>\n      <\/div>\n\n      <div id=\"step-covenant\" class=\"step w-full max-w-md space-y-8\">\n        <div class=\"text-center space-y-3\">\n          <h3 class=\"text-3xl font-serif text-white italic\">Sella tu Alianza<\/h3>\n          <p class=\"text-slate-500 italic text-sm\">Vincula tu energ\u00eda f\u00edsica para materializar el destino.<\/p>\n        <\/div>\n\n        <div id=\"db-error\" class=\"hidden bg-red-900\/50 text-red-200 p-3 rounded-xl text-xs text-center border border-red-500\"><\/div>\n\n        <form id=\"lead-form\" class=\"space-y-4\">\n          <input id=\"f-name\" required placeholder=\"Tu nombre en este plano\" class=\"w-full bg-slate-900\/60 border border-slate-800 rounded-xl px-5 py-4 focus:border-indigo-500 outline-none text-white transition-all\" \/>\n          <input id=\"f-email\" required type=\"email\" placeholder=\"Email de contacto\" class=\"w-full bg-slate-900\/60 border border-slate-800 rounded-xl px-5 py-4 focus:border-indigo-500 outline-none text-white transition-all\" \/>\n          <input id=\"f-phone\" required type=\"tel\" placeholder=\"WhatsApp (Ej. 521...)\" class=\"w-full bg-slate-900\/60 border border-slate-800 rounded-xl px-5 py-4 focus:border-indigo-500 outline-none text-white transition-all\" \/>\n\n          <button\n            type=\"submit\"\n            id=\"btn-submit\"\n            class=\"w-full py-4 bg-indigo-600 hover:bg-indigo-500 text-white rounded-xl font-bold uppercase tracking-widest text-[10px] transition-all\"\n          >\n            Revelar Mi Destino <i class=\"fa-solid fa-bolt ml-2\"><\/i>\n          <\/button>\n        <\/form>\n      <\/div>\n\n      <div id=\"step-manifestation\" class=\"step w-full space-y-16\">\n        <div class=\"text-center space-y-4\">\n          <h2 class=\"text-5xl md:text-7xl font-serif italic text-white\">Revelaci\u00f3n Sagrada<\/h2>\n          <p id=\"res-subtitle\" class=\"text-indigo-400 tracking-[0.4em] uppercase text-[10px] font-bold\"><\/p>\n        <\/div>\n\n        <div class=\"grid md:grid-cols-2 gap-10\">\n          <div class=\"bg-slate-900\/40 border border-white\/5 rounded-3xl overflow-hidden shadow-2xl flex flex-col\">\n            <div class=\"h-64 overflow-hidden relative\">\n              <img id=\"res-n-img\" class=\"w-full h-full object-cover opacity-80\" alt=\"Destino nacional\" \/>\n              <div class=\"absolute top-4 left-4 bg-indigo-600\/80 px-3 py-1 rounded-full text-[9px] uppercase font-bold text-white\">\n                Espejo Nacional\n              <\/div>\n            <\/div>\n            <div class=\"p-8 space-y-4 flex-grow text-left\">\n              <h4 id=\"res-n-name\" class=\"text-3xl font-serif text-white\"><\/h4>\n              <p id=\"res-n-hist\" class=\"text-slate-400 text-sm italic\"><\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"bg-slate-900\/40 border border-white\/5 rounded-3xl overflow-hidden shadow-2xl flex flex-col\">\n            <div class=\"h-64 overflow-hidden relative\">\n              <img id=\"res-g-img\" class=\"w-full h-full object-cover opacity-80\" alt=\"Destino global\" \/>\n              <div class=\"absolute top-4 left-4 bg-indigo-600\/80 px-3 py-1 rounded-full text-[9px] uppercase font-bold text-white\">\n                Origen Global\n              <\/div>\n            <\/div>\n            <div class=\"p-8 space-y-4 flex-grow text-left\">\n              <h4 id=\"res-g-name\" class=\"text-3xl font-serif text-white\"><\/h4>\n              <p id=\"res-g-hist\" class=\"text-slate-400 text-sm italic\"><\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"max-w-2xl mx-auto bg-white\/5 p-10 rounded-3xl border border-white\/10 text-center space-y-6\">\n          <h3 id=\"res-call\" class=\"text-2xl font-serif text-white italic\"><\/h3>\n          <p class=\"text-slate-400 text-sm\">Los expertos de El Viajero AST materializar\u00e1n tu llegada.<\/p>\n          <a\n            id=\"btn-whatsapp\"\n            href=\"#\"\n            target=\"_blank\"\n            class=\"px-10 py-4 bg-white text-black rounded-full font-bold uppercase tracking-widest text-[10px] inline-block hover:bg-slate-200\"\n          >\n            Contactar Gu\u00eda Astral <i class=\"fa-brands fa-whatsapp ml-2\"><\/i>\n          <\/a>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <button\n      onclick=\"document.getElementById('pin-modal').classList.remove('hidden')\"\n      class=\"fixed bottom-6 right-6 z-50 p-4 bg-slate-900 border border-slate-800 rounded-full text-indigo-400 shadow-2xl\"\n    >\n      <i class=\"fa-solid fa-database\"><\/i>\n    <\/button>\n\n    <div id=\"pin-modal\" class=\"hidden fixed inset-0 z-[70] bg-[#020617]\/95 backdrop-blur-xl flex items-center justify-center p-6\">\n      <div class=\"bg-slate-900 p-8 rounded-3xl w-full max-w-sm text-center space-y-6 relative border border-slate-800\">\n        <button onclick=\"document.getElementById('pin-modal').classList.add('hidden')\" class=\"absolute top-4 right-4 text-slate-500\">\n          <i class=\"fa-solid fa-x\"><\/i>\n        <\/button>\n        <i class=\"fa-solid fa-lock text-3xl text-indigo-500\"><\/i>\n        <h3 class=\"text-xl font-serif text-white\">Acceso Admin<\/h3>\n        <input id=\"admin-pin\" type=\"password\" maxlength=\"4\" class=\"w-full bg-slate-950 border border-slate-800 rounded-xl px-4 py-3 text-center text-xl tracking-[0.5em] text-white outline-none\" \/>\n        <p id=\"pin-err\" class=\"hidden text-red-400 text-xs\">PIN incorrecto<\/p>\n        <button onclick=\"checkPin()\" class=\"w-full py-3 bg-indigo-600 text-white rounded-xl text-xs font-bold uppercase\">\n          Desbloquear\n        <\/button>\n      <\/div>\n    <\/div>\n\n    <div id=\"admin-panel\" class=\"hidden fixed inset-0 z-[60] bg-[#020617]\/98 backdrop-blur-2xl p-8 overflow-y-auto\">\n      <div class=\"max-w-6xl mx-auto space-y-8\">\n        <div class=\"flex justify-between items-center border-b border-white\/10 pb-6\">\n          <h2 class=\"text-2xl font-serif text-white\">\n            <i class=\"fa-solid fa-ghost text-indigo-500 mr-2\"><\/i> Registro de Almas\n          <\/h2>\n          <div class=\"flex gap-3\">\n            <button onclick=\"downloadCSV()\" class=\"px-5 py-2 bg-emerald-600 text-white rounded-lg text-[10px] font-bold uppercase\">\n              <i class=\"fa-solid fa-file-excel mr-2\"><\/i> Exportar\n            <\/button>\n            <button onclick=\"document.getElementById('admin-panel').classList.add('hidden')\" class=\"p-2 bg-slate-800 rounded-full text-white\">\n              <i class=\"fa-solid fa-x\"><\/i>\n            <\/button>\n          <\/div>\n        <\/div>\n        <div id=\"leads-container\" class=\"grid gap-4\"><\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <script type=\"module\">\n    import { initializeApp } from \"https:\/\/www.gstatic.com\/firebasejs\/10.8.0\/firebase-app.js\";\n    import { getAuth, signInAnonymously } from \"https:\/\/www.gstatic.com\/firebasejs\/10.8.0\/firebase-auth.js\";\n    import {\n      getFirestore,\n      collection,\n      addDoc,\n      getDocs,\n      query,\n      orderBy\n    } from \"https:\/\/www.gstatic.com\/firebasejs\/10.8.0\/firebase-firestore.js\";\n\n    const WHATSAPP_NUMBER = \"5213300000000\";\n    const ADMIN_PIN = \"7777\";\n\n    const firebaseConfig = {\n      apiKey: \"AIzaSyDeKhgX5JeIbOTjrpU5bO0pCMeXmdw5Zo0\",\n      authDomain: \"ast-leads.firebaseapp.com\",\n      projectId: \"ast-leads\",\n      storageBucket: \"ast-leads.firebasestorage.app\",\n      messagingSenderId: \"216711627954\",\n      appId: \"1:216711627954:web:1d7747aa43507c6332f5ab\",\n      measurementId: \"G-ZQZ0J8GWQP\"\n    };\n\n    let app = null;\n    let auth = null;\n    let db = null;\n    let firebaseReady = false;\n\n    try {\n      app = initializeApp(firebaseConfig);\n      auth = getAuth(app);\n      db = getFirestore(app);\n\n      await signInAnonymously(auth);\n      firebaseReady = true;\n      console.log(\"Firebase conectado correctamente\");\n    } catch (e) {\n      console.warn(\"Firebase no disponible, se usar\u00e1 modo local:\", e);\n      firebaseReady = false;\n      db = null;\n    }\n\n    const state = {\n      sign: null,\n      trace: [],\n      answersText: [],\n      leads: []\n    };\n\n    const signs = [\n      { n: \"Aries\", e: \"ignis\" },\n      { n: \"Tauro\", e: \"terra\" },\n      { n: \"G\u00e9minis\", e: \"aer\" },\n      { n: \"C\u00e1ncer\", e: \"aqua\" },\n      { n: \"Leo\", e: \"ignis\" },\n      { n: \"Virgo\", e: \"terra\" },\n      { n: \"Libra\", e: \"aer\" },\n      { n: \"Escorpio\", e: \"aqua\" },\n      { n: \"Sagitario\", e: \"ignis\" },\n      { n: \"Capricornio\", e: \"terra\" },\n      { n: \"Acuario\", e: \"aer\" },\n      { n: \"Piscis\", e: \"aqua\" }\n    ];\n\n    const questions = [\n      {\n        q: \"\u00bfQu\u00e9 fuerza domina tu intuici\u00f3n hoy?\",\n        o: [\n          { l: \"Fuego y Acci\u00f3n\", v: \"ignis\" },\n          { l: \"Tierra y Ra\u00edces\", v: \"terra\" },\n          { l: \"Aire y Libertad\", v: \"aer\" },\n          { l: \"Agua y Calma\", v: \"aqua\" }\n        ]\n      },\n      {\n        q: \"\u00bfEn qu\u00e9 paisaje on\u00edrico despertar\u00edas?\",\n        o: [\n          { l: \"Metr\u00f3polis Ne\u00f3n\", v: \"ignis\" },\n          { l: \"Ruinas Sagradas\", v: \"terra\" },\n          { l: \"Cumbres de Viento\", v: \"aer\" },\n          { l: \"Bah\u00eda de Cristal\", v: \"aqua\" }\n        ]\n      },\n      {\n        q: \"\u00bfQu\u00e9 alimento busca tu esp\u00edritu?\",\n        o: [\n          { l: \"Adrenalina\", v: \"ignis\" },\n          { l: \"Sabidur\u00eda\", v: \"terra\" },\n          { l: \"Silencio\", v: \"aer\" },\n          { l: \"Renovaci\u00f3n\", v: \"aqua\" }\n        ]\n      },\n      {\n        q: \"\u00bfC\u00f3mo transitas tu camino sagrado?\",\n        o: [\n          { l: \"Velocidad\", v: \"ignis\" },\n          { l: \"Descalzo\", v: \"terra\" },\n          { l: \"Volando\", v: \"aer\" },\n          { l: \"Navegando\", v: \"aqua\" }\n        ]\n      },\n      {\n        q: \"\u00bfQu\u00e9 deseas transmutar hoy?\",\n        o: [\n          { l: \"Monoton\u00eda\", v: \"ignis\" },\n          { l: \"Incertidumbre\", v: \"terra\" },\n          { l: \"Ruido Mental\", v: \"aer\" },\n          { l: \"Estr\u00e9s\", v: \"aqua\" }\n        ]\n      }\n    ];\n\n    const atlas = {\n      ignis: {\n        vibe: \"Fuego\",\n        n: [\n          {\n            name: \"CDMX: El Ombligo Lunar\",\n            h: \"Energ\u00eda volc\u00e1nica y transformaci\u00f3n total.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1518105779142-d975f22f1b0a?w=800\"\n          },\n          {\n            name: \"Guanajuato: Laberinto\",\n            h: \"Fuego hist\u00f3rico y rebelde bajo tierra.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1543013309-0d1f4edeb868?w=800\"\n          }\n        ],\n        g: [\n          {\n            name: \"Madrid\",\n            h: \"Pasi\u00f3n y vitalidad interminable.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1539037116277-4db20889f2d4?w=800\"\n          },\n          {\n            name: \"Berl\u00edn\",\n            h: \"El s\u00edmbolo m\u00e1ximo de la reinvenci\u00f3n.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1560969184-10fe8719e047?w=800\"\n          }\n        ]\n      },\n      terra: {\n        vibe: \"Tierra\",\n        n: [\n          {\n            name: \"San Miguel de Allende\",\n            h: \"Luz que sana el aura y empedrados de paz.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1587413697926-2a6d7f95f462?w=800\"\n          },\n          {\n            name: \"Quer\u00e9taro: Ra\u00edz\",\n            h: \"Estabilidad, historia y elegancia virreinal.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1512813195396-6e283a863cc1?w=800\"\n          }\n        ],\n        g: [\n          {\n            name: \"Roma\",\n            h: \"Eje de occidente, la ciudad de la inmortalidad.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1552832230-c0197dd311b5?w=800\"\n          },\n          {\n            name: \"Cusco\",\n            h: \"Solidez absoluta bajo la mirada de los Andes.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1526392060635-9d6019884377?w=800\"\n          }\n        ]\n      },\n      aer: {\n        vibe: \"Aire\",\n        n: [\n          {\n            name: \"Tulum: Viento Sagrado\",\n            h: \"Fortaleza maya que expande la conciencia.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1504730655501-24c39ac53f0e?w=800\"\n          }\n        ],\n        g: [\n          {\n            name: \"Z\u00farich\",\n            h: \"Claridad mental y orden alpino.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1515488764276-beab7607c1e6?w=800\"\n          }\n        ]\n      },\n      aqua: {\n        vibe: \"Agua\",\n        n: [\n          {\n            name: \"Los Cabos\",\n            h: \"Purificaci\u00f3n donde el desierto rinde al mar.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1516815231560-8f41ec531527?w=800\"\n          },\n          {\n            name: \"Puerto Vallarta\",\n            h: \"Sanaci\u00f3n del coraz\u00f3n en atardeceres c\u00e1lidos.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1592393399120-1e8609516629?w=800\"\n          },\n          {\n            name: \"Canc\u00fan\",\n            h: \"Portal de luz y reset vibracional.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1544735716-392fe2489ffa?w=800\"\n          }\n        ],\n        g: [\n          {\n            name: \"Cartagena\",\n            h: \"Entorno vibrante para sanar con magia caribe.\",\n            img: \"https:\/\/images.unsplash.com\/photo-1583996253546-13a49f69203f?w=800\"\n          }\n        ]\n      }\n    };\n\n    window.nextStep = (id) => {\n      document.querySelectorAll(\".step\").forEach((el) => el.classList.remove(\"active\"));\n      document.getElementById(id).classList.add(\"active\");\n    };\n\n    const zodiacGrid = document.getElementById(\"zodiac-grid\");\n    signs.forEach((sign) => {\n      const btn = document.createElement(\"button\");\n      btn.className = \"p-4 border border-slate-800 bg-slate-900\/40 rounded-2xl hover:border-indigo-500 text-xs uppercase tracking-widest text-slate-300\";\n      btn.innerText = sign.n;\n      btn.onclick = () => {\n        state.sign = sign;\n        state.trace = [];\n        state.answersText = [];\n        renderQuestion(0);\n        window.nextStep(\"step-ritual\");\n      };\n      zodiacGrid.appendChild(btn);\n    });\n\n    function renderQuestion(idx) {\n      if (idx >= questions.length) {\n        window.nextStep(\"step-covenant\");\n        return;\n      }\n\n      document.getElementById(\"question-counter\").innerText = `Fase ${idx + 1} de 5`;\n      document.getElementById(\"progress-bar\").style.width = `${(idx + 1) * 20}%`;\n      document.getElementById(\"question-text\").innerText = questions[idx].q;\n\n      const grid = document.getElementById(\"options-grid\");\n      grid.innerHTML = \"\";\n\n      questions[idx].o.forEach((opt) => {\n        const btn = document.createElement(\"button\");\n        btn.className = \"p-5 border border-slate-800 bg-slate-900\/40 rounded-2xl hover:border-indigo-500 text-slate-300 text-left w-full\";\n        btn.innerText = opt.l;\n        btn.onclick = () => {\n          state.trace.push(opt.v);\n          state.answersText.push(opt.l);\n          renderQuestion(idx + 1);\n        };\n        grid.appendChild(btn);\n      });\n    }\n\n    function renderLeads() {\n      const container = document.getElementById(\"leads-container\");\n\n      if (!state.leads.length) {\n        container.innerHTML = \"<p class='text-center text-slate-500'>A\u00fan no hay almas.<\/p>\";\n        return;\n      }\n\n      container.innerHTML = state.leads\n        .map(\n          (l) => `\n          <div class=\"p-5 bg-white\/5 border border-white\/10 rounded-xl flex justify-between text-sm text-slate-300 gap-4\">\n            <div>\n              <strong class=\"text-white text-lg\">${l.name || \"\"}<\/strong>\n              <span class=\"text-indigo-400\">(${l.sign || \"\"})<\/span><br\/>\n              ${l.whatsapp || \"\"} | ${l.email || \"\"}\n            <\/div>\n            <div class=\"text-right\">\n              <span class=\"text-[10px] text-indigo-400 uppercase\">${l.vibe || \"\"}<\/span><br\/>\n              <span class=\"text-white\">${l.n || \"\"} \/ ${l.g || \"\"}<\/span>\n            <\/div>\n          <\/div>\n        `\n        )\n        .join(\"\");\n    }\n\n    async function saveLeadNonBlocking(lead) {\n      try {\n        if (!firebaseReady || !db) {\n          state.leads.unshift(lead);\n          return;\n        }\n\n        await Promise.race([\n          addDoc(collection(db, \"astral_leads\"), lead),\n          new Promise((_, reject) =>\n            setTimeout(() => reject(new Error(\"Timeout guardando en Firebase\")), 3500)\n          )\n        ]);\n      } catch (err) {\n        console.warn(\"No se pudo guardar en Firebase:\", err);\n        state.leads.unshift(lead);\n      }\n    }\n\n    document.getElementById(\"lead-form\").onsubmit = async (e) => {\n      e.preventDefault();\n\n      const btn = document.getElementById(\"btn-submit\");\n      btn.innerHTML = `Decodificando... <i class=\"fa-solid fa-spinner fa-spin\"><\/i>`;\n      btn.disabled = true;\n\n      const lead = {\n        name: document.getElementById(\"f-name\").value.trim(),\n        email: document.getElementById(\"f-email\").value.trim(),\n        whatsapp: document.getElementById(\"f-phone\").value.trim(),\n        sign: state.sign?.n || \"\",\n        answers: [...state.answersText],\n        timestamp: new Date().toISOString()\n      };\n\n      const counts = state.trace.reduce((acc, val) => {\n        acc[val] = (acc[val] || 0) + 1;\n        return acc;\n      }, {});\n\n      if (state.sign?.e) {\n        counts[state.sign.e] = (counts[state.sign.e] || 0) + 1.5;\n      }\n\n      const dominant = Object.keys(counts).sort((a, b) => counts[b] - counts[a])[0] || \"aqua\";\n      const pool = atlas[dominant] || atlas.aqua;\n\n      const seed = Date.now();\n      const destN = pool.n[seed % pool.n.length];\n      const destG = pool.g[(seed + 1) % pool.g.length];\n\n      lead.vibe = pool.vibe;\n      lead.n = destN.name;\n      lead.g = destG.name;\n\n      document.getElementById(\"res-subtitle\").innerText = `Frecuencia: ${lead.vibe} | Signo: ${lead.sign}`;\n      document.getElementById(\"res-n-img\").src = destN.img;\n      document.getElementById(\"res-n-name\").innerText = destN.name;\n      document.getElementById(\"res-n-hist\").innerText = destN.h;\n\n      document.getElementById(\"res-g-img\").src = destG.img;\n      document.getElementById(\"res-g-name\").innerText = destG.name;\n      document.getElementById(\"res-g-hist\").innerText = destG.h;\n\n      const firstName = lead.name.split(\" \")[0] || lead.name;\n      document.getElementById(\"res-call\").innerText = `El portal te aguarda, ${firstName}.`;\n\n      const msg = `\u2728 Saludos El Viajero AST. Soy ${lead.name}. Mi revelaci\u00f3n astral me gu\u00eda a ${lead.g}. Deseo materializar el viaje sagrado.`;\n      document.getElementById(\"btn-whatsapp\").href = `https:\/\/wa.me\/${WHATSAPP_NUMBER}?text=${encodeURIComponent(msg)}`;\n\n      window.nextStep(\"step-manifestation\");\n\n      saveLeadNonBlocking(lead);\n\n      btn.innerHTML = `Revelar Mi Destino <i class=\"fa-solid fa-bolt ml-2\"><\/i>`;\n      btn.disabled = false;\n    };\n\n    window.checkPin = async () => {\n      const pin = document.getElementById(\"admin-pin\").value;\n\n      if (pin !== ADMIN_PIN) {\n        document.getElementById(\"pin-err\").classList.remove(\"hidden\");\n        return;\n      }\n\n      document.getElementById(\"pin-err\").classList.add(\"hidden\");\n      document.getElementById(\"pin-modal\").classList.add(\"hidden\");\n      document.getElementById(\"admin-panel\").classList.remove(\"hidden\");\n      document.getElementById(\"admin-pin\").value = \"\";\n\n      try {\n        if (firebaseReady && db) {\n          const q = query(collection(db, \"astral_leads\"), orderBy(\"timestamp\", \"desc\"));\n          const snap = await Promise.race([\n            getDocs(q),\n            new Promise((_, reject) =>\n              setTimeout(() => reject(new Error(\"Timeout leyendo Firebase\")), 3500)\n            )\n          ]);\n          state.leads = snap.docs.map((doc) => doc.data());\n        }\n      } catch (err) {\n        console.warn(\"No se pudieron cargar leads desde Firebase:\", err);\n      }\n\n      renderLeads();\n    };\n\n    window.downloadCSV = () => {\n      if (!state.leads.length) {\n        alert(\"No hay datos\");\n        return;\n      }\n\n      const headers = [\"Fecha\", \"Nombre\", \"Email\", \"WhatsApp\", \"Signo\", \"Vibe\", \"Nacional\", \"Global\", \"Respuestas\"];\n\n      const rows = state.leads.map((l) => [\n        new Date(l.timestamp).toLocaleDateString(),\n        `\"${(l.name || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.email || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.whatsapp || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.sign || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.vibe || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.n || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${(l.g || \"\").replace(\/\"\/g, '\"\"')}\"`,\n        `\"${((l.answers || []).join(\" | \")).replace(\/\"\/g, '\"\"')}\"`\n      ]);\n\n      const csv = [headers, ...rows].map((row) => row.join(\",\")).join(\"\\n\");\n      const blob = new Blob([\"\\uFEFF\" + csv], { type: \"text\/csv;charset=utf-8;\" });\n\n      const link = document.createElement(\"a\");\n      link.href = URL.createObjectURL(blob);\n      link.download = `Leads_El_Viajero_AST_${new Date().toISOString().slice(0, 10)}`;\n      document.body.appendChild(link);\n      link.click();\n      document.body.removeChild(link);\n    };\n  <\/script>\n<\/body>\n<\/html>\n\n\n\n<pre class=\"wp-block-code\"><code><\/code><\/pre>\n\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>Or\u00e1culo Sagrado | El Viajero AST Or\u00e1culo Sagrado | El Viajero AST Tu destino es una resonancia sagrada . Viajar no es simplemente trasladar el cuerpo; es sincronizar tu campo energ\u00e9tico con la vibraci\u00f3n de la Tierra. Este or\u00e1culo decodifica tu configuraci\u00f3n estelar para encontrar &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-80","post","type-post","status-publish","format-standard","hentry","category-sin-categoria"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>- El Viajero AST<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/elviajeroast.com\/?p=80\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"- El Viajero AST\" \/>\n<meta property=\"og:description\" content=\"Or\u00e1culo Sagrado | El Viajero AST Or\u00e1culo Sagrado | El Viajero AST Tu destino es una resonancia sagrada . Viajar no es simplemente trasladar el cuerpo; es sincronizar tu campo energ\u00e9tico con la vibraci\u00f3n de la Tierra. Este or\u00e1culo decodifica tu configuraci\u00f3n estelar para encontrar &hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/elviajeroast.com\/?p=80\" \/>\n<meta property=\"og:site_name\" content=\"El Viajero AST\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-08T01:12:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-08T01:44:58+00:00\" \/>\n<meta name=\"author\" content=\"covarrubiasldgdiego@gmail.com\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"covarrubiasldgdiego@gmail.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/elviajeroast.com\/?p=80#article\",\"isPartOf\":{\"@id\":\"https:\/\/elviajeroast.com\/?p=80\"},\"author\":{\"name\":\"covarrubiasldgdiego@gmail.com\",\"@id\":\"https:\/\/elviajeroast.com\/#\/schema\/person\/934bc97882a3385f8a491d48dcfd7f13\"},\"headline\":\"Sin t\u00edtulo\",\"datePublished\":\"2026-04-08T01:12:15+00:00\",\"dateModified\":\"2026-04-08T01:44:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/elviajeroast.com\/?p=80\"},\"wordCount\":115,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/elviajeroast.com\/#organization\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/elviajeroast.com\/?p=80#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/elviajeroast.com\/?p=80\",\"url\":\"https:\/\/elviajeroast.com\/?p=80\",\"name\":\"- El Viajero AST\",\"isPartOf\":{\"@id\":\"https:\/\/elviajeroast.com\/#website\"},\"datePublished\":\"2026-04-08T01:12:15+00:00\",\"dateModified\":\"2026-04-08T01:44:58+00:00\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/elviajeroast.com\/?p=80\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/elviajeroast.com\/#website\",\"url\":\"https:\/\/elviajeroast.com\/\",\"name\":\"El Viajero AST\",\"description\":\"Excursiones y viajes organizados en M\u00e9xico y el extranjero.\",\"publisher\":{\"@id\":\"https:\/\/elviajeroast.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/elviajeroast.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/elviajeroast.com\/#organization\",\"name\":\"El Viajero AST\",\"url\":\"https:\/\/elviajeroast.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/elviajeroast.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/elviajeroast.com\/wp-content\/uploads\/2025\/09\/cropped-Diseno-sin-titulo-16.png\",\"contentUrl\":\"https:\/\/elviajeroast.com\/wp-content\/uploads\/2025\/09\/cropped-Diseno-sin-titulo-16.png\",\"width\":150,\"height\":150,\"caption\":\"El Viajero AST\"},\"image\":{\"@id\":\"https:\/\/elviajeroast.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/elviajeroast.com\/#\/schema\/person\/934bc97882a3385f8a491d48dcfd7f13\",\"name\":\"covarrubiasldgdiego@gmail.com\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/elviajeroast.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5f1b02855fa5f56b0e4766ed1b53f99676a43d0646d9dbaac8e41b77683531a1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5f1b02855fa5f56b0e4766ed1b53f99676a43d0646d9dbaac8e41b77683531a1?s=96&d=mm&r=g\",\"caption\":\"covarrubiasldgdiego@gmail.com\"},\"sameAs\":[\"https:\/\/elviajeroast.com\"],\"url\":\"https:\/\/elviajeroast.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"- El Viajero AST","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:\/\/elviajeroast.com\/?p=80","og_locale":"es_MX","og_type":"article","og_title":"- El Viajero AST","og_description":"Or\u00e1culo Sagrado | El Viajero AST Or\u00e1culo Sagrado | El Viajero AST Tu destino es una resonancia sagrada . Viajar no es simplemente trasladar el cuerpo; es sincronizar tu campo energ\u00e9tico con la vibraci\u00f3n de la Tierra. Este or\u00e1culo decodifica tu configuraci\u00f3n estelar para encontrar &hellip;","og_url":"https:\/\/elviajeroast.com\/?p=80","og_site_name":"El Viajero AST","article_published_time":"2026-04-08T01:12:15+00:00","article_modified_time":"2026-04-08T01:44:58+00:00","author":"covarrubiasldgdiego@gmail.com","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"covarrubiasldgdiego@gmail.com","Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/elviajeroast.com\/?p=80#article","isPartOf":{"@id":"https:\/\/elviajeroast.com\/?p=80"},"author":{"name":"covarrubiasldgdiego@gmail.com","@id":"https:\/\/elviajeroast.com\/#\/schema\/person\/934bc97882a3385f8a491d48dcfd7f13"},"headline":"Sin t\u00edtulo","datePublished":"2026-04-08T01:12:15+00:00","dateModified":"2026-04-08T01:44:58+00:00","mainEntityOfPage":{"@id":"https:\/\/elviajeroast.com\/?p=80"},"wordCount":115,"commentCount":0,"publisher":{"@id":"https:\/\/elviajeroast.com\/#organization"},"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/elviajeroast.com\/?p=80#respond"]}]},{"@type":"WebPage","@id":"https:\/\/elviajeroast.com\/?p=80","url":"https:\/\/elviajeroast.com\/?p=80","name":"- El Viajero AST","isPartOf":{"@id":"https:\/\/elviajeroast.com\/#website"},"datePublished":"2026-04-08T01:12:15+00:00","dateModified":"2026-04-08T01:44:58+00:00","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/elviajeroast.com\/?p=80"]}]},{"@type":"WebSite","@id":"https:\/\/elviajeroast.com\/#website","url":"https:\/\/elviajeroast.com\/","name":"El Viajero AST","description":"Excursiones y viajes organizados en M\u00e9xico y el extranjero.","publisher":{"@id":"https:\/\/elviajeroast.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/elviajeroast.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/elviajeroast.com\/#organization","name":"El Viajero AST","url":"https:\/\/elviajeroast.com\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/elviajeroast.com\/#\/schema\/logo\/image\/","url":"https:\/\/elviajeroast.com\/wp-content\/uploads\/2025\/09\/cropped-Diseno-sin-titulo-16.png","contentUrl":"https:\/\/elviajeroast.com\/wp-content\/uploads\/2025\/09\/cropped-Diseno-sin-titulo-16.png","width":150,"height":150,"caption":"El Viajero AST"},"image":{"@id":"https:\/\/elviajeroast.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/elviajeroast.com\/#\/schema\/person\/934bc97882a3385f8a491d48dcfd7f13","name":"covarrubiasldgdiego@gmail.com","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/elviajeroast.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5f1b02855fa5f56b0e4766ed1b53f99676a43d0646d9dbaac8e41b77683531a1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5f1b02855fa5f56b0e4766ed1b53f99676a43d0646d9dbaac8e41b77683531a1?s=96&d=mm&r=g","caption":"covarrubiasldgdiego@gmail.com"},"sameAs":["https:\/\/elviajeroast.com"],"url":"https:\/\/elviajeroast.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/posts\/80","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=80"}],"version-history":[{"count":6,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/posts\/80\/revisions"}],"predecessor-version":[{"id":88,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=\/wp\/v2\/posts\/80\/revisions\/88"}],"wp:attachment":[{"href":"https:\/\/elviajeroast.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=80"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=80"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/elviajeroast.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=80"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}