{
  "header": {
    "title": "Papan Pemuka AISBF",
    "help": "Bantuan",
    "docs": "Dokumen",
    "about": "Tentang",
    "license": "Lesen",
    "restart_server": "Mulakan Semula Pelayan",
    "logout": "Log Keluar"
  },
  "nav": {
    "overview": "Gambaran Keseluruhan",
    "providers": "Pembekal",
    "rotations": "Putaran",
    "autoselect": "Pilih Auto",
    "prompts": "Gesaan",
    "analytics": "Analitik",
    "api_tokens": "Token API",
    "wallet": "Dompet",
    "usage": "Penggunaan",
    "users": "Pengguna",
    "settings": "Tetapan",
    "tiers": "Peringkat",
    "payment_settings": "Pembayaran",
    "upgrade": "✨ Naik Taraf! ✨",
    "notifications": "Pemberitahuan",
    "account": "Akaun"
  },
  "account_menu": {
    "edit_profile": "Edit Profil",
    "api_tokens": "Token API",
    "cache_settings": "Tetapan Cache",
    "subscription": "Langganan",
    "wallet": "Dompet",
    "billing": "Pengebilan",
    "usage_quotas": "Penggunaan & Kuota",
    "change_password": "Tukar Kata Laluan"
  },
  "notifications": {
    "title": "Pemberitahuan",
    "mark_all_read": "Tandakan semua sebagai dibaca",
    "refresh": "Muat Semula",
    "no_notifications": "Tiada pemberitahuan",
    "just_now": "baru sahaja",
    "minutes_ago": "{n}min lalu",
    "hours_ago": "{n}j lalu",
    "days_ago": "{n}h lalu"
  },
  "footer": {
    "support_development": "Sokong Pembangunan AISBF",
    "privacy_policy": "Dasar Privasi",
    "terms_of_service": "Terma Perkhidmatan",
    "contact": "Hubungi"
  },
  "donate": {
    "title": "Sokong AISBF",
    "thank_you": "Terima kasih kerana mempertimbangkan derma. Sokongan anda membantu mengekalkan AISBF sebagai perisian sumber terbuka dan percuma sepenuhnya.",
    "bitcoin": "Bitcoin (BTC)",
    "ethereum": "Ethereum (ETH), USDC, USDT (ERC20, Mainnet)",
    "click_to_copy": "Klik mana-mana alamat untuk menyalinnya",
    "copied": "Disalin!"
  },
  "welcome": {
    "title": "Selamat Datang ke AISBF!",
    "early_adopter": "Terima kasih kerana menjadi pengguna awal! Kami kini dalam fasa pembangunan intensif.",
    "may_encounter": "Anda mungkin menghadapi pepijat, gangguan perkhidmatan, atau perubahan.",
    "feedback": "Maklum balas anda membantu kami menjadikan AISBF lebih baik. Jangan teragak-agak untuk menghubungi kami!",
    "send_feedback": "Hantar Maklum Balas",
    "got_it": "Faham!"
  },
  "contact": {
    "title": "Hubungi Kami",
    "your_email": "E-mel Anda",
    "type": "Jenis",
    "select_type": "Pilih jenis...",
    "bug_report": "Laporan Pepijat",
    "feature_request": "Permintaan Ciri",
    "feedback": "Maklum Balas",
    "question": "Soalan",
    "help": "Bantuan",
    "title_field": "Tajuk",
    "title_placeholder": "Ringkasan ringkas mesej anda",
    "message": "Mesej",
    "message_placeholder": "Terangkan isu atau permintaan anda secara terperinci...",
    "send_message": "Hantar Mesej",
    "cancel": "Batal",
    "sending": "Menghantar...",
    "success": "Mesej berjaya dihantar! Terima kasih atas maklum balas anda.",
    "error": "Ralat: {error}",
    "network_error": "Ralat rangkaian. Sila cuba lagi kemudian."
  },
  "modal": {
    "notice": "Notis",
    "confirm": "Sahkan",
    "warning": "Amaran",
    "ok": "OK",
    "cancel": "Batal",
    "delete": "Padam"
  },
  "common": {
    "save": "Simpan",
    "loading": "Memuatkan...",
    "error": "Ralat",
    "success": "Berjaya",
    "close": "Tutup",
    "yes": "Ya",
    "no": "Tidak"
  },
  "providers": {
    "no_providers": "Tiada pembekal ditemui.",
    "copy": "Salin",
    "remove": "Buang",
    "save_this": "Simpan Pembekal Ini",
    "saved": "Disimpan!",
    "saving": "Menyimpan...",
    "models_section": "Model",
    "add_model": "Tambah Model Secara Manual",
    "no_models": "Tiada model dikonfigurasi",
    "model_label": "Model",
    "fetch_models": "Dapatkan Model daripada Pembekal",
    "search": "Cari",
    "filter": "Tapis",
    "cancel": "Batal",
    "filter_results": "Tapis keputusan...",
    "loading": "Memuatkan...",
    "no_results": "Tiada keputusan.",
    "searching": "Mencari...",
    "models_found_filter": "Gunakan Tapis untuk menyempitkan keputusan.",
    "no_models_found": "Tiada model ditemui untuk pembekal ini.",
    "checking_models": "Memeriksa model pembekal...",
    "fetching_from_api": "Tiada senarai model tempatan - mengambil dari API pembekal...",
    "failed_load": "Gagal memuatkan model.",
    "optional": "Pilihan",
    "credentials_file": "Laluan Fail Kelayakan",
    "credentials_file_desc": "Laluan tempat kelayakan OAuth2 akan disimpan",
    "authenticate_claude": "Sahkan dengan Claude",
    "check_status": "Semak Status",
    "upload_credentials_title": "Atau Muat Naik Fail Kelayakan",
    "upload_credentials_label": "Muat Naik Fail Kelayakan OAuth2",
    "upload_credentials_desc": "Muat naik fail JSON kelayakan Claude OAuth2",
    "cli_mode_active": "Mod Claude CLI Aktif",
    "use_cli_mode": "Gunakan mod Claude CLI",
    "upload_cli_creds": "Ganti: Muat Naik Fail Kelayakan CLI",
    "provider_label": "Pembekal",
    "model_name": "Nama Model",
    "weight": "Berat",
    "rate_limit": "Had Kadar (saat)",
    "context_size": "Saiz Konteks",
    "max_tokens": "Maks Token Permintaan",
    "api_key": "Kunci API",
    "api_base": "URL Asas API",
    "enabled": "Diaktifkan",
    "provider_type": "Jenis Pembekal",
    "provider_name": "Nama Pembekal",
    "provider_key_label": "Kunci penyedia (pengenal unik, contoh: \"gemini\", \"openai\", \"kiro\")",
    "provider_key_hint": "Ini akan digunakan sebagai ID penyedia dalam konfigurasi dan titik akhir API",
    "provider_count_singular": "{n} penyedia",
    "provider_count_plural": "{n} penyedia",
    "search_models_title": "Cari Model - {provider}",
    "result_count": "{n} hasil.",
    "kiro_auth_title": "Pengesahan Kiro",
    "kiro_auth_hint": "Pilih satu kaedah pengesahan: Kelayakan Kiro IDE (creds_file), pangkalan data kiro-cli (sqlite_db), atau kelayakan terus (refresh_token + client_id/secret).",
    "kiro_opt1": "Pilihan 1: Kelayakan Kiro IDE",
    "kiro_opt2": "Pilihan 2: Pangkalan Data kiro-cli",
    "kiro_opt3": "Pilihan 3: Kelayakan Langsung",
    "kiro_opt4": "Pilihan 4: Muat Naik Fail",
    "kiro_aws_region": "Wilayah AWS",
    "kiro_aws_region_hint": "Wilayah AWS untuk API Kiro (lalai: us-east-1)",
    "kiro_sqlite_path": "Laluan Pangkalan Data SQLite",
    "kiro_sqlite_hint": "Laluan pangkalan data SQLite kiro-cli",
    "kiro_refresh_token": "Token Segar Semula",
    "kiro_refresh_hint": "Token Segar Semula Kiro untuk pengesahan terus",
    "kiro_profile_arn": "ARN Profil",
    "kiro_profile_arn_hint": "ARN Profil AWS CodeWhisperer (pilihan)",
    "kiro_client_id": "ID Pelanggan (untuk pengesahan AWS SSO OIDC)",
    "kiro_client_id_hint": "ID Pelanggan OAuth untuk pengesahan AWS SSO OIDC",
    "kiro_client_secret": "Rahsia Pelanggan (untuk pengesahan AWS SSO OIDC)",
    "kiro_client_secret_hint": "Rahsia Pelanggan OAuth untuk pengesahan AWS SSO OIDC",
    "kiro_upload_creds": "Muat Naik Fail Kelayakan",
    "kiro_upload_creds_hint": "Muat naik fail JSON Kelayakan Kiro IDE",
    "kiro_upload_sqlite": "Muat Naik Pangkalan Data SQLite",
    "kiro_upload_sqlite_hint": "Muat naik fail Pangkalan Data SQLite kiro-cli",
    "kilo_opt1": "Pilihan 1: Kekunci API (disyorkan)",
    "kilo_opt2": "Pilihan 2: Pengesahan OAuth2",
    "qwen_opt2_discontinued": "Pilihan 2: Pengesahan OAuth2 (DIBATALKAN - tidak berfungsi)",
    "kiro_auth_section": "Pengesahan Kiro",
    "kilo_auth_section": "Pengesahan Kilocode",
    "kilo_auth_hint": "Pilih kaedah pengesahan pilihan anda: Kekunci API (disyorkan untuk kesederhanaan) atau pengesahan peranti OAuth2.",
    "workspace_id": "ID Ruang Kerja",
    "workspace_id_hint": "ID Ruang Kerja untuk Jerman (lalai: \"Ruang Kerja Lalai\")",
    "oauth2_issuer_url": "URL Penerbit OAuth2",
    "pricing_section": "Tetapan Harga",
    "subscription_based": "Penyedia Berdasarkan Langganan (percuma)",
    "subscription_based_hint": "Jika ditanda, penyedia ini adalah berdasarkan langganan dan kos akan dikira sebagai $0. Penggunaan masih akan dijejaki untuk tujuan analitik.",
    "price_prompt": "Harga setiap juta token input (USD)",
    "price_prompt_hint": "Biarkan kosong untuk menggunakan harga lalai. Contoh: OpenAI GPT-4: $10, Anthropic Claude: $15, Google Gemini: $1.25",
    "price_completion": "Harga setiap juta token output (USD)",
    "price_completion_hint": "Biarkan kosong untuk menggunakan harga lalai. Contoh: OpenAI GPT-4: $30, Anthropic Claude: $75, Google Gemini: $5.00",
    "rate_limit_hint": "Lengahan antara permintaan untuk penyedia ini",
    "default_rate_limit_tpm": "Had Kadar Lalai (token/minit)",
    "default_rate_limit_tpm_hint": "Had token per minit lalai untuk model dalam penyedia ini",
    "default_rate_limit_tph": "Had Kadar Lalai (token/jam)",
    "default_rate_limit_tph_hint": "Had token per jam lalai untuk model dalam penyedia ini",
    "default_rate_limit_tpd": "Had Kadar Lalai (token/hari)",
    "default_rate_limit_tpd_hint": "Had token per hari lalai untuk model dalam penyedia ini",
    "default_condense_context": "Peratus Pemampatan Konteks Lalai",
    "default_condense_method": "Kaedah Pemampatan Lalai (bersembang, semantik, berhierarki, algoritmik)",
    "nsfw": "Umur 18+",
    "privacy": "Privasi",
    "native_caching_section": "Pengekodan Tempatan Penyedia",
    "native_caching_hint": "Ciri-ciri penyimpanan tempatan penyedia (Anthropic cache_control, Google Context Caching, OpenAI dan API serasi Kilo) untuk mengurangkan kos",
    "enable_native_caching": "Dayakan Pengekodan Tempatan Penyedia",
    "enable_native_caching_hint": "Dayakan penyimpanan tempatan penyedia untuk mengurangkan kos (jimlang 50-70% untuk penyedia yang disokong)",
    "cache_ttl": "TTL Cache (saat)",
    "cache_ttl_hint": "J hayat cache dalam saat (hanya untuk Google Context Caching)",
    "min_cacheable_tokens": "Token Boleh Disimpan Minimum",
    "min_cacheable_tokens_hint": "Bilangan token minimum untuk kandungan layak disimpan dalam cache (lalai: 1000)",
    "prompt_cache_key": "Kunci Cache Galakan (OpenAI/Kilo)",
    "prompt_cache_key_hint": "Kunci cache galakan pilihan untuk pengoptimuman pengagihan beban alatan OpenAI/Kilo",
    "models_section_hint": "Konfigurasi model tertentu untuk penyedia ini, atau biarkan kosong untuk mengambil secara automatik semua model yang tersedia dari API penyedia.",
    "model_filter": "Penapis Model (untuk model yang dimuat turun secara automatik)",
    "model_filter_hint": "Apabila tiada model dikonfigurasi secara manual, hanya model yang ID-nya mengandungi penapis ini (padanan huruf besar-kecil, kad liar) yang akan dipamerkan",
    "model_rate_limit_tpm": "Had Kadar TPM (token/minit)",
    "model_rate_limit_tph": "Had Kadar TPH (token/jam)",
    "model_rate_limit_tpd": "Had Kadar TPD (token/hari)",
    "model_condense_context": "Pemampatan Konteks Model (%)",
    "model_condense_method": "Kaedah Pemampatan",
    "standard_config": "Konfigurasi penyedia piawai.",
    "uploading_file": "Memuat naik fail: {pct}%",
    "uploading_cli": "Memuat naik kelayakan CLI: {pct}%",
    "cli_creds_saved": "Kelayakan CLI disimpan: {name}",
    "upload_failed": "Muat naik gagal: {error}",
    "fetching_models": "Mendapatkan model...",
    "checking_auth": "Memeriksa status pengesahan {provider}...",
    "auth_valid": "✅ Pengesahan {provider} sah. Tamat tempoh: {expiry}",
    "auth_failed": "❌ Pengesahan {provider} gagal: {error}",
    "auth_error": "❌ Ralat semasa menyemak pengesahan {provider}: {error}",
    "auth_success": "✓ Pengesahan {provider} berjaya! Kelayakan disimpan.",
    "auth_timeout": "✗ Tamat tempoh pengesahan. Sila cuba lagi.",
    "auth_denied": "✗ Pengguna menolak kebenaran.",
    "auth_expired": "✗ Kod kebenaran tamat tempoh. Sila cuba lagi.",
    "auth_start_failed": "✗ Gagal memulakan pengesahan: {error}",
    "auth_error_completing": "✗ Ralat melengkapkan pengesahan: {error}",
    "auth_generic_error": "✗ Ralat: {error}",
    "remove_provider_confirm": "Alih keluar penyedia \"{key}\"?",
    "remove_provider_title": "Alih Keluar Penyedia",
    "remove_model_confirm": "Alih keluar model ini?",
    "remove_model_title": "Alih Keluar Model",
    "missing_key": "Sila masukkan kunci penyedia",
    "missing_key_title": "Kunci Hilang",
    "duplicate_key": "Kunci penyedia sudah wujud",
    "duplicate_key_title": "Kunci Pendua",
    "error_saving": "Ralat menyimpan",
    "models_found": "{n} model ditemui",
    "models_fetch_error": "❌ Ralat: {error}",
    "not_authenticated": "Tidak Disahkan"
  },
  "rotations": {
    "model_name": "Nama Model",
    "notify_errors": "Beritahu Ralat",
    "notify_errors_desc": "kembalikan ralat sebagai mesej apabila semua pembekal gagal",
    "capabilities": "Keupayaan (dipisah koma)",
    "capabilities_placeholder": "cth. code_generation, t2t, reasoning",
    "default_rate_limit": "Had Kadar Lalai (saat)",
    "default_context_size": "Saiz Konteks Lalai",
    "nsfw": "NSFW",
    "privacy": "Privasi",
    "providers_section": "Pembekal",
    "add_provider": "Tambah Pembekal",
    "no_providers": "Tiada pembekal dikonfigurasi",
    "provider_id": "ID Pembekal",
    "weight_optional": "Berat (pilihan)",
    "models_section": "Model",
    "add_model": "Tambah Model",
    "no_models": "Tiada model ditentukan",
    "leave_empty": "Biarkan model kosong untuk menggunakan semua model dari pembekal",
    "rate_limit": "Had Kadar (saat)",
    "max_request_tokens": "Maks Token Permintaan",
    "context_size": "Saiz Konteks",
    "condense_context_pct": "Padatkan Konteks (%)",
    "condense_method": "Kaedah Pemadatan",
    "condense_method_placeholder": "cth. semantic, conversational, hierarchical",
    "save_this": "Simpan Putaran Ini",
    "remove": "Buang",
    "copy": "Salin",
    "search": "Cari",
    "optional": "Pilihan",
    "no_rotations": "Tiada putaran dikonfigurasi",
    "filter_results": "Tapis keputusan...",
    "loading": "Memuatkan...",
    "no_results": "Tiada keputusan.",
    "searching": "Mencari...",
    "cancel": "Batal",
    "filter": "Tapis",
    "saved": "Disimpan!",
    "saving": "Menyimpan...",
    "select_provider": "Pilih pembekal...",
    "type_search_provider": "Taip untuk mencari pembekal...",
    "weight": "Berat",
    "providers_singular": "pembekal",
    "providers_plural": "pembekal",
    "provider_label": "Pembekal",
    "model_label": "Model",
    "failed_load": "Gagal memuatkan model.",
    "checking_models": "Memeriksa model pembekal...",
    "fetching_from_api": "Tiada senarai tempatan - mengambil dari API...",
    "no_models_found": "Tiada model ditemui.",
    "models_found_filter": "Gunakan Tapis untuk menyempitkan keputusan.",
    "search_models_title": "Cari Model - {provider}",
    "result_count": "{n} hasil.",
    "copy_prompt": "Salin \"{key}\" — masukkan kekunci putaran baharu:",
    "copy_title": "Salin putaran",
    "add_prompt": "Masukkan kekunci putaran (cth: \"pengekodan\", \"am\"):",
    "add_title": "Tambah putaran",
    "key_different": "Kekunci baharu mesti berbeza daripada sumber",
    "key_exists": "Kekunci putaran sudah wujud",
    "key_exists_title": "Kunci Pendua",
    "invalid_key_title": "Kunci Tidak Sah",
    "remove_confirm": "Alih keluar putaran \"{key}\"?",
    "remove_title": "Alih keluar putaran",
    "remove_provider_confirm": "Alih keluar pembekal ini?",
    "remove_provider_title": "Alih keluar penyedia",
    "remove_model_confirm": "Alih keluar model ini?",
    "remove_model_title": "Alih keluar model",
    "error_saving": "Ralat menyimpan"
  },
  "autoselect": {
    "model_name": "Nama Model",
    "capabilities": "Keupayaan (dipisah koma)",
    "capabilities_placeholder": "cth. t2t, reasoning, multimodal",
    "nsfw": "NSFW",
    "privacy": "Privasi",
    "classify_nsfw": "Klasifikasikan NSFW",
    "classify_nsfw_desc": "Ganti tetapan classify_nsfw global",
    "classify_privacy": "Klasifikasikan Privasi",
    "classify_privacy_desc": "Ganti tetapan classify_privacy global",
    "classify_semantic": "Klasifikasikan Semantik",
    "classify_semantic_desc": "Ganti tetapan classify_semantic global",
    "description": "Penerangan",
    "selection_model": "Model Pemilihan",
    "selection_model_desc": "Pilih \"internal\" untuk menggunakan model dalaman yang dikonfigurasi",
    "internal_model": "internal (Gunakan model dalaman yang dikonfigurasi)",
    "fallback_model": "Model Sandaran",
    "fallback_model_desc": "Pilih dari putaran atau model pembekal",
    "default_settings": "Tetapan Lalai",
    "default_settings_desc": "Nilai lalai untuk model dalam pilihan auto ini",
    "default_rate_limit": "Had Kadar Lalai (saat)",
    "default_max_request_tokens": "Maks Token Permintaan Lalai",
    "default_context_size": "Saiz Konteks Lalai",
    "default_rate_limit_tpm": "Had Kadar Lalai TPM",
    "default_rate_limit_tpm_desc": "Had token seminit",
    "default_rate_limit_tph": "Had Kadar Lalai TPH",
    "default_rate_limit_tph_desc": "Had token sejam",
    "default_rate_limit_tpd": "Had Kadar Lalai TPD",
    "default_rate_limit_tpd_desc": "Had token sehari",
    "default_condense_context": "Pemadatan Konteks Lalai",
    "default_condense_context_desc": "Aktifkan pemadatan konteks pada bilangan token ini",
    "available_models": "Model Tersedia",
    "available_models_desc": "Tentukan model yang boleh dipilih",
    "add_model": "Tambah Model",
    "no_models": "Tiada model dikonfigurasi",
    "model_label": "Model",
    "model_id": "ID Model",
    "model_id_desc": "Pilih dari putaran atau model pembekal",
    "model_description": "Penerangan",
    "model_description_hint": "Nyatakan dengan tepat bila model ini harus digunakan",
    "save_this": "Simpan Pilihan Auto Ini",
    "remove": "Buang",
    "copy": "Salin",
    "search": "Cari",
    "optional": "Pilihan",
    "no_autoselects": "Tiada konfigurasi pilihan auto ditentukan",
    "models_singular": "model tersedia",
    "models_plural": "model tersedia",
    "select_model": "Pilih model...",
    "rotations_group": "Putaran",
    "provider_models_group": "Model Pembekal",
    "filter_results": "Tapis keputusan...",
    "loading": "Memuatkan...",
    "no_results": "Tiada keputusan.",
    "searching": "Mencari...",
    "cancel": "Batal",
    "filter": "Tapis",
    "saved": "Disimpan!",
    "saving": "Menyimpan...",
    "error_prefix": "Ralat:",
    "search_models_title": "Cari Model",
    "no_models_loaded": "Tiada model dimuatkan - mengambil dari API pembekal...",
    "failed_load": "Gagal memuatkan.",
    "copy_prompt": "Salin \"{key}\" — masukkan kunci pilihan auto baharu:",
    "copy_title": "Salin Pilihan Auto",
    "add_prompt": "Masukkan kunci pilihan auto (cth., \"autoselect\", \"smart-select\"):",
    "add_title": "Tambah Pilihan Auto",
    "key_different": "Kunci baharu mesti berbeza daripada sumber.",
    "key_exists": "Kunci pilihan auto sudah wujud.",
    "key_exists_title": "Kunci Pendua",
    "invalid_key_title": "Kunci Tidak Sah",
    "remove_confirm": "Alih keluar pilihan auto \"{key}\"?",
    "remove_title": "Alih Keluar Pilihan Auto",
    "remove_model_confirm": "Alih keluar model ini?",
    "remove_model_title": "Alih Keluar Model",
    "error_saving": "Ralat menyimpan konfigurasi",
    "result_count": "{n} hasil.",
    "models_found": "{n} model ditemui."
  },
  "users": {
    "loading": "Memuatkan...",
    "error_loading": "Ralat memuatkan pengguna",
    "processing": "Memproses...",
    "tier_updated": "Peringkat berjaya dikemas kini",
    "tier_update_failed": "Gagal mengemas kini peringkat",
    "network_error": "Ralat rangkaian",
    "send_failed": "Gagal menghantar."
  },
  "wallet": {
    "loading_transactions": "Memuatkan transaksi...",
    "no_transactions": "Tiada transaksi lagi.",
    "failed_transactions": "Gagal memuatkan transaksi.",
    "credit": "Kredit",
    "debit": "Debit",
    "refund": "Bayaran Balik",
    "topup": "Tambah Nilai",
    "payment": "Pembayaran",
    "copy_address": "Salin Alamat",
    "copied": "Disalin!",
    "loading_address": "Memuatkan...",
    "address_unavailable": "Alamat tidak tersedia",
    "qr_unavailable": "QR tidak tersedia",
    "no_address": "Tiada alamat",
    "error": "Ralat",
    "balance_credited": "Baki dikreditkan selepas pengesahan on-chain.",
    "send_to_address": "Hantar ke alamat ini:",
    "processing": "Memproses...",
    "network_error": "Ralat rangkaian. Sila cuba lagi.",
    "failed_checkout": "Gagal memulakan pembayaran.",
    "save_failed": "Gagal menyimpan tetapan.",
    "saved": "✓ Disimpan",
    "address_copied": "Alamat disalin ke papan klip!",
    "copy_failed": "Salin gagal — sila salin secara manual.",
    "copy_failed_title": "Salin Gagal"
  },
  "analytics": {
    "no_users_found": "Tiada pengguna ditemui",
    "all_users": "Semua Pengguna"
  },
  "rate_limits": {
    "loading": "Memuatkan data had kadar...",
    "no_data": "Tiada pengehad kadar aktif. Data akan muncul apabila pembekal menerima respons 429."
  },
  "billing": {
    "processing": "Memproses...",
    "add_card": "Tambah Kad"
  },
  "payments": {
    "disabled": "Dilumpuhkan",
    "no_sources": "Tiada sumber",
    "not_initialized": "Belum Dimulakan",
    "keys_active": "Kunci Aktif",
    "error": "Ralat",
    "error_loading_status": "Ralat memuatkan status"
  },
  "overview": {
    "title": "Gambaran Keseluruhan Papan Pemuka",
    "server": "Pelayan",
    "host": "Hos",
    "port": "Port",
    "protocol": "Protokol",
    "auth": "Pengesahan",
    "enabled": "Diaktifkan",
    "disabled": "Dinyahaktifkan",
    "quick_actions": "Tindakan Pantas",
    "rate_limits": "Had Kadar",
    "cache": "Cache"
  },
  "users_page": {
    "title": "User Management",
    "add_user": "Add New User",
    "username": "Username",
    "email": "Email",
    "password": "Password",
    "role": "Role",
    "role_user": "User",
    "role_admin": "Admin",
    "add_btn": "Add User",
    "search_users": "Search Users",
    "search_placeholder": "Search by username, email, or display name...",
    "status": "Status:",
    "status_all": "All",
    "status_active": "Active",
    "status_inactive": "Inactive",
    "role_filter": "Role:",
    "search_btn": "Search",
    "clear_btn": "Clear",
    "all_users": "All Users",
    "enable_selected": "Enable Selected",
    "disable_selected": "Disable Selected",
    "delete_selected": "Delete Selected",
    "clear_selection": "Clear Selection",
    "col_email": "Email",
    "col_role": "Role",
    "col_tier": "Tier",
    "col_created_by": "Created By",
    "col_active": "Active",
    "col_actions": "Actions",
    "role_admin_label": "Admin",
    "role_user_label": "User",
    "active_yes": "Yes",
    "active_no": "No",
    "edit_btn": "Edit",
    "delete_btn": "Delete",
    "no_users": "No users found",
    "show": "Show:",
    "edit_title": "Edit User",
    "new_password": "New Password (leave blank to keep current)",
    "save_changes": "Save Changes",
    "send_notification": "Send Notification",
    "notify_title": "Title",
    "notify_message": "Message",
    "send_btn": "Send",
    "prev": "← Previous",
    "next": "Next →",
    "notify_title_placeholder": "Notification title",
    "notify_message_placeholder": "Notification message…"
  },
  "wallet_page": {
    "title": "Wallet",
    "available_balance": "Available Balance",
    "auto_topup_active": "Auto Top-Up Active",
    "auto_topup_off": "Auto Top-Up Off",
    "topup_title": "Top Up Wallet",
    "quick_amounts": "Quick amounts",
    "custom_amount": "Custom amount",
    "topup_stripe": "Top Up with Stripe",
    "topup_paypal": "Top Up with PayPal",
    "crypto_deposit": "Crypto deposit",
    "auto_topup_title": "Auto Top-Up Settings",
    "enable_auto_topup": "Enable Auto Top-Up",
    "topup_amount": "Top-up amount",
    "trigger_below": "Trigger when balance falls below",
    "save_settings": "Save Settings",
    "no_card": "Auto top-up charges your saved credit card automatically. You don't have a credit card on file yet.",
    "add_credit_card": "Add Credit Card",
    "auto_topup_desc": "Enable auto top-up to automatically reload your wallet when the balance drops below a threshold.",
    "tx_history": "Transaction History",
    "col_date": "Date",
    "col_type": "Type",
    "col_description": "Description",
    "col_amount": "Amount",
    "col_status": "Status Pembayaran",
    "deposit": "Deposit",
    "no_payment_methods": "No payment methods are currently enabled.",
    "contact_admin": "Please contact the administrator to enable a payment gateway.",
    "did_you_know": "Did you know?",
    "wallet_upgrade_hint": "You can use your wallet balance to subscribe to a paid plan and unlock higher limits.",
    "view_plans": "View Plans",
    "currency": "Mata Wang",
    "wallet_id": "ID Dompet",
    "charged_to_card": "Dicaj kepada kad kredit lalai anda:",
    "invalid_amount": "Sila pilih atau masukkan jumlah antara {min} dan {max}.",
    "invalid_amount_title": "Jumlah Tidak Sah"
  },
  "analytics_page": {
    "title": "Analytics",
    "cost_today": "Today's Estimated Cost",
    "estimated_savings": "Estimated Savings",
    "savings_desc": "From cache hits & optimization",
    "all_providers": "Semua pembekal",
    "all_models": "Semua model",
    "all_users": "Semua pengguna",
    "export": "Export CSV",
    "selected_period": "Selected Period Cost",
    "all_rotations": "Semua putaran",
    "all_autoselects": "Semua pilihan auto",
    "search_users_placeholder": "Search users...",
    "col_provider": "Provider",
    "col_total_requests": "Total Requests",
    "col_success": "Success",
    "col_errors": "Errors",
    "col_error_rate": "Error Rate",
    "col_avg_latency": "Avg Latency",
    "col_input_tokens": "Input Tokens",
    "col_output_tokens": "Output Tokens",
    "col_total_tokens": "Total Tokens",
    "col_tpm": "Tokens/Min",
    "col_tph": "Tokens/Hour",
    "col_tpd": "Tokens/Day",
    "col_opt_type": "Optimization Type",
    "col_count": "Count",
    "col_tokens_saved": "Tokens Saved",
    "col_cost_saved": "Cost Saved",
    "col_avg_tokens_opt": "Avg Tokens/Optimization",
    "col_max_tokens_saved": "Max Tokens Saved",
    "col_model": "Model",
    "col_type": "Type",
    "col_context_size": "Context Size",
    "col_condense_method": "Condense Method",
    "total": "Jumlah",
    "back": "Kembali ke papan pemuka"
  },
  "rate_limits_page": {
    "title": "Rate Limits",
    "desc": "Adaptive rate limiting — learns from 429 responses",
    "reset_all": "Reset All",
    "col_provider": "Provider",
    "col_model": "Model",
    "col_delay": "Current Delay",
    "col_hits": "429 Hits",
    "col_last_hit": "Last Hit",
    "col_actions": "Actions",
    "reset": "Reset",
    "refresh": "Muat Semula",
    "provider_label": "Pembekal:",
    "enabled": "Diaktifkan:",
    "current_rate_limit": "Had Kadar Semasa:",
    "base_rate_limit": "Had Kadar Asas:",
    "total_429": "Jumlah 429:",
    "total_requests": "Jumlah Permintaan:",
    "consecutive_429": "429 Berturut-turut:",
    "consecutive_success": "Consecutive Successes:",
    "recent_429": "Jumlah 429 Terkini:",
    "last_429": "Masa 429 Terakhir:",
    "never": "Tidak Pernah",
    "seconds": "{n} saat",
    "yes": "Ya",
    "no": "Tidak",
    "reset_confirm": "Tetapkan semula pengehad kadar untuk {provider}?",
    "reset_confirm_title": "Tetapkan Semula Pengehad Kadar",
    "reset_all_confirm": "Tetapkan semula semua pengehad kadar? Ini akan mengosongkan semua had kadar yang telah dipelajari.",
    "reset_all_title": "Tetapkan Semula Semua",
    "reset_all_success": "Semua pengehad kadar berjaya ditetapkan semula",
    "analytics": "Analitik",
    "response_cache": "Cache Respons",
    "rate_limits": "Had Kadar"
  },
  "login_page": {
    "title": "Log masuk",
    "username": "Nama pengguna",
    "password": "Kata laluan",
    "submit": "Log masuk",
    "forgot_password": "Lupa kata laluan?",
    "no_account": "Tiada akaun?",
    "sign_up": "Daftar",
    "or_login_with": "Atau log masuk dengan",
    "remember_me": "Ingat saya"
  },
  "signup_page": {
    "title": "Buat akaun",
    "username": "Nama pengguna",
    "email": "Alamat e-mel",
    "password": "Kata laluan",
    "confirm_password": "Sahkan kata laluan",
    "submit": "Buat akaun",
    "have_account": "Sudah ada akaun?",
    "login": "Log masuk",
    "username_hint": "3-50 aksara, hanya huruf, nombor, garis bawah, tanda sempang dan titik",
    "email_hint": "Anda akan menerima e-mel pengesahan di alamat ini",
    "password_hint": "Sekurang-kurangnya 8 aksara dengan huruf besar, huruf kecil dan nombor"
  },
  "forgot_page": {
    "title": "Tetapkan semula kata laluan",
    "email": "Alamat e-mel",
    "submit": "Hantar pautan",
    "back_to_login": "Kembali ke log masuk",
    "intro": "Masukkan alamat e-mel anda dan kami akan menghantar pautan untuk menetapkan semula kata laluan anda.",
    "sent": "Jika akaun wujud dengan alamat e-mel tersebut, kami telah menghantar pautan tetapan semula kata laluan. Pautan itu akan tamat tempoh dalam 24 jam. Sila semak peti masuk dan folder spam anda."
  },
  "reset_page": {
    "title": "Kata laluan baharu",
    "password": "Kata laluan baharu",
    "confirm": "Sahkan",
    "submit": "Tetapkan semula",
    "intro": "Sila masukkan kata laluan baharu anda di bawah.",
    "password_hint": "Mesti sekurang-kurangnya 8 aksara",
    "success": "Kata laluan anda berjaya ditetapkan semula. Anda kini boleh log masuk dengan kata laluan baharu anda.",
    "go_to_login": "Pergi ke Log Masuk",
    "invalid_token": "Pautan tetapan semula kata laluan ini tidak sah atau telah tamat tempoh. Sila minta pautan tetapan semula kata laluan yang baharu.",
    "request_new": "Minta Pautan Tetapan Semula Baharu"
  },
  "profile_page": {
    "title": "Edit profil",
    "subtitle": "Kemaskini maklumat akaun",
    "account_info": "Maklumat akaun",
    "username": "Nama pengguna",
    "display_name": "Nama paparan",
    "email": "Alamat e-mel",
    "profile_picture": "Gambar profil",
    "save": "Simpan perubahan",
    "display_name_hint": "Beginilah nama anda akan dipaparkan di seluruh aplikasi",
    "no_email": "Tiada alamat e-mel ditetapkan.",
    "add_email": "Tambah E-mel",
    "change_email": "Tukar E-mel",
    "email_requires_verify": "(memerlukan pengesahan)",
    "upload_image": "Muat Naik Imej",
    "upload_hint": "Maksimum 5 MB. JPG, PNG, GIF, WebP.",
    "danger_zone": "Zon Bahaya",
    "danger_zone_desc": "Padam akaun anda dan semua data berkaitan secara kekal.",
    "delete_account": "Padam Akaun",
    "uploading": "Sedang memuat naik…",
    "upload_pct": "Sedang memuat naik… {pct}%",
    "upload_success": "Gambar profil dikemas kini!",
    "upload_too_large": "Imej terlalu besar. Saiz maksimum ialah 5 MB.",
    "upload_invalid_type": "Jenis fail tidak sah. Sila muat naik JPG, PNG, GIF atau WebP.",
    "upload_failed": "Muat naik gagal: {error}"
  },
  "password_page": {
    "title": "Tukar kata laluan",
    "subtitle": "Kemaskini kata laluan",
    "section": "Tetapan kata laluan",
    "current": "Kata laluan semasa",
    "new": "Kata laluan baharu",
    "confirm": "Sahkan",
    "submit": "Tukar kata laluan"
  },
  "email_page": {
    "title": "Change Email Address",
    "subtitle": "Update your email address. You will need to verify the new email before it takes effect.",
    "current": "Current Email",
    "new": "New Email Address",
    "password": "Current Password",
    "submit": "Send Verification Email",
    "cancel": "Cancel",
    "password_hint": "Sahkan kata laluan anda untuk meneruskan"
  },
  "delete_page": {
    "title": "Delete Account",
    "warning": "This action cannot be undone. All your data will be permanently deleted.",
    "confirm_title": "Confirm Account Deletion",
    "password": "Enter Your Password to Confirm",
    "type_delete": "Type \"DELETE\" to confirm",
    "submit": "Delete My Account Permanently",
    "cancel": "Cancel",
    "danger_zone": "Zon Bahaya",
    "danger_zone_desc": "Padam akaun anda dan semua data berkaitan secara kekal.",
    "will_delete": "⚠️ Ini akan memadam secara kekal:",
    "item_account": "Akaun dan maklumat profil anda",
    "item_providers": "Semua pembekal API dan konfigurasi anda",
    "item_rotations": "Semua tetapan putaran dan pilihan auto anda",
    "item_history": "Semua sejarah penggunaan dan analitik anda",
    "item_tokens": "Semua token API anda",
    "sub_warning_title": "⚠️ Amaran: Langganan Aktif Dikesan",
    "sub_warning_desc": "Anda mempunyai langganan berbayar yang aktif ({tier}). Memadam akaun anda akan:",
    "sub_item_cancel": "Membatalkan langganan anda serta-merta",
    "sub_item_access": "Anda akan kehilangan akses kepada semua ciri premium",
    "sub_item_refund": "Tiada bayaran balik akan diberikan untuk baki tempoh langganan",
    "sub_consider": "Pertimbangkan untuk membatalkan langganan anda dahulu jika anda mahu terus menggunakannya sehingga akhir tempoh pengebilan.",
    "type_delete_confirm": "Sila taip \"DELETE\" tepat seperti ini untuk mengesahkan pemadaman akaun.",
    "final_confirm": "Adakah anda benar-benar pasti? Tindakan ini tidak boleh dibatalkan dan semua data anda akan dipadam secara kekal."
  },
  "tokens_page": {
    "title": "API Tokens",
    "desc": "Generate tokens to authenticate requests to your personal API endpoints.",
    "create": "Create Token",
    "scope": "Scope",
    "no_tokens": "No API tokens yet.",
    "no_tokens_hint": "Create one to start using the API.",
    "copy": "Copy",
    "copy_full": "Copy full",
    "revoke": "Revoke",
    "cancel": "Cancel",
    "new_token": "توکن جدید",
    "your_tokens": "توکن‌های شما",
    "description": "توضیحات",
    "description_optional": "توضیحات (اختیاری)",
    "description_placeholder": "مثلاً برنامه من، سرور خانگی …",
    "scope_api": "فقط API",
    "scope_api_hint": "(درخواست‌های پراکسی)",
    "scope_mcp": "فقط MCP",
    "scope_mcp_hint": "(ابزارهای ناوگان)",
    "scope_both": "هر دو",
    "create_btn": "ایجاد",
    "token_created": "توکن با موفقیت ساخته شد",
    "copy_now_warn": "این توکن را همین حالا کپی کنید — دوباره نمایش داده نخواهد شد.",
    "done": "انجام شد",
    "how_to_use": "نحوه استفاده از توکن شما",
    "auth_header_desc": "توکن را در هدر {header} به هر درخواست اضافه کنید:",
    "token_scopes": "دامنه توکن‌ها:",
    "scope_api_access": "نقطه‌های پایانی API فقط ({path})",
    "scope_mcp_access": "نقطه‌های پایانی ابزارهای MCP فقط ({path})",
    "scope_both_access": "هر دو نقطه پایانی API و MCP",
    "available_endpoints": "نقطه‌های پایانی موجود:",
    "col_method": "متد",
    "col_endpoint": "نقطه پایانی",
    "col_scope": "دامنه",
    "col_description": "توضیحات",
    "ep_list_models": "لیست مدل‌های شما",
    "ep_list_providers": "لیست ارائه‌دهندگان شما",
    "ep_list_rotations": "لیست تناوب‌های شما",
    "ep_list_autoselects": "لیست انتخاب‌های خودکار شما",
    "ep_chat": "چت با استفاده از پیکربندی‌های شما",
    "ep_mcp_list": "لیست ابزارهای MCP",
    "ep_mcp_call": "فراخوانی ابزارهای MCP",
    "example_commands": "مثال‌های دستور کامنت",
    "active": "فعال",
    "inactive": "غیرفعال",
    "created": "ایجاد شده",
    "last_used": "آخرین استفاده",
    "unnamed_token": "توکن بدون نام",
    "delete_confirm": "این توکن API را حذف می‌کند؟ این کار قابل برگشت نیست.",
    "delete_token": "حذف توکن"
  },
  "billing_page": {
    "title": "Billing",
    "payment_methods": "Kaedah pembayaran",
    "paypal": "PayPal",
    "credit_card": "Credit Card",
    "bitcoin": "Bitcoin",
    "ethereum": "Ethereum",
    "usdt": "USDT",
    "usdc": "USDC",
    "add_card": "Add Card",
    "cancel": "Cancel",
    "wallet_balance": "Baki dompet",
    "wallet_desc": "Semua pembaharuan langganan dan bayaran ditolak secara automatik dari dompet anda terlebih dahulu.",
    "manage_wallet": "Urus dompet",
    "no_payment_methods": "Tiada kaedah pembayaran",
    "no_payment_methods_desc": "Sila hubungi pentadbir untuk membolehkan pintu gerbang pembayaran.",
    "add_credit_card": "Tambah kad kredit",
    "top_up_wallet": "Top Up Dompet",
    "set_default": "Tetapkan lalai",
    "default_label": "Lalai",
    "billing_history": "Sejarah penagihan",
    "no_history": "Tiada sejarah penagihan lagi",
    "no_history_desc": "Tiada transaksi bayaran dalam akaun anda lagi.",
    "no_history_upgrade": "Naik taraf pelan anda untuk bermula!",
    "view_plans": "Papar pelan",
    "plan_payment": "Bayaran pelan",
    "col_date": "Tarikh",
    "col_description": "Penerangan",
    "col_amount": "Jumlah",
    "col_method": "Kaedah",
    "col_status": "Status",
    "col_actions": "Tindakan",
    "status_completed": "✓ Selesai",
    "status_pending": "⏳ Menunggu",
    "status_failed": "✗ Gagal",
    "status_refunded": "↩ Dikembalikan",
    "invoice": "Invois",
    "prev": "Sebelumnya",
    "next": "Seterusnya"
  },
  "user_overview": {
    "subtitle": "Manage your AI configurations, track usage, and access your personal API endpoints.",
    "free_tier": "Free Tier",
    "col_timestamp": "Timestamp",
    "col_provider": "Provider",
    "col_model": "Model",
    "col_tokens": "Tokens",
    "recent_activity": "Recent Activity",
    "no_activity": "No recent activity",
    "stat_total_tokens": "Jumlah token",
    "stat_requests_today": "Permintaan hari ini",
    "stat_active_providers": "Penyedia aktif",
    "stat_active_rotations": "Putaran aktif",
    "quick_actions": "Tindakan pantas",
    "subscription": "Langganan",
    "manage": "Urus",
    "add_payment_method": "Tambah kaedah pembayaran",
    "unlock_more_power": "Buka lebih banyak kuasa",
    "upgrade_plan": "Naik taraf pelan",
    "higher_plans": "{n} pelan lebih tinggi tersedia — lebih banyak permintaan, lebih banyak penyedia",
    "upgrade_to": "Naik taraf ke {name} pada harga {price}/bulan",
    "api_endpoints": "Titik akhir API anda",
    "show_hide": "Tunjuk / Sembunyi",
    "auth_header_desc": "Sertakan token API anda dalam pengepala {header}:",
    "ep_models": "Model",
    "ep_list_models": "Senaraikan semua model anda",
    "ep_providers": "Penyedia",
    "ep_list_providers": "Senaraikan penyedia terkonfigurasi anda",
    "ep_rotations_autoselect": "Putaran dan pilihan automatik",
    "ep_list_rotations": "Senaraikan putaran anda",
    "ep_list_autoselects": "Senaraikan pilihan automatik anda",
    "ep_chat": "Sembang menggunakan tetapan anda",
    "ep_chat_desc": "Hantar permintaan sembang menggunakan tetapan anda",
    "ep_mcp": "Alat MCP",
    "ep_mcp_list": "Senaraikan alat MCP",
    "ep_mcp_call": "Panggil alat MCP",
    "ep_model_formats": "Contoh format model",
    "admin_access": "Akses pentadbir",
    "admin_access_desc": "Sebagai pentadbir, anda juga mempunyai akses kepada konfigurasi global melalui format model yang lebih pendek:",
    "token_required": "Token API anda diperlukan untuk semua titik akhir.",
    "manage_tokens": "Urus token anda →"
  },
  "usage_page": {
    "title": "Usage & Quotas",
    "upgrade": "Upgrade plan",
    "near_limit": "Near limit",
    "getting_close": "Getting close",
    "no_daily_cap": "No daily cap",
    "no_monthly_cap": "No monthly cap",
    "no_token_cap": "No token cap on this plan",
    "manage_subscription": "Pengurusan langganan",
    "current_plan": "Pelan semasa",
    "activity_quotas": "Kota aktiviti",
    "activity_quotas_desc": "Had masa yang diset semula secara automatik",
    "config_limits": "Had konfigurasi",
    "config_limits_desc": "Peruntukan sumber kekal untuk akaun anda",
    "requests_today": "Permintaan hari ini",
    "resets_midnight": "Ditetapkan pada tengah malam (UTC)",
    "resets_in": "Ditetapkan dalam {h}j {m}m",
    "requests_month": "Permintaan bulan ini",
    "resets_on_1st": "Ditetapkan pada hari pertama setiap bulan",
    "resets_in_days": "Ditetapkan dalam {n} hari",
    "resets_in_days_plural": "Ditetapkan dalam {n} hari",
    "tokens_24h": "Token (dalam tempoh 24 jam lepas)",
    "tokens_combined": "Input + output digabungkan",
    "tokens_used": "Token yang digunakan",
    "unlimited": "Tidak terhad",
    "quota_reached": "Kota telah dicapai",
    "remaining": "Baki {n}",
    "ai_providers": "Pembekal AI",
    "ai_providers_desc": "Integrasi penyedia yang dikonfigurasi",
    "rotations": "Putaran",
    "rotations_desc": "Konfigurasi imbangan beban",
    "autoselections": "Pilihan automatik",
    "autoselections_desc": "Konfigurasi pengalihan pintar",
    "unlimited_slots": "Slot tidak terhad tersedia",
    "pct_used_slots_free": "{pct}% digunakan · {n} slot percuma",
    "pct_used_slots_free_plural": "{pct}% digunakan · {n} slot percuma",
    "need_higher_limits": "Perlu had yang lebih tinggi?",
    "upgrade_desc": "Buka lebih banyak permintaan, penyedia dan pilihan automatik dengan menaik taraf pelan anda.",
    "view_plans": "Papar pelan"
  },
  "prompts_page": {
    "title": "Prompt sistem",
    "content": "Kandungan prompt:",
    "save": "Simpan",
    "reset": "Set semula",
    "cancel": "Batal",
    "select_file": "Pilih Fail Prompt:",
    "content_hint": "Edit templat prompt. Gunakan pemformatan markdown jika perlu.",
    "reset_confirm": "Adakah anda pasti mahu menetapkan semula prompt ini kepada konfigurasi pentadbir lalai?",
    "reset_confirm_title": "Tetapkan Semula Prompt"
  },
  "config_page": {
    "title": "Edit konfigurasi",
    "label": "Konfigurasi (JSON)",
    "save": "Simpan",
    "cancel": "Batal",
    "hint_json": "Semak sintaks JSON",
    "hint_restart": "Perubahan berkuat kuasa selepas mulakan semula",
    "hint_backup": "Sandarkan sebelum mengubah"
  },
  "error_page": {
    "title": "Ralat",
    "go_dashboard": "Ke papan pemuka",
    "go_back": "Kembali"
  },
  "tiers_page": {
    "title": "Pengurusan peringkat akaun",
    "add_tier": "Add Tier",
    "col_name": "Name",
    "col_price": "Price",
    "col_visible": "Visible",
    "col_actions": "Actions",
    "edit": "Edit",
    "delete": "Delete",
    "save": "Save",
    "cancel": "Cancel",
    "tier_name": "Tier Name",
    "monthly_price": "Monthly Price",
    "is_visible": "Visible to users",
    "subtitle": "Configure account tiers, pricing, and usage limits for your users",
    "available_tiers": "Available Tiers",
    "create_new": "Create New Tier",
    "col_price_monthly": "Price (Monthly)",
    "col_price_yearly": "Price (Yearly)",
    "col_max_req_day": "Max Requests / Day",
    "col_max_req_month": "Max Requests / Month",
    "col_max_providers": "Max Providers",
    "col_max_rotations": "Max Rotations",
    "col_max_autoselections": "Max Autoselections",
    "col_max_models_rotation": "Max Models / Rotation",
    "col_max_models_autoselect": "Max Models / Autoselect",
    "col_status": "Status",
    "unlimited": "Tidak terhad",
    "blocked": "Disekat",
    "active": "Aktif",
    "inactive": "Tidak aktif",
    "default": "Lalai",
    "default_label": "(lalai)"
  },
  "cache_page": {
    "title": "Cache Settings",
    "save": "Save"
  },
  "response_cache_page": {
    "title": "Response Cache",
    "clear": "Clear Cache",
    "stats": "Cache Statistics",
    "hits": "Hits",
    "misses": "Misses",
    "size": "Size"
  },
  "settings_page": {
    "title": "Settings",
    "save": "Save Settings",
    "general": "General",
    "security": "Security",
    "server": "Server",
    "ssl": "SSL/TLS",
    "tor": "TOR",
    "oauth2": "OAuth2",
    "condensation": "Condensation",
    "internal_model": "Internal Model",
    "currency": "Currency",
    "host": "Host",
    "port": "Port",
    "auth_enabled": "Authentication Enabled",
    "admin_username": "Admin Username",
    "admin_password": "Admin Password",
    "change_password": "Change Password",
    "current_password": "Current Password",
    "new_password": "New Password",
    "confirm_password": "Confirm Password",
    "https_enabled": "HTTPS Enabled",
    "domain": "Domain",
    "email": "Email (for Let's Encrypt)",
    "tor_enabled": "TOR Hidden Service Enabled",
    "tor_address": "TOR Address",
    "google_oauth2": "Google OAuth2",
    "github_oauth2": "GitHub OAuth2",
    "client_id": "Client ID",
    "client_secret": "Client Secret",
    "enabled": "Enabled",
    "condensation_method": "Condensation Method",
    "condensation_threshold": "Condensation Threshold (%)",
    "model_id": "Model ID",
    "currency_code": "Currency Code",
    "currency_symbol": "Currency Symbol",
    "tab_server": "Pelayan",
    "tab_auth": "Auth & MCP",
    "tab_models": "Model",
    "tab_database": "Pangkalan data",
    "tab_cache": "Cache",
    "tab_classification": "Pengelasan",
    "tab_tor": "TOR",
    "tab_signup": "Daftar",
    "tab_oauth2": "OAuth2",
    "tab_smtp": "SMTP",
    "tab_batching": "Pemprosesan kelompok",
    "tab_ratelimit": "Had kadar",
    "tab_admin": "Admin",
    "section_server": "Pelayan Config",
    "section_auth": "Auth & MCP",
    "section_mcp": "MCP Server",
    "section_models": "Internal Models",
    "section_database": "Database Configuration",
    "section_cache": "Cache Configuration",
    "section_classification": "Classification",
    "section_tor": "TOR Hidden Service",
    "section_signup": "Signup Settings",
    "section_oauth2": "OAuth2 Authentication",
    "section_google_oauth2": "Google OAuth2",
    "section_github_oauth2": "GitHub OAuth2",
    "section_smtp": "SMTP Configuration",
    "section_batching": "Request Batching",
    "section_ratelimit": "Rate Limiting",
    "section_admin": "Admin Settings",
    "section_currency": "Currency Settings",
    "section_condensation": "Condensation Settings",
    "lbl_host": "Host",
    "lbl_port": "Port",
    "lbl_protocol": "Protocol",
    "lbl_public_domain": "Public Domain (for Let's Encrypt)",
    "lbl_ssl_cert": "SSL Certificate Path",
    "lbl_ssl_key": "SSL Key Path",
    "lbl_auth_tokens": "Auth Tokens (one per line)",
    "lbl_autoselect_tokens": "Autoselect Tokens (one per line)",
    "lbl_fullconfig_tokens": "Full Config Tokens (one per line)",
    "lbl_condensation_model": "Condensation Model ID",
    "lbl_autoselect_model": "Autoselect Model ID",
    "lbl_nsfw_classifier": "NSFW Classifier Model ID",
    "lbl_privacy_classifier": "Privacy Classifier Model ID",
    "lbl_semantic_vectorization": "Semantic Vectorization Model ID",
    "lbl_database_type": "Database Type",
    "lbl_sqlite_path": "SQLite Database Path",
    "lbl_mysql_host": "MySQL Host",
    "lbl_mysql_port": "MySQL Port",
    "lbl_mysql_user": "MySQL Username",
    "lbl_mysql_password": "MySQL Password",
    "lbl_mysql_database": "MySQL Database Name",
    "lbl_cache_type": "Cache Type",
    "lbl_cache_sqlite_path": "SQLite Cache Path",
    "lbl_redis_host": "Redis Host",
    "lbl_redis_port": "Redis Port",
    "lbl_redis_db": "Redis Database",
    "lbl_redis_password": "Redis Password",
    "lbl_redis_key_prefix": "Redis Key Prefix",
    "lbl_enable_auth": "Enable API Authentication",
    "lbl_enable_mcp": "Enable MCP Server",
    "lbl_enable_tor": "Enable TOR Hidden Service",
    "lbl_allow_signup": "Allow User Signup",
    "lbl_require_email": "Require Email Verification",
    "lbl_enable_batching": "Enable Batching",
    "lbl_enable_ratelimit": "Enable Rate Limiting",
    "lbl_enable_smtp": "Enable SMTP",
    "lbl_enable_google": "Enable Google OAuth2",
    "lbl_enable_github": "Enable GitHub OAuth2",
    "save_btn": "Simpan tetapan",
    "lbl_response_cache_backend": "Response Cache Backend",
    "lbl_cache_ttl": "Cache TTL (seconds)",
    "lbl_cache_max_memory": "Max Memory Cache Size",
    "lbl_tor_control_host": "TOR Control Host",
    "lbl_tor_control_port": "TOR Control Port",
    "lbl_tor_control_password": "TOR Control Password",
    "lbl_tor_service_dir": "Hidden Service Directory",
    "lbl_tor_service_port": "Hidden Service Port",
    "lbl_socks_host": "SOCKS Proxy Host",
    "lbl_socks_port": "SOCKS Proxy Port",
    "lbl_token_expiry": "Verification Token Expiry (hours)",
    "lbl_google_client_id": "Google Client ID",
    "lbl_google_client_secret": "Google Client Secret",
    "lbl_github_client_id": "GitHub Client ID",
    "lbl_github_client_secret": "GitHub Client Secret",
    "lbl_smtp_host": "SMTP Host",
    "lbl_smtp_port": "SMTP Port",
    "lbl_smtp_username": "SMTP Username",
    "lbl_smtp_password": "SMTP Password",
    "lbl_smtp_from_email": "From Email Address",
    "lbl_smtp_from_name": "From Name",
    "lbl_batching_window": "Batching Window (milliseconds)",
    "lbl_max_batch_size": "Max Batch Size",
    "lbl_openai_batch_size": "OpenAI Max Batch Size",
    "lbl_anthropic_batch_size": "Anthropic Max Batch Size",
    "lbl_initial_rate_limit": "Initial Rate Limit (requests/second)",
    "lbl_learning_rate": "Learning Rate",
    "lbl_headroom_percent": "Headroom Percent",
    "lbl_recovery_rate": "Recovery Rate",
    "lbl_max_rate_limit": "Max Rate Limit (requests/second)",
    "lbl_min_rate_limit": "Min Rate Limit (requests/second)",
    "lbl_backoff_base": "Backoff Base",
    "lbl_jitter_factor": "Jitter Factor",
    "lbl_history_window": "History Window (seconds)",
    "lbl_consecutive_successes": "Consecutive Successes for Recovery",
    "lbl_admin_username": "Admin Username",
    "lbl_new_password": "New Password",
    "lbl_confirm_password": "Confirm New Password",
    "lbl_admin_email": "Admin Email Address"
  },
  "payments_page": {
    "title": "Tetapan sistem pembayaran",
    "currency_note_title": "Important Note About Currency Selection",
    "currency_settings": "Global Currency Settings",
    "currency_code": "Currency Code",
    "currency_symbol": "Currency Symbol",
    "decimal_places": "Decimal Places",
    "save_currency": "Simpan tetapan mata wang",
    "encryption_title": "Encryption Key Configuration",
    "critical_security": "Critical Security Setting",
    "stripe_config": "Stripe Configuration",
    "paypal_config": "PayPal Configuration",
    "bitcoin_config": "Bitcoin Configuration",
    "ethereum_config": "Ethereum Configuration",
    "usdt_config": "USDT Configuration",
    "usdc_config": "USDC Configuration",
    "coinbase_config": "Coinbase Commerce Configuration",
    "crypto_prices": "Crypto Price Sources",
    "payment_stats": "Payment Statistics",
    "master_keys": "Master Key Management",
    "subscription_settings": "Subscription Settings",
    "lbl_enabled": "Diaktifkan",
    "lbl_api_key": "Kunci API",
    "lbl_secret_key": "Secret Key",
    "lbl_webhook_secret": "Webhook Secret",
    "lbl_client_id": "Client ID",
    "lbl_client_secret": "Client Secret",
    "lbl_wallet_address": "Wallet Address",
    "lbl_min_confirmations": "Minimum Confirmations",
    "lbl_network": "Network",
    "lbl_contract_address": "Contract Address",
    "lbl_threshold": "Threshold Amount",
    "lbl_admin_address": "Admin Address",
    "lbl_monitoring": "Monitoring Method",
    "lbl_webhook_url": "Webhook URL",
    "lbl_total_balance": "Total Balance",
    "lbl_pending": "Pending Payments",
    "lbl_failed": "Failed Payments"
  },
  "subscription_page": {
    "title": "Pengurusan langganan",
    "current_plan": "Pelan semasa",
    "free_tier": "Perisian percuma",
    "no_description": "Tiada penerangan",
    "per_month": "/bulan",
    "per_year": "/tahun",
    "or_yearly": "atau {price}/tahun",
    "change_plan": "Tukar pelan",
    "requests_per_day": "Permintaan harian",
    "requests_per_month": "Permintaan bulanan",
    "providers": "Pembekal",
    "rotations": "Putaran",
    "subscription_status": "Status langganan",
    "renews": "Diperbaharui:",
    "cancel_subscription": "Batalkan langganan",
    "quick_actions": "Tindakan pantas",
    "billing_payments": "Penagihan",
    "billing_payments_desc": "Urus kaedah pembayaran dan papar sejarah",
    "upgrade_plan": "Naik taraf pelan",
    "upgrade_plan_desc": "Papar semua pelan yang tersedia",
    "edit_profile": "Edit profil",
    "edit_profile_desc": "Kemas kini maklumat akaun",
    "change_password": "Tukar kata laluan",
    "change_password_desc": "Kemas kini tetapan keselamatan",
    "no_payment_methods": "Tiada kaedah pembayaran",
    "no_payment_methods_desc": "Sila hubungi pentadbir untuk membolehkan pintu gerbang pembayaran.",
    "go_to_billing": "Pergi ke Penagihan"
  },
  "user_providers_page": {
    "title": "Pembekal Saya",
    "add_new": "Tambah Pembekal Baharu"
  },
  "user_rotations_page": {
    "title": "Konfigurasi Putaran Saya",
    "add_rotation": "Tambah Putaran",
    "save_config": "Simpan Konfigurasi",
    "cancel": "Batal"
  },
  "user_autoselects_page": {
    "title": "Konfigurasi Pilihan Auto Saya",
    "add_autoselect": "Tambah Pilihan Auto",
    "save_config": "Simpan Konfigurasi",
    "cancel": "Batal"
  }
}
