diff --git a/gui/templates/index.html b/gui/templates/index.html
index efb3dec..a33d4ed 100644
--- a/gui/templates/index.html
+++ b/gui/templates/index.html
@@ -439,7 +439,14 @@ function showPanel(name) {
document.querySelectorAll('.content > div').forEach(d => d.classList.add('hidden'));
document.getElementById('panel-' + name).classList.remove('hidden');
document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active'));
- event.target.closest('.nav-btn').classList.add('active');
+ if (event && event.target) {
+ const btn = event.target.closest('.nav-btn');
+ if (btn) btn.classList.add('active');
+ }
+
+ // Load panel content
+ if (name === 'vectors') loadVectorsFull();
+ if (name === 'reports') loadReports();
}
// ─── Mode Selection ───
@@ -670,8 +677,7 @@ async function stopScan() {
// ─── Init ───
loadVectorSelector();
-document.querySelector('[onclick*="vectors"]').onclick = () => { showPanel('vectors'); loadVectorsFull(); };
-document.querySelector('[onclick*="reports"]').onclick = () => { showPanel('reports'); loadReports(); };
+loadReports(); // preload reports too
// Enter key starts scan
document.getElementById('targetInput').addEventListener('keydown', (e) => {