# 247ChatMate i18n Scope Lock

Locked behaviour for this release:

1. Existing intro timing, pacing, bubble sequence, widget layout, CSS spacing and flow behaviour are not to be redesigned as part of i18n work.
2. All visible widget language must come from `/public/i18n/languages.json`, `/widget-ui/`, `/sales-demo-chips/` and `/flags/`.
3. No per-vertical or per-language JavaScript patches. Missing text is fixed in JSON.
4. Language selector controls widget language only. Phone country code selector controls phone number country code only.
5. On hard reset, the widget returns to the start of the chat and restores the website/default language.
6. Dashboard preview and live widget must use the same language files and loader rules.
7. RTL support is controlled by `rtl` in `languages.json`.
8. Run `php tools/i18n-audit.php` before release. Failed languages need JSON correction, not code patches.
