function generarPromptEstructuradoIA(data) {
const subidaInfo = data.largos.subida ? `${data.largos.subida.distKm.toFixed(1)} km y un desnivel de +${data.largos.subida.desn} m` : 'No registrada';
const bajadaInfo = data.largos.bajada ? `${data.largos.bajada.distKm.toFixed(1)} km y un desnivel de -${data.largos.bajada.desn} m` : 'No registrada';
const duroInfo = data.duro ? `ubicado entre los kilómetros ${data.duro.inicio.toFixed(1)} y ${data.duro.fin.toFixed(1)} con una ganancia neta de +${data.duro.ganancia} m` : 'No registrado';
const plantillaPrompt = `Actúa como un analista experto de carreras de ultrafondo y rutas de montaña de alta resistencia. A partir de los datos técnicos reales del track que te facilito abajo, genera un análisis exhaustivo y detallado estructurado estrictamente en los siguientes 3 bloques:
### 1. RESUMEN DEL RECORRIDO Y ATRACTIVOS
* Realiza una descripción narrativa destacando los lugares clave por donde pasa la ruta y sus principales atractivos (naturales, paisajísticos o históricos).
* Reconstruye o estima un horario de paso orientativo para los puntos clave asumiendo un ritmo intermedio o los tiempos de corte de una prueba de este tipo, considerando tanto tramos diurnos como nocturnos si aplica.
### 2. DATOS TÉCNICOS Y ANÁLISIS DE ALTIMETRÍA
* **Distancia total:** ${data.distancia} km.
* **Desnivel positivo acumulado:** ${data.desnivel} m.
* **Altitud máxima:** ${data.altMax} m.
* Analiza detalladamente la altimetría: identifica cuántos repechos destacables presenta el terreno, deduciendo la dureza media del firme y el tipo de terreno esperable en estas zonas de montaña.
* Destaca explícitamente que la subida más larga de la ruta tiene ${subidaInfo}, la bajada más larga cuenta con ${bajadaInfo} y el kilómetro más crítico y duro está ${duroInfo}.
### 3. ANÁLISIS DETALLADO POR TERCIOS Y CONDICIONES
* Divide matemáticamente el recorrido en tres tercios exactos (Primer tercio, Segundo tercio y Tercer tercio).
* Ubica cronológicamente en qué tercio caen la subida más larga, la bajada más larga y el kilómetro más duro identificados en el bloque técnico.
* Evalúa el impacto psicológico y físico sobre el atleta considerando la fatiga acumulada en cada fase.
* **Análisis Atmosférico e Hipótesis Crítica:** Factoriza cómo afectará al terreno y a la pisada tanto la meteorología del día de la prueba como las precipitaciones de los días previos (asumiendo escenarios de alta saturación del terreno, barro técnico o escorrentías si ha habido lluvia previa, o gestión térmica si se pasa de noche a día).
Información contextual indexada en el archivo: ${data.descripcion || 'No se han encontrado metadatos descriptivos adicionales en el GPX.'}.`;
// Intentar copiar directamente al portapapeles
if (navigator.clipboard && navigator.clipboard.writeText) {
navigator.clipboard.writeText(plantillaPrompt).then(() => {
alert('🤖 ¡Prompt técnico de IA copiado al portapapeles!\n\nPégalo en tu modelo de lenguaje (Gemini, ChatGPT...) para obtener instantáneamente la respuesta maquetada con la estructura que solicitas.');
}).catch(err => {
utilizarModalComoFallback(plantillaPrompt);
});
} else {
utilizarModalComoFallback(plantillaPrompt);
}
}
function utilizarModalComoFallback(texto) {
const m = document.getElementById('modal-info-gpx');
const c = document.getElementById('modal-info-gpx-cuerpo');
if (m && c) {
c.textContent = texto;
m.style.display = 'flex';
alert('Copia el texto del cuadro informativo para procesarlo con tu IA.');
}
}