`;
});
dashboardHTML += `
`;
});
dashboardOutput.innerHTML = dashboardHTML;
}
function downloadPDF() {
const { data, allEmpty } = getAuditData();
if (allEmpty) {
console.warn("No data to export.");
return;
}
const { jsPDF } = window.jspdf;
const doc = new jsPDF();
doc.setFontSize(18);
doc.text('Personal Reflection & Self-Audit', 14, 22);
doc.setFontSize(11);
doc.setTextColor(100);
doc.text(`Audit completed on: ${new Date().toLocaleDateString()}`, 14, 30);
let yPos = 40;
data.forEach(section => {
if (yPos > 260) { // Add new page if content gets too long
doc.addPage();
yPos = 20;
}
doc.setFontSize(14);
doc.setTextColor(15, 118, 110); // Teal-700
doc.text(section.title, 14, yPos);
yPos += 8;
section.questions.forEach(q => {
doc.setFontSize(11);
doc.setTextColor(55, 65, 81); // Gray-600
doc.setFont(undefined, 'bold');
const questionLines = doc.splitTextToSize(`Q: ${q.question}`, 180);
doc.text(questionLines, 16, yPos);
yPos += (questionLines.length * 5);
doc.setFont(undefined, 'normal');
doc.setTextColor(107, 114, 128); // Gray-500
const answerLines = doc.splitTextToSize(q.answer, 175);
doc.text(answerLines, 20, yPos);
yPos += (answerLines.length * 5) + 5;
});
yPos += 5;
});
doc.save('Personal-Reflection.pdf');
}
// --- Event Listeners ---
downloadPdfBtn.addEventListener('click', downloadPDF);
// --- Initial Setup ---
updateNavButtons();
generateDashboard();
});