diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2a4b808..f937871 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,11 @@
All notable changes to AiDex will be documented in this file.
+## [Unreleased]
+
+### Added
+- **Viewer: HCL/Terraform syntax highlighting**: Inline highlight.js grammar registration so `.tf`, `.tfvars`, `.hcl` files render with proper colors instead of plaintext (highlight.js has no HCL module in the base bundle)
+
## [1.18.0] - 2026-04-25
### Added
diff --git a/src/viewer/server.ts b/src/viewer/server.ts
index 493ba78..e9f4678 100644
--- a/src/viewer/server.ts
+++ b/src/viewer/server.ts
@@ -619,11 +619,11 @@ function getLanguageFromExtension(filePath: string): string {
'.php': 'php',
'.rb': 'ruby',
'.rake': 'ruby',
- // HCL/Terraform: highlight.js base bundle has no hcl language module,
- // fall back to plaintext to avoid "Unknown language" errors
- '.tf': 'plaintext',
- '.tfvars': 'plaintext',
- '.hcl': 'plaintext',
+ // HCL/Terraform: registered inline at the top of the page (see
+