{
  "username": "نام‌کاربری",
  "password": "رمزعبور",
  "login": "ورود",
  "confirm": "تایید",
  "cancel": "انصراف",
  "close": "بستن",
  "save": "ذخیره",
  "logout": "خروج",
  "create": "ایجاد",
  "add": "افزودن",
  "remove": "حذف",
  "update": "به‌روزرسانی",
  "copy": "کپی",
  "copied": "کپی شد",
  "more": "بیشتر",
  "download": "دانلود",
  "regenerate": "تولید مجدد",
  "jsonEditor": "ویرایشگر JSON",
  "downloadImage": "دانلود تصویر",
  "sort": "مرتب‌سازی",
  "remark": "نام",
  "enable": "فعال",
  "protocol": "پروتکل",
  "search": "جستجو",
  "filter": "فیلتر",
  "all": "همه",
  "from": "از",
  "to": "تا",
  "done": "انجام شد",
  "loading": "...در حال بارگذاری",
  "refresh": "تازه‌سازی",
  "clear": "پاک کردن",
  "second": "ثانیه",
  "minute": "دقیقه",
  "hour": "ساعت",
  "day": "روز",
  "check": "چک کردن",
  "indefinite": "نامحدود",
  "unlimited": "نامحدود",
  "none": "هیچ",
  "qrCode": "QRکد",
  "info": "اطلاعات بیشتر",
  "edit": "ویرایش",
  "delete": "حذف",
  "reset": "بازنشانی",
  "noData": "داده‌ای وجود ندارد.",
  "copySuccess": "باموفقیت کپی‌شد",
  "sure": "مطمئن",
  "encryption": "رمزگذاری",
  "transmission": "راه‌اتصال",
  "host": "میزبان",
  "path": "مسیر",
  "camouflage": "مبهم‌سازی",
  "status": "وضعیت",
  "enabled": "فعال",
  "disabled": "غیرفعال",
  "depleted": "منقضی",
  "depletingSoon": "در‌حال‌انقضا",
  "offline": "آفلاین",
  "online": "آنلاین",
  "domainName": "آدرس دامنه",
  "monitor": "آی‌پی اتصال",
  "certificate": "گواهی دیجیتال",
  "fail": "ناموفق",
  "comment": "توضیحات",
  "success": "موفق",
  "lastOnline": "آخرین فعالیت",
  "getVersion": "دریافت نسخه",
  "install": "نصب",
  "clients": "کاربران",
  "usage": "استفاده",
  "twoFactorCode": "کد",
  "remained": "باقی‌مانده",
  "security": "امنیت",
  "emptyDnsDesc": "هیچ سرور DNS اضافه نشده است.",
  "emptyFakeDnsDesc": "هیچ سرور Fake DNS اضافه نشده است.",
  "emptyBalancersDesc": "هیچ بالانسر اضافه نشده است.",
  "somethingWentWrong": "مشکلی پیش آمد",
  "subscription": {
    "title": "اطلاعات سابسکریپشن",
    "subId": "شناسه اشتراک",
    "email": "ایمیل",
    "status": "وضعیت",
    "downloaded": "دانلود",
    "uploaded": "آپلود",
    "expiry": "تاریخ پایان",
    "totalQuota": "حجم کلی",
    "individualLinks": "لینک‌های تکی",
    "active": "فعال",
    "inactive": "غیرفعال",
    "unlimited": "نامحدود",
    "noExpiry": "بدون انقضا",
    "copyAllConfigs": "کپی همه کانفیگ‌ها",
    "copyAllConfigsCopied": "همه کانفیگ‌ها کپی شدند"
  },
  "menu": {
    "theme": "تم",
    "dashboard": "نمای کلی",
    "inbounds": "ورودی‌ها",
    "clients": "کلاینت‌ها",
    "groups": "گروه‌ها",
    "nodes": "نودها",
    "settings": "تنظیمات پنل",
    "xray": "پیکربندی Xray",
    "routing": "مسیریابی",
    "outbounds": "خروجی‌ها",
    "apiDocs": "مستندات API",
    "donate": "حمایت مالی",
    "hosts": "میزبان‌ها",
    "docs": "مستندات",
    "openMenu": "باز کردن منو",
    "pinSidebar": "ثابت کردن نوار کناری",
    "unpinSidebar": "برداشتن تثبیت نوار کناری"
  },
  "pages": {
    "login": {
      "hello": "سلام",
      "title": "خوش‌آمدید",
      "loginAgain": "مدت زمان استفاده به‌اتمام‌رسیده، لطفا دوباره وارد شوید",
      "toasts": {
        "invalidFormData": "اطلاعات به‌درستی وارد نشده‌است",
        "emptyUsername": "لطفا یک نام‌کاربری وارد کنید‌",
        "emptyPassword": "لطفا یک رمزعبور وارد کنید",
        "wrongUsernameOrPassword": "نام کاربری، رمز عبور یا کد دو مرحله‌ای نامعتبر است.",
        "successLogin": "شما با موفقیت به حساب کاربری خود وارد شدید."
      }
    },
    "index": {
      "cpu": "پردازنده",
      "swap": "سواپ",
      "storage": "ذخیره‌سازی",
      "memory": "حافظه",
      "xrayStatus": "Xray",
      "stopXray": "توقف",
      "restartXray": "راه‌اندازی مجدد",
      "xraySwitch": "‌نسخه",
      "xrayUpdates": "به‌روزرسانی‌های Xray",
      "xraySwitchClickDesk": "لطفا بادقت انتخاب کنید. درصورت انتخاب نسخه قدیمی‌تر، امکان ناهماهنگی با پیکربندی فعلی وجود دارد",
      "updatePanel": "به‌روزرسانی پنل",
      "panelUpdateDesc": "این عملیات 3X-UI را به آخرین نسخه به‌روزرسانی می‌کند و سرویس پنل را مجدداً راه‌اندازی می‌کند.",
      "currentPanelVersion": "نسخه فعلی پنل",
      "latestPanelVersion": "آخرین نسخه پنل",
      "panelUpToDate": "پنل به‌روز است",
      "devChannel": "کانال توسعه (Dev)",
      "devChannelWarning": "بیلدهای توسعه هر کامیت روی main را دنبال می‌کنند و نسخهٔ پایدار نیستند — بازگشت خودکار به نسخهٔ قبلی وجود ندارد.",
      "currentCommit": "کامیت فعلی",
      "latestCommit": "آخرین کامیت",
      "updateChannelChanged": "کانال به‌روزرسانی تغییر کرد",
      "xrayStatusUnknown": "ناشناخته",
      "xrayStatusRunning": "در حال اجرا",
      "xrayStatusStop": "متوقف",
      "xrayStatusError": "خطا",
      "systemHistoryTitle": "تاریخچه سیستم",
      "historyTitleCpu": "مصرف پردازنده",
      "historyTitleMem": "مصرف حافظه",
      "historyTitleNetwork": "پهنای باند شبکه",
      "historyTitlePackets": "بسته‌های شبکه",
      "historyTitleDisk": "ورودی/خروجی دیسک",
      "historyTitleOnline": "کاربران آنلاین",
      "historyTitleLoad": "میانگین بار سیستم (۱ / ۵ / ۱۵ دقیقه)",
      "historyTitleConnections": "اتصالات فعال (TCP / UDP)",
      "historyTitleDiskUsage": "مصرف فضای دیسک",
      "historyTabBandwidth": "پهنای باند",
      "historyTabPackets": "بسته‌ها",
      "historyTabDisk": "دیسک I/O",
      "historyTabOnline": "آنلاین",
      "historyTabLoad": "بار",
      "historyTabConnections": "اتصالات",
      "historyTabDiskUsage": "مصرف دیسک",
      "xrayMetricsTitle": "متریک‌های Xray",
      "xrayTitleHeap": "حافظه‌ی Heap تخصیص‌یافته",
      "xrayTitleSys": "حافظه‌ی رزروشده از سیستم‌عامل",
      "xrayTitleObjects": "اشیای زنده‌ی Heap",
      "xrayTitleGcCount": "چرخه‌های کامل‌شده‌ی GC",
      "xrayTitleGcPause": "مدت مکث GC",
      "xrayTitleObservatory": "سلامت اتصال خروجی",
      "xrayTabHeap": "Heap",
      "xrayTabSys": "Sys",
      "xrayTabObjects": "اشیا",
      "xrayTabGcCount": "تعداد GC",
      "xrayTabGcPause": "مکث GC",
      "xrayTabObservatory": "رصدخانه",
      "xrayMetricsDisabled": "نقطه پایانی متریک‌های Xray پیکربندی نشده",
      "xrayMetricsHint": "یک بلاک metrics در سطح بالای پیکربندی xray با tag برابر metrics_out و listen برابر 127.0.0.1:11111 اضافه کنید، سپس xray را راه‌اندازی مجدد کنید.",
      "xrayObservatoryEmpty": "هنوز داده‌ای از Observatory دریافت نشده",
      "xrayObservatoryHint": "یک بلاک observatory در پیکربندی xray اضافه کنید و outbound tag‌هایی که می‌خواهید بررسی شوند را لیست کنید، سپس xray را راه‌اندازی مجدد کنید.",
      "xrayObservatoryTagPlaceholder": "انتخاب outbound",
      "xrayObservatoryAlive": "فعال",
      "xrayObservatoryDead": "غیرفعال",
      "xrayObservatoryLastSeen": "آخرین مشاهده",
      "xrayObservatoryLastTry": "آخرین تلاش",
      "connectionCount": "تعداد کانکشن ها",
      "ipAddresses": "آدرس‌های IP",
      "toggleIpVisibility": "تغییر وضعیت نمایش IP",
      "overallSpeed": "سرعت کلی",
      "upload": "آپلود",
      "download": "دانلود",
      "sent": "ارسال شده",
      "received": "دریافت شده",
      "xraySwitchVersionDialog": "آیا واقعاً می‌خواهید نسخه Xray را تغییر دهید؟",
      "xraySwitchVersionDialogDesc": "این کار نسخه Xray را به #version# تغییر می‌دهد.",
      "xraySwitchVersionPopover": "Xray با موفقیت به‌روز شد",
      "panelUpdateDialog": "آیا مطمئن هستید که می‌خواهید پنل را به‌روزرسانی کنید؟",
      "panelUpdateDialogDesc": "این 3X-UI را به نسخه #version# به‌روزرسانی کرده و سرویس پنل را مجدداً راه‌اندازی می‌کند.",
      "panelUpdateStartedPopover": "به‌روزرسانی پنل آغاز شد",
      "panelUpdateFailedTitle": "به‌روزرسانی پنل ناموفق بود",
      "panelUpdateFailedDesc": "به‌روزرسانی با موفقیت به پایان نرسید. گزارش‌های سرور را بررسی کنید یا دستور «x-ui update» را از خط فرمان اجرا کنید.",
      "panelUpdateUnknownTitle": "تأیید نشد که به‌روزرسانی به پایان رسیده باشد",
      "panelUpdateUnknownDesc": "پنل به‌موقع نتیجه‌ای گزارش نکرد. صفحه را بارگذاری مجدد کنید تا نسخه فعلی را بررسی کنید یا گزارش‌های سرور را بررسی کنید.",
      "geofileUpdateDialog": "آیا واقعاً می‌خواهید فایل جغرافیایی را به‌روز کنید؟",
      "geofileUpdateDialogDesc": "این عمل فایل #filename# را به‌روز می‌کند.",
      "geofilesUpdateDialogDesc": "با این کار همه فایل‌ها به‌روزرسانی می‌شوند.",
      "geofilesUpdateAll": "همه را به‌روزرسانی کنید",
      "geofileUpdatePopover": "فایل جغرافیایی با موفقیت به‌روز شد",
      "geodataTitle": "به‌روزرسانی خودکار Geodata",
      "geodataHint": "Xray این فایل‌ها را طبق زمان‌بندی دانلود کرده و بدون ری‌استارت بارگذاری مجدد می‌کند. آدرس‌ها باید HTTPS باشند. هر فایل باید از قبل در پوشه bin موجود باشد تا Xray بتواند آن را به‌روزرسانی کند.",
      "geodataCron": "زمان‌بندی (cron)",
      "geodataOutbound": "دانلود از طریق خروجی (اختیاری)",
      "geodataFile": "نام فایل",
      "geodataAddFile": "افزودن فایل",
      "geodataSaveRestart": "ذخیره و ری‌استارت Xray",
      "geodataConfirmTitle": "تنظیمات geodata ذخیره شود؟",
      "geodataConfirmContent": "قالب پیکربندی Xray به‌روزرسانی و Xray ری‌استارت می‌شود.",
      "geodataInvalidUrl": "هر فایل به یک آدرس HTTPS نیاز دارد.",
      "geodataInvalidFile": "نام فایل باید ساده باشد، مانند geosite_custom.dat (بدون مسیر).",
      "geodataInvalidCron": "Cron باید ۵ بخش داشته باشد، مثل 0 4 * * *",
      "geodataEmpty": "فایلی پیکربندی نشده است. در قوانین مسیریابی فایل‌ها به صورت ext:geosite_custom.dat:category استفاده می‌شوند.",
      "dontRefresh": "در حال نصب، لطفا صفحه را رفرش نکنید",
      "logs": "لاگ‌ها",
      "accessLogs": "لاگ‌های دسترسی",
      "autoUpdate": "به‌روزرسانی خودکار",
      "config": "پیکربندی",
      "backupTitle": "پشتیبان‌گیری و بازیابی",
      "exportDatabase": "پشتیبان‌گیری",
      "exportDatabaseDesc": "برای دانلود یک فایل .db حاوی پشتیبان از پایگاه داده فعلی خود به دستگاهتان کلیک کنید. همین فایل در پنلی که روی PostgreSQL اجرا می‌شود نیز قابل بازیابی است.",
      "importDatabase": "بازیابی",
      "importDatabaseDesc": "برای انتخاب و آپلود یک پشتیبان .db یا فایل مهاجرت ‎.dump از دستگاهتان جهت بازیابی پایگاه داده کلیک کنید.",
      "importDatabaseSuccess": "پایگاه داده با موفقیت وارد شد",
      "importDatabaseError": "خطا در وارد کردن پایگاه داده",
      "readDatabaseError": "خطا در خواندن پایگاه داده",
      "getDatabaseError": "خطا در دریافت پایگاه داده",
      "getConfigError": "خطا در دریافت فایل پیکربندی",
      "backupPostgresNote": "این پنل روی PostgreSQL اجرا می‌شود. «پشتیبان‌گیری» یک آرشیو pg_dump (.dump) دانلود می‌کند و «بازیابی» آن را با pg_restore بازمی‌گرداند. «بازیابی» همچنین پایگاه‌دادهٔ SQLite (.db) یا فایل مهاجرت SQLite را می‌پذیرد و داده‌های آن را به PostgreSQL وارد می‌کند. سرور باید ابزارهای کلاینت PostgreSQL (pg_dump و pg_restore) را نصب داشته باشد.",
      "exportDatabasePgDesc": "برای دانلود یک دامپ PostgreSQL (.dump) از پایگاه داده فعلی روی دستگاهتان کلیک کنید.",
      "importDatabasePgDesc": "برای انتخاب و بارگذاری یک پشتیبان PostgreSQL (.dump)، پایگاه‌دادهٔ SQLite (.db) یا فایل مهاجرت SQLite جهت بازیابی پایگاه داده کلیک کنید. این کار همه داده‌های فعلی را جایگزین می‌کند.",
      "migrationDownload": "دانلود فایل مهاجرت",
      "migrationDownloadPgDesc": "برای دانلود یک پایگاه‌دادهٔ SQLite با پسوند ‎.db که از داده‌های PostgreSQL شما ساخته می‌شود کلیک کنید؛ آمادهٔ اجرای این پنل روی SQLite.",
      "avg": "میانگین",
      "peak": "اوج",
      "free": "آزاد",
      "openSockets": "اتصال باز",
      "throughputSub": "کل اینترفیس",
      "avgWindow": "میانگین بازه",
      "healthWarm": "{list} — رو به گرم شدن",
      "healthCritical": "{list} — بحرانی",
      "panel": "پنل",
      "threads": "نخ‌ها",
      "uptime": "مدت کارکرد"
    },
    "inbounds": {
      "totalDownUp": "دریافت/ارسال کل",
      "totalUsage": "‌‌‌مصرف کل",
      "inboundCount": "کل ورودی‌ها",
      "operate": "منو",
      "enable": "فعال",
      "remark": "نام",
      "node": "نود",
      "deployTo": "استقرار روی",
      "localPanel": "پنل لوکال",
      "fallbacks": {
        "title": "Fallbackها",
        "empty": "هنوز فال‌بکی اضافه نشده",
        "add": "افزودن فال‌بک",
        "pickInbound": "یک اینباند انتخاب کنید",
        "matchAny": "همه",
        "destPlaceholder": "خودکار (listen:port فرزند)",
        "needsTls": "فال‌بک‌ها پس از انتخاب TLS یا Reality در برگه‌ی امنیت در دسترس می‌شوند (فقط VLESS/Trojan روی RAW)."
      },
      "protocol": "پروتکل",
      "port": "پورت",
      "portMap": "نگاشت پورت",
      "traffic": "ترافیک",
      "speed": "سرعت",
      "expireDate": "مدت زمان",
      "createdAt": "ایجاد",
      "updatedAt": "به‌روزرسانی",
      "resetTraffic": "بازنشانی ترافیک",
      "addInbound": "افزودن ورودی",
      "generalActions": "عملیات کلی",
      "modifyInbound": "ویرایش ورودی",
      "deleteConfirmTitle": "اینباند «{remark}» حذف شود؟",
      "deleteConfirmContent": "این اینباند و تمام کلاینت‌های آن حذف می‌شود. این عمل غیرقابل بازگشت است.",
      "resetConfirmTitle": "ترافیک اینباند «{remark}» صفر شود؟",
      "resetConfirmContent": "شمارنده‌های ارسال/دریافت این اینباند به صفر برمی‌گردد.",
      "selectedCount": "{count} انتخاب‌شده",
      "selectAll": "انتخاب همه",
      "bulkDeleteConfirmTitle": "حذف {count} اینباند؟",
      "bulkDeleteConfirmContent": "اینباندهای انتخاب‌شده و تمام کلاینت‌های آن‌ها حذف می‌شوند. این عمل غیرقابل بازگشت است.",
      "cloneConfirmTitle": "اینباند «{remark}» کپی شود؟",
      "cloneConfirmContent": "یک نسخه با پورت جدید و لیست کلاینت خالی ساخته می‌شود.",
      "delAllClients": "حذف همه کلاینت‌ها",
      "delAllClientsConfirmTitle": "حذف هر {count} کلاینت اینباند «{remark}»؟",
      "delAllClientsConfirmContent": "تمام کلاینت‌های این اینباند به همراه رکوردهای ترافیک‌شان حذف می‌شوند. خود اینباند باقی می‌ماند. این عمل غیرقابل بازگشت است.",
      "attachClients": "الصاق کاربران به…",
      "addClientsToGroup": "افزودن کاربران به گروه…",
      "attachClientsTitle": "الصاق کاربران از «{remark}»",
      "attachClientsDesc": "همان {count} کاربر (با UUID/رمز یکسان و ترافیک مشترک) را به ورودی‌(های) انتخابی الصاق می‌کند. در این ورودی هم باقی می‌مانند.",
      "attachClientsTargets": "ورودی‌های مقصد",
      "attachClientsNoTargets": "هیچ ورودی سازگار دیگری برای الصاق در دسترس نیست.",
      "attachClientsResult": "الصاق شد {attached}، نادیده {skipped}.",
      "attachClientsResultMixed": "الصاق شد {attached}، نادیده {skipped}، خطا {errors}.",
      "attachClientsSelectLabel": "کاربران برای الصاق",
      "attachClientsSearchPlaceholder": "جستجوی ایمیل یا توضیح",
      "attachClientsStatusDisabled": "غیرفعال",
      "attachClientsSelectedCount": "{selected} از {total} انتخاب‌شده",
      "attachExistingClients": "الصاق کاربران موجود…",
      "attachExistingTitle": "الصاق کاربران موجود به «{remark}»",
      "attachExistingDesc": "کاربران موجود ({count} کاربر در دسترس) را به این ورودی الصاق می‌کند — با همان UUID/رمز و ترافیک مشترک. کاربرانی که از قبل روی این ورودی هستند نادیده گرفته می‌شوند.",
      "attachExistingNoClients": "هنوز هیچ کاربری وجود ندارد. ابتدا کاربر بسازید، سپس اینجا الصاق کنید.",
      "attachExistingStatusAttached": "از قبل الصاق‌شده",
      "detachClients": "جداسازی کاربران",
      "detachClientsTitle": "جداسازی کاربران از «{remark}»",
      "detachClientsDesc": "کاربر(های) انتخابی را تنها از این ورودی حذف می‌کند. خود رکورد کاربر حفظ می‌شود (برای حذف کامل از Delete استفاده کنید). مبدا در مجموع {count} کاربر دارد.",
      "detachClientsResult": "جدا شد {detached}، نادیده {skipped}.",
      "detachClientsResultMixed": "جدا شد {detached}، نادیده {skipped}، خطا {errors}.",
      "detachClientsSelectLabel": "کاربران برای جداسازی",
      "exportLinksTitle": "خروجی لینک‌های اینباند",
      "exportSubsTitle": "خروجی لینک‌های ساب",
      "exportAllLinksTitle": "خروجی لینک‌های همه اینباندها",
      "exportAllSubsTitle": "خروجی لینک‌های ساب همه اینباندها",
      "exportAllLinksFileName": "همه-ورودی‌ها",
      "exportAllSubsFileName": "همه-ورودی‌ها-Subs",
      "inboundJsonTitle": "JSON ورودی",
      "resetTrafficContent": "آیا مطمئن به ریست ترافیک هستید؟",
      "copyLink": "کپی لینک",
      "address": "آدرس",
      "network": "شبکه",
      "destinationPort": "پورت مقصد",
      "targetAddress": "آدرس مقصد",
      "monitorDesc": "به‌طور پیش‌فرض خالی‌بگذارید",
      "meansNoLimit": "= نامحدود. (واحد: GB)",
      "totalFlow": "ترافیک کل",
      "leaveBlankToNeverExpire": "برای منقضی‌نشدن خالی‌بگذارید",
      "certificatePath": "مسیر فایل",
      "certificateContent": "محتوای فایل",
      "publicKey": "کلید عمومی",
      "privatekey": "کلید خصوصی",
      "client": "کاربر",
      "export": "استخراج لینک‌ها",
      "clone": "شبیه‌سازی",
      "resetAllTraffic": "ریست ترافیک کل ورودی‌ها",
      "resetAllTrafficTitle": "ریست ترافیک کل ورودی‌ها",
      "resetAllTrafficContent": "آیا مطمئن به ریست ترافیک تمام ورودی‌ها هستید؟",
      "email": "ایمیل",
      "IPLimit": "محدودیت آی‌پی",
      "IPLimitlog": "گزارش‌ها",
      "IPLimitlogclear": "پاک کردن گزارش‌ها",
      "setDefaultCert": "استفاده از گواهی پنل",
      "setDefaultCertEmpty": "هیچ گواهی‌ای برای پنل پیکربندی نشده. ابتدا از تنظیمات یکی تعیین کنید.",
      "streamTab": "انتقال",
      "securityTab": "امنیت",
      "sniffingTab": "شنود",
      "sniffingMetadataOnly": "فقط متادیتا",
      "sniffingRouteOnly": "فقط مسیریابی",
      "sniffingIpsExcluded": "IPهای مستثنا",
      "sniffingDomainsExcluded": "دامنه‌های مستثنا",
      "decryption": "رمزگشایی",
      "encryption": "رمزنگاری",
      "vlessAuthX25519": "X25519 (native)",
      "vlessAuthMlkem768": "ML-KEM-768 (native)",
      "vlessAuthX25519Xorpub": "X25519 (xorpub)",
      "vlessAuthX25519Random": "X25519 (random)",
      "vlessAuthMlkem768Xorpub": "ML-KEM-768 (xorpub)",
      "vlessAuthMlkem768Random": "ML-KEM-768 (random)",
      "vlessAuthCustom": "سفارشی",
      "vlessAuthSelected": "انتخاب‌شده: {auth}",
      "vlessAuthGenerate": "تولید کلیدها",
      "vlessAuthGenerateButton": "تولید",
      "advanced": {
        "title": "بخش‌های JSON اینباند",
        "subtitle": "JSON کامل اینباند و ویرایشگرهای جداگانه برای settings، sniffing و streamSettings.",
        "all": "همه",
        "allHelp": "شیء کامل اینباند با همه فیلدها در یک ویرایشگر.",
        "settings": "تنظیمات",
        "settingsHelp": "ساختار بلوک settings در Xray:",
        "sniffing": "Sniffing",
        "sniffingHelp": "ساختار بلوک sniffing در Xray:",
        "stream": "Stream",
        "streamHelp": "ساختار بلوک stream در Xray:"
      },
      "subSortIndex": "ترتیب اشتراک",
      "inboundInfo": "اطلاعات ورودی",
      "exportInbound": "استخراج ورودی",
      "import": "افزودن",
      "importInbound": "افزودن یک ورودی",
      "periodicTrafficResetTitle": "بازنشانی ترافیک",
      "periodicTrafficResetDay": "روز بازنشانی ماهانه",
      "periodicTrafficReset": {
        "never": "هرگز",
        "daily": "روزانه",
        "weekly": "هفتگی",
        "monthly": "ماهانه",
        "hourly": "هر ساعت"
      },
      "toasts": {
        "obtain": "فراهم‌سازی",
        "updateSuccess": "بروزرسانی با موفقیت انجام شد",
        "logCleanSuccess": "لاگ پاکسازی شد",
        "inboundUpdateSuccess": "ورودی با موفقیت به‌روزرسانی شد",
        "inboundCreateSuccess": "ورودی با موفقیت ایجاد شد",
        "bulkDeleted": "{count} اینباند حذف شد",
        "bulkDeletedMixed": "{ok} حذف، {failed} ناموفق",
        "inboundDeleteSuccess": "ورودی با موفقیت حذف شد",
        "inboundClientAddSuccess": "کلاینت(های) ورودی اضافه شدند",
        "inboundClientDeleteSuccess": "کلاینت ورودی حذف شد",
        "inboundClientUpdateSuccess": "کلاینت ورودی به‌روزرسانی شد",
        "savedNodeOfflineWillSync": "به‌صورت محلی ذخیره شد. یک نود پشتیبان آفلاین یا غیرفعال است — تغییر پس از اتصال مجدد همگام‌سازی می‌شود.",
        "resetAllClientTrafficSuccess": "تمام ترافیک کلاینت بازنشانی شد",
        "resetAllTrafficSuccess": "تمام ترافیک‌ها بازنشانی شدند",
        "resetInboundClientTrafficSuccess": "ترافیک بازنشانی شد",
        "resetInboundTrafficSuccess": "ترافیک ورودی بازنشانی شد",
        "trafficGetError": "خطا در دریافت ترافیک‌ها",
        "getNewX25519CertError": "خطا در دریافت گواهی X25519.",
        "getNewmldsa65Error": "خطا در دریافت گواهی mldsa65.",
        "getNewVlessEncError": "خطا در دریافت گواهی VlessEnc.",
        "scanRealityTargetError": "اسکن هدف REALITY ناموفق بود.",
        "scanRealityTargetFeasible": "هدف مناسب است — هدف و SNI پر شد.",
        "scanRealityTargetNotFeasible": "هدف در دسترس است اما برای REALITY مناسب نیست.",
        "invalidClientField": "کلاینت {client}: فیلد {field} — {reason}",
        "invalidField": "{field} — {reason}",
        "moreIssues": "{message}  (+{count} مورد دیگر)"
      },
      "form": {
        "moveUp": "بالا",
        "moveDown": "پایین",
        "addAll": "افزودن همه",
        "addAllFallbackTooltip": "برای هر ورودی واجد شرایط که هنوز متصل نشده یک ردیف fallback اضافه می‌کند",
        "peers": "Peers",
        "addPeer": "افزودن peer",
        "keepAlive": "Keep-alive",
        "autoSystemRoutesTooltip": "فقط ویندوز. CIDRها به‌صورت خودکار به جدول مسیریابی سیستم اضافه می‌شوند تا ترافیک مطابق از TUN عبور کند.",
        "autoOutboundsInterface": "رابط خروجی خودکار",
        "autoOutboundsInterfaceTooltip": "رابط فیزیکی برای ترافیک خروجی. از auto برای تشخیص استفاده کنید؛ زمانی که Auto system routes فعال باشد، به‌صورت خودکار فعال می‌شود.",
        "rewriteAddress": "بازنویسی آدرس",
        "rewritePort": "بازنویسی پورت",
        "allowedNetwork": "شبکه مجاز",
        "followRedirect": "دنبال‌کردن Redirect",
        "accounts": "حساب‌ها",
        "allowTransparent": "اجازه شفاف",
        "encryptionMethod": "روش رمزنگاری",
        "fakeTlsDomain": "دامنه FakeTLS (SNI)",
        "mtprotoSecret": "کلید مخفی",
        "mtgDomainFrontingIp": "آی‌پی Domain fronting",
        "mtgDomainFrontingPort": "پورت Domain fronting",
        "mtgDomainFrontingProxyProtocol": "پروتکل PROXY برای Domain fronting",
        "mtgDomainFrontingHint": "جایی که mtg ترافیک غیرتلگرامی را به آن ارسال می‌کند — مثلاً سایت جعلی NGINX شما. برای استفاده از دامنهٔ FakeTLS از طریق DNS، فیلد IP را خالی بگذارید؛ پورت پیش‌فرض 443 است.",
        "mtgProxyProtocolListener": "پذیرش پروتکل PROXY (شنونده)",
        "mtgPreferIp": "ترجیح IP",
        "mtgDebug": "گزارش اشکال‌زدایی",
        "mtgRouteThroughXray": "مسیریابی از طریق Xray",
        "mtgRouteThroughXrayHint": "ترافیک تلگرام این پراکسی را از طریق Xray بفرستید تا از قوانین مسیریابی شما پیروی کند. سرویس جانبی mtg از طریق یک پل SOCKS محلی که با تگ همین ورودی نشانه‌گذاری شده خارج می‌شود؛ برای قوانین پیشرفته در تب مسیریابی به همان تگ ارجاع دهید.",
        "mtgRouteOutbound": "خروجی",
        "mtgRouteOutboundHint": "اختیاری. ترافیک تلگرام را وادار کنید از این خروجی (یا متعادل‌کننده) خارج شود. برای اینکه قوانین مسیریابی تصمیم بگیرند، خالی بگذارید.",
        "mtgRouteOutboundPlaceholder": "استفاده از قوانین مسیریابی",
        "mtprotoFakeTlsDomainHint": "دامنه پیش‌فرض FakeTLS برای ساخت سکرت کلاینت جدید. هر کلاینت می‌تواند دامنه مخصوص خود را داشته باشد.",
        "mtgThrottleMaxConnections": "حداکثر اتصالات",
        "mtgThrottleMaxConnectionsHint": "محدود کردن اتصالات همزمان همه کاربران با تقسیم منصفانه. مقدار ۰ غیرفعال است.",
        "mtgAdTagInvalid": "برچسب تبلیغاتی باید دقیقاً ۳۲ کاراکتر هگزادسیمال باشد.",
        "mtgPublicIpv4": "IPv4 عمومی",
        "mtgPublicIpv6": "IPv6 عمومی",
        "mtgPublicIpHint": "نشانی عمومی و در‌دسترس این سرور که پروکسی میانی برچسب تبلیغاتی از آن استفاده می‌کند. برای تشخیص خودکار توسط mtg، خالی بگذارید.",
        "visionTestseed": "Vision testseed",
        "version": "نسخه",
        "udpIdleTimeout": "UDP idle timeout (s)",
        "masquerade": "استتار",
        "type": "نوع",
        "upstreamUrl": "آدرس Upstream",
        "rewriteHost": "بازنویسی Host",
        "skipTlsVerify": "رد تایید TLS",
        "directory": "دایرکتوری",
        "statusCode": "کد وضعیت",
        "body": "Body",
        "headers": "هدرها",
        "proxyProtocol": "Proxy Protocol",
        "requestVersion": "نسخه درخواست",
        "requestMethod": "متد درخواست",
        "requestPath": "مسیر درخواست",
        "requestHeaders": "هدرهای درخواست",
        "responseVersion": "نسخه پاسخ",
        "responseStatus": "وضعیت پاسخ",
        "responseReason": "دلیل پاسخ",
        "responseHeaders": "هدرهای پاسخ",
        "heartbeatPeriod": "دوره Heartbeat",
        "serviceName": "نام سرویس",
        "authority": "Authority",
        "multiMode": "حالت چندگانه",
        "maxBufferedUpload": "حداکثر آپلود بافرشده",
        "maxUploadSize": "حداکثر اندازه آپلود (بایت)",
        "streamUpServer": "سرور Stream-Up",
        "serverMaxHeaderBytes": "حداکثر بایت هدر سرور",
        "paddingBytes": "بایت‌های Padding",
        "uplinkHttpMethod": "متد HTTP آپلینک",
        "paddingObfsMode": "حالت ابهام Padding",
        "paddingKey": "کلید Padding",
        "paddingHeader": "هدر Padding",
        "paddingPlacement": "محل Padding",
        "paddingMethod": "روش Padding",
        "sessionPlacement": "محل نشست",
        "sessionKey": "کلید نشست",
        "sessionIDTable": "جدول شناسه نشست",
        "sessionIDTableHint": "مجموعه نویسه‌ها برای تولید شناسه نشست: یک نام از پیش‌تعریف‌شده (ALPHABET، Base62، hex، number، …) یا یک رشته ASCII. برای مقدار پیش‌فرض xray-core خالی بگذارید.",
        "sessionIDLength": "طول شناسه نشست",
        "sessionIDLengthHint": "طول یا بازه (مثلاً 8-16) شناسه نشست تولیدشده. فقط وقتی جدول شناسه نشست تنظیم شده باشد استفاده می‌شود؛ کمینه باید بزرگ‌تر از 0 باشد.",
        "sequencePlacement": "محل Sequence",
        "sequenceKey": "Sequence Key",
        "uplinkDataPlacement": "محل داده Uplink",
        "uplinkDataKey": "کلید داده Uplink",
        "noSseHeader": "بدون هدر SSE",
        "ttiMs": "TTI (ms)",
        "uplinkMbps": "آپلود (MB/s)",
        "downlinkMbps": "دانلود (MB/s)",
        "cwndMultiplier": "ضریب CWND",
        "maxSendingWindow": "حداکثر پنجره ارسال",
        "externalProxy": "پراکسی خارجی",
        "forceTls": "اجبار TLS",
        "fingerprint": "اثرانگشت",
        "defaultOption": "پیش‌فرض",
        "routeMark": "علامت مسیر",
        "tcpKeepAliveInterval": "بازه TCP Keep Alive",
        "tcpKeepAliveIdle": "TCP Keep Alive Idle",
        "tcpMaxSeg": "TCP Max Seg",
        "tcpUserTimeout": "TCP User Timeout",
        "tcpWindowClamp": "TCP Window Clamp",
        "tcpWindowClampHint": "برای استفاده از پیش‌فرض سیستم‌عامل، مقدار را 0 بگذارید. مقادیر غیرصفر پنجرهٔ دریافت TCP اعلام‌شده را محدود می‌کنند؛ مقادیری مانند 600 (از مثال مستندات Xray) می‌توانند نرخ عبور را روی لینک‌های با تأخیر بالا به‌شدت کاهش دهند.",
        "tcpFastOpen": "TCP Fast Open",
        "multipathTcp": "Multipath TCP",
        "penetrate": "Penetrate",
        "v6Only": "فقط IPv6",
        "tcpCongestion": "تراکم TCP",
        "dialerProxy": "Dialer Proxy",
        "trustedXForwardedFor": "X-Forwarded-For مورد اعتماد",
        "trustedXForwardedForHint": "این هدر درخواست برای گرفتن IP واقعی کاربر مورد اعتماد قرار می‌گیرد (مثلاً CF-Connecting-IP پشت CDN کلودفلر). فقط روی ترنسپورت‌های WebSocket، HTTPUpgrade، XHTTP و gRPC اعمال می‌شود. برای نادیده‌گرفتن هدرها خالی بگذارید.",
        "proxyProtocolHint": "پذیرش هدر PROXY protocol برای گرفتن IP واقعی کاربر از یک تونل/رله L4 بالادست (HAProxy، gost، nginx-stream، Xray dokodemo-door) یا Cloudflare Spectrum. بالادست باید PROXY protocol را ارسال کند. روی TCP، WebSocket، HTTPUpgrade و gRPC کار می‌کند؛ روی mKCP خیر.",
        "realClientIp": "IP واقعی کاربر",
        "realClientIpHint": "وقتی ترافیک از طریق CDN یا رله به این ورودی می‌رسد، به‌جای ثبت آدرس واسط، IP واقعی کاربر گرفته می‌شود. یک پریست انتخاب کنید تا فیلدهای sockopt مربوطه پایین تکمیل شوند. این فیلدها هرگز در اشتراک‌ها به کلاینت‌ها ارسال نمی‌شوند.",
        "realClientIpPresetOff": "خاموش / مستقیم",
        "realClientIpPresetCloudflare": "Cloudflare CDN",
        "realClientIpPresetProxyProtocol": "رله L4 / Spectrum (PROXY)",
        "realClientIpTrustedHeaderTransportWarn": "Trusted X-Forwarded-For فقط روی WebSocket، HTTPUpgrade و XHTTP اعمال می‌شود. روی ترنسپورت فعلی این هدر نادیده گرفته می‌شود.",
        "realClientIpProxyProtocolTransportWarn": "PROXY protocol روی این ترنسپورت (mKCP) پشتیبانی نمی‌شود. از TCP/RAW، WebSocket، HTTPUpgrade، gRPC یا XHTTP استفاده کنید.",
        "addressPortStrategy": "استراتژی آدرس+پورت",
        "tryDelayMs": "تأخیر تلاش (ms)",
        "prioritizeIPv6": "اولویت IPv6",
        "interleave": "Interleave",
        "maxConcurrentTry": "حداکثر تلاش هم‌زمان",
        "customSockopt": "Sockopt دلخواه",
        "addCustomOption": "افزودن گزینه دلخواه",
        "serverNameIndication": "SNI",
        "cipherSuites": "مجموعه‌های رمز",
        "autoOption": "خودکار",
        "minMaxVersion": "نسخه حداقل/حداکثر",
        "rejectUnknownSni": "رد SNI ناشناخته",
        "disableSystemRoot": "غیرفعال‌سازی System Root",
        "sessionResumption": "ازسرگیری نشست",
        "oneTimeLoading": "بارگذاری یک‌بار",
        "usageOption": "گزینه استفاده",
        "buildChain": "ساخت زنجیره",
        "echKey": "کلید ECH",
        "echConfig": "پیکربندی ECH",
        "echSockopt": "Sockopt مربوط به ECH",
        "echSockoptTip": "تنظیمات سوکت برای اتصالی که Xray برای دریافت لیست پیکربندی ECH استفاده می‌کند (مثلاً عبور این درخواست از یک dialerProxy). برای استفاده از پیش‌فرض غیرفعال بگذارید.",
        "curvePreferences": "ترجیح منحنی‌ها",
        "curvePreferencesTip": "منحنی‌های تبادل کلید TLS که سرور ارائه می‌دهد را به‌ترتیب اولویت محدود می‌کند (مثلاً X25519MLKEM768، X25519). خالی بگذارید تا پیش‌فرض Xray استفاده شود.",
        "masterKeyLog": "لاگ کلید اصلی",
        "masterKeyLogTip": "مسیر نوشتن کلیدهای اصلی TLS (قالب SSLKEYLOGFILE) برای دیباگ با Wireshark. در محیط عملیاتی خالی بگذارید — هرکس به این فایل دسترسی داشته باشد می‌تواند ترافیک را رمزگشایی کند.",
        "pinFromCert": "پرکردن از گواهی همین ورودی",
        "pinFromRemote": "گرفتن هش با پینگ‌کردن SNI (xray tls ping)",
        "pinFromRemoteNoSni": "ابتدا SNI (serverName) را تنظیم کنید تا گواهی راه‌دور پینگ شود.",
        "pinFromRemoteFailed": "گرفتن هشِ گواهی راه‌دور ممکن نشد.",
        "verifyPeerCertByName": "تأیید گواهی همتا با نام",
        "verifyPeerCertByNameTip": "به کلاینت‌ها می‌گوید گواهی سرور را به‌جای SNI با این نام تأیید کنند. نام‌ها با کاما جدا شوند. فقط در پنل — در لینک‌های اشتراک‌گذاری گنجانده می‌شود (vcn). جایگزین مدرن allowInsecure که xray بعد از ۲۰۲۶-۰۶-۰۱ حذفش کرد.",
        "pinnedPeerCertSha256": "SHA-256 پین‌شدهٔ گواهی همتا",
        "pinnedPeerCertSha256Tip": "هش‌های SHA-256 گواهی همتا به‌صورت رشتهٔ هگزادسیمال (مثل e8e2d3…)، با کاما جدا شوند. فقط در پنل — در پیکربندی xray سرور نوشته نمی‌شود، اما در لینک‌های اشتراک‌گذاری گنجانده می‌شود تا کلاینت‌ها بتوانند گواهی را پین کنند.",
        "pinnedPeerCertSha256Placeholder": "هش(های) هگزادسیمال، با کاما جدا شوند",
        "getNewEchCert": "دریافت گواهی ECH جدید",
        "show": "نمایش",
        "xver": "Xver",
        "target": "هدف",
        "maxTimeDiff": "حداکثر اختلاف زمان (ms)",
        "minClientVer": "حداقل نسخه کلاینت",
        "maxClientVer": "حداکثر نسخه کلاینت",
        "minClientVerHint": "خالی بودن به معنای بدون محدودیت نیست: در این حالت Xray-core حداقل داخلیِ نسخهٔ هسته‌ای را که اجرا می‌کنید (در نسخه‌های فعلی 26.3.27) اعمال می‌کند و کلاینت‌هایی را که نسخهٔ قدیمی‌تری اعلام می‌کنند رد می‌کند — از جمله هسته‌های شخص ثالث مانند Mihomo و sing-box. مقدار 1.0.0 آن‌ها را می‌پذیرد، به بهای پذیرش اثر انگشت‌های TLS قدیمی.",
        "maxClientVerHint": "خالی یعنی بدون سقف. در صورت تنظیم، نباید از حداقلِ مؤثر — حداقل نسخه کلاینت، و در صورت خالی بودن آن فیلد، حداقل داخلی Xray-core — کمتر باشد، وگرنه همهٔ کلاینت‌ها رد می‌شوند.",
        "clientVerInvalid": "نسخهٔ کلاینت باید حداکثر سه عدد جداشده با نقطه باشد، هر یک 0-255 (مثلاً 26.3.27)",
        "maxClientVerBelowMin": "حداکثر نسخهٔ کلاینت نباید از حداقل نسخهٔ کلاینت کمتر باشد",
        "shortIds": "Short IDها",
        "realityTargetHint": "الزامی است. باید شامل پورت باشد (مثلاً example.com:443). بدون پورت، Xray-core اجرا نمی‌شود.",
        "realityTargetRequired": "هدف REALITY الزامی است",
        "realityTargetNeedsPort": "هدف REALITY باید شامل پورت باشد (مثلاً example.com:443)",
        "realityTargetInvalidPort": "پورت هدف REALITY نامعتبر است",
        "scan": "اسکن",
        "findTargets": "یافتن هدف‌ها",
        "scanModalTitle": "اسکنر هدف REALITY",
        "scanModalDesc": "یک دامنه را اعتبارسنجی کنید، یا یک محدوده‌ی IP/CIDR را اسکن کنید تا هدف‌های جدید REALITY از روی گواهی‌هایشان کشف شوند. برای بررسی کاندیدهای پیش‌فرض، کادر را خالی بگذارید.",
        "scanDiscoverPlaceholder": "آی‌پی، CIDR یا دامنه — برای کاندیدهای پیش‌فرض خالی بگذارید",
        "scanStatus": "وضعیت",
        "scanFeasible": "مناسب",
        "scanNotFeasible": "نامناسب",
        "scanCurve": "تبادل کلید",
        "scanCert": "گواهی",
        "scanCertInvalid": "نامعتبر",
        "scanLatency": "تأخیر",
        "scanUse": "استفاده",
        "scanRescan": "اسکن مجدد",
        "spiderX": "SpiderX",
        "spiderXHint": "دانه‌ی هر کاربر — پنل از روی آن مسیر spx یکتا برای هر کاربر می‌سازد؛ برای چرخش مسیر همه، دوباره تولید کنید",
        "getNewCert": "دریافت گواهی جدید",
        "mldsa65Seed": "mldsa65 Seed",
        "mldsa65Verify": "mldsa65 Verify",
        "getNewSeed": "دریافت Seed جدید",
        "limitFallback": "محدودیت فالبک",
        "limitFallbackUpload": "محدودیت فالبک آپلود",
        "limitFallbackDownload": "محدودیت فالبک دانلود",
        "afterBytes": "پس از (بایت)",
        "afterBytesTip": "اجازه بده فالبک برای این تعداد بایت با سرعت کامل اجرا شود، سپس محدودسازی شروع شود. مقدار ۰ یعنی از همان بایت اول محدود شود.",
        "bytesPerSec": "بایت بر ثانیه",
        "bytesPerSecTip": "سقف سرعت (بایت بر ثانیه) که بعد از آستانه روی ترافیک فالبک اعمال می‌شود تا پروب‌ها نتوانند سرورت را به‌عنوان پهنای‌باند رایگان به مقصد استفاده کنند. مقدار ۰ یعنی بدون محدودیت (این جهت غیرفعال می‌شود).",
        "burstBytesPerSec": "بایت انفجاری بر ثانیه",
        "burstBytesPerSecTip": "سهمیه برای انفجارهای کوتاه بالاتر از نرخ ثابت (اندازهٔ token-bucket). اگر کمتر از «بایت بر ثانیه» باشد، به همان مقدار افزایش می‌یابد.",
        "listenHelp": "می‌توانید به‌جای پورت TCP یک مسیر سوکت یونیکس وارد کنید (مثلاً /run/xray/in.sock)، یا یک نام سوکت انتزاعی با پیشوند @ (مثلاً @xray/in.sock)، تا روی سوکت گوش داده شود — در این حالت پورت را روی ۰ بگذارید.",
        "shareAddrStrategy": "راهبرد آدرس اشتراک‌گذاری",
        "shareAddrStrategyHelp": "مشخص می‌کند کدام آدرس در لینک‌های اشتراک‌گذاری خروجی، کدهای QR و خروجی اشتراک نوشته شود.",
        "shareAddr": "آدرس اشتراک‌گذاری سفارشی",
        "shareAddrHelp": "فقط زمانی استفاده می‌شود که راهبرد آدرس اشتراک‌گذاری روی سفارشی باشد. میزبان یا IP را بدون طرح و پورت وارد کنید.",
        "subSortIndex": "ترتیب در اشتراک",
        "subSortIndexHelp": "جایگاه لینک‌های این ورودی در خروجی اشتراک (صفحه اشتراک و برنامه‌های کلاینت). مقدار کمتر اول می‌آید و مقدارهای برابر ترتیب ایجاد را حفظ می‌کنند. روی فهرست ورودی‌های پنل تأثیری ندارد.",
        "shareAddrStrategyOptions": {
          "node": "آدرس نود",
          "listen": "آدرس شنود ورودی",
          "custom": "سفارشی"
        }
      },
      "info": {
        "mode": "حالت",
        "grpcServiceName": "grpc serviceName",
        "grpcMultiMode": "grpc multiMode",
        "interfaceName": "نام رابط",
        "mtu": "MTU",
        "gateway": "Gateway",
        "dns": "DNS",
        "outboundsInterface": "رابط خروجی",
        "autoSystemRoutes": "مسیریابی خودکار سیستم",
        "followRedirect": "FollowRedirect",
        "auth": "احراز",
        "noKernelTun": "TUN غیرکرنل",
        "keepAlive": "Keep alive",
        "peerNumber": "Peer {n}",
        "peerNumberConfig": "پیکربندی Peer {n}"
      },
      "sniffingDestOverride": "بازنویسی مقصد"
    },
    "clients": {
      "tabBasics": "پایه",
      "tabCredentials": "اطلاعات اتصال",
      "tabLinks": "لینک‌ها",
      "wireguardConfig": "پیکربندی WireGuard",
      "config": "پیکربندی",
      "linksHint": "لینک‌های اشتراک شخص‌ثالث و آدرس سابسکریپشن‌های خارجی را اضافه کنید تا در سابسکریپشن این کاربر قرار گیرند.",
      "addExternalLink": "افزودن لینک خارجی",
      "addExternalSubscription": "افزودن سابسکریپشن خارجی",
      "noExternalLinks": "هنوز لینک خارجی‌ای اضافه نشده.",
      "noExternalSubscriptions": "هنوز سابسکریپشن خارجی‌ای اضافه نشده.",
      "submitEdit": "ذخیره تغییرات",
      "clientCount": "تعداد کلاینت‌ها",
      "bulk": "افزودن گروهی",
      "selectAll": "انتخاب همه",
      "clearAll": "پاک کردن همه",
      "method": "روش",
      "first": "اول",
      "last": "آخر",
      "ipLog": "گزارش IP",
      "prefix": "پیشوند",
      "postfix": "پسوند",
      "delayedStart": "شروع پس از اولین استفاده",
      "expireDays": "مدت اعتبار (روز)",
      "renew": "تمدید خودکار",
      "renewDesc": "تمدید خودکار پس از انقضا. (۰ = غیرفعال) (واحد: روز)",
      "renewDays": "تمدید خودکار (روز)",
      "searchPlaceholder": "جستجوی ایمیل، توضیح، Sub ID، UUID، رمز، احراز، Telegram ID...",
      "filterTitle": "فیلتر کاربران",
      "clearAllFilters": "پاک کردن همه",
      "filters": {
        "nodes": "نودها",
        "localPanel": "محلی (همین پنل)"
      },
      "showingCount": "نمایش {shown} از {total}",
      "sortOldest": "قدیمی‌ترین",
      "sortNewest": "جدیدترین",
      "sortRecentlyUpdated": "اخیراً به‌روزشده",
      "sortRecentlyOnline": "اخیراً آنلاین",
      "sortEmailAZ": "ایمیل ا→ی",
      "sortEmailZA": "ایمیل ی→ا",
      "sortMostTraffic": "بیشترین ترافیک",
      "sortHighestRemaining": "بیشترین باقی‌مانده",
      "sortExpiringSoonest": "نزدیک‌ترین انقضا",
      "has": "دارد",
      "hasNot": "ندارد",
      "actions": "عملیات",
      "totalGB": "سقف حجم (گیگابایت)",
      "totalGBDesc": "سهمیه‌ی حجم مصرفی کلاینت. ۰ = نامحدود",
      "expiryTime": "انقضا",
      "addClients": "افزودن کلاینت‌ها",
      "limitIp": "محدودیت IP",
      "limitIpDesc": "حداکثر تعداد IP همزمان. ۰ = نامحدود",
      "limitIpFail2banMissing": "Fail2ban نصب نشده است، بنابراین محدودیت IP اعمال نمی‌شود. برای فعال‌سازی این گزینه، Fail2ban را از منوی بش x-ui نصب کنید.",
      "limitIpFail2banWindows": "Fail2ban روی ویندوز در دسترس نیست، بنابراین محدودیت IP قابل اعمال نیست.",
      "limitIpDisabled": "قابلیت محدودیت IP روی این سرور غیرفعال است.",
      "password": "رمز عبور",
      "passwordDesc": "فقط توسط کلاینت‌های Trojan و Shadowsocks استفاده می‌شود؛ برای VLESS، VMess، Hysteria و WireGuard نادیده گرفته می‌شود.",
      "subId": "شناسه اشتراک",
      "online": "آنلاین",
      "email": "ایمیل",
      "emailInvalidChars": "ایمیل نمی‌تواند شامل فاصله، '/'، '\\' یا کاراکترهای کنترلی باشد",
      "subIdInvalidChars": "شناسه‌ی اشتراک نمی‌تواند شامل فاصله، '/'، '\\' یا کاراکترهای کنترلی باشد",
      "group": "گروه",
      "groupDesc": "برچسبی منطقی برای دسته‌بندی کاربران مرتبط (مثل تیم، مشتری، منطقه). از نوار ابزار قابل فیلتر است.",
      "groupPlaceholder": "مثلاً customer-a",
      "comment": "توضیحات",
      "traffic": "ترافیک",
      "speed": "سرعت",
      "offline": "آفلاین",
      "addClient": "افزودن کلاینت",
      "qrCode": "کد QR",
      "clientInfo": "اطلاعات کلاینت",
      "editClient": "ویرایش کلاینت",
      "client": "کلاینت",
      "enabled": "فعال",
      "remaining": "باقی‌مانده",
      "duration": "مدت",
      "attachedInbounds": "اینباندهای متصل",
      "selectInbound": "یک یا چند اینباند انتخاب کنید",
      "selectAllInbounds": "انتخاب همه",
      "clearAllInbounds": "پاک کردن همه",
      "noSubId": "این کلاینت subId ندارد، لینک اشتراک‌گذاری وجود ندارد.",
      "noLinks": "لینکی برای اشتراک‌گذاری نیست — ابتدا این کلاینت را به یک اینباند با پروتکل سازگار متصل کنید.",
      "link": "لینک",
      "resetNotPossible": "ابتدا این کلاینت را به یک اینباند متصل کنید.",
      "resetAllTraffics": "بازنشانی ترافیک همه کلاینت‌ها",
      "resetAllTrafficsTitle": "بازنشانی ترافیک همه کلاینت‌ها؟",
      "resetAllTrafficsContent": "شمارنده ارسال/دریافت همه کلاینت‌ها به صفر می‌رسد. سهمیه و تاریخ انقضا تغییری نمی‌کند. این عمل غیرقابل بازگشت است.",
      "deleteConfirmTitle": "حذف کلاینت {email}؟",
      "deleteConfirmContent": "این کلاینت از تمام اینباندهای متصل حذف و سابقه ترافیک آن پاک می‌شود. این عمل غیرقابل بازگشت است.",
      "adjustSelected": "تنظیم ({count})",
      "subLinksSelected": "لینک‌های اشتراک ({count})",
      "addToGroupTitle": "افزودن {count} کاربر به یک گروه",
      "addToGroupTooltip": "یک گروه موجود را انتخاب کنید یا نام جدیدی تایپ کنید. برای حذف کاربران از گروه فعلی، از Ungroup استفاده کنید.",
      "groupName": "نام گروه",
      "addToGroupSuccessToast": "{count} کاربر به {group} اضافه شد",
      "ungroupSuccessToast": "گروه از {count} کاربر پاک شد",
      "ungroup": "خارج از گروه",
      "ungroupConfirmTitle": "حذف {count} کاربر از گروهشان؟",
      "ungroupConfirmContent": "برچسب گروه را روی هر کاربر انتخابی پاک می‌کند. کاربران حفظ می‌شوند (برای حذف کامل از Delete استفاده کنید).",
      "addToGroup": "افزودن به گروه",
      "attach": "الصاق",
      "adjust": "تنظیم",
      "subLinks": "لینک‌های اشتراک",
      "enable": "فعال‌سازی",
      "disable": "غیرفعال‌سازی",
      "bulkEnableConfirmTitle": "{count} کلاینت فعال شوند؟",
      "bulkEnableConfirmContent": "هر کلاینت انتخاب‌شده روی تمام اینباندهای متصل فعال می‌شود. کلاینت‌هایی که سهمیه آن‌ها تمام شده یا تاریخ انقضایشان گذشته، به‌طور خودکار دوباره غیرفعال می‌شوند.",
      "bulkDisableConfirmTitle": "{count} کلاینت غیرفعال شوند؟",
      "bulkDisableConfirmContent": "هر کلاینت انتخاب‌شده روی تمام اینباندهای متصل غیرفعال می‌شود. دسترسی آن‌ها بلافاصله قطع می‌شود اما رکورد و ترافیکشان حفظ می‌گردد.",
      "selectedCount": "{count} انتخاب‌شده",
      "attachToInboundsTitle": "الصاق {count} کاربر به ورودی‌(ها)",
      "attachToInboundsDesc": "{count} کاربر انتخاب‌شده (همان UUID/رمز و ترافیک مشترک) را به ورودی‌های انتخابی الصاق می‌کند. الصاق‌های قبلی حفظ می‌شوند.",
      "attachToInboundsTargets": "ورودی‌های مقصد",
      "attachToInboundsNoTargets": "هیچ ورودی چندکاربره‌ای برای الصاق در دسترس نیست.",
      "detach": "جداسازی",
      "detachFromInboundsTitle": "جداسازی {count} کاربر از ورودی‌(ها)",
      "detachFromInboundsDesc": "{count} کاربر انتخاب‌شده را از ورودی‌های انتخابی حذف می‌کند. در مواردی که کاربر الصاق نبوده، نادیده گرفته می‌شود. رکورد کاربر حفظ می‌شود (برای حذف کامل از Delete استفاده کنید).",
      "detachFromInboundsTargets": "ورودی‌هایی برای جداسازی",
      "detachFromInboundsNoTargets": "هیچ ورودی چندکاربره‌ای در دسترس نیست.",
      "detachFromInboundsResult": "جدا شد {detached}، نادیده گرفته شد {skipped}.",
      "detachFromInboundsResultMixed": "جدا شد {detached}، نادیده {skipped}، خطا {errors}.",
      "subLinksTitle": "لینک‌های اشتراک ({count})",
      "subLinkColumn": "آدرس اشتراک",
      "subJsonLinkColumn": "آدرس JSON اشتراک",
      "subLinksCopyAll": "کپی همه",
      "subLinksCopiedAll": "{count} لینک کپی شد",
      "subLinksEmpty": "هیچ‌کدام از کاربران انتخابی شناسه اشتراک ندارند.",
      "subLinksDisabled": "سرویس اشتراک غیرفعال است.",
      "subLinksDisabledHint": "برای ساخت لینک، اشتراک را در تنظیمات پنل ← اشتراک فعال کنید.",
      "bulkDeleteConfirmTitle": "حذف {count} کلاینت؟",
      "bulkDeleteConfirmContent": "هر کلاینت انتخاب‌شده از تمام اینباندهای متصل حذف و سابقه ترافیک آن پاک می‌شود. این عمل غیرقابل بازگشت است.",
      "bulkAdjustTitle": "تنظیم {count} کلاینت",
      "bulkAdjustHint": "مقادیر مثبت اضافه و منفی کم می‌کنند. کلاینت‌هایی که زمان یا ترافیک نامحدود دارند برای همان فیلد رد می‌شوند.",
      "bulkAdjustNothing": "قبل از اعمال، روز یا ترافیک را تنظیم کنید.",
      "addDays": "افزودن روز",
      "addTrafficGB": "افزودن ترافیک (گیگابایت)",
      "bulkFlow": "تنظیم flow",
      "bulkFlowNoChange": "بدون تغییر",
      "bulkFlowDisable": "غیرفعال (پاک کردن flow)",
      "delDepleted": "حذف اتمام‌یافته‌ها",
      "delDepletedConfirmTitle": "حذف کلاینت‌های اتمام‌یافته؟",
      "delDepletedConfirmContent": "هر کلاینتی که سهمیه ترافیک‌اش تمام شده یا تاریخ انقضایش گذشته است حذف می‌شود. این عمل غیرقابل بازگشت است.",
      "exportClients": "خروجی گرفتن از کلاینت‌ها",
      "importClients": "ورود کلاینت‌ها",
      "import": "ورود",
      "delOrphans": "حذف کلاینت‌های بدون اینباند",
      "delOrphansConfirmTitle": "حذف کلاینت‌های بدون اینباند؟",
      "delOrphansConfirmContent": "هر کلاینتی که به هیچ اینباندی متصل نیست، همراه با رکورد ترافیک‌اش حذف می‌شود. این عمل غیرقابل بازگشت است.",
      "auth": "احراز",
      "hysteriaAuth": "احراز Hysteria",
      "hysteriaAuthDesc": "اعتباری که فقط کلاینت‌های Hysteria از آن استفاده می‌کنند. Trojan و Shadowsocks به‌جای آن از فیلد «رمز عبور» استفاده می‌کنند.",
      "uuid": "UUID",
      "flow": "Flow",
      "vmessSecurity": "امنیت VMess",
      "wireguardPrivateKey": "کلید خصوصی وایرگارد",
      "wireguardPublicKey": "کلید عمومی وایرگارد",
      "wireguardPreSharedKey": "کلید پیش‌اشتراکی وایرگارد",
      "wireguardAllowedIPs": "آی‌پی‌های مجاز وایرگارد",
      "wireguardAllowedIPsHint": "برای تخصیص خودکار خالی بگذارید؛ ورودی‌ها را با کاما جدا کنید",
      "mtprotoSecret": "سکرت MTProto",
      "mtprotoSecretHint": "سکرت FakeTLS این کلاینت. برای تعویض، دوباره تولید کنید.",
      "mtprotoAdTag": "برچسب تبلیغاتی (کانال حامی)",
      "mtprotoAdTagHint": "برچسب هگزادسیمال اختیاری ۳۲ کاراکتری که هنگام ثبت پروکسی در تلگرام دریافت می‌شود. با تنظیم آن، این کلاینت از طریق پروکسی‌های میانی تلگرام هدایت می‌شود و یک کانال حامی در بالای فهرست گفتگوهایش نمایش داده می‌شود.",
      "reverseTag": "تگ معکوس",
      "reverseTagPlaceholder": "Reverse tag اختیاری",
      "telegramId": "شناسه کاربر تلگرام",
      "telegramIdPlaceholder": "شناسه عددی کاربر تلگرام (۰ = هیچ)",
      "ipLimit": "محدودیت IP",
      "toasts": {
        "deleted": "کلاینت حذف شد",
        "trafficReset": "ترافیک بازنشانی شد",
        "allTrafficsReset": "ترافیک همه کلاینت‌ها بازنشانی شد",
        "bulkDeleted": "{count} کلاینت حذف شد",
        "bulkDeletedMixed": "{ok} حذف، {failed} ناموفق",
        "bulkEnabled": "{count} کلاینت فعال شد",
        "bulkEnabledMixed": "{ok} فعال، {failed} ناموفق",
        "bulkDisabled": "{count} کلاینت غیرفعال شد",
        "bulkDisabledMixed": "{ok} غیرفعال، {failed} ناموفق",
        "bulkCreated": "{count} کلاینت ساخته شد",
        "bulkCreatedMixed": "{ok} ساخته شد، {failed} ناموفق",
        "bulkAdjusted": "{count} کلاینت تنظیم شد",
        "bulkAdjustedMixed": "{ok} تنظیم، {skipped} رد شد",
        "delDepleted": "{count} کلاینت اتمام‌یافته حذف شد",
        "delOrphans": "{count} کلاینت بدون اینباند حذف شد",
        "imported": "{count} کلاینت وارد شد",
        "importedMixed": "{ok} وارد شد، {failed} رد شد"
      }
    },
    "groups": {
      "name": "نام",
      "clientCount": "کاربران",
      "totalGroups": "تعداد گروه‌ها",
      "totalGroupedClients": "کاربران دارای گروه",
      "trafficUsed": "ترافیک مصرف‌شده",
      "upload": "آپلود",
      "download": "دانلود",
      "totalTraffic": "مجموع ترافیک",
      "totalUpDown": "مجموع آپلود / دانلود",
      "addGroup": "افزودن گروه",
      "createSuccess": "گروه «{name}» ایجاد شد.",
      "rename": "تغییر نام",
      "renameTitle": "تغییر نام {name}",
      "renameCollision": "گروهی به نام «{name}» از قبل وجود دارد.",
      "renameSuccess": "گروه روی {count} کاربر تغییر نام داده شد.",
      "deleteConfirmTitle": "حذف گروه {name}؟",
      "deleteConfirmContent": "این عمل گروه را حذف می‌کند و برچسب آن را از {count} کاربر پاک می‌کند. خود کاربران حذف نمی‌شوند.",
      "deleteSuccess": "گروه از {count} کاربر پاک شد.",
      "resetTraffic": "بازنشانی ترافیک",
      "resetConfirmTitle": "بازنشانی ترافیک گروه {name}؟",
      "resetConfirmContent": "این فقط شمارنده‌ی ترافیک گروه را صفر می‌کند؛ شمارنده‌ی تک‌تک کاربران دست‌نخورده می‌ماند.",
      "resetSuccess": "ترافیک گروه {name} صفر شد.",
      "adjustSuccess": "{count} کاربر در {name} تنظیم شد.",
      "emptyForAction": "این گروه هنوز کاربری ندارد.",
      "deleteGroupOnly": "حذف گروه (نگه داشتن کاربران)",
      "deleteClients": "حذف کاربران گروه",
      "deleteClientsConfirmTitle": "حذف همه کاربران در {name}؟",
      "deleteClientsConfirmContent": "این عمل {count} کاربر را به همراه رکورد ترافیک‌شان برای همیشه حذف می‌کند. برچسب گروه نیز پاک می‌شود. این عمل قابل بازگشت نیست.",
      "deleteClientsSuccess": "{count} کاربر حذف شد.",
      "deleteClientsMixed": "{ok} حذف شد، {failed} نادیده گرفته شد",
      "addToGroup": "افزودن کاربران…",
      "addToGroupTitle": "افزودن کاربران به گروه «{name}»",
      "addToGroupDesc": "کاربرانی را برای افزودن به این گروه انتخاب کنید. الصاق‌های ورودی فعلی حفظ می‌شود؛ تنها برچسب گروه تغییر می‌کند. کاربرانی که از قبل در این گروه هستند نشان داده نمی‌شوند.",
      "addToGroupEmpty": "کاربر دیگری برای افزودن در دسترس نیست.",
      "addToGroupResult": "{count} کاربر به {name} اضافه شد.",
      "removeFromGroup": "حذف کاربران…",
      "removeFromGroupTitle": "حذف کاربران از گروه «{name}»",
      "removeFromGroupDesc": "اعضایی را برای حذف از این گروه انتخاب کنید. خود کاربران حفظ می‌شوند (برای حذف کامل از «حذف کاربران گروه» استفاده کنید).",
      "removeFromGroupResult": "{count} کاربر از {name} حذف شد."
    },
    "nodes": {
      "addNode": "افزودن نود",
      "editNode": "ویرایش نود",
      "totalNodes": "کل نودها",
      "onlineNodes": "آنلاین",
      "offlineNodes": "آفلاین",
      "avgLatency": "میانگین تاخیر",
      "name": "نام",
      "namePlaceholder": "مثلاً de-frankfurt-1",
      "addressPlaceholder": "panel.example.com یا 1.2.3.4",
      "remark": "توضیحات",
      "scheme": "پروتکل",
      "address": "آدرس",
      "port": "پورت",
      "basePath": "مسیر پایه",
      "apiToken": "توکن API",
      "apiTokenPlaceholder": "توکن از صفحه تنظیمات پنل ریموت",
      "apiTokenHint": "پنل ریموت توکن API خودش را در بخش احرازهویت → توکن API نمایش می‌دهد.",
      "apiTokenKeepHint": "برای حفظ توکن فعلی خالی بگذارید",
      "allowPrivateAddress": "اجازه آدرس خصوصی",
      "allowPrivateAddressHint": "فقط برای نودهای روی شبکه خصوصی یا VPN فعال شود.",
      "outboundTag": "خروجی اتصال",
      "outboundTagHint": "ترافیک API پنل این نود را از طریق خروجی Xray انتخاب‌شده مسیریابی کنید. یک inbound پل loopback به‌صورت خودکار به پیکربندی در حال اجرا اضافه شده و به‌صورت زنده اعمال می‌شود. برای اتصال مستقیم خالی بگذارید.",
      "outboundTagPlaceholder": "اتصال مستقیم",
      "inboundSyncMode": "وارد کردن اینباندها",
      "inboundSyncModeHint": "اینباندهای قابل وارد کردن از این نود را انتخاب کنید. نودهای موجود به‌طور پیش‌فرض همه را وارد می‌کنند.",
      "allInbounds": "همه اینباندها",
      "selectedInbounds": "اینباندهای انتخاب‌شده",
      "inboundTags": "اینباندها",
      "inboundTagsHint": "انتخاب بر اساس تگ اینباند تطبیق داده می‌شود. انتخاب خالی چیزی وارد نمی‌کند.",
      "inboundTagsPlaceholder": "اینباندها را بارگیری و انتخاب کنید",
      "loadInbounds": "بارگیری اینباندها از نود",
      "inboundsLoaded": "{{count}} اینباند بارگیری شد",
      "inboundsLoadFailed": "بارگیری اینباندها ناموفق بود",
      "enable": "فعال",
      "status": "وضعیت",
      "cpu": "CPU",
      "mem": "حافظه",
      "netUp": "آپلود شبکه (KB/s)",
      "netDown": "دانلود شبکه (KB/s)",
      "uptime": "مدت فعالیت",
      "latency": "تاخیر",
      "lastHeartbeat": "آخرین ضربان",
      "xrayVersion": "نسخه Xray",
      "panelVersion": "نسخه پنل",
      "actions": "عملیات",
      "probe": "بررسی فوری",
      "updatePanel": "به‌روزرسانی پنل",
      "updateSelected": "به‌روزرسانی انتخاب‌شده‌ها ({count})",
      "updateAvailable": "به‌روزرسانی موجود",
      "updateConfirmTitle": "{count} نود به آخرین نسخه به‌روزرسانی شوند؟",
      "updateConfirmContent": "هر نود انتخاب‌شده آخرین نسخه را دانلود و روی آن ری‌استارت می‌شود. فقط نودهای فعال و آنلاین به‌روزرسانی می‌شوند.",
      "updateDevChannel": "به‌روزرسانی به کانال دِو (آخرین کامیت)",
      "testConnection": "تست اتصال",
      "connectionOk": "اتصال موفق ({ms} میلی‌ثانیه)",
      "connectionFailed": "اتصال ناموفق",
      "never": "هرگز",
      "justNow": "هم‌اکنون",
      "subNode": "نود فرعی",
      "subNodeTip": "فقط‌خواندنی: یک نود پایین‌دستی که از طریق {parent} در دسترس است. آن را از پنل خودِ {parent} مدیریت کنید.",
      "deleteConfirmTitle": "نود «{name}» حذف شود؟",
      "deleteConfirmContent": "نظارت روی این نود متوقف می‌شود. خود پنل ریموت تغییری نمی‌کند.",
      "statusValues": {
        "online": "آنلاین",
        "offline": "آفلاین",
        "unknown": "نامشخص",
        "xrayError": "خطای Xray",
        "xrayStopped": "متوقف"
      },
      "toasts": {
        "list": "بارگذاری نودها ناموفق",
        "obtain": "بارگذاری نود ناموفق",
        "add": "افزودن نود",
        "update": "به‌روزرسانی نود",
        "delete": "حذف نود",
        "deleted": "نود حذف شد",
        "test": "تست اتصال",
        "fillRequired": "نام، آدرس، پورت و توکن API الزامی است",
        "probeFailed": "بررسی ناموفق",
        "updateStarted": "به‌روزرسانی پنل آغاز شد",
        "updateResult": "به‌روزرسانی روی {ok} نود آغاز شد، {failed} ناموفق",
        "updateNoneEligible": "حداقل یک نود آنلاین و فعال انتخاب کنید",
        "saveMtls": "ذخیره mTLS نود"
      },
      "tlsVerifyMode": "اعتبارسنجی TLS",
      "tlsVerifyModeHint": "اینکه پنل گواهی HTTPS نود را چطور بررسی کند. Pin یا Skip برای گواهی‌های self-signed است (فقط نودهای https).",
      "tlsVerify": "اعتبارسنجی (CA پیش‌فرض)",
      "tlsPin": "Pin گواهی (SHA-256)",
      "tlsSkip": "رد کردن اعتبارسنجی",
      "tlsMtls": "TLS متقابل (گواهی کلاینت)",
      "mtlsFormHint": "این نود با یک گواهی کلاینت، پنل را احراز هویت می‌کند. CA این پنل را از بخش mTLS نود به نود کپی کنید، CA مورد اعتماد آن را تنظیم کنید و سپس آن را راه‌اندازی مجدد کنید.",
      "mtls": {
        "title": "mTLS نود",
        "intro": "TLS متقابل علاوه بر توکن API، یک عامل گواهی کلاینت برای ارتباط بین نودها اضافه می‌کند. اختیاری است: برای استفاده فقط از احراز هویت با توکن، آن را خالی بگذارید.",
        "copyCa": "کپی CA این پنل",
        "copyCaHint": "این CA را به نودهایی که این پنل مدیریت می‌کند بدهید، سپس حالت اعتبارسنجی TLS آن‌ها را روی TLS متقابل تنظیم کنید.",
        "caCopied": "گواهی CA در کلیپ‌بورد کپی شد",
        "caFailed": "دریافت گواهی CA ناموفق بود",
        "trustLabel": "CA مورد اعتماد (پنل والد)",
        "trustHint": "وقتی این پنل خود یک نود است، CA پنل مدیریت‌کننده را اینجا بچسبانید تا گواهی کلاینت آن الزامی شود. برای اعمال، پنل را راه‌اندازی مجدد کنید.",
        "trustPlaceholder": "-----BEGIN CERTIFICATE-----",
        "save": "ذخیره CA مورد اعتماد",
        "saved": "CA مورد اعتماد ذخیره شد — برای اعمال، پنل را راه‌اندازی مجدد کنید"
      },
      "tlsSkipWarning": "رد کردن اعتبارسنجی محافظت در برابر حملهٔ مرد میانی را از بین می‌برد و توکن API ممکن است شنود شود. ترجیحاً به‌جای آن گواهی را Pin کنید.",
      "pinnedCert": "SHA-256 گواهیِ Pin‌شده",
      "pinnedCertHint": "SHA-256 گواهیِ نود به‌صورت base64 یا hex. برای خواندنِ همین حالا از نود، از دکمهٔ Fetch استفاده کنید.",
      "pinnedCertPlaceholder": "SHA-256 به‌صورت base64 یا hex",
      "fetchPin": "دریافت",
      "pinFetched": "گواهیِ فعلیِ نود دریافت شد",
      "pinFetchFailed": "دریافت گواهی ممکن نشد"
    },
    "settings": {
      "defaultTag": "پیش‌فرض",
      "title": "تنظیمات پنل",
      "save": "ذخیره",
      "infoDesc": "برای اعمال تغییرات در این بخش باید پس از ذخیره کردن، پنل را ریستارت کنید",
      "restartPanel": "راه‌اندازی مجدد پنل",
      "restartPanelDesc": "آیا مطمئن به ریستارت پنل هستید؟ اگر پس‌از ریستارت نمی‌توانید به پنل دسترسی پیدا کنید، لطفاً گزارش‌های موجود در اسکریپت پنل را بررسی کنید",
      "restartPanelSuccess": "پنل با موفقیت راه‌اندازی مجدد شد",
      "actions": "عملیات ها",
      "resetDefaultConfig": "برگشت به پیش‌فرض",
      "panelSettings": "پیکربندی",
      "securitySettings": "احرازهویت",
      "securityWarnings": "هشدارهای امنیتی",
      "panelExposed": "ممکن است پنل شما در معرض خطر باشد:",
      "warnHttp": "پنل از طریق HTTP ساده ارائه می‌شود — برای محیط عملیاتی TLS فعال کنید.",
      "warnDefaultPort": "پورت پیش‌فرض 2053 شناخته‌شده است — آن را به یک پورت تصادفی تغییر دهید.",
      "warnDefaultBasePath": "مسیر پایه پیش‌فرض «/» شناخته‌شده است — آن را به یک مسیر تصادفی تغییر دهید.",
      "warnDefaultSubPath": "مسیر ساب پیش‌فرض «/sub/» شناخته‌شده است — تغییرش دهید.",
      "warnDefaultJsonPath": "مسیر JSON ساب پیش‌فرض «/json/» شناخته‌شده است — تغییرش دهید.",
      "TGBotSettings": "ربات تلگرام",
      "panelListeningIP": "آدرس آی‌پی",
      "panelListeningIPDesc": "آدرس آی‌پی برای وب پنل. برای گوش‌دادن به‌تمام آی‌پی‌ها خالی‌بگذارید",
      "panelListeningDomain": "نام دامنه",
      "panelListeningDomainDesc": "آدرس دامنه برای وب پنل. برای گوش دادن به‌تمام دامنه‌ها و آی‌پی‌ها خالی‌بگذارید",
      "panelPort": "پورت",
      "panelPortDesc": "شماره پورت برای وب پنل. باید پورت استفاده نشده‌باشد",
      "publicKeyPath": "مسیر کلید عمومی",
      "publicKeyPathDesc": "مسیر فایل کلیدعمومی برای وب پنل. با '/' شروع‌می‌شود",
      "privateKeyPath": "مسیر کلید خصوصی",
      "privateKeyPathDesc": "مسیر فایل کلیدخصوصی برای وب پنل. با '/' شروع‌می‌شود",
      "panelUrlPath": "مسیر URI",
      "panelUrlPathDesc": "برای وب پنل. با '/' شروع‌ و با '/' خاتمه‌ می‌یابد URI مسیر",
      "pageSize": "اندازه صفحه بندی جدول",
      "pageSizeDesc": "(اندازه صفحه برای جدول ورودی‌ها.(0 = غیرفعال",
      "panelOutbound": "اوتباند ترافیک پنل",
      "panelOutboundDesc": "درخواست‌های خود پنل — بررسی نسخه و دانلود پنل/Xray، تلگرام، و به‌روزرسانی معمولی فایل‌های geo — را از این اوتباند Xray عبور می‌دهد تا فیلترینگ GitHub/تلگرام در سمت سرور دور زده شود. یک ورودی پل لوکال به‌صورت خودکار به کانفیگ در حال اجرا اضافه و زنده اعمال می‌شود. روی Geodata Auto-Update نِیتیو Xray اثری ندارد؛ آن اوتباند دانلود مخصوص خودش را دارد. برای اتصال مستقیم خالی بگذارید.",
      "panelOutboundPh": "اتصال مستقیم",
      "remarkTemplate": "قالب ریمارک",
      "remarkTemplateDesc": "اگر پر شود، جای مدلِ ریمارک را برای همه‌ی لینک‌های اشتراک می‌گیرد — فرمت دلخواهت را با توکن‌های متغیر بنویس (از دکمه برای درج استفاده کن). خالی = استفاده از مدلِ بالا.",
      "subShowIdentityOnAllLinks": "نمایش هویت در همه لینک‌ها",
      "subShowIdentityOnAllLinksDesc": "در صورت فعال بودن، {{EMAIL}} و {{USERNAME}} در یادداشت هر لینک بدنه اشتراک باقی می‌مانند. توکن‌های مصرف همچنان فقط در لینک اول نمایش داده می‌شوند.",
      "datepicker": "نوع تقویم",
      "datepickerPlaceholder": "انتخاب تاریخ",
      "datepickerDescription": "وظایف برنامه ریزی شده بر اساس این تقویم اجرا می‌شود",
      "oldUsername": "نام‌کاربری فعلی",
      "currentPassword": "رمز‌عبور فعلی",
      "newUsername": "نام‌کاربری جدید",
      "newPassword": "رمزعبور جدید",
      "telegramBotEnable": "فعال‌سازی ربات تلگرام",
      "telegramBotEnableDesc": "ربات تلگرام را فعال می‌کند",
      "telegramToken": "توکن تلگرام",
      "telegramTokenDesc": "دریافت کنید {'@'}botfather توکن را می‌توانید از",
      "telegramProxy": "پراکسی SOCKS",
      "telegramProxyDesc": "را برای اتصال به تلگرام فعال می کند SOCKS5 پراکسی",
      "telegramAPIServer": "سرور API تلگرام",
      "telegramAPIServerDesc": "API سرور تلگرام برای اتصال را تغییر میدهد. برای استفاده از سرور پیش فرض خالی بگذارید",
      "telegramChatId": "آی‌دی چت مدیر",
      "telegramChatIdDesc": "دریافت ‌کنید ('/id'یا (دستور ({'@'}userinfobot) آی‌دی(های) چت تلگرام مدیر، از",
      "telegramNotifyTime": "زمان نوتیفیکیشن",
      "telegramNotifyTimeDesc": "هر چند وقت یک‌بار ربات تلگرام گزارش دوره‌ای بفرستد. یک بازهٔ آماده انتخاب کنید یا گزینهٔ سفارشی را بزنید تا عبارت crontab وارد کنید.",
      "notifyTime": {
        "every": "@every — تکرار در یک بازه",
        "hourly": "@hourly — هر ساعت",
        "daily": "@daily — هر روز ساعت ۰۰:۰۰",
        "weekly": "@weekly — هر هفته",
        "monthly": "@monthly — هر ماه",
        "custom": "سفارشی (crontab)",
        "seconds": "ثانیه",
        "minutes": "دقیقه",
        "hours": "ساعت",
        "interval": "بازه زمانی",
        "unit": "واحد"
      },
      "tgNotifyBackup": "پشتیبان‌گیری از دیتابیس",
      "tgNotifyBackupDesc": "فایل پشتیبان‌دیتابیس را به‌همراه گزارش ارسال می‌کند",
      "tgNotifyLogin": "اعلان ورود",
      "tgNotifyLoginDesc": "نام‌کاربری، آدرس آی‌پی، و زمان ورود، فردی که سعی می‌کند وارد پنل شود را نمایش می‌دهد",
      "sessionMaxAge": "بیشینه زمان جلسه وب",
      "sessionMaxAgeDesc": "(بیشینه زمانی که می‌توانید لاگین بمانید. (واحد: دقیقه",
      "expireTimeDiff": "آستانه زمان باقی مانده",
      "expireTimeDiffDesc": "(فاصله زمانی هشدار تا رسیدن به زمان انقضا. (واحد: روز",
      "trafficDiff": "آستانه ترافیک باقی مانده",
      "trafficDiffDesc": "(فاصله زمانی هشدار تا رسیدن به اتمام ترافیک. (واحد: گیگابایت",
      "tgNotifyCpu": "آستانه هشدار بار پردازنده",
      "tgNotifyCpuDesc": "(اگر بار روی پردازنده ازاین آستانه فراتر رفت، برای شما پیام ارسال می‌شود. (واحد: درصد",
      "timeZone": "منطقه زمانی",
      "timeZoneDesc": "وظایف برنامه ریزی شده بر اساس این منطقه‌زمانی اجرا می‌شود",
      "subSettings": "سابسکریپشن",
      "subEnable": "فعال‌سازی سرویس سابسکریپشن",
      "subEnableDesc": "سرویس سابسکریپشن‌ را فعال‌می‌کند",
      "subJsonEnable": "فعال/غیرفعال‌سازی مستقل نقطه دسترسی سابسکریپشن JSON.",
      "subJsonEnableTitle": "اشتراک JSON",
      "subClashEnableTitle": "اشتراک Clash / Mihomo",
      "subFormatsTipTitle": "تنظیمات اشتراک ویژه هر قالب",
      "subFormatsTipDesc": "مسیرهای URL، آدرس‌های معکوس و تشخیص خودکار کلاینت را برای JSON و Clash / Mihomo جداگانه پیکربندی کنید.",
      "subFormatsTipAction": "باز کردن قالب‌های اشتراک",
      "subJsonAutoDetect": "تشخیص خودکار کلاینت‌های Xray JSON",
      "subJsonAutoDetectDesc": "با فعال‌سازی، کلاینت‌های سازگار و شناخته‌شده که آدرس استاندارد اشتراک را درخواست می‌کنند، به‌طور خودکار آرایه تنظیمات Xray JSON دریافت می‌کنند. سایر کلاینت‌ها پاسخ خام/Base64 را دریافت می‌کنند. برای اعمال تغییر، اشتراک JSON باید فعال باشد و پنل راه‌اندازی مجدد شود.",
      "subJsonAlwaysArray": "همیشه آرایه JSON برگردان",
      "subJsonAlwaysArrayDesc": "مسیر صریح اشتراک JSON را حتی برای یک پروفایل، مطابق استاندارد XTLS به‌صورت آرایه برمی‌گرداند. پاسخ‌های JSON تشخیص‌داده‌شده همیشه آرایه هستند. برای حفظ پاسخ قدیمی تک‌شیء غیرفعال بگذارید.",
      "subJsonUserAgentRegex": "عبارت User-Agent برای Xray JSON",
      "subJsonUserAgentRegexDesc": "عبارت منظم Go RE2 که با عامل کاربر (User-Agent) کلاینت مطابقت داده می‌شود تا صیغه Xray JSON روی آدرس استاندارد اشتراک به‌طور خودکار انتخاب شود. به‌طور پیش‌فرض خالی است، بنابراین تشخیص خودکار غیرفعال می‌ماند تا زمانی که الگویی برای کلاینت‌های موردنظر خود تعیین کنید. سایر کلاینت‌ها پاسخ خام/Base64 را دریافت می‌کنند. پس از تغییر، پنل را راه‌اندازی مجدد کنید.",
      "subClashAutoDetect": "تشخیص خودکار کلاینت‌های Clash/Mihomo",
      "subClashAutoDetectDesc": "با فعال‌سازی، کلاینت‌های شناخته‌شده Clash/Mihomo که آدرس استاندارد اشتراک را درخواست می‌کنند، به‌طور خودکار پیکربندی Clash با فرمت YAML دریافت می‌کنند. مرورگرها همچنان صفحه اشتراک را نمایش می‌دهند، سایر کلاینت‌ها پاسخ خام/Base64 را دریافت می‌کنند و آدرس‌های صریح JSON و Clash در دسترس می‌مانند. برای اعمال تغییر، اشتراک Clash/Mihomo باید فعال باشد و پنل راه‌اندازی مجدد شود.",
      "subClashUserAgentRegex": "عبارت User-Agent برای Clash/Mihomo",
      "subClashUserAgentRegexDesc": "عبارت منظم Go RE2 که با عامل کاربر (User-Agent) کلاینت مطابقت داده می‌شود تا کلاینت‌های Clash/Mihomo در آدرس استاندارد اشتراک شناسایی شوند. برای استفاده از الگوی پیش‌فرض خالی بگذارید. پس از تغییر، پنل را راه‌اندازی مجدد کنید.",
      "subTitle": "عنوان اشتراک",
      "subTitleDesc": "عنوان نمایش داده شده در کلاینت VPN",
      "subSupportUrl": "آدرس پشتیبانی",
      "subSupportUrlDesc": "لینک پشتیبانی فنی که در کلاینت VPN نمایش داده می‌شود",
      "subProfileUrl": "آدرس پروفایل",
      "subProfileUrlDesc": "لینک وب‌سایت شما که در کلاینت VPN نمایش داده می‌شود",
      "subAnnounce": "اعلان",
      "subAnnounceDesc": "متن اعلانی که در کلاینت VPN نمایش داده می‌شود",
      "subThemeDir": "پوشه قالب صفحه اشتراک",
      "subThemeDirDesc": "مسیر مطلق پوشه‌ای که شامل یک قالب سفارشی (index.html/sub.html) برای صفحه اشتراک است (مثلاً /etc/3x-ui/sub_templates/my-theme/). برای استفاده از صفحه پیش‌فرض خالی بگذارید.",
      "subThemeDirDocs": "راهنمای قالب ↗",
      "subEnableRouting": "فعال‌سازی مسیریابی",
      "subEnableRoutingDesc": "تنظیمات سراسری برای فعال‌سازی مسیریابی در کلاینت VPN. (فقط برای Happ)",
      "subRoutingRules": "قوانین مسیریابی",
      "subRoutingRulesDesc": "قوانین مسیریابی سراسری برای کلاینت VPN. (فقط برای Happ)",
      "subHideSettings": "پنهان کردن تنظیمات سرور",
      "subHideSettingsDesc": "پنهان کردن توانایی مشاهده و ویرایش پیکربندی سرور در کلاینت VPN. (فقط برای Happ)",
      "subIncyEnableRouting": "فعال‌سازی مسیریابی",
      "subIncyEnableRoutingDesc": "تزریق پروفایل مسیریابی به بدنه اشتراک برای کلاینت Incy. (فقط برای Incy)",
      "subIncyRoutingRules": "قوانین مسیریابی",
      "subIncyRoutingRulesDesc": "لینک مسیریابی Incy که به بدنه اشتراک افزوده می‌شود، مثلاً incy://routing/onadd/<base64>. (فقط برای Incy)",
      "subClashEnableRouting": "فعال‌سازی مسیریابی",
      "subClashEnableRoutingDesc": "قوانین مسیریابی سراسری Clash/Mihomo را در اشتراک‌های YAML تولیدشده وارد کن.",
      "subClashRoutingRules": "قوانین مسیریابی سراسری",
      "subClashRoutingRulesDesc": "قوانین Clash/Mihomo که پیش از MATCH,PROXY به ابتدای هر اشتراک YAML افزوده می‌شوند.",
      "subListen": "آدرس آی‌پی",
      "subListenDesc": "آدرس آی‌پی برای سرویس سابسکریپشن. برای گوش دادن به‌تمام آی‌پی‌ها خالی‌بگذارید",
      "subPort": "پورت",
      "subPortDesc": "شماره پورت برای سرویس سابسکریپشن. باید پورت استفاده‌نشده‌باشد. همچنین وقتی «مسیر پراکسی معکوس» خالی باشد، برای ساخت لینک/QR سابسکریپشن نمایش‌داده‌شده در پنل استفاده می‌شود — اگر سابسکریپشن از پشت یک پراکسی معکوس روی پورت دیگری در دسترس است، به جای این، «مسیر پراکسی معکوس» را پر کنید.",
      "subCertPath": "مسیر کلید عمومی",
      "subCertPathDesc": "مسیر فایل کلیدعمومی برای سرویس سابیکریپشن. با '/' شروع‌می‌شود",
      "subKeyPath": "مسیر کلید خصوصی",
      "subKeyPathDesc": "مسیر فایل کلیدخصوصی برای سرویس سابسکریپشن. با '/' شروع‌می‌شود",
      "subPath": "مسیر URI",
      "subPathDesc": "برای سرویس سابسکریپشن. با '/' شروع‌ و با '/' خاتمه‌ می‌یابد URI مسیر",
      "subDomain": "نام دامنه",
      "subDomainDesc": "آدرس دامنه برای سرویس سابسکریپشن. برای گوش دادن به تمام دامنه‌ها و آی‌پی‌ها خالی‌بگذارید. همچنین وقتی «مسیر پراکسی معکوس» خالی باشد، به عنوان دامنه پیش‌فرض لینک سابسکریپشن نمایش‌داده‌شده استفاده می‌شود — اگر پنل و سابسکریپشن از دامنه‌های متفاوتی در دسترس هستند (مثلاً پشت یک پراکسی معکوس)، «مسیر پراکسی معکوس» را پر کنید.",
      "subUpdates": "فاصله بروزرسانی‌ سابسکریپشن",
      "subUpdatesDesc": "(فاصله مابین بروزرسانی در برنامه‌های کاربری. (واحد: ساعت",
      "subEncrypt": "انکود",
      "subEncryptDesc": "کدگذاری خواهدشد Base64 محتوای برگشتی سرویس سابسکریپشن برپایه",
      "subURI": "پروکسی معکوس URI مسیر",
      "subURIDesc": "آدرس پایه کامل (scheme://domain[:port]/path/) برای لینک سابسکریپشن و کد QR، به جای نام دامنه/پورت استفاده می‌شود. هر وقت سابسکریپشن از پشت یک پراکسی معکوس یا روی دامنه/پورت متفاوتی نسبت به موارد بالا در دسترس است، این را پر کنید.",
      "externalTrafficInformEnable": "اطلاع رسانی خارجی مصرف ترافیک",
      "externalTrafficInformEnableDesc": "به API خارجی در هر به‌روزرسانی ترافیک اطلاع بده.",
      "externalTrafficInformURI": "لینک اطلاع رسانی خارجی مصرف ترافیک",
      "externalTrafficInformURIDesc": "ترافیک های مصرفی به این لینک هم ارسال می شود",
      "restartXrayOnClientDisable": "ری‌استارت Xray بعد از غیرفعال‌سازی خودکار",
      "restartXrayOnClientDisableDesc": "وقتی کاربر به‌صورت خودکار به‌دلیل اتمام زمان یا ترافیک غیرفعال می‌شود، Xray ری‌استارت شود.",
      "fragment": "فرگمنت",
      "fragmentDesc": "فعال کردن فرگمنت برای بسته‌ی نخست تی‌ال‌اس",
      "fragmentSett": "تنظیمات فرگمنت",
      "noisesDesc": "فعال کردن Noises.",
      "noisesSett": "تنظیمات Noises",
      "trustedProxyCidrs": "CIDRهای پراکسی مورد اعتماد",
      "trustedProxyCidrsDesc": "IPها/CIDRها (با کاما) که مجازند هدرهای host، proto و client IP فوروارد را تنظیم کنند.",
      "ldap": {
        "enable": "فعال‌سازی همگام‌سازی LDAP",
        "host": "میزبان LDAP",
        "port": "پورت LDAP",
        "useTls": "استفاده از TLS (LDAPS)",
        "skipTlsVerify": "رد کردن تأیید گواهی TLS",
        "skipTlsVerifyDesc": "ناامن — اعتبارسنجی گواهی سرور را غیرفعال می‌کند. فقط برای CAهای داخلی/غیرمعتبر استفاده کنید.",
        "bindDn": "Bind DN",
        "passwordConfigured": "تنظیم‌شده؛ برای حفظ رمز فعلی خالی بگذارید.",
        "passwordUnconfigured": "تنظیم نشده.",
        "passwordPlaceholder": "تنظیم‌شده – برای جایگزینی مقدار جدید وارد کنید",
        "baseDn": "Base DN",
        "userFilter": "فیلتر کاربر",
        "userAttr": "صفت کاربر (username/email)",
        "vlessField": "صفت پرچم VLESS",
        "flagField": "صفت پرچم عمومی (اختیاری)",
        "flagFieldDesc": "اگر تعیین شود، پرچم VLESS را override می‌کند — مثل shadowInactive.",
        "truthyValues": "مقادیر صحیح",
        "truthyValuesDesc": "با کاما جدا شده؛ پیش‌فرض: true,1,yes,on",
        "invertFlag": "وارونگی پرچم",
        "invertFlagDesc": "وقتی صفت به معنی «غیرفعال» است فعال کنید (مثل shadowInactive).",
        "syncSchedule": "زمان‌بندی همگام‌سازی",
        "syncScheduleDesc": "رشته شبیه cron، مثل @every 1m",
        "inboundTags": "تگ‌های ورودی",
        "inboundTagsDesc": "ورودی‌هایی که همگام‌سازی LDAP اجازه دارد روی آن‌ها کاربر بسازد یا حذف کند.",
        "noInbounds": "هیچ ورودی یافت نشد. ابتدا از بخش ورودی‌ها یکی بسازید.",
        "autoCreate": "ساخت خودکار کاربران",
        "autoDelete": "حذف خودکار کاربران",
        "defaultTotalGb": "حجم پیش‌فرض (GB)",
        "defaultExpiryDays": "انقضای پیش‌فرض (روز)",
        "defaultIpLimit": "محدودیت IP پیش‌فرض"
      },
      "subFormats": {
        "finalMask": "Final Mask",
        "finalMaskDesc": "ماسک‌های TCP/UDP مربوط به Xray finalmask و پارامترهای QUIC را به هر پروفایل Xray JSON تولیدشده اضافه می‌کند. به برنامه‌ای با پشتیبانی از اشتراک Xray JSON و هسته جدید Xray نیاز دارد.",
        "packets": "بسته‌ها",
        "length": "طول",
        "interval": "بازه",
        "maxSplit": "حداکثر تقسیم",
        "noises": "نویزها",
        "noiseItem": "نویز №{n}",
        "type": "نوع",
        "packet": "بسته",
        "delayMs": "تأخیر (ms)",
        "applyTo": "اعمال بر",
        "addNoise": "+ نویز",
        "concurrency": "هم‌زمانی",
        "xudpConcurrency": "هم‌زمانی xudp",
        "xudpUdp443": "xudp UDP 443"
      },
      "mux": "Mux",
      "muxDesc": "چندین جریان داده مستقل را در یک جریان داده ثابت منتقل می کند",
      "muxSett": "تنظیمات ماکس",
      "direct": "اتصال مستقیم",
      "directDesc": "به طور مستقیم با دامنه ها یا محدوده آی‌پی یک کشور خاص ارتباط برقرار می کند",
      "notifications": "اعلان‌ها",
      "certs": "گواهی‌ها",
      "externalTraffic": "ترافیک خارجی",
      "dateAndTime": "تاریخ و زمان",
      "proxyAndServer": "پراکسی و سرور",
      "intervals": "فواصل",
      "information": "اطلاعات",
      "profile": "پروفایل",
      "language": "زبان",
      "telegramBotLanguage": "زبان ربات تلگرام",
      "security": {
        "admin": "اعتبارنامه‌های ادمین",
        "twoFactor": "احراز هویت دو مرحله‌ای",
        "twoFactorEnable": "فعال‌سازی 2FA",
        "twoFactorEnableDesc": "یک لایه اضافی امنیتی برای احراز هویت فراهم می‌کند.",
        "twoFactorModalSetTitle": "فعال‌سازی احراز هویت دو مرحله‌ای",
        "twoFactorModalDeleteTitle": "غیرفعال‌سازی احراز هویت دو مرحله‌ای",
        "twoFactorModalSteps": "برای راه‌اندازی احراز هویت دو مرحله‌ای، مراحل زیر را انجام دهید:",
        "twoFactorModalFirstStep": "1. این کد QR را در برنامه احراز هویت اسکن کنید یا توکن کنار کد QR را کپی کرده و در برنامه بچسبانید",
        "twoFactorModalSecondStep": "2. کد را از برنامه وارد کنید",
        "twoFactorModalRemoveStep": "برای حذف احراز هویت دو مرحله‌ای، کد را از برنامه وارد کنید.",
        "twoFactorModalChangeCredentialsTitle": "تغییر اعتبارنامه‌ها",
        "twoFactorModalChangeCredentialsStep": "برای تغییر اعتبارنامه‌های مدیر، کد را از برنامه وارد کنید.",
        "twoFactorModalSetSuccess": "احراز هویت دو مرحله‌ای با موفقیت برقرار شد",
        "twoFactorModalDeleteSuccess": "احراز هویت دو مرحله‌ای با موفقیت حذف شد",
        "twoFactorModalError": "کد نادرست",
        "show": "نمایش",
        "hide": "پنهان",
        "apiTokenNew": "توکن جدید",
        "apiTokenName": "نام",
        "apiTokenNamePlaceholder": "مثلاً central-panel-a",
        "apiTokenNameRequired": "نام الزامی است",
        "apiTokenEmpty": "هنوز توکنی وجود ندارد — برای احراز هویت ربات‌ها یا پنل‌های راه دور یکی بسازید.",
        "apiTokenDeleteWarning": "هر کلاینتی که از این توکن استفاده می‌کند بلافاصله احراز هویتش قطع می‌شود.",
        "apiTokenCreatedTitle": "توکن ساخته شد",
        "apiTokenCreatedNotice": "اکنون این توکن را کپی کنید. به‌دلیل امنیتی به‌صورت قابل‌خواندن ذخیره نمی‌شود و دوباره نمایش داده نخواهد شد."
      },
      "toasts": {
        "modifySettings": "پارامترها تغییر کرده‌اند.",
        "getSettings": "خطا در دریافت پارامترها",
        "modifyUserError": "خطا در تغییر اعتبارنامه‌های مدیر سیستم.",
        "modifyUser": "شما با موفقیت اعتبارنامه‌های مدیر سیستم را تغییر دادید.",
        "originalUserPassIncorrect": "نام‌کاربری یا رمزعبور فعلی اشتباه‌است",
        "userPassMustBeNotEmpty": "نام‌کاربری یا رمزعبور جدید خالی‌است",
        "getOutboundTrafficError": "خطا در دریافت ترافیک خروجی",
        "resetOutboundTrafficError": "خطا در بازنشانی ترافیک خروجی"
      },
      "smtpSettings": "تنظیمات SMTP",
      "smtpEnable": "فعال‌سازی اعلان‌های ایمیلی",
      "smtpEnableDesc": "فعال‌سازی اعلان‌های ایمیلی از طریق SMTP",
      "smtpHost": "میزبان SMTP",
      "smtpHostDesc": "نام میزبان سرور SMTP (مثلاً smtp.gmail.com)",
      "smtpPort": "پورت SMTP",
      "smtpPortDesc": "پورت سرور SMTP (پیش‌فرض: ۵۸۷)",
      "smtpUsername": "نام‌کاربری SMTP",
      "smtpUsernameDesc": "نام‌کاربری احراز هویت SMTP",
      "smtpFrom": "آدرس فرستنده (From)",
      "smtpFromDesc": "آدرس استفاده‌شده در سرآیند From ایمیل. برای استفاده از نام کاربری، خالی بگذارید.",
      "smtpFromName": "نام فرستنده (From)",
      "smtpFromNameDesc": "نام نمایشی اختیاری پیش از آدرس در سرآیند From.",
      "smtpPassword": "رمز عبور SMTP",
      "smtpPasswordDesc": "رمز عبور احراز هویت SMTP",
      "smtpTo": "گیرندگان",
      "smtpToDesc": "آدرس‌های ایمیل گیرندگان، جداشده با کاما",
      "emailSettings": "ایمیل",
      "emailNotifications": "اعلان‌ها",
      "smtpEventBusNotify": "اعلان‌های رویداد ایمیلی",
      "smtpEventBusNotifyDesc": "انتخاب کنید کدام رویدادها اعلان ایمیلی را فعال می‌کنند",
      "tgEventBusNotify": "اعلان‌های رویداد تلگرام",
      "tgEventBusNotifyDesc": "انتخاب کنید کدام رویدادها اعلان تلگرام را فعال می‌کنند",
      "testSmtp": "ارسال ایمیل آزمایشی",
      "testTgBot": "ارسال پیام آزمایشی",
      "eventGroupOutbound": "خروجی",
      "eventGroupXray": "هسته Xray",
      "eventGroupSystem": "سیستم",
      "eventGroupSecurity": "امنیت",
      "eventGroupNode": "نودها",
      "eventOutboundDown": "قطع",
      "eventOutboundUp": "وصل",
      "eventXrayCrash": "کرش",
      "eventNodeDown": "قطع",
      "eventNodeUp": "وصل",
      "eventCPUHigh": "بالا بودن CPU (٪)",
      "requestFailed": "درخواست ناموفق بود",
      "smtpEncryption": "رمزنگاری",
      "smtpEncryptionDesc": "روش رمزنگاری اتصال SMTP",
      "smtpEncryptionNone": "هیچ‌کدام (متن ساده)",
      "smtpEncryptionStartTLS": "STARTTLS",
      "smtpEncryptionTLS": "TLS (ضمنی)",
      "smtpStageConnect": "اتصال",
      "smtpStageAuth": "احراز هویت",
      "smtpStageSend": "ارسال",
      "smtpTestSuccess": "ایمیل آزمایشی با موفقیت ارسال شد",
      "smtpHostNotConfigured": "میزبان SMTP پیکربندی نشده است",
      "smtpNoRecipients": "هیچ گیرنده‌ای پیکربندی نشده است",
      "smtpFromNotConfigured": "آدرس فرستنده SMTP پیکربندی نشده است",
      "eventLoginAttempt": "تلاش برای ورود",
      "telegramTokenConfigured": "پیکربندی شده؛ برای حفظ توکن فعلی خالی بگذارید.",
      "telegramTokenPlaceholder": "پیکربندی شده - برای جایگزینی، توکن جدید وارد کنید",
      "smtpPasswordConfigured": "پیکربندی شده؛ برای حفظ رمز عبور فعلی خالی بگذارید.",
      "smtpPasswordPlaceholder": "پیکربندی شده - برای جایگزینی، رمز عبور جدید وارد کنید",
      "smtpNotInitialized": "SMTP مقداردهی اولیه نشده است",
      "tgBotNotEnabled": "ربات تلگرام فعال نیست",
      "tgTestFailed": "آزمایش تلگرام ناموفق بود",
      "tgTestSuccess": "پیام آزمایشی به تلگرام ارسال شد",
      "tgBotNotRunning": "ربات تلگرام در حال اجرا نیست",
      "smtpErrorAuth": "احراز هویت ناموفق بود — نام‌کاربری و رمز عبور را بررسی کنید",
      "smtpErrorStarttls": "سرور به STARTTLS نیاز دارد — نوع رمزنگاری را تغییر دهید",
      "smtpErrorTls": "سرور به TLS نیاز دارد — نوع رمزنگاری را تغییر دهید",
      "smtpErrorRefused": "اتصال رد شد — میزبان و پورت را بررسی کنید",
      "smtpErrorTimeout": "مهلت اتصال به پایان رسید — میزبان در دسترس نیست",
      "smtpErrorRelay": "سرور ارسال از این آدرس را رد می‌کند",
      "smtpErrorEof": "اتصال توسط سرور بسته شد",
      "smtpErrorUnknown": "خطای SMTP: {{ .Error }}",
      "eventMemoryHigh": "مصرف حافظه بالا (%)",
      "validation": {
        "pathLeadingSlash": "مسیر باید با / شروع شود"
      },
      "secretClear": "پاک کردن",
      "secretClearUndo": "لغو پاک کردن"
    },
    "xray": {
      "save": "ذخیره",
      "restartSuccess": "Xray با موفقیت راه‌اندازی مجدد شد",
      "stopSuccess": "Xray با موفقیت متوقف شد",
      "restartError": "خطا در راه‌اندازی مجدد Xray.",
      "stopError": "خطا در توقف Xray.",
      "basicTemplate": "پایه",
      "advancedTemplate": "پیشرفته",
      "generalConfigs": "استراتژی‌ کلی",
      "generalConfigsDesc": "این گزینه‌ها استراتژی کلی ترافیک را تعیین می‌کنند",
      "logConfigs": "لاگ",
      "logConfigsDesc": "گزارش‌ها ممکن است بر کارایی سرور شما تأثیر بگذارد. توصیه می شود فقط در صورت نیاز آن را عاقلانه فعال کنید",
      "basicRouting": "مسیریابی پایه",
      "blockConnectionsConfigsDesc": "این گزینه‌ها ترافیک را بر اساس کشور درخواست‌شده خاص مسدود می‌کنند.",
      "directConnectionsConfigsDesc": "یک اتصال مستقیم تضمین می‌کند که ترافیک خاص از طریق سرور دیگری مسیریابی نشود.",
      "blockips": "مسدود کردن آی‌پی‌ها",
      "blockdomains": "مسدود کردن دامنه‌ها",
      "directips": "آی‌پی‌های مستقیم",
      "directdomains": "دامنه‌های مستقیم",
      "ipv4Routing": "IPv4 مسیریابی",
      "ipv4RoutingDesc": "این گزینه‌ها ترافیک را از طریق آی‌پی نسخه4 سرور، به مقصد هدایت می‌کند",
      "Template": "‌پیکربندی پیشرفته الگو ایکس‌ری",
      "TemplateDesc": "فایل پیکربندی نهایی ایکس‌ری بر اساس این الگو ایجاد می‌شود",
      "FreedomStrategy": "Freedom استراتژی پروتکل",
      "FreedomStrategyDesc": "تعیین می‌کند Freedom استراتژی خروجی شبکه را برای پروتکل",
      "FreedomHappyEyeballs": "Freedom Happy Eyeballs (IPv4/IPv6)",
      "FreedomHappyEyeballsDesc": "اتصال دو‌پشته‌ای برای خروجی مستقیم (freedom) — برای سرورهای خروج دارای هر دو IPv4 و IPv6 مفید است.",
      "FreedomHappyEyeballsTryDelayDesc": "تعداد میلی‌ثانیه پیش از امتحان خانوادهٔ آدرس دیگر. مقدار 150 تا 250 میلی‌ثانیه نقطهٔ شروع خوبی است.",
      "RoutingStrategy": "استراتژی کلی مسیریابی",
      "RoutingStrategyDesc": "استراتژی کلی مسیریابی برای حل تمام درخواست‌ها را تعیین می‌کند",
      "outboundTestUrl": "آدرس تست خروجی",
      "outboundTestUrlDesc": "آدرسی که برای تست اتصال خروجی استفاده می‌شود.",
      "Torrent": "مسدودسازی پروتکل بیت‌تورنت",
      "Inbounds": "ورودی‌ها",
      "Outbounds": "خروجی‌ها",
      "Balancers": "بالانسرها",
      "balancerTagRequired": "تگ الزامی است",
      "balancerSelectorRequired": "حداقل یک خروجی انتخاب کنید",
      "balancerLive": "هدف زنده",
      "balancerOverride": "اجبار مسیر",
      "balancerOverridePh": "خودکار (استراتژی)",
      "balancerLiveRefresh": "به‌روزرسانی وضعیت زنده بالانسر",
      "balancerNotRunning": "این بالانسر در Xray در حال اجرا فعال نیست — ابتدا تغییرات را ذخیره کنید یا Xray را روشن کنید",
      "routeTester": "آزمایش مسیر",
      "routeTesterDesc": "از Xray در حال اجرا بپرسید یک اتصال از کدام خروجی عبور می‌کند. هیچ ترافیکی ارسال نمی‌شود — پاسخ مستقیماً از موتور مسیریابی زنده می‌آید.",
      "routeTesterDest": "دامنه یا IP",
      "routeTesterPort": "پورت",
      "routeTesterInbound": "ورودی",
      "routeTesterProtocol": "پروتکل تشخیصی",
      "routeTesterTest": "آزمایش مسیر",
      "routeTesterMatchedOutbound": "خروجی منطبق",
      "routeTesterViaBalancer": "از طریق بالانسر",
      "routeTesterDefaultOutbound": "هیچ قانونی منطبق نشد — ترافیک به خروجی پیش‌فرض (اولین خروجی) می‌رود.",
      "Routings": "قوانین مسیریابی",
      "importRules": "ورود قوانین",
      "exportRules": "خروج قوانین",
      "importOutbounds": "ورود خروجی‌ها",
      "exportOutbounds": "خروج خروجی‌ها",
      "importInvalidJson": "JSON نامعتبر — یک آرایه یا یک شیء با کلید متناظر انتظار می‌رود.",
      "completeTemplate": "همه",
      "logLevel": "سطح گزارش",
      "logLevelDesc": "سطح گزارش برای گزارش های خطا، نشان دهنده اطلاعاتی است که باید ثبت شوند.",
      "accessLog": "مسیر گزارش",
      "accessLogDesc": "مسیر فایل برای گزارش دسترسی. مقدار ویژه «هیچ» گزارش‌های دسترسی را غیرفعال میکند.",
      "errorLog": "گزارش خطا",
      "errorLogDesc": "مسیر فایل برای ورود به سیستم خطا. مقدار ویژه «هیچ» گزارش های خطا را غیرفعال میکند",
      "dnsLog": "گزارش DNS",
      "dnsLogDesc": "آیا ثبت‌های درخواست DNS را فعال کنید",
      "maskAddress": "پنهان کردن آدرس",
      "maskAddressDesc": "پوشش آدرس IP، هنگامی که فعال می‌شود، به طور خودکار آدرس IP که در لاگ ظاهر می‌شود را جایگزین می‌کند.",
      "statistics": "آمار",
      "statsInboundUplink": "آمار آپلود ورودی",
      "statsInboundDownlink": "آمار دانلود ورودی",
      "statsOutboundUplink": "آمار آپلود خروجی",
      "statsOutboundDownlink": "آمار دانلود خروجی",
      "metricsListen": "نقطه پایانی متریک",
      "metricsListenDesc": "متریک‌های Xray (سبک Prometheus) را روی این آدرس:پورت در دسترس قرار می‌دهد (مثلاً 127.0.0.1:11111). برای غیرفعال‌کردن خالی بگذارید. روی localhost ببندید و با ریورس‌پروکسی ارائه دهید — احراز هویت ندارد.",
      "metricsTag": "تگ متریک",
      "connectionLimits": "محدودیت اتصال",
      "connectionLimitsDesc": "سیاست‌های سطح اتصال برای کاربرانِ سطح ۰. هر فیلد را خالی بگذارید تا مقدار پیش‌فرض Xray استفاده شود.",
      "connIdle": "مهلت بی‌کاری",
      "connIdleDesc": "اتصال را پس از این تعداد ثانیه بی‌کار ماندن می‌بندد. کم‌کردن آن، روی سرورهای شلوغ حافظه و file descriptor را زودتر آزاد می‌کند (پیش‌فرض Xray: ۳۰۰).",
      "bufferSize": "اندازهٔ بافر",
      "bufferSizeDesc": "اندازهٔ بافر داخلی هر اتصال بر حسب کیلوبایت. برای کم‌کردن مصرف حافظه روی سرورهای کم‌رم روی ۰ بگذارید (پیش‌فرض Xray به پلتفرم بستگی دارد).",
      "bufferSizePlaceholder": "خودکار",
      "seconds": "ثانیه",
      "rules": {
        "source": "مبدا",
        "dest": "مقصد",
        "inbound": "ورودی",
        "balancer": "بالانسر",
        "useComma": "موارد جدا شده با کاما"
      },
      "routing": {
        "dragToReorder": "برای تغییر ترتیب بکشید"
      },
      "ruleForm": {
        "sourceIps": "IPهای مبدا",
        "sourcePort": "پورت مبدا",
        "vlessRoute": "مسیر VLESS",
        "attributes": "صفت‌ها",
        "value": "مقدار",
        "user": "کاربر",
        "inboundTags": "تگ‌های ورودی",
        "outboundTag": "تگ خروجی",
        "balancerTag": "تگ بالانسر",
        "balancerTagTooltip": "ترافیک را از یکی از بالانسرهای پیکربندی‌شده عبور می‌دهد"
      },
      "outboundForm": {
        "tagDuplicate": "این تگ توسط خروجی دیگری استفاده شده است",
        "tagRequired": "تگ الزامی است",
        "tagPlaceholder": "تگ-منحصربه‌فرد",
        "localIpPlaceholder": "IP محلی",
        "dialerProxyPlaceholder": "یک خروجی برای زنجیره کردن انتخاب کنید",
        "dialerProxyHint": "این خروجی را از طریق خروجی دیگری (با تگ) برقرار کن تا یک زنجیره پروکسی ساخته شود. برای اتصال مستقیم خالی بگذار.",
        "targetStrategyHint": "نحوه تبدیل دامنه مقصد پیش از اتصال: AsIs (پیش‌فرض) آن را بدون تغییر می‌فرستد، UseIP… با امکان بازگشت تبدیل می‌کند، ForceIP… تبدیل موفق را الزامی می‌کند.",
        "addressRequired": "آدرس الزامی است",
        "portRequired": "پورت الزامی است",
        "optional": "اختیاری",
        "udpOverTcp": "UDP over TCP",
        "uotVersion": "نسخه UoT",
        "inboundTag": "تگ ورودی",
        "inboundTagPlaceholder": "تگ ورودی استفاده‌شده در قوانین مسیریابی",
        "responseType": "نوع پاسخ",
        "rewriteNetwork": "بازنویسی شبکه",
        "unchanged": "(بدون تغییر)",
        "unchangedAddress": "(بدون تغییر) مثل 1.1.1.1",
        "rules": "قوانین",
        "ruleN": "قانون {n}",
        "action": "عمل",
        "redirect": "بازهدایت",
        "finalRules": "قوانین نهایی",
        "overrideXrayPrivateIp": "override بلاک پیش‌فرض IP خصوصی Xray",
        "blockDelay": "تأخیر بلاک (ms)",
        "reverseSniffing": "Sniffing معکوس",
        "reserved": "رزرو شده",
        "minUploadInterval": "حداقل بازه آپلود (ms)",
        "maxUploadSizeBytes": "حداکثر اندازه آپلود (بایت)",
        "uplinkChunkSize": "اندازه قطعه آپلینک",
        "noGrpcHeader": "بدون هدر gRPC",
        "maxConcurrency": "حداکثر هم‌زمانی",
        "maxConnections": "حداکثر اتصال‌ها",
        "maxReuseTimes": "حداکثر استفاده مجدد",
        "maxRequestTimes": "حداکثر تعداد درخواست",
        "maxReusableSecs": "حداکثر ثانیه قابل استفاده مجدد",
        "keepAlivePeriod": "دوره Keep alive",
        "authPassword": "رمز احراز",
        "visionTestpre": "Vision testpre",
        "serverNamePlaceholder": "نام سرور",
        "verifyPeerName": "تایید نام Peer",
        "pinnedSha256": "SHA256 پین‌شده",
        "shortId": "Short ID",
        "sockopts": "Sockopts",
        "keepAliveInterval": "بازه Keep alive",
        "markFwmark": "علامت (fwmark)",
        "interface": "رابط",
        "proxyProtocol": "Proxy Protocol",
        "tcpUserTimeoutMs": "TCP user timeout (ms)",
        "tcpKeepAliveIdleS": "TCP keep-alive idle (s)"
      },
      "outbound": {
        "tag": "تگ",
        "egress": "Egress",
        "egressHint": "Run an HTTP test to show egress IP and country.",
        "outboundStatus": "وضعیت خروجی",
        "sendThrough": "ارسال با",
        "targetStrategy": "استراتژی مقصد",
        "modeRealDelay": "تأخیر واقعی",
        "testModeTooltip": "TCP: فقط dial سریع. HTTP: درخواست کامل از طریق xray. تأخیر واقعی: کل زمان همراه با برقراری اتصال.",
        "testAll": "تست همه",
        "httpStatus": "وضعیت HTTP",
        "breakdownConnect": "اتصال پروکسی",
        "breakdownTls": "TLS از طریق خروجی",
        "breakdownTtfb": "اولین بایت",
        "country": "کشور",
        "server": "سرور",
        "city": "شهر",
        "allCities": "همه شهرها",
        "moveToTop": "انتقال به بالا"
      },
      "outboundSub": {
        "manage": "سابسکریپشن‌ها",
        "title": "سابسکریپشن‌های خروجی",
        "remark": "نام (اختیاری)",
        "remarkPlaceholder": "مثلاً نودهای هنگ‌کنگ",
        "url": "آدرس سابسکریپشن",
        "urlPlaceholder": "https://... (فهرست base64 از لینک‌ها)",
        "tagPrefix": "پیشوند تگ",
        "tagPrefixPlaceholder": "hk-",
        "interval": "بازه به‌روزرسانی",
        "hours": "ساعت",
        "minutes": "دقیقه",
        "intervalHint": "پیش‌فرض ۱۰ دقیقه. وظیفهٔ پس‌زمینه به‌طور مکرر بررسی می‌کند؛ هر سابسکریپشن فقط زمانی دوباره دریافت می‌شود که بازهٔ خودش سپری شده باشد.",
        "enabled": "فعال",
        "allowPrivate": "اجازهٔ آدرس خصوصی",
        "allowPrivateHint": "اجازه به localhost / شبکهٔ محلی (LAN) / IPهای خصوصی برای آدرس این سابسکریپشن. به‌دلایل امنیتی به‌طور پیش‌فرض غیرفعال است؛ فقط برای یک منبع محلی مورد اعتماد فعال کنید.",
        "prepend": "پیش از خروجی‌های دستی",
        "prependHint": "خروجی‌های این سابسکریپشن را پیش از خروجی‌های دستی شما قرار می‌دهد تا یکی از آن‌ها بتواند پیش‌فرض شود.",
        "preview": "پیش‌نمایش",
        "previewEmpty": "هیچ خروجی‌ای در این آدرس یافت نشد.",
        "refreshAll": "تازه‌سازی همه",
        "statusOk": "موفق",
        "toastUpdated": "سابسکریپشن به‌روزرسانی شد",
        "addButton": "افزودن",
        "active": "سابسکریپشن‌های فعال",
        "empty": "هنوز سابسکریپشنی وجود ندارد. از بالا یکی اضافه کنید.",
        "colRemark": "نام",
        "colLastFetch": "آخرین دریافت",
        "colEnabled": "فعال",
        "auto": "خودکار",
        "never": "هرگز",
        "refreshNow": "تازه‌سازی اکنون",
        "deleteConfirm": "این سابسکریپشن حذف شود؟",
        "restartHint": "پس از افزودن یا تازه‌سازی، برای فعال‌شدن خروجی‌ها Xray را راه‌اندازی مجدد کنید (یا منتظر بارگذاری مجدد خودکار بعدی بمانید).",
        "fromSubsTitle": "از سابسکریپشن‌های خروجی (فقط‌خواندنی)",
        "fromSubsDesc": "از سابسکریپشن‌های فعال شما وارد شده‌اند. آن‌ها را از پنل سابسکریپشن‌ها در بالا مدیریت کنید.",
        "toastLoadFailed": "بارگذاری سابسکریپشن‌ها ناموفق بود",
        "toastUrlRequired": "آدرس سابسکریپشن الزامی است",
        "toastAdded": "سابسکریپشن افزوده شد",
        "toastAddFailed": "افزودن سابسکریپشن ناموفق بود",
        "toastRefreshed": "تازه‌سازی شد",
        "toastRefreshFailed": "تازه‌سازی ناموفق بود",
        "toastDeleted": "حذف شد",
        "toastDeleteFailed": "حذف ناموفق بود"
      },
      "tabBalancerSettings": "تنظیمات بالانسر",
      "tabObservatory": "رصدخانه",
      "observatory": {
        "autoManaged": "رصدگرها به‌صورت خودکار از روی بالانسرهای شما مدیریت می‌شوند. در ادامه می‌توانید نحوهٔ پروب‌زدن را تنظیم کنید؛ خروجی‌های تحت نظر از سلکتورهای بالانسر پیروی می‌کنند.",
        "emptyHint": "هیچ رصدگر اتصالی فعال نیست. وقتی یک بالانسر Least Ping یا Least Load بسازید — یا یک بالانسر Random / Round-robin همراه با fallback — به‌صورت خودکار یکی اضافه می‌شود تا بالانسرهای متکی به رصدگر بتوانند پیش از انتخاب مقصد، سلامت خروجی‌ها را بررسی کنند.",
        "mixedLegacy": "این پیکربندی هم Observatory و هم Burst Observatory دارد. Xray فقط از یک رصدگر سراسری استفاده می‌کند، بنابراین این حالت قدیمیِ ترکیبی پشتیبانی نمی‌شود؛ ذخیرهٔ بالانسرها آن را به یک رصدگر عادی‌سازی می‌کند.",
        "subjectSelector": "خروجی‌های تحت نظر",
        "subjectSelectorDesc": "تگ خروجی‌هایی که این رصدگر پروب می‌کند. به‌صورت خودکار از روی بالانسرهای شما مدیریت می‌شود.",
        "probeURL": "آدرس پروب (URL)",
        "probeURLDesc": "آدرسی که برای سنجش هر خروجی فراخوانی می‌شود. باید HTTP 204 برگرداند.",
        "probeInterval": "بازهٔ پروب",
        "probeIntervalDesc": "هر چند وقت یک‌بار هر خروجی پروب شود، مثلاً 30s یا 1m یا 2h45m.",
        "enableConcurrency": "پروب هم‌زمان",
        "enableConcurrencyDesc": "همهٔ خروجی‌های تحت نظر را به‌جای یکی‌یکی، هم‌زمان پروب کن. سریع‌تر است اما در شبکه نمایان‌تر.",
        "destination": "مقصد پروب",
        "destinationDesc": "آدرسی که برای سنجش هر خروجی فراخوانی می‌شود. باید HTTP 204 برگرداند.",
        "connectivity": "بررسی اتصال",
        "connectivityDesc": "آدرس اختیاری برای بررسی شبکهٔ محلی که فقط پس از شکست مقصد امتحان می‌شود. برای نادیده‌گرفتن خالی بگذارید.",
        "interval": "بازهٔ پروب",
        "intervalDesc": "میانگین فاصلهٔ زمانی بین پروب‌ها برای هر خروجی، مثلاً 1m. کمینه 10s.",
        "timeout": "مهلت پروب",
        "timeoutDesc": "چه مدت برای پاسخ یک پروب صبر شود تا ناموفق به‌حساب بیاید، مثلاً 5s.",
        "sampling": "تعداد نمونه‌گیری",
        "samplingDesc": "تعداد نتایج اخیر پروب که برای امتیازدهی به هر خروجی نگه داشته می‌شود.",
        "httpMethod": "متد HTTP",
        "httpMethodDesc": "متد HTTP که برای پروب‌ها استفاده می‌شود.",
        "deleteAlsoObservatory": "این آخرین بالانسری است که از Observatory استفاده می‌کند، بنابراین آن هم حذف خواهد شد.",
        "deleteAlsoBurst": "این آخرین بالانسری است که از Burst Observatory استفاده می‌کند، بنابراین آن هم حذف خواهد شد."
      },
      "refCleanup": {
        "header": "حذف این مورد مسیریابی شما را هم به‌روز می‌کند:",
        "ruleRemoved": "قاعده {label} — حذف شد (مقصدی باقی نماند)",
        "ruleModified": "قاعده {label} — حفظ شد (اکنون از {keeps} استفاده می‌کند)",
        "balancerRemoved": "بالانسر {tag} — حذف شد (هدفی باقی نماند)"
      },
      "balancer": {
        "balancerStrategy": "استراتژی",
        "tag": "تگ",
        "tagDuplicate": "این تگ توسط بالانسر دیگری استفاده شده است",
        "tagPlaceholder": "تگ منحصربه‌فرد بالانسر",
        "selector": "انتخابگر",
        "fallback": "Fallback",
        "cycleTooltip": "حلقه: {path} → (بازگشت به {start})",
        "expected": "مورد انتظار",
        "expectedPlaceholder": "تعداد نود بهینه",
        "maxRtt": "حداکثر RTT",
        "tolerance": "تحمل",
        "baselines": "خطوط پایه",
        "costs": "هزینه‌ها",
        "costMatch": "الگوی برچسب",
        "costValue": "وزن",
        "costRegexp": "تطبیق با عبارت باقاعده",
        "balancerDeleteInUse": "امکان حذف این بالانسر وجود ندارد — به عنوان پشتیبان برای موارد زیر استفاده می‌شود: {names}",
        "balancerFallbackCycle": "امکان تنظیم این بالانسر به عنوان پشتیبان وجود ندارد — وابستگی دایره‌ای ایجاد می‌کند.",
        "balancerFallbackInfo": "ترافیک از مسیر زیر مسیریابی می‌شود: بالانسر → Loopback → سرور → بالانسر مقصد → اتصال خروجی. این یک پرش اضافی از طریق سرور اضافه می‌کند که ممکن است تأخیرهای جزئی ایجاد کند.",
        "fallbackBalancerHint": "یک بالانسر دیگر به عنوان پشتیبان انتخاب کنید",
        "reservedPrefix": "پیشوند _bl_ برای اشیاء loopback داخلی بالانسر رزرو شده است"
      },
      "wireguard": {
        "secretKey": "کلید شخصی",
        "publicKey": "کلید عمومی",
        "allowedIPs": "آی‌پی‌های مجاز",
        "endpoint": "نقطه پایانی",
        "domainStrategy": "استراتژی حل دامنه"
      },
      "tun": {
        "userLevel": "سطح کاربر"
      },
      "nord": {
        "accessToken": "توکن دسترسی",
        "privateKey": "کلید خصوصی",
        "noServers": "سروری برای کشور انتخابی پیدا نشد",
        "noPublicKey": "سرور انتخابی کلید عمومی NordLynx اعلام نمی‌کند.",
        "outboundAdded": "خروجی NordVPN اضافه شد",
        "outboundUpdated": "خروجی NordVPN به‌روزرسانی شد"
      },
      "warp": {
        "changeIp": "تغییر IP",
        "changeIpSuccess": "آدرس IP وارپ با موفقیت تغییر کرد!",
        "autoUpdateIp": "به‌روزرسانی خودکار آدرس IP",
        "intervalDays": "بازه (روز)",
        "intervalDesc": "برای غیرفعال‌سازی ۰ بگذارید. آدرس IP را به‌صورت خودکار تغییر می‌دهد.",
        "licenseError": "تنظیم لایسنس WARP ناموفق بود.",
        "fetchFirst": "ابتدا پیکربندی WARP را دریافت کنید.",
        "createAccount": "ایجاد حساب WARP",
        "accessToken": "توکن دسترسی",
        "deviceId": "شناسه دستگاه",
        "licenseKey": "کلید لایسنس",
        "privateKey": "کلید خصوصی",
        "deleteAccount": "حذف حساب",
        "settings": "تنظیمات",
        "licenseKeyLabel": "کلید لایسنس WARP / WARP+",
        "key": "کلید",
        "keyPlaceholder": "کلید ۲۶ کاراکتری WARP+",
        "accountInfo": "اطلاعات حساب",
        "deviceName": "نام دستگاه",
        "deviceModel": "مدل دستگاه",
        "deviceEnabled": "دستگاه فعال",
        "accountType": "نوع حساب",
        "role": "نقش",
        "warpPlusData": "داده WARP+",
        "quota": "سهمیه",
        "usage": "مصرف",
        "addOutbound": "افزودن خروجی"
      },
      "dns": {
        "enable": "فعال کردن حل دامنه",
        "enableDesc": "سرور حل دامنه داخلی را فعال کنید",
        "tag": "برچسب",
        "tagDesc": "این برچسب در قوانین مسیریابی به عنوان یک برچسب ورودی قابل استفاده خواهد بود",
        "clientIp": "آی‌پی کلاینت",
        "clientIpDesc": "برای اطلاع‌رسانی به سرور درباره مکان IP مشخص‌شده در طول درخواست‌های DNS استفاده می‌شود",
        "disableCache": "غیرفعال‌سازی کش",
        "disableCacheDesc": "کش DNS را غیرفعال می‌کند",
        "disableFallback": "غیرفعال‌سازی Fallback",
        "disableFallbackDesc": "درخواست‌های DNS Fallback را غیرفعال می‌کند",
        "disableFallbackIfMatch": "غیرفعال‌سازی Fallback در صورت تطابق",
        "disableFallbackIfMatchDesc": "درخواست‌های DNS Fallback را زمانی که لیست دامنه‌های مطابقت‌یافته سرور DNS فعال است، غیرفعال می‌کند",
        "enableParallelQuery": "فعال‌سازی پرس‌وجوی موازی",
        "enableParallelQueryDesc": "فعال‌سازی پرس‌وجوهای DNS موازی به چندین سرور برای وضوح سریع‌تر",
        "strategy": "استراتژی پرس‌وجو",
        "strategyDesc": "استراتژی کلی برای حل نام دامنه",
        "add": "افزودن سرور",
        "edit": "ویرایش سرور",
        "domains": "دامنه‌ها",
        "expectIPs": "آی‌پی‌های مورد انتظار",
        "unexpectIPs": "آی‌پی‌های غیرمنتظره",
        "useSystemHosts": "استفاده از Hosts سیستم",
        "useSystemHostsDesc": "استفاده از فایل hosts یک سیستم نصب‌شده",
        "serveStale": "ارائه نتایج منقضی",
        "serveStaleDesc": "بازگرداندن نتایج منقضی کش هنگام بروزرسانی در پس‌زمینه",
        "serveExpiredTTL": "TTL نتایج منقضی",
        "serveExpiredTTLDesc": "مدت اعتبار نتایج منقضی به ثانیه؛ ۰ یعنی هرگز منقضی نمی‌شود",
        "timeoutMs": "زمان انتظار (میلی‌ثانیه)",
        "skipFallback": "رد کردن Fallback",
        "finalQuery": "پرس‌وجوی نهایی",
        "hosts": "Hosts",
        "hostsAdd": "افزودن Host",
        "hostsEmpty": "هیچ Host تعریف نشده",
        "hostsDomain": "دامنه (مثلاً domain:example.com)",
        "hostsValues": "آی‌پی یا دامنه — تایپ کنید و Enter بزنید",
        "usePreset": "استفاده از پیش‌تنظیم",
        "dnsPresetTitle": "پیش‌تنظیم‌های DNS",
        "dnsPresetFamily": "خانوادگی",
        "clearAll": "حذف همه",
        "clearAllTitle": "حذف همه سرورهای DNS؟",
        "clearAllConfirm": "این کار همه سرورهای DNS را از لیست حذف می‌کند و قابل بازگشت نیست.",
        "dnsLeakWarning": "DNS ممکن است از طریق localhost، UDP/TCP ساده، حالت محلی DoH/DoQ، درخواست‌های fallback یا EDNS client IP نشت کند. برای حریم خصوصی از DoH مسیریابی‌شده، مقدارهای hosts ثابت و غیرفعال‌سازی fallback استفاده کنید."
      },
      "fakedns": {
        "add": "افزودن دی‌ان‌اس جعلی",
        "ipPool": "زیرشبکه استخر آی‌پی",
        "poolSize": "اندازه استخر"
      },
      "defaultOutbound": "خروجی پیش‌فرض",
      "defaultOutboundDesc": "ترافیکی که با هیچ قانون مسیریابی جور نشود از این خروجی استفاده می‌کند (اولین خروجی در فهرست)."
    },
    "hosts": {
      "addHost": "افزودن میزبان",
      "editHost": "ویرایش میزبان",
      "selectInbound": "یک اینباند انتخاب کنید",
      "selectedCount": "{count} انتخاب‌شده",
      "summary": {
        "total": "کل",
        "enabled": "فعال",
        "disabled": "غیرفعال"
      },
      "moveUp": "انتقال به بالا",
      "moveDown": "انتقال به پایین",
      "bulkEnable": "فعال‌سازی",
      "bulkDisable": "غیرفعال‌سازی",
      "bulkDelete": "حذف",
      "bulkDeleteConfirm": "{count} میزبان انتخاب‌شده حذف شود؟",
      "deleteConfirmTitle": "میزبان «{name}» حذف شود؟",
      "sections": {
        "basic": "پایه",
        "security": "امنیت",
        "advanced": "پیشرفته",
        "general": "عمومی",
        "clash": "Clash (mihomo)"
      },
      "fields": {
        "remark": "نام",
        "serverDescription": "توضیحات",
        "inbound": "اینباندها",
        "address": "آدرس",
        "port": "پورت",
        "endpoint": "نقطه پایانی",
        "enable": "فعال",
        "actions": "عملیات",
        "security": "امنیت",
        "sni": "SNI",
        "overrideSniFromAddress": "استفاده از آدرس به‌عنوان SNI",
        "keepSniBlank": "SNI خالی بماند",
        "hostHeader": "هدر Host",
        "path": "مسیر",
        "alpn": "ALPN",
        "fingerprint": "اثرانگشت",
        "pins": "SHA-256 پین‌شدهٔ گواهی",
        "verifyPeerCertByName": "بررسی گواهی همتا بر اساس نام",
        "allowInsecure": "اجازهٔ اتصال ناامن",
        "echConfigList": "فهرست پیکربندی ECH",
        "muxParams": "Mux",
        "sockoptParams": "Sockopt",
        "finalMask": "ماسک نهایی",
        "vlessRoute": "مسیر VLESS",
        "mihomoIpVersion": "نسخه IP",
        "mihomoX25519": "Mihomo X25519",
        "shuffleHost": "درهم‌سازی میزبان",
        "tags": "برچسب‌ها",
        "nodeGuids": "نودها",
        "excludeFromSubTypes": "حذف از فرمت‌ها",
        "inheritAddress": "ارث‌بری آدرس"
      },
      "hints": {
        "address": "برای ارث‌بری آدرس خودِ اینباند خالی بگذارید.",
        "port": "مقدار ۰ پورت اینباند را به ارث می‌برد.",
        "tags": "برای کاربران نهایی قابل مشاهده نیست؛ فقط با اشتراک RAW ارسال می‌شود. تنها حروف بزرگ، ارقام، _ و : مجاز است.",
        "nodeGuids": "نودهایی را که از این میزبان resolve می‌شوند انتخاب کنید. صرفاً انتساب نمایشی است.",
        "serverDescription": "یادداشت اختیاری که زیر نام نمایش داده می‌شود.",
        "allowInsecure": "رد کردن بررسی گواهی TLS (allowInsecure / skip-cert-verify).",
        "vlessRoute": "یک مقدار مسیر VLESS (0 تا 65535) که در UUID جاسازی می‌شود، مثلاً 443. برای هیچ‌کدام خالی بگذارید.",
        "remark": "یک برچسب ساده برای این میزبان. تنها زمانی به‌عنوان نام کانفیگ نمایش داده می‌شود که اینباند نام مخصوص خود را نداشته باشد."
      },
      "remarkVars": {
        "title": "متغیرهای قالب",
        "intro": "برای افزودن یک متغیر روی آن کلیک کنید. هنگام ساخت اشتراک، برای هر کاربر جایگزین می‌شود.",
        "preview": "پیش‌نمایش",
        "groups": {
          "client": "کاربر",
          "traffic": "ترافیک",
          "time": "زمان و وضعیت",
          "connection": "اتصال"
        },
        "descEMAIL": "ایمیل کاربر",
        "descINBOUND": "نام خود اینباند (نام کانفیگ)",
        "descHOST": "نام میزبان",
        "descID": "UUID کاربر",
        "descSHORT_ID": "۸ کاراکتر اول UUID",
        "descTELEGRAM_ID": "شناسهٔ تلگرام کاربر (در صورت عدم تنظیم خالی)",
        "descSUB_ID": "شناسهٔ اشتراک",
        "descCOMMENT": "توضیحات کاربر",
        "descTRAFFIC_USED": "ترافیک مصرف‌شده (قابل خواندن برای انسان)",
        "descTRAFFIC_LEFT": "ترافیک باقی‌مانده (در صورت نامحدود بودن پنهان می‌شود)",
        "descTRAFFIC_TOTAL": "ترافیک کل (در صورت نامحدود بودن پنهان می‌شود)",
        "descTRAFFIC_USED_BYTES": "ترافیک مصرف‌شده به بایت",
        "descTRAFFIC_LEFT_BYTES": "ترافیک باقی‌مانده به بایت",
        "descTRAFFIC_TOTAL_BYTES": "ترافیک کل به بایت",
        "descUP": "ترافیک آپلود",
        "descDOWN": "ترافیک دانلود",
        "descSTATUS": "فعال / منقضی‌شده / غیرفعال / مصرف‌شده",
        "descSTATUS_EMOJI": "وضعیت به‌صورت ایموجی (✅ ⏳ 🚫)",
        "descDAYS_LEFT": "روزهای باقی‌مانده تا انقضا (در صورت نامحدود بودن پنهان می‌شود)",
        "descTIME_LEFT": "زمان باقی‌مانده (مثلاً 12d 4h 30m)",
        "descUSAGE_PERCENTAGE": "ترافیک مصرف‌شده به درصد (در صورت نامحدود بودن پنهان می‌شود)",
        "descEXPIRE_DATE": "تاریخ انقضا (YYYY-MM-DD)",
        "descJALALI_EXPIRE_DATE": "تاریخ انقضا در تقویم جلالی (YYYY/MM/DD)",
        "descEXPIRE_UNIX": "انقضا به‌صورت مهر زمانی Unix (ثانیه)",
        "descCREATED_UNIX": "زمان ایجاد به‌صورت مهر زمانی Unix (ثانیه)",
        "descRESET_DAYS": "دورهٔ بازنشانی ترافیک به روز",
        "descPROTOCOL": "پروتکل اینباند (VLESS، VMess، Trojan، …)",
        "descTRANSPORT": "شبکهٔ انتقال (tcp، ws، grpc، …)",
        "descSECURITY": "امنیت انتقال (TLS، REALITY، NONE)"
      },
      "toasts": {
        "list": "بارگذاری میزبان‌ها ناموفق",
        "obtain": "بارگذاری میزبان ناموفق",
        "add": "افزودن میزبان",
        "update": "به‌روزرسانی میزبان",
        "delete": "حذف میزبان",
        "badTag": "برچسب نامعتبر",
        "badVlessRoute": "یک عدد بین 0 تا 65535 وارد کنید"
      }
    }
  },
  "tgbot": {
    "keyboardClosed": "❌ صفحه کلید بسته شد!",
    "noResult": "❗ نتیجه ای یافت نشد!",
    "noQuery": "❌ درخواست یافت نشد! لطفا دوباره تلاش کنید!",
    "wentWrong": "❌ مشکلی پیش آمد!",
    "noIpRecord": "❗ رکورد آی پی وجود ندارد!",
    "noInbounds": "❗ هیچ ورودی یافت نشد!",
    "unlimited": "♾ نامحدود(ریست)",
    "add": "افزودن",
    "month": "ماه",
    "months": "ماه",
    "days": "روز",
    "hours": "ساعت",
    "minutes": "دقیقه",
    "unknown": "نامشخص",
    "inbounds": "ورودی‌ها",
    "clients": "کاربران",
    "offline": "🔴 آفلاین",
    "online": "🟢 آنلاین",
    "commands": {
      "unknown": "❗ دستور ناشناخته",
      "pleaseChoose": "👇 لطفاً انتخاب کنید:\r\n",
      "help": "🤖 به این ربات خوش آمدید! این ربات برای ارائه داده‌های خاص از سرور طراحی شده است و به شما امکان تغییرات لازم را می‌دهد.\r\n\r\n",
      "start": "👋 سلام <i>{{ .Firstname }}</i>.\r\n",
      "welcome": "🤖 به ربات مدیریت <b>{{ .Hostname }}</b> خوش آمدید.\r\n",
      "status": "✅ ربات در حالت عادی است!",
      "usage": "❗ لطفاً یک متن برای جستجو وارد کنید!",
      "getID": "🆔 شناسه شما: <code>{{ .ID }}</code>",
      "helpAdminCommands": "برای راه‌اندازی مجدد Xray Core:\r\n<code>/restart</code>\r\n\r\nبرای جستجوی ایمیل مشتری:\r\n<code>/usage [ایمیل]</code>\r\n\r\nبرای جستجوی ورودی‌ها (با آمار مشتری):\r\n<code>/inbound [توضیحات]</code>\r\n\r\nشناسه گفتگوی تلگرام:\r\n<code>/id</code>",
      "helpClientCommands": "برای جستجوی آمار، از دستور زیر استفاده کنید:\r\n<code>/usage [ایمیل]</code>\r\n\r\nشناسه گفتگوی تلگرام:\r\n<code>/id</code>",
      "restartUsage": "\r\n\r\n<code>/restart</code>",
      "restartSuccess": "✅ عملیات با موفقیت انجام شد!",
      "restartFailed": "❗ خطا در عملیات.\r\n\r\n<code>خطا: {{ .Error }}</code>.",
      "xrayNotRunning": "❗ Xray Core در حال اجرا نیست.",
      "startDesc": "نمایش منوی اصلی",
      "helpDesc": "راهنمای ربات",
      "statusDesc": "بررسی وضعیت ربات",
      "idDesc": "نمایش شناسه تلگرام شما",
      "usageDesc": "مشاهده مصرف کاربر: /usage ایمیل",
      "inboundDesc": "جستجوی ورودی‌ها: /inbound نام (مدیر)",
      "restartDesc": "راه‌اندازی مجدد هسته Xray (مدیر)",
      "clearallDesc": "صفر کردن ترافیک همه کاربران (مدیر)"
    },
    "messages": {
      "cpuThreshold": "بار ‌پردازنده {{ .Percent }}% بیشتر از آستانه است {{ .Threshold }}%",
      "selectUserFailed": "❌ خطا در انتخاب کاربر!",
      "userSaved": "✅ کاربر تلگرام ذخیره شد.",
      "loginSuccess": "✅ با موفقیت به پنل وارد شدید.\r\n",
      "loginFailed": "❗️ ورود به پنل ناموفق‌بود \r\n",
      "report": "🕰 گزارشات‌زمان‌بندی‌شده: {{ .RunTime }}\r\n",
      "datetime": "⏰ تاریخ‌وزمان: {{ .DateTime }}\r\n",
      "hostname": "💻 میزبان: {{ .Hostname }}\r\n",
      "version": "🚀 نسخه‌پنل: {{ .Version }}\r\n",
      "xrayVersion": "📡 نسخه‌هسته: {{ .XrayVersion }}\r\n",
      "ipv6": "🌐 IPv6: {{ .IPv6 }}\r\n",
      "ipv4": "🌐 IPv4: {{ .IPv4 }}\r\n",
      "ip": "🌐 IP: {{ .IP }}\r\n",
      "ips": "🔢 IPها:\r\n{{ .IPs }}\r\n",
      "serverUpTime": "⏳ مدت‌کارکردسیستم: {{ .UpTime }} {{ .Unit }}\r\n",
      "serverLoad": "📈 بارسیستم: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n",
      "serverMemory": "📋 RAM: {{ .Current }}/{{ .Total }}\r\n",
      "tcpCount": "🔹 TCP: {{ .Count }}\r\n",
      "udpCount": "🔸 UDP: {{ .Count }}\r\n",
      "traffic": "🚦 ترافیک: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n",
      "xrayStatus": "ℹ️ وضعیت: {{ .State }}\r\n",
      "username": "👤 نام‌کاربری: {{ .Username }}\r\n",
      "reason": "❗️ دلیل: {{ .Reason }}\r\n",
      "time": "⏰ زمان: {{ .Time }}\r\n",
      "inbound": "📍 ورودی: {{ .Remark }}\r\n",
      "port": "🔌 پورت: {{ .Port }}\r\n",
      "expire": "📅 تاریخ‌انقضا: {{ .Time }}\r\n\r\n",
      "expireIn": "📅 باقی‌ مانده‌ تا انقضا: {{ .Time }}\r\n\r\n",
      "active": "💡 فعال: {{ .Enable }}\r\n",
      "enabled": "🚨 وضعیت: {{ .Enable }}\r\n",
      "online": "🌐 وضعیت اتصال: {{ .Status }}\r\n",
      "lastOnline": "🔙 آخرین فعالیت: {{ .Time }}\r\n",
      "email": "📧 ایمیل: {{ .Email }}\r\n",
      "upload": "🔼 آپلود: ↑{{ .Upload }}\r\n",
      "download": "🔽 دانلود: ↓{{ .Download }}\r\n",
      "total": "📊 کل: ↑↓{{ .UpDown }} / {{ .Total }}\r\n",
      "TGUser": "👤 کاربر تلگرام: {{ .TelegramID }}\r\n",
      "exhaustedCount": "🚨 تعداد {{ .Type }} به‌اتمام‌رسیده‌است:\r\n",
      "onlinesCount": "🌐 کاربران‌آنلاین: {{ .Count }}\r\n",
      "disabled": "🛑 غیرفعال: {{ .Disabled }}\r\n",
      "depleteSoon": "🔜 به‌زودی‌به‌پایان‌خواهدرسید: {{ .Deplete }}\r\n\r\n",
      "backupTime": "🗄 زمان‌پشتیبان‌گیری: {{ .Time }}\r\n",
      "refreshedOn": "\r\n📋🔄 تازه‌سازی شده در: {{ .Time }}\r\n\r\n",
      "yes": "✅ بله",
      "no": "❌ خیر",
      "received_email": "📧📥 ایمیل به‌روزرسانی شد.",
      "received_comment": "💬📥 نظر به‌روزرسانی شد.",
      "email_prompt": "📧 ایمیل پیش‌فرض: {{ .ClientEmail }}\n\nایمیل خود را وارد کنید.",
      "comment_prompt": "💬 نظر پیش‌فرض: {{ .ClientComment }}\n\nنظر خود را وارد کنید.",
      "cancel": "❌ فرآیند لغو شد! \n\nمی‌توانید هر زمان که خواستید /start را دوباره اجرا کنید. 🔄",
      "error_add_client": "⚠️ خطا:\n\n {{ .error }}",
      "using_default_value": "باشه، از مقدار پیش‌فرض استفاده می‌کنم. 😊",
      "incorrect_input": "ورودی شما معتبر نیست.\nعبارت‌ها باید بدون فاصله باشند.\nمثال صحیح: aaaaaa\nمثال نادرست: aaa aaa 🚫",
      "AreYouSure": "مطمئنی؟ 🤔",
      "SuccessResetTraffic": "📧 ایمیل: {{ .ClientEmail }}\n🏁 نتیجه: ✅ موفقیت‌آمیز",
      "FailedResetTraffic": "📧 ایمیل: {{ .ClientEmail }}\n🏁 نتیجه: ❌ ناموفق \n\n🛠️ خطا: [ {{ .ErrorMessage }} ]",
      "FinishProcess": "🔚 فرآیند بازنشانی ترافیک برای همه مشتریان به پایان رسید.",
      "eventOutboundDown": "خروجی {{ .Tag }} قطع است",
      "eventOutboundUp": "خروجی {{ .Tag }} وصل است",
      "eventErrorDetail": "خطا: {{ .Error }}",
      "eventDelayDetail": "تأخیر: {{ .Delay }} میلی‌ثانیه",
      "eventXrayCrash": "Xray کرش کرد",
      "eventXrayCrashError": "خطا: {{ .Error }}",
      "eventNodeDown": "نود {{ .Name }} قطع است",
      "eventNodeUp": "نود {{ .Name }} وصل است",
      "eventLoginFallback": "ورود ناموفق از {{ .Source }}",
      "memoryThreshold": "مصرف حافظه {{ .Percent }}% از حد آستانه {{ .Threshold }}% فراتر رفته است"
    },
    "buttons": {
      "closeKeyboard": "❌ بستن کیبورد",
      "cancel": "❌ لغو",
      "cancelReset": "❌ لغو تنظیم مجدد",
      "cancelIpLimit": "❌ لغو محدودیت آی‌پی",
      "confirmResetTraffic": "✅ تأیید تنظیم مجدد ترافیک؟",
      "confirmClearIps": "✅ تأیید پاک‌سازی آدرس‌های آی‌پی؟",
      "confirmRemoveTGUser": "✅ تأیید حذف کاربر تلگرام؟",
      "confirmToggle": "✅ تایید فعال/غیرفعال کردن کاربر؟",
      "dbBackup": "دریافت پشتیبان",
      "serverUsage": "استفاده از سیستم",
      "getInbounds": "دریافت ورودی‌ها",
      "depleteSoon": "به‌زودی به پایان خواهد رسید",
      "clientUsage": "دریافت آمار کاربر",
      "onlines": "کاربران آنلاین",
      "commands": "دستورات",
      "refresh": "🔄 تازه‌سازی",
      "clearIPs": "❌ پاک‌سازی آدرس‌ها",
      "removeTGUser": "❌ حذف کاربر تلگرام",
      "selectTGUser": "👤 انتخاب کاربر تلگرام",
      "selectOneTGUser": "👤 یک کاربر تلگرام را انتخاب کنید:",
      "resetTraffic": "📈 تنظیم مجدد ترافیک",
      "resetExpire": "📅 تنظیم مجدد تاریخ انقضا",
      "ipLog": "🔢 لاگ آدرس‌های IP",
      "ipLimit": "🔢 محدودیت IP",
      "setTGUser": "👤 تنظیم کاربر تلگرام",
      "toggle": "🔘 فعال / غیرفعال",
      "custom": "🔢 سفارشی",
      "confirmNumber": "✅ تایید: {{ .Num }}",
      "confirmNumberAdd": "✅ تایید اضافه کردن: {{ .Num }}",
      "limitTraffic": "🚧 محدودیت ترافیک",
      "getBanLogs": "گزارش های بلوک را دریافت کنید",
      "allClients": "همه مشتریان",
      "addClient": "افزودن مشتری",
      "submitDisable": "ارسال به عنوان غیرفعال ☑️",
      "submitEnable": "ارسال به عنوان فعال ✅",
      "use_default": "🏷️ استفاده از پیش‌فرض",
      "change_email": "⚙️📧 ایمیل",
      "change_comment": "⚙️💬 نظر",
      "ResetAllTraffics": "بازنشانی همه ترافیک‌ها",
      "SortedTrafficUsageReport": "گزارش استفاده از ترافیک مرتب‌شده"
    },
    "answers": {
      "successfulOperation": "✅ انجام شد!",
      "errorOperation": "❗ خطا در عملیات.",
      "getInboundsFailed": "❌ دریافت ورودی‌ها با خطا مواجه شد.",
      "getClientsFailed": "❌ دریافت مشتریان با شکست مواجه شد.",
      "canceled": "❌ {{ .Email }} : عملیات لغو شد.",
      "clientRefreshSuccess": "✅ {{ .Email }} : کلاینت با موفقیت تازه‌سازی شد.",
      "IpRefreshSuccess": "✅ {{ .Email }} : آدرس‌ها با موفقیت تازه‌سازی شدند.",
      "TGIdRefreshSuccess": "✅ {{ .Email }} : کاربر تلگرام کلاینت با موفقیت تازه‌سازی شد.",
      "resetTrafficSuccess": "✅ {{ .Email }} : ترافیک با موفقیت تنظیم مجدد شد.",
      "setTrafficLimitSuccess": "✅ {{ .Email }} : محدودیت ترافیک با موفقیت ذخیره شد.",
      "expireResetSuccess": "✅ {{ .Email }} : تاریخ انقضا با موفقیت تنظیم مجدد شد.",
      "resetIpSuccess": "✅ {{ .Email }} : محدودیت آدرس IP {{ .Count }} با موفقیت ذخیره شد.",
      "clearIpSuccess": "✅ {{ .Email }} : آدرس‌ها با موفقیت پاک‌سازی شدند.",
      "getIpLog": "✅ {{ .Email }} : دریافت لاگ آدرس‌های IP.",
      "getUserInfo": "✅ {{ .Email }} : دریافت اطلاعات کاربر تلگرام.",
      "removedTGUserSuccess": "✅ {{ .Email }} : کاربر تلگرام با موفقیت حذف شد.",
      "enableSuccess": "✅ {{ .Email }} : با موفقیت فعال شد.",
      "disableSuccess": "✅ {{ .Email }} : با موفقیت غیرفعال شد.",
      "askToAddUserId": "پیکربندی شما یافت نشد!\r\nلطفاً از مدیر خود بخواهید که شناسه کاربر تلگرام خود را در پیکربندی (های) خود استفاده کند.\r\n\r\nشناسه کاربری شما: <code>{{ .TgUserID }}</code>",
      "chooseClient": "یک مشتری برای ورودی {{ .Inbound }} انتخاب کنید",
      "chooseInbound": "یک ورودی انتخاب کنید"
    }
  },
  "email": {
    "labelStatus": "وضعیت",
    "labelOutbound": "خروجی",
    "labelNode": "نود",
    "labelError": "خطا",
    "labelDelay": "تأخیر",
    "labelUsername": "نام‌کاربری",
    "labelIP": "IP",
    "labelReason": "دلیل",
    "labelSource": "مبدأ",
    "statusCrashed": "کرش کرد",
    "statusHigh": "بالا",
    "statusSuccess": "موفق",
    "statusFailed": "ناموفق",
    "statusDown": "قطع",
    "statusUp": "وصل"
  }
}
