diff --git a/README.md b/README.md
index 0ccfa90a47..dd81cd4c52 100644
--- a/README.md
+++ b/README.md
@@ -71,53 +71,53 @@
🌐 In 42+ languages
@@ -995,66 +995,56 @@ Compression: aggressive (~50%) → double your free quota · Cost: $0/mo
### 📘 Getting Started
-| Document | Description |
-| -------------------------------------------------------------- | -------------------------------------------------------------------------------- |
-| [User Guide](docs/guides/USER_GUIDE.md) | Providers, combos, CLI integration, deployment |
-| [Setup Guide](docs/guides/SETUP_GUIDE.md) | Full install methods, CLI tool configs, protocol setup, timeout tuning |
-| [CLI Tools Guide](docs/reference/CLI-TOOLS.md) | Per-tool setup for Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot |
-| [Remote Mode](docs/guides/REMOTE-MODE.md) | Drive a remote OmniRoute (VPS) from your laptop CLI via scoped access tokens |
-| [Claude Code Config](docs/guides/CLAUDE-CODE-CONFIGURATION.md) | Point Claude Code at OmniRoute (local/remote) with `launch` + per-model profiles |
-| [Quick Start](README.md#-quick-start) | 3-step install → connect → configure |
+- **[User Guide](docs/guides/USER_GUIDE.md)** — Providers, combos, CLI integration, deployment
+- **[Setup Guide](docs/guides/SETUP_GUIDE.md)** — Full install methods, CLI tool configs, protocol setup, timeout tuning
+- **[CLI Tools Guide](docs/reference/CLI-TOOLS.md)** — Per-tool setup for Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
+- **[Remote Mode](docs/guides/REMOTE-MODE.md)** — Drive a remote OmniRoute (VPS) from your laptop CLI via scoped access tokens
+- **[Claude Code Config](docs/guides/CLAUDE-CODE-CONFIGURATION.md)** — Point Claude Code at OmniRoute (local/remote) with `launch` + per-model profiles
+- **[Quick Start](README.md#-quick-start)** — 3-step install → connect → configure
### 🔧 Operations & Deployment
-| Document | Description |
-| -------------------------------------------------------- | -------------------------------------------------------------- |
-| [Docker Guide](docs/guides/DOCKER_GUIDE.md) | Docker run, Compose profiles, Caddy HTTPS, tunnels, image tags |
-| [Podman Guide](contrib/podman/README.md) | Quadlet systemd integration, podman-compose, SELinux |
-| [VM Deployment](docs/ops/VM_DEPLOYMENT_GUIDE.md) | Complete guide: VM + nginx + Cloudflare setup |
-| [Fly.io Deployment](docs/ops/FLY_IO_DEPLOYMENT_GUIDE.md) | Deploy to Fly.io with persistent storage |
-| [Termux Guide](docs/guides/TERMUX_GUIDE.md) | Run OmniRoute on Android via Termux |
-| [PWA Guide](docs/guides/PWA_GUIDE.md) | Progressive Web App install, caching, architecture |
-| [Uninstall Guide](docs/guides/UNINSTALL.md) | Clean removal for all install methods |
-| [Environment Config](docs/reference/ENVIRONMENT.md) | Complete `.env` variables and references |
+- **[Docker Guide](docs/guides/DOCKER_GUIDE.md)** — Docker run, Compose profiles, Caddy HTTPS, tunnels, image tags
+- **[Podman Guide](contrib/podman/README.md)** — Quadlet systemd integration, podman-compose, SELinux
+- **[VM Deployment](docs/ops/VM_DEPLOYMENT_GUIDE.md)** — Complete guide: VM + nginx + Cloudflare setup
+- **[Fly.io Deployment](docs/ops/FLY_IO_DEPLOYMENT_GUIDE.md)** — Deploy to Fly.io with persistent storage
+- **[Termux Guide](docs/guides/TERMUX_GUIDE.md)** — Run OmniRoute on Android via Termux
+- **[PWA Guide](docs/guides/PWA_GUIDE.md)** — Progressive Web App install, caching, architecture
+- **[Uninstall Guide](docs/guides/UNINSTALL.md)** — Clean removal for all install methods
+- **[Environment Config](docs/reference/ENVIRONMENT.md)** — Complete `.env` variables and references
### 🧠 Features & Architecture
-| Document | Description |
-| ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| [Architecture](docs/architecture/ARCHITECTURE.md) | System architecture, data flow, and internals |
-| [Compression Guide](docs/compression/COMPRESSION_GUIDE.md) | 7-option pipeline: off / lite / standard / aggressive / ultra / RTK / stacked |
-| [RTK Compression](docs/compression/RTK_COMPRESSION.md) | Command-output compression, filters, trust, verify, raw-output recovery |
-| [Compression Engines](docs/compression/COMPRESSION_ENGINES.md) | Caveman, RTK, stacked pipelines, dashboard/API/MCP surfaces |
-| [Compression Rules Format](docs/compression/COMPRESSION_RULES_FORMAT.md) | JSON rule-pack schemas for Caveman and RTK filters |
-| [Compression Language Packs](docs/compression/COMPRESSION_LANGUAGE_PACKS.md) | Language detection and Caveman rule-pack authoring |
-| [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md) | Circuit breakers, cooldowns, queue, anti-thundering herd, TLS spoofing |
-| [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) | 12-factor scoring, mode packs, self-healing |
-| [Proxy Guide](docs/ops/PROXY_GUIDE.md) | 3-level proxy system, 1proxy marketplace, registry CRUD |
-| [Free Tiers](docs/reference/FREE_TIERS.md) | 25+ free API providers consolidated directory |
-| [Features Gallery](docs/guides/FEATURES.md) | Visual dashboard tour with screenshots |
-| [Codebase Documentation](docs/architecture/CODEBASE_DOCUMENTATION.md) | Beginner-friendly codebase walkthrough |
+- **[Architecture](docs/architecture/ARCHITECTURE.md)** — System architecture, data flow, and internals
+- **[Compression Guide](docs/compression/COMPRESSION_GUIDE.md)** — 7-option pipeline: off / lite / standard / aggressive / ultra / RTK / stacked
+- **[RTK Compression](docs/compression/RTK_COMPRESSION.md)** — Command-output compression, filters, trust, verify, raw-output recovery
+- **[Compression Engines](docs/compression/COMPRESSION_ENGINES.md)** — Caveman, RTK, stacked pipelines, dashboard/API/MCP surfaces
+- **[Compression Rules Format](docs/compression/COMPRESSION_RULES_FORMAT.md)** — JSON rule-pack schemas for Caveman and RTK filters
+- **[Compression Language Packs](docs/compression/COMPRESSION_LANGUAGE_PACKS.md)** — Language detection and Caveman rule-pack authoring
+- **[Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)** — Circuit breakers, cooldowns, queue, anti-thundering herd, TLS spoofing
+- **[Auto-Combo Engine](docs/routing/AUTO-COMBO.md)** — 12-factor scoring, mode packs, self-healing
+- **[Proxy Guide](docs/ops/PROXY_GUIDE.md)** — 3-level proxy system, 1proxy marketplace, registry CRUD
+- **[Free Tiers](docs/reference/FREE_TIERS.md)** — 25+ free API providers consolidated directory
+- **[Features Gallery](docs/guides/FEATURES.md)** — Visual dashboard tour with screenshots
+- **[Codebase Documentation](docs/architecture/CODEBASE_DOCUMENTATION.md)** — Beginner-friendly codebase walkthrough
### 🤖 Protocols & APIs
-| Document | Description |
-| ------------------------------------------------- | --------------------------------------------------- |
-| [API Reference](docs/reference/API_REFERENCE.md) | All endpoints with examples |
-| [OpenAPI Spec](docs/openapi.yaml) | OpenAPI 3.0 specification |
-| [MCP Server](open-sse/mcp-server/README.md) | 95 MCP tools, IDE configs, Python/TS/Go clients |
-| [MCP Server Guide](docs/frameworks/MCP-SERVER.md) | MCP installation, transports, and tool reference |
-| [A2A Server](src/lib/a2a/README.md) | JSON-RPC 2.0 protocol, skills, streaming, task mgmt |
-| [A2A Server Guide](docs/frameworks/A2A-SERVER.md) | A2A agent card, tasks, skills, and streaming |
+- **[API Reference](docs/reference/API_REFERENCE.md)** — All endpoints with examples
+- **[OpenAPI Spec](docs/openapi.yaml)** — OpenAPI 3.0 specification
+- **[MCP Server](open-sse/mcp-server/README.md)** — 95 MCP tools, IDE configs, Python/TS/Go clients
+- **[MCP Server Guide](docs/frameworks/MCP-SERVER.md)** — MCP installation, transports, and tool reference
+- **[A2A Server](src/lib/a2a/README.md)** — JSON-RPC 2.0 protocol, skills, streaming, task mgmt
+- **[A2A Server Guide](docs/frameworks/A2A-SERVER.md)** — A2A agent card, tasks, skills, and streaming
### 📋 Project & Quality
-| Document | Description |
-| -------------------------------------------------- | ----------------------------------------------- |
-| [Contributing](CONTRIBUTING.md) | Development setup and guidelines |
-| [Changelog](CHANGELOG.md) | Full per-version release history |
-| [Security Policy](SECURITY.md) | Vulnerability reporting and security practices |
-| [i18n Guide](docs/guides/I18N.md) | 40+ language support, translation workflow, RTL |
-| [Release Checklist](docs/ops/RELEASE_CHECKLIST.md) | Pre-release validation steps |
-| [Coverage Plan](docs/ops/COVERAGE_PLAN.md) | Test coverage strategy and 21,000+ test suite |
+- **[Contributing](CONTRIBUTING.md)** — Development setup and guidelines
+- **[Changelog](CHANGELOG.md)** — Full per-version release history
+- **[Security Policy](SECURITY.md)** — Vulnerability reporting and security practices
+- **[i18n Guide](docs/guides/I18N.md)** — 40+ language support, translation workflow, RTL
+- **[Release Checklist](docs/ops/RELEASE_CHECKLIST.md)** — Pre-release validation steps
+- **[Coverage Plan](docs/ops/COVERAGE_PLAN.md)** — Test coverage strategy and 21,000+ test suite
diff --git a/docs/assets/flags/README.md b/docs/assets/flags/README.md
new file mode 100644
index 0000000000..11aaae3e5f
--- /dev/null
+++ b/docs/assets/flags/README.md
@@ -0,0 +1,19 @@
+# Flag icons
+
+SVG country flags used by the language selector in the root `README.md`.
+
+They are served locally (instead of Unicode flag emoji) because regional-indicator
+flag emoji do **not** render on Windows and several Safari/WebKit configurations,
+which broke the "In 43 languages" table on those platforms.
+
+## Source & license
+
+Flags are from [lipis/flag-icons](https://github.com/lipis/flag-icons)
+(`flags/4x3/`), licensed **MIT**. Each file is named by its ISO 3166-1 alpha-2
+country code (e.g. `br.svg`, `us.svg`). The six Indian-language cells (`in`, `hi`,
+`gu`, `mr`, `ta`, `te`) reuse the single `in.svg`.
+
+```
+MIT License — Copyright (c) 2013 Panayiotis Lipiridis
+https://github.com/lipis/flag-icons/blob/main/LICENSE
+```
diff --git a/docs/assets/flags/az.svg b/docs/assets/flags/az.svg
new file mode 100644
index 0000000000..3557522110
--- /dev/null
+++ b/docs/assets/flags/az.svg
@@ -0,0 +1,8 @@
+
diff --git a/docs/assets/flags/bd.svg b/docs/assets/flags/bd.svg
new file mode 100644
index 0000000000..16b794debd
--- /dev/null
+++ b/docs/assets/flags/bd.svg
@@ -0,0 +1,4 @@
+
diff --git a/docs/assets/flags/bg.svg b/docs/assets/flags/bg.svg
new file mode 100644
index 0000000000..af2d0d07c3
--- /dev/null
+++ b/docs/assets/flags/bg.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/br.svg b/docs/assets/flags/br.svg
new file mode 100644
index 0000000000..719a763caa
--- /dev/null
+++ b/docs/assets/flags/br.svg
@@ -0,0 +1,45 @@
+
diff --git a/docs/assets/flags/cn.svg b/docs/assets/flags/cn.svg
new file mode 100644
index 0000000000..10d3489a0e
--- /dev/null
+++ b/docs/assets/flags/cn.svg
@@ -0,0 +1,11 @@
+
diff --git a/docs/assets/flags/cz.svg b/docs/assets/flags/cz.svg
new file mode 100644
index 0000000000..7913de3895
--- /dev/null
+++ b/docs/assets/flags/cz.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/de.svg b/docs/assets/flags/de.svg
new file mode 100644
index 0000000000..71aa2d2c30
--- /dev/null
+++ b/docs/assets/flags/de.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/dk.svg b/docs/assets/flags/dk.svg
new file mode 100644
index 0000000000..563277f81d
--- /dev/null
+++ b/docs/assets/flags/dk.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/es.svg b/docs/assets/flags/es.svg
new file mode 100644
index 0000000000..a296ebf7e1
--- /dev/null
+++ b/docs/assets/flags/es.svg
@@ -0,0 +1,544 @@
+
diff --git a/docs/assets/flags/fi.svg b/docs/assets/flags/fi.svg
new file mode 100644
index 0000000000..470be2d07c
--- /dev/null
+++ b/docs/assets/flags/fi.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/fr.svg b/docs/assets/flags/fr.svg
new file mode 100644
index 0000000000..e682b90020
--- /dev/null
+++ b/docs/assets/flags/fr.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/hu.svg b/docs/assets/flags/hu.svg
new file mode 100644
index 0000000000..24fbfb9658
--- /dev/null
+++ b/docs/assets/flags/hu.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/flags/id.svg b/docs/assets/flags/id.svg
new file mode 100644
index 0000000000..3b7c8fcfd9
--- /dev/null
+++ b/docs/assets/flags/id.svg
@@ -0,0 +1,4 @@
+
diff --git a/docs/assets/flags/il.svg b/docs/assets/flags/il.svg
new file mode 100644
index 0000000000..f43be7e8ed
--- /dev/null
+++ b/docs/assets/flags/il.svg
@@ -0,0 +1,14 @@
+
diff --git a/docs/assets/flags/in.svg b/docs/assets/flags/in.svg
new file mode 100644
index 0000000000..bc47d74911
--- /dev/null
+++ b/docs/assets/flags/in.svg
@@ -0,0 +1,25 @@
+
diff --git a/docs/assets/flags/ir.svg b/docs/assets/flags/ir.svg
new file mode 100644
index 0000000000..8c6d516216
--- /dev/null
+++ b/docs/assets/flags/ir.svg
@@ -0,0 +1,219 @@
+
diff --git a/docs/assets/flags/it.svg b/docs/assets/flags/it.svg
new file mode 100644
index 0000000000..20a8bfdcc8
--- /dev/null
+++ b/docs/assets/flags/it.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/flags/jp.svg b/docs/assets/flags/jp.svg
new file mode 100644
index 0000000000..cc1c181ce9
--- /dev/null
+++ b/docs/assets/flags/jp.svg
@@ -0,0 +1,11 @@
+
diff --git a/docs/assets/flags/kr.svg b/docs/assets/flags/kr.svg
new file mode 100644
index 0000000000..6947eab2b3
--- /dev/null
+++ b/docs/assets/flags/kr.svg
@@ -0,0 +1,24 @@
+
diff --git a/docs/assets/flags/my.svg b/docs/assets/flags/my.svg
new file mode 100644
index 0000000000..115f864d8a
--- /dev/null
+++ b/docs/assets/flags/my.svg
@@ -0,0 +1,26 @@
+
diff --git a/docs/assets/flags/nl.svg b/docs/assets/flags/nl.svg
new file mode 100644
index 0000000000..e90f5b0351
--- /dev/null
+++ b/docs/assets/flags/nl.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/no.svg b/docs/assets/flags/no.svg
new file mode 100644
index 0000000000..a5f2a152a9
--- /dev/null
+++ b/docs/assets/flags/no.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/flags/ph.svg b/docs/assets/flags/ph.svg
new file mode 100644
index 0000000000..b910e24cd2
--- /dev/null
+++ b/docs/assets/flags/ph.svg
@@ -0,0 +1,6 @@
+
diff --git a/docs/assets/flags/pk.svg b/docs/assets/flags/pk.svg
new file mode 100644
index 0000000000..4ddc19f8ea
--- /dev/null
+++ b/docs/assets/flags/pk.svg
@@ -0,0 +1,15 @@
+
diff --git a/docs/assets/flags/pl.svg b/docs/assets/flags/pl.svg
new file mode 100644
index 0000000000..42d2b0ce19
--- /dev/null
+++ b/docs/assets/flags/pl.svg
@@ -0,0 +1,6 @@
+
diff --git a/docs/assets/flags/pt.svg b/docs/assets/flags/pt.svg
new file mode 100644
index 0000000000..2767cd4e9f
--- /dev/null
+++ b/docs/assets/flags/pt.svg
@@ -0,0 +1,57 @@
+
diff --git a/docs/assets/flags/ro.svg b/docs/assets/flags/ro.svg
new file mode 100644
index 0000000000..fda0f7bec9
--- /dev/null
+++ b/docs/assets/flags/ro.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/flags/ru.svg b/docs/assets/flags/ru.svg
new file mode 100644
index 0000000000..cf243011ae
--- /dev/null
+++ b/docs/assets/flags/ru.svg
@@ -0,0 +1,5 @@
+
diff --git a/docs/assets/flags/sa.svg b/docs/assets/flags/sa.svg
new file mode 100644
index 0000000000..596cf48bb7
--- /dev/null
+++ b/docs/assets/flags/sa.svg
@@ -0,0 +1,25 @@
+
diff --git a/docs/assets/flags/se.svg b/docs/assets/flags/se.svg
new file mode 100644
index 0000000000..8ba745acaf
--- /dev/null
+++ b/docs/assets/flags/se.svg
@@ -0,0 +1,4 @@
+
diff --git a/docs/assets/flags/sk.svg b/docs/assets/flags/sk.svg
new file mode 100644
index 0000000000..676018e628
--- /dev/null
+++ b/docs/assets/flags/sk.svg
@@ -0,0 +1,9 @@
+
diff --git a/docs/assets/flags/th.svg b/docs/assets/flags/th.svg
new file mode 100644
index 0000000000..1e93a61e95
--- /dev/null
+++ b/docs/assets/flags/th.svg
@@ -0,0 +1,7 @@
+
diff --git a/docs/assets/flags/tr.svg b/docs/assets/flags/tr.svg
new file mode 100644
index 0000000000..b96da21f0e
--- /dev/null
+++ b/docs/assets/flags/tr.svg
@@ -0,0 +1,8 @@
+
diff --git a/docs/assets/flags/tw.svg b/docs/assets/flags/tw.svg
new file mode 100644
index 0000000000..57fd98b433
--- /dev/null
+++ b/docs/assets/flags/tw.svg
@@ -0,0 +1,34 @@
+
diff --git a/docs/assets/flags/tz.svg b/docs/assets/flags/tz.svg
new file mode 100644
index 0000000000..a2cfbca42a
--- /dev/null
+++ b/docs/assets/flags/tz.svg
@@ -0,0 +1,13 @@
+
diff --git a/docs/assets/flags/ua.svg b/docs/assets/flags/ua.svg
new file mode 100644
index 0000000000..03daa19683
--- /dev/null
+++ b/docs/assets/flags/ua.svg
@@ -0,0 +1,6 @@
+
diff --git a/docs/assets/flags/us.svg b/docs/assets/flags/us.svg
new file mode 100644
index 0000000000..9cfd0c927f
--- /dev/null
+++ b/docs/assets/flags/us.svg
@@ -0,0 +1,9 @@
+
diff --git a/docs/assets/flags/vn.svg b/docs/assets/flags/vn.svg
new file mode 100644
index 0000000000..7e4bac8f4a
--- /dev/null
+++ b/docs/assets/flags/vn.svg
@@ -0,0 +1,11 @@
+