/* ════════════════════════════════════════════════════════════════
   app.js — ExperionCrawler Web UI 공용 초기화
   더 이상 모놀리식이 아닙니다. 모든 탭별 로직은 js/<tab>.js 로 분산.
   core.js: 공용 유틸 + 탭 라우터
   docs.js: 문서 탐색기
   cert.js / conn.js / crawl.js / db.js / nm-dash.js / pb.js /
   hist.js / opcsvr.js / t2s.js / fast.js / pid.js / evt.js /
   llmchat.js / kbadmin.js / write.js
   각 탭 파일에서 paneInit.<tab>을 직접 등록합니다.
   ════════════════════════════════════════════════════════════════ */
