document.addEventListener("DOMContentLoaded", () => { const container = document.getElementById("popupContainer"); if (!container) { console.warn("Không tìm thấy #popupContainer trên trang này"); return; } // Hàm load file popup async function loadPopup(file) { // Dùng đường dẫn tương đối, KHÔNG có / ở đầu const url = '/popup/' + file; try { const res = await fetch(url); if (!res.ok) { console.error("Fetch lỗi", res.status, "URL:", url); return; } const html = await res.text(); container.insertAdjacentHTML("beforeend", html); const wrap = document.createElement("div"); wrap.innerHTML = html.trim(); container.appendChild(wrap); wrap.querySelectorAll("script").forEach(scr => { const s = document.createElement("script"); if (scr.src) s.src = scr.src; else s.textContent = scr.textContent; document.body.appendChild(s); scr.remove(); }); // 🔥 báo cho popup biết đã load xong document.dispatchEvent(new Event("popup_card_loaded")); // 🔥 QUAN TRỌNG: Tự động chạy toàn bộ