diff --git a/CLAUDE.md b/CLAUDE.md
index 2a7c5de..58c5512 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -6,7 +6,15 @@ Native Android app (Kotlin) that wraps `https://smart.joykoo.mx/` in a fullscree
## Critical Design Decision
-The Android soft keyboard must NEVER appear. The custom `NoSoftKeyboardWebView` returns `null` from `onCreateInputConnection()` to prevent the IME from ever being invoked, while hardware key events from the scanner still flow through the standard View key-event dispatch chain. Do not revert this or add an InputConnection — it is the core of the app.
+The Android soft keyboard must NEVER appear. Keyboard suppression uses multiple layers — do not remove any of them:
+
+1. `NoSoftKeyboardWebView.onCheckIsTextEditor()` → `false`
+2. `EditorInfo` flags `IME_FLAG_NO_EXTRACT_UI | IME_FLAG_NO_FULLSCREEN` in `onCreateInputConnection()`
+3. `InputMethodManager.hideSoftInputFromWindow()` posted after each InputConnection request and on page load / window focus
+4. JavaScript injection setting `inputmode="none"` on all ``, `