`;
const resultsClone = resultsSection.querySelector('.bg-white').cloneNode(true);
resultsClone.querySelector('#download-pdf-btn').parentElement.remove(); // Remove button from clone
pdfWrapper.appendChild(resultsClone);
document.body.appendChild(pdfWrapper);
try {
const canvas = await html2canvas(pdfWrapper, { scale: 2, useCORS: true, logging: false });
const imgData = canvas.toDataURL('image/png');
const pdf = new jsPDF({ orientation: 'portrait', unit: 'px', format: 'a4' });
const pdfWidth = pdf.internal.pageSize.getWidth();
const pdfHeight = pdf.internal.pageSize.getHeight();
const imgWidth = canvas.width;
const imgHeight = canvas.height;
const ratio = imgWidth / imgHeight;
let finalImgWidth = pdfWidth;
let finalImgHeight = pdfWidth / ratio;
if (finalImgHeight > pdfHeight) {
finalImgHeight = pdfHeight;
finalImgWidth = pdfHeight * ratio;
}
pdf.addImage(imgData, 'PNG', 0, 0, finalImgWidth, finalImgHeight);
pdf.save('Sunburn-Treatment-Plan.pdf');
} catch (error) {
console.error("PDF Generation Error:", error);
} finally {
document.body.removeChild(pdfWrapper);
downloadPdfBtn.textContent = 'Download Plan as PDF';
downloadPdfBtn.disabled = false;
}
}
// --- Event Listeners ---
assessBtn.addEventListener('click', assessSunburn);
downloadPdfBtn.addEventListener('click', generatePDF);
// --- Initial Call ---
renderQuestions();
});
