{
  "common": {
    "buttons": {
      "save": "Сохранить",
      "cancel": "Отмена",
      "close": "Закрыть",
      "delete": "Удалить",
      "create": "Создать",
      "back": "Назад",
      "retry": "Повторить",
      "download": "Скачать",
      "confirm": "Подтвердить",
      "apply": "Применить",
      "reset": "Сбросить",
      "add": "Добавить",
      "edit": "Редактировать",
      "copy": "Копировать",
      "clear": "Очистить",
      "search": "Поиск",
      "select": "Выбрать",
      "grant": "Разрешить",
      "start": "Запустить",
      "stop": "Остановить",
      "enable": "Включить",
      "disable": "Выключить",
      "import": "Импорт",
      "export": "Экспорт",
      "refresh": "Обновить",
      "loading": "Загрузка...",
      "saveSettings": "Сохранить настройки",
      "moreInfo": "Подробнее",
      "downloading": "Загрузка...",
      "minimize": "Свернуть",
      "saving": "Сохраняем…",
      "saved": "Сохранено",
      "copied": "Скопировано",
      "learnMore": "Подробнее"
    },
    "status": {
      "active": "Активен",
      "inactive": "Неактивен",
      "running": "Запущен",
      "stopped": "Остановлен",
      "enabled": "Включено",
      "disabled": "Выключено",
      "granted": "Разрешено",
      "notGranted": "Не разрешено",
      "connected": "Подключено",
      "disconnected": "Отключено",
      "synced": "Синхронизировано",
      "syncing": "Синхронизация",
      "pending": "Ожидание",
      "error": "Ошибка"
    },
    "labels": {
      "name": "Название",
      "type": "Тип",
      "status": "Статус",
      "actions": "Действия",
      "description": "Описание",
      "none": "Нет",
      "default": "По умолчанию",
      "custom": "Пользовательский",
      "optional": "Необязательно",
      "required": "Обязательно",
      "unknownProfile": "Неизвестный",
      "mode": "Режим",
      "never": "Никогда"
    },
    "time": {
      "days": "дней",
      "hours": "часов",
      "minutes": "минут",
      "seconds": "секунд",
      "remaining": "осталось"
    },
    "aria": {
      "selectAll": "Выбрать все",
      "selectRow": "Выбрать строку",
      "selectProfile": "Выбрать профиль",
      "copy": "Скопировать в буфер обмена",
      "copied": "Скопировано",
      "showToken": "Показать токен",
      "hideToken": "Скрыть токен"
    },
    "keys": {
      "escape": "Esc"
    },
    "errors": {
      "unknown": "Произошла неизвестная ошибка"
    },
    "window": {
      "minimize": "Свернуть",
      "maximize": "Развернуть",
      "restore": "Восстановить",
      "close": "Закрыть окно"
    },
    "commandPalette": {
      "title": "Палитра команд",
      "description": "Найдите команду для выполнения..."
    },
    "noResults": "Результаты не найдены.",
    "srOnly": {
      "copy": "Скопировать",
      "copied": "Скопировано"
    },
    "placeholders": {
      "example": "напр., {{value}}"
    }
  },
  "settings": {
    "title": "Настройки",
    "appearance": {
      "title": "Внешний вид",
      "theme": "Тема",
      "themeDescription": "Выберите предпочитаемую тему или следуйте системным настройкам. Изменения пользовательской темы применяются только при сохранении.",
      "themePreset": "Предустановка темы",
      "customColors": "Пользовательские цвета",
      "selectTheme": "Выберите тему",
      "selectThemePreset": "Выберите предустановку темы",
      "yourOwn": "Собственная",
      "light": "Светлая",
      "dark": "Тёмная",
      "system": "Системная"
    },
    "language": {
      "title": "Язык",
      "description": "Выберите предпочитаемый язык интерфейса приложения.",
      "systemDefault": "Системный по умолчанию",
      "selectLanguage": "Выберите язык",
      "interface": "Язык интерфейса"
    },
    "defaultBrowser": {
      "title": "Браузер по умолчанию",
      "setAsDefault": "Установить браузером по умолчанию",
      "alreadyDefault": "Уже браузер по умолчанию",
      "description": "При установке по умолчанию Donut Browser будет обрабатывать веб-ссылки и позволит выбрать профиль для использования.",
      "setSuccess": "Donut Browser теперь браузер по умолчанию",
      "setFailed": "Не удалось назначить браузер по умолчанию",
      "finishInSystemSettings": "Завершите в параметрах Windows",
      "finishInSystemSettingsDescription": "Donut Browser зарегистрирован. Параметры Windows открыты: выберите Donut Browser в разделе «Веб-браузер», чтобы завершить."
    },
    "permissions": {
      "title": "Системные разрешения",
      "loading": "Загрузка разрешений...",
      "description": "Эти разрешения позволяют браузерам, запущенным из Donut Browser, получать доступ к системным ресурсам. Каждый сайт всё равно будет запрашивать разрешение отдельно.",
      "microphone": "Микрофон",
      "microphoneDescription": "Доступ к микрофону для браузерных приложений",
      "camera": "Камера",
      "cameraDescription": "Доступ к камере для браузерных приложений",
      "accessRequested": "Запрошен доступ к {{permission}}"
    },
    "integrations": {
      "title": "Интеграции",
      "description": "Настройте локальный API и MCP (Model Context Protocol) для интеграции с внешними инструментами и AI-ассистентами.",
      "openSettings": "Открыть настройки интеграций"
    },
    "encryption": {
      "title": "Шифрование синхронизации",
      "description": "Установите пароль для включения E2E зашифрованной синхронизации. Если вы потеряете этот пароль, зашифрованные профили не могут быть восстановлены.",
      "passwordSet": "Активно",
      "passwordSetDescription": "Пароль шифрования E2E установлен",
      "noPassword": "Пароль не установлен",
      "passwordPlaceholder": "Пароль (мин. 8 символов)",
      "confirmPlaceholder": "Подтвердите пароль",
      "setPassword": "Установить пароль",
      "changePassword": "Изменить пароль",
      "removePassword": "Удалить пароль",
      "removed": "Пароль шифрования удалён",
      "passwordSaved": "Пароль шифрования установлен",
      "passwordMismatch": "Пароли не совпадают",
      "passwordTooShort": "Пароль должен содержать не менее 8 символов",
      "requiresProOrOwner": "Шифрование профилей доступно для пользователей Pro и владельцев команд.",
      "validatePassword": "Проверить",
      "validateDialog": {
        "title": "Проверка пароля шифрования",
        "description": "Введите пароль шифрования, чтобы убедиться, что он совпадает с сохранённым на этом устройстве.",
        "submit": "Проверить",
        "matchToast": "Пароль верен",
        "mismatchToast": "Пароль не совпадает"
      }
    },
    "commercial": {
      "title": "Коммерческая лицензия",
      "trialActive": "Пробный период: осталось {{days}} дней, {{hours}} часов",
      "trialActiveDescription": "Коммерческое использование бесплатно в течение пробного периода. После его окончания все функции продолжают работать — личное использование остаётся бесплатным, и только для коммерческого использования потребуется лицензия.",
      "trialExpired": "Пробный период истёк",
      "trialExpiredDescription": "Личное использование остаётся бесплатным. Для коммерческого использования требуется лицензия.",
      "subscriptionActive": "Подписка активна — план {{plan}}",
      "subscriptionActiveDescription": "Ваша подписка на Donut Browser активна. Коммерческое использование лицензировано на срок действия плана."
    },
    "advanced": {
      "title": "Дополнительно",
      "clearCache": "Очистить весь кэш версий",
      "clearCacheDescription": "Очищает все кэшированные данные версий браузеров и обновляет все версии из источников. Это принудительно загрузит информацию о версиях для всех браузеров.",
      "clearCacheFailed": "Не удалось очистить кэш",
      "copyLogs": "Скопировать логи",
      "openLogDir": "Открыть папку логов",
      "copyLogsSuccess": "Логи скопированы в буфер обмена",
      "copyLogsDescription": "Копирует отредактированный набор последних логов (до 5 МБ). Проверьте его перед отправкой: редактирование не может выявить все виды персональных данных."
    },
    "disableAutoUpdates": "Отключить автообновление приложения",
    "disableAutoUpdatesDescription": "Запретить автоматическую проверку и установку обновлений Donut Browser. Обновления браузеров не затрагиваются.",
    "keepDecryptedProfilesInRam": "Хранить расшифрованные профили в ОЗУ",
    "keepDecryptedProfilesInRamDescription": "Сохранять расшифрованную копию защищённых паролем профилей в ОЗУ между запусками для ускорения старта. Копия на диске в любом случае остаётся зашифрованной.",
    "privacy": {
      "consistencyWarning": "Блокировать при несовпадении отпечатка",
      "consistencyWarningDescription": "Не запускать браузер, если часовой пояс или язык профиля не совпадают с выходным узлом прокси. Запустить всё равно можно вручную.",
      "clearTraffic": "Очистить всю историю трафика",
      "clearTrafficDescription": "Безопасно удаляет записанную статистику трафика для всех профилей.",
      "clearTrafficSuccess": "История трафика очищена",
      "vpnExtensionWarning": "Предупреждение о VPN-расширении",
      "vpnExtensionWarningDescription": "Предупреждать перед запуском, если в профиле есть расширение, способное перенаправить трафик браузера."
    }
  },
  "header": {
    "searchPlaceholder": "Поиск профилей...",
    "clearSearch": "Очистить поиск",
    "moreActions": "Дополнительные действия",
    "createProfile": "Создать новый профиль",
    "menu": {
      "settings": "Настройки",
      "proxies": "Прокси и VPN",
      "groups": "Группы",
      "syncService": "Аккаунт",
      "integrations": "Интеграции",
      "importProfile": "Импорт профиля",
      "extensions": "Расширения"
    },
    "newProfile": "Новый",
    "donutLogo": "Логотип Donut Browser",
    "scrollGroupsLeft": "Прокрутить группы влево",
    "scrollGroupsRight": "Прокрутить группы вправо"
  },
  "search": {
    "helpLabel": "Синтаксис поиска",
    "helpTitle": "Синтаксис поиска",
    "helpIntro": "Введите слова, чтобы искать по названиям, заметкам, тегам и идентификаторам. Добавьте поля, чтобы сузить поиск.",
    "fieldsTitle": "Поля",
    "operatorsTitle": "Операторы",
    "examplesTitle": "Примеры",
    "fields": {
      "name": "Название профиля",
      "tag": "Тег",
      "note": "Заметка",
      "id": "Идентификатор профиля, совпадение с начала",
      "group": "Название группы",
      "proxy": "Название прокси",
      "vpn": "Название VPN",
      "ext": "Название группы расширений",
      "dns": "Список блокировки DNS",
      "os": "Операционная система",
      "browser": "Браузер",
      "status": "Запущен или нет",
      "sync": "Режим синхронизации",
      "email": "Эл. почта владельца",
      "version": "Версия браузера",
      "locked": "Защищён паролем",
      "ephemeral": "Временный профиль",
      "created": "Дата создания",
      "launched": "Дата последнего запуска"
    },
    "operators": {
      "negate": "Исключает совпадения",
      "quote": "Удерживает значение с пробелами как одно целое",
      "or": "Совпадает с любым из двух условий",
      "comma": "Сокращение для любого из значений",
      "exact": "Совпадает со всем значением, а не с его частью",
      "none": "Здесь ничего не задано; для обратного используйте any",
      "compare": "Сравнивает даты и версии; 7d, 3w и 6m отсчитываются назад от текущего момента"
    },
    "examples": {
      "a": "Запущенные профили в одной группе",
      "b": "Профили без тегов, у которых есть прокси",
      "c": "Не запускались более 30 дней, кроме архивных"
    }
  },
  "profiles": {
    "title": "Профили",
    "empty": "Профилей пока нет",
    "emptyDescription": "Создайте свой первый профиль браузера для начала работы.",
    "createFirst": "Создать профиль",
    "noResults": "Профили не найдены",
    "noResultsDescription": "Нет профилей, соответствующих критериям поиска.",
    "table": {
      "name": "Название",
      "none": "Нет",
      "browser": "Браузер",
      "status": "Статус",
      "actions": "Действия",
      "note": "Заметка",
      "group": "Группа",
      "proxy": "Прокси / VPN",
      "lastLaunch": "Последний запуск",
      "empty": "Профили не найдены.",
      "ext": "РАСШ",
      "dns": "DNS",
      "dnsLevel": "DNS-блок-лист: {{level}}",
      "extSearch": "Поиск групп…",
      "extEmpty": "Нет групп расширений",
      "cantModifyRunning": "Нельзя изменить запущенный профиль",
      "cantModifyLaunching": "Нельзя изменить профиль во время запуска",
      "cantModifyStopping": "Нельзя изменить профиль во время остановки",
      "cantModifyUpdating": "Нельзя изменить профиль во время обновления браузера",
      "emptyTitle": "Профилей пока нет",
      "emptyHint": "Создайте свой первый профиль или импортируйте существующие из другого браузера.",
      "emptyCreate": "Создать профиль",
      "emptyImport": "Импортировать профили",
      "emptyFilteredTitle": "Профили не найдены",
      "emptyFilteredHint": "Нет профилей для этой группы или запроса. Попробуйте другой фильтр или создайте профиль.",
      "bot": "Бот",
      "profileId": "ID"
    },
    "actions": {
      "launch": "Запустить",
      "stop": "Остановить",
      "edit": "Редактировать",
      "delete": "Удалить",
      "copyCookies": "Копировать Cookie",
      "configure": "Настроить",
      "clone": "Клонировать профиль",
      "viewNetwork": "Просмотр сети",
      "syncSettings": "Настройки синхронизации",
      "assignToGroup": "Назначить группе",
      "changeFingerprint": "Изменить отпечаток",
      "copyCookiesToProfile": "Копировать Cookie в профиль",
      "launchHook": "URL хука запуска",
      "setPassword": "Установить пароль",
      "changePassword": "Изменить пароль",
      "removePassword": "Удалить пароль"
    },
    "synchronizer": {
      "launchWithSync": "Запустить с синхронизатором",
      "stopLeader": "Остановить этот профиль и всех его последователей",
      "stopFollower": "Повторяет действия {{leaderName}}",
      "desyncedTooltip": "Синхронизация не удалась на {{url}}",
      "paidFeature": "Синхронизатор — платная функция",
      "wayfernOnly": "Синхронизировать можно только профили Wayfern",
      "selectFollowers": "Выберите профили-последователи",
      "selectFollowersDesc": "Выберите профили, которые будут повторять действия профиля-лидера. Можно выбрать только остановленные профили Wayfern.",
      "leader": "Лидер",
      "follower": "Последователь",
      "startSession": "Начать сессию синхронизации",
      "noFollowers": "Выберите хотя бы один профиль-последователь",
      "flakyBadge": "FLAKY",
      "flakyTooltip": "У этого профиля разрешение экрана отличается от лидера. Макет страниц может отличаться, что может привести к неправильным кликам и взаимодействиям."
    },
    "ephemeral": "Временный",
    "ephemeralDescription": "Браузер вынужденно записывает данные профиля в память, а не на диск. Учтите, что операционная система может выгружать части памяти на диск (swap) при нехватке ОЗУ, поэтому следы сессии всё же могут оказаться восстановимыми.",
    "ephemeralBadge": "Временный",
    "bulkDelete": {
      "title": "Удалить выбранные профили",
      "description": "Это действие нельзя отменить. Будет навсегда удалено {{count}} профил(ей) и все связанные данные.",
      "confirmButton": "Удалить {{count}} профил(ей)"
    },
    "note": {
      "empty": "Нет заметки",
      "placeholder": "Добавить заметку..."
    },
    "aria": {
      "profileInfo": "Информация о профиле"
    },
    "delete": {
      "title": "Удалить профиль",
      "description": "Это действие нельзя отменить. Профиль «{{profileName}}» и все связанные с ним данные будут навсегда удалены.",
      "confirmButton": "Удалить профиль"
    },
    "actionBar": {
      "assignToGroup": "Назначить группе",
      "assignProxy": "Назначить прокси",
      "assignExtensionGroup": "Назначить группу расширений",
      "copyCookies": "Копировать cookies",
      "runSelected": "Запустить выбранные",
      "stopSelected": "Остановить выбранные",
      "proRequired": "Для массового запуска/остановки требуется план Pro"
    },
    "passwordProtectedBadge": "Защищено паролем",
    "launchHook": {
      "placeholder": "https://example.com/track-launch"
    },
    "bulkRun": {
      "confirmTitle": "Запустить {{count}} профилей?",
      "confirmDescription": "Одновременный запуск {{count}} профилей может потребовать много системных ресурсов. Продолжить?",
      "confirmButton": "Запустить {{count}}",
      "noneToRun": "Нет выбранных профилей для запуска."
    },
    "bulkStop": {
      "confirmTitle": "Остановить {{count}} профилей?",
      "confirmDescription": "Остановить {{count}} запущенных профилей?",
      "confirmButton": "Остановить {{count}}",
      "noneToStop": "Нет выбранных профилей для остановки."
    },
    "sort": {
      "nameAsc": "Имя (А–Я)",
      "nameDesc": "Имя (Я–А)",
      "newest": "Сначала новые",
      "oldest": "Сначала старые"
    },
    "remote": {
      "runningTooltip": "Выполняется на удалённой машине. Остановите, чтобы вернуть профиль сюда.",
      "pendingSyncTooltip": "Загружаются изменения удалённого сеанса. Профиль снова будет доступен по завершении."
    }
  },
  "createProfile": {
    "title": "Создать новый профиль",
    "configureTitle": "Создать новый профиль {{browser}}",
    "antiDetect": {
      "title": "Антидетект браузер",
      "description": "Выберите браузер с возможностями защиты от обнаружения",
      "chromium": "Wayfern",
      "badge": "Антидетект браузер"
    },
    "regular": {
      "title": "Обычные браузеры",
      "description": "Выберите из поддерживаемых обычных браузеров",
      "badge": "Обычный браузер"
    },
    "profileName": "Название профиля",
    "profileNamePlaceholder": "Введите название профиля",
    "proxy": {
      "title": "Прокси / VPN",
      "addProxy": "Добавить прокси",
      "noProxy": "Без прокси / VPN",
      "noProxiesAvailable": "Нет доступных прокси или VPN. Добавьте один для маршрутизации трафика этого профиля.",
      "search": "Поиск прокси или VPN...",
      "notFound": "Прокси или VPN не найдены.",
      "searchWithCountries": "Поиск прокси, VPN или стран..."
    },
    "launchHook": {
      "label": "URL хука запуска",
      "placeholder": "https://example.com/hooks/profile-launch"
    },
    "version": {
      "fetching": "Получение доступных версий...",
      "fetchError": "Не удалось получить версии браузера. Проверьте интернет-соединение и попробуйте снова.",
      "needsDownload": "Версию {{browser}} ({{version}}) необходимо скачать",
      "available": "Версия {{browser}} ({{version}}) доступна",
      "downloading": "Загрузка версии {{browser}} ({{version}})...",
      "latestNeedsDownload": "Последнюю версию ({{version}}) необходимо скачать",
      "latestAvailable": "Последняя версия ({{version}}) доступна",
      "latestDownloading": "Загрузка версии ({{version}})...",
      "upgradeAvailable": "Доступна новая версия ({{version}}) {{browser}}."
    },
    "chromiumLabel": "Chromium",
    "chromiumSubtitle": "На базе Wayfern",
    "platformUnavailable": "{{browser}} пока недоступен на вашей платформе.",
    "passwordProtect": {
      "label": "Защитить этот профиль паролем",
      "description": "Шифрует данные профиля на диске. Требуется для запуска."
    },
    "downloadingSubtitle": "Загрузка…",
    "browsersDownloading": "Браузеры ещё загружаются. Создание профилей станет доступно после завершения загрузки."
  },
  "deleteDialog": {
    "title": "Удалить профиль",
    "description": "Вы уверены, что хотите удалить этот профиль? Это действие нельзя отменить.",
    "profilesTitle": "Удалить профили",
    "profilesDescription": "Вы уверены, что хотите удалить выбранные профили? Это действие нельзя отменить.",
    "profilesToDelete": "Профили для удаления:"
  },
  "proxies": {
    "title": "Прокси",
    "management": {
      "description": "Управляйте конфигурациями прокси и VPN для переиспользования в профилях",
      "tabProxies": "Прокси",
      "tabVpns": "VPN",
      "create": "Создать",
      "loading": "Загрузка прокси...",
      "noneCreated": "Прокси еще нет. Создайте первый прокси, используя кнопку выше.",
      "usage": "Использование",
      "syncCol": "Синхронизация",
      "syncCannotDisable": "Нельзя отключить синхронизацию, пока этот прокси используется синхронизированными профилями",
      "enableSync": "Включить синхронизацию",
      "disableSync": "Отключить синхронизацию",
      "editProxy": "Редактировать прокси",
      "deleteProxy": "Удалить прокси",
      "cannotDelete_one": "Невозможно удалить: используется {{count}} профилем",
      "cannotDelete_few": "Невозможно удалить: используется {{count}} профилями",
      "cannotDelete_other": "Невозможно удалить: используется {{count}} профилями",
      "cannotDelete_many": "Невозможно удалить: используется {{count}} профилями",
      "syncEnabled": "Синхронизация включена",
      "syncDisabled": "Синхронизация отключена",
      "updateSyncFailed": "Не удалось обновить синхронизацию",
      "deleteSuccess": "Прокси успешно удален",
      "deleteFailed": "Не удалось удалить прокси",
      "deleteTitle": "Удалить прокси",
      "deleteDescription": "Это действие нельзя отменить. Прокси «{{name}}» будет удален навсегда.",
      "newProxy": "Новый прокси",
      "newVpn": "Новый VPN",
      "protocolCol": "Протокол",
      "hostPort": "Хост : порт",
      "title": "Прокси и VPN"
    },
    "add": "Добавить прокси",
    "edit": "Редактировать прокси",
    "delete": "Удалить прокси",
    "import": "Импорт",
    "export": "Экспорт",
    "noProxies": "Прокси не настроены",
    "noProxiesDescription": "Добавьте прокси для маршрутизации трафика браузера через него.",
    "form": {
      "name": "Название",
      "namePlaceholder": "Введите название прокси",
      "type": "Тип",
      "host": "Хост",
      "hostPlaceholder": "proxy.example.com",
      "port": "Порт",
      "portPlaceholder": "8080",
      "username": "Имя пользователя",
      "usernamePlaceholder": "Необязательно",
      "password": "Пароль",
      "passwordPlaceholder": "Необязательно",
      "cipher": "Шифр",
      "cipherPlaceholder": "aes-256-gcm",
      "nameRequired": "Требуется имя прокси",
      "hostPortRequired": "Требуются хост и порт",
      "ssCipherRequired": "Для Shadowsocks требуется шифр и пароль",
      "selectType": "Выберите тип прокси",
      "saveFailed": "Не удалось сохранить прокси: {{error}}",
      "vlessType": "VLESS",
      "vlessUri": "URI VLESS",
      "vlessUriPlaceholder": "vless://…",
      "vlessUriHint": "Требуются XTLS Vision и REALITY.",
      "vlessUriRequired": "Введите URI VLESS.",
      "vlessUriInvalid": "Введите корректный URI VLESS с адресом и портом."
    },
    "types": {
      "http": "HTTP",
      "https": "HTTPS",
      "socks4": "SOCKS4",
      "socks5": "SOCKS5",
      "ss": "Shadowsocks"
    },
    "tabs": {
      "regular": "Обычный",
      "dynamic": "Динамический"
    },
    "dynamic": {
      "description": "Динамический прокси получает данные подключения по URL при каждом запуске профиля.",
      "url": "URL прокси",
      "urlPlaceholder": "https://api.example.com/proxy",
      "urlRequired": "URL динамического прокси обязателен",
      "format": "Формат ответа",
      "formatJson": "JSON",
      "formatText": "Текст",
      "formatJsonHint": "Ожидается JSON: {\"ip\": \"...\", \"port\": ..., \"username\": \"...\", \"password\": \"...\"}",
      "formatTextHint": "Ожидается текст вида: host:port:username:password или protocol://user:pass@host:port",
      "testUrl": "Проверить URL",
      "testing": "Проверка...",
      "testSuccess": "Прокси работает: {{host}}:{{port}}",
      "testFailed": "Тест прокси не пройден: {{error}}",
      "fetchFailed": "Не удалось получить динамический прокси: {{error}}"
    },
    "check": {
      "checking": "Проверка прокси...",
      "valid": "Прокси действителен",
      "invalid": "Прокси недействителен",
      "lastChecked": "Последняя проверка: {{time}}"
    },
    "sync": {
      "enabled": "Синхронизация включена",
      "disabled": "Синхронизация выключена"
    },
    "exportDialog": {
      "title": "Экспорт прокси",
      "description": "Экспортируйте конфигурации прокси в файл",
      "format": "Формат экспорта",
      "json": "JSON",
      "txt": "TXT (формат URL)",
      "preview": "Предпросмотр",
      "noProxies": "Нет прокси для экспорта",
      "downloaded": "Загружено: {{filename}}",
      "failed": "Не удалось экспортировать прокси",
      "copied": "Скопировано"
    },
    "importDialog": {
      "title": "Импорт прокси",
      "descDropzone": "Импорт прокси из JSON или TXT файла",
      "descPreview": "Проверьте прокси для импорта",
      "descAmbiguous": "Некоторые прокси имеют неоднозначный формат. Выберите правильный формат.",
      "descResult": "Импорт завершен",
      "dropzonePrompt": "Перетащите файл конфигурации прокси",
      "dropzoneFormats": "(.json, .txt)",
      "pasteHint": "Вставить из буфера обмена с {{modKey}}+V",
      "wrongFileType": "Перетащите файл .json или .txt",
      "fileReadError": "Не удалось прочитать файл",
      "fileProcessError": "Не удалось обработать файл",
      "noValidProxies": "В файле не найдено допустимых прокси",
      "namePrefix": "Префикс имени",
      "namePrefixDefault": "Imported",
      "namePrefixHint": "Прокси будут названы «{{prefix}} Proxy 1», «{{prefix}} Proxy 2» и т.д.",
      "proxiesToImport": "Прокси для импорта ({{count}})",
      "invalidCount": "({{count}} недействительных)",
      "ambiguousIntro": "Следующие прокси имеют неоднозначный формат. Выберите правильную интерпретацию для каждого.",
      "imported": "Импортировано:",
      "skippedDuplicates": "Пропущено (дубликаты):",
      "errors": "Ошибки",
      "importButton": "Импортировать {{count}} прокси",
      "continueButton": "Продолжить",
      "doneButton": "Готово",
      "failed": "Не удалось импортировать прокси"
    },
    "bulkDelete": {
      "proxiesTitle": "Удалить выбранные прокси",
      "proxiesDescription": "Это действие нельзя отменить. Будет безвозвратно удалено прокси: {{count}} — {{names}}.",
      "vpnsTitle": "Удалить выбранные VPN",
      "vpnsDescription": "Это действие нельзя отменить. Будет безвозвратно удалено VPN: {{count}} — {{names}}.",
      "confirmButton": "Удалить {{count}}"
    }
  },
  "groups": {
    "title": "Группы",
    "management": "Управление группами",
    "add": "Добавить группу",
    "edit": "Редактировать группу",
    "delete": "Удалить группу",
    "moveToDefault": "Убрать профили из группы",
    "noGroupDescription": "Профили без группы отображаются в фильтре «Все».",
    "assignSuccess": "Успешно назначено {{count}} профиль(ей) в {{group}}",
    "noGroups": "Группы не созданы",
    "noGroupsDescription": "Создайте группу для организации профилей.",
    "form": {
      "name": "Название",
      "namePlaceholder": "Введите название группы"
    },
    "profileCount": "{{count}} профиль",
    "profileCount_plural": "{{count}} профилей",
    "assignProfiles": "Назначить профили",
    "sync": {
      "enabled": "Синхронизация включена",
      "disabled": "Синхронизация выключена"
    },
    "createTitle": "Создать новую группу",
    "createDescription": "Создайте новую группу для организации профилей браузера.",
    "editTitle": "Изменить группу",
    "editDescription": "Обновите имя группы.",
    "createSuccess": "Группа успешно создана",
    "createFailed": "Не удалось создать группу",
    "updateSuccess": "Группа успешно обновлена",
    "updateFailed": "Не удалось обновить группу",
    "deleteTitle": "Удалить группу",
    "deleteDescription": "Это действие необратимо. Группа будет удалена навсегда.",
    "deleteSuccess": "Группа успешно удалена",
    "deleteFailed": "Не удалось удалить группу",
    "loadingProfiles": "Загрузка связанных профилей...",
    "associatedProfiles": "Связанные профили ({{count}})",
    "whatToDoWithProfiles": "Что сделать с этими профилями?",
    "deleteAlongWithGroup": "Удалить профили вместе с группой",
    "noAssociatedProfiles": "У этой группы нет связанных профилей.",
    "deleteGroup": "Удалить группу",
    "deleteGroupAndProfiles": "Удалить группу и профили",
    "loadProfilesFailed": "Не удалось загрузить профили",
    "unknownGroup": "Неизвестная группа",
    "profileGroupsAriaLabel": "Группы профилей",
    "loading": "Загрузка групп...",
    "all": "Все",
    "noGroup": "Без группы",
    "pageTitle": "Группы профилей",
    "pageDescription": "Группы профилей позволяют организовать браузеры по клиенту, окружению или сценарию использования. Синхронизируйте группы между устройствами, чтобы делиться ими."
  },
  "sync": {
    "mode": {
      "title": "Синхронизация профиля",
      "description": "Управление настройками синхронизации для \"{{name}}\"",
      "disabled": "Отключено",
      "regular": "Обычная синхронизация",
      "encrypted": "E2E зашифрованная синхронизация",
      "disabledDescription": "Без синхронизации для этого профиля",
      "regularDescription": "Быстрая синхронизация, без шифрования",
      "encryptedDescription": "Шифрование перед загрузкой. Сервер никогда не видит данные в открытом виде.",
      "noPasswordWarning": "Пароль E2E не установлен. Пожалуйста, установите пароль в Настройках.",
      "passwordRequired": "Пароль E2E не установлен. Сначала установите пароль в Настройках.",
      "enabledToast": "Синхронизация включена",
      "disabledToast": "Синхронизация отключена",
      "syncQueued": "Синхронизация в очереди",
      "syncNow": "Синхронизировать сейчас",
      "lastSynced": "Последняя синхронизация",
      "notConfigured": "Сервис синхронизации не настроен.",
      "configureService": "Настроить сервис синхронизации"
    },
    "title": "Служба синхронизации",
    "config": {
      "serverUrlRequired": "Введите URL сервера",
      "connectionSuccess": "Подключение успешно!",
      "serverError": "Сервер вернул ошибку",
      "connectFailed": "Не удалось подключиться к серверу",
      "storageEndpoint": "Хранилище: {{endpoint}}",
      "storageUnreachableStatus": "Хранилище недоступно",
      "storageUnreachable": "Сервер доступен, но адрес хранилища {{endpoint}} недоступен с этого устройства. Передача файлов работать не будет. Если вы используете собственный сервер, укажите в S3_PUBLIC_ENDPOINT адрес, доступный с этого устройства.",
      "settingsSaved": "Настройки синхронизации сохранены",
      "saveFailed": "Не удалось сохранить настройки",
      "disconnected": "Синхронизация отключена",
      "disconnectFailed": "Не удалось отключиться"
    },
    "serverUrl": "URL сервера",
    "serverUrlPlaceholder": "https://sync.example.com",
    "token": "Токен синхронизации",
    "tokenPlaceholder": "Введите токен синхронизации",
    "status": {
      "connected": "Подключено",
      "disconnected": "Отключено",
      "syncing": "Синхронизация...",
      "error": "Ошибка синхронизации"
    },
    "description": "Подключитесь к серверу синхронизации для синхронизации профилей, прокси и групп между устройствами.",
    "cloud": {
      "tabLabel": "Облако",
      "selfHostedTabLabel": "Свой сервер",
      "email": "Электронная почта",
      "deviceLinkInstructions": "Нажмите «Войти», чтобы открыть страницу входа в браузере. После входа скопируйте показанный код и вставьте его ниже.",
      "openLogin": "Войти",
      "linkCodeLabel": "Код входа",
      "linkCodePlaceholder": "Вставьте код с сайта",
      "signInTitle": "Войти",
      "verifyAndLogin": "Подтвердить и Войти",
      "loggingIn": "Вход...",
      "connected": "Подключено",
      "plan": "Тариф",
      "profiles": "Профили",
      "profileUsage": "{{used}} / {{limit}}",
      "manageAccount": "Управление аккаунтом",
      "logout": "Выйти",
      "logoutConfirm": "Вы уверены, что хотите выйти? Облачная синхронизация будет остановлена.",
      "loginSuccess": "Вход выполнен успешно!",
      "logoutSuccess": "Выход выполнен успешно."
    },
    "team": {
      "title": "Команда",
      "name": "Название команды",
      "role": "Роль",
      "roleOwner": "Владелец",
      "roleAdmin": "Администратор",
      "roleMember": "Участник",
      "manageOnWeb": "Управление командой в веб-панели",
      "profileLocked": "Используется {{email}}",
      "profileLockedShort": "Используется",
      "cannotLaunchLocked": "Невозможно запустить — профиль используется {{email}}",
      "createdBy": "Создано {{email}}"
    },
    "disabled": "Отключена",
    "toast": {
      "profileSynced": "Профиль '{{name}}' успешно синхронизирован",
      "profileSyncFailed": "Не удалось синхронизировать профиль '{{name}}'",
      "profileSyncFailedWithError": "Не удалось синхронизировать профиль '{{name}}': {{error}}"
    },
    "enabledToast": "Синхронизация включена",
    "disabledToast": "Синхронизация отключена",
    "enabledDescription": "Синхронизация профиля включена",
    "disabledDescription": "Синхронизация профиля отключена"
  },
  "integrations": {
    "title": "Интеграции",
    "api": {
      "title": "Локальный API",
      "description": "Включите локальный API-сервер для внешних интеграций.",
      "enabled": "API включён",
      "disabled": "API выключен",
      "port": "Порт",
      "token": "API токен",
      "copyToken": "Копировать токен",
      "regenerateToken": "Перегенерировать токен"
    },
    "mcp": {
      "title": "MCP сервер",
      "description": "Включите MCP (Model Context Protocol) сервер для интеграции с AI-ассистентами.",
      "enabled": "MCP включён",
      "disabled": "MCP выключен",
      "port": "Порт",
      "token": "Токен аутентификации",
      "tokenCopied": "Токен скопирован",
      "url": "URL MCP сервера",
      "urlCopied": "URL скопирован",
      "config": "Конфигурация MCP",
      "copyConfig": "Копировать конфигурацию",
      "clientsLabel": "Клиенты",
      "connected": "Подключено",
      "add": "Добавить",
      "addedToClient": "Добавлено в {{name}}",
      "removedFromClient": "Удалено из {{name}}",
      "removeAriaLabel": "Удалить из {{name}}",
      "category": {
        "desktopApp": "Десктоп-приложение",
        "cli": "CLI",
        "editor": "Редактор",
        "editorExt": "Расширение редактора"
      }
    },
    "tabApi": "Локальный API",
    "tabMcp": "MCP (ИИ-ассистенты)",
    "apiEnableLabel": "Включить локальный API сервер",
    "apiEnableDescription": "Позволяет управлять профилями, группами и прокси через REST API.",
    "apiPortLabel": "Порт",
    "apiTokenLabel": "Токен аутентификации",
    "apiTokenHint": "Включите в заголовок Authorization: Bearer {{tokenSlot}}",
    "apiInvalidPort": "Неверный порт",
    "apiInvalidPortDescription": "Порт должен быть от 1 до 65535",
    "apiPortInUse": "Порт {{port}} уже используется",
    "apiFallbackPort": "Сервер запущен на резервном порту {{port}}",
    "apiStarted": "API сервер запущен на порту {{port}}",
    "apiRunning": "API сервер работает на порту {{port}}",
    "apiStopped": "API сервер остановлен",
    "apiToggleFailed": "Не удалось переключить API сервер",
    "apiStartFailed": "Не удалось запустить API сервер",
    "apiUnknownError": "Неизвестная ошибка",
    "tokenCopied": "Токен скопирован",
    "mcpEnableLabel": "Включить MCP сервер (Model Context Protocol)",
    "mcpEnableDescription": "Позволяет ИИ-ассистентам, таким как Claude Desktop, управлять браузерами.",
    "mcpAcceptTermsFirst": "(Сначала примите условия Wayfern в Настройках)",
    "mcpStarted": "MCP сервер запущен на порту {{port}}",
    "mcpStopped": "MCP сервер остановлен",
    "mcpToggleFailed": "Не удалось переключить MCP сервер",
    "openSettings": "Открыть настройки интеграций",
    "apiRunningOn": "Запущен на",
    "apiExampleRequest": "Пример запроса"
  },
  "import": {
    "title": "Импорт профиля",
    "description": "Импортируйте существующий профиль браузера из вашей системы.",
    "selectProfile": "Выберите профиль для импорта",
    "noProfiles": "Профили не обнаружены",
    "noProfilesDescription": "В вашей системе не обнаружены профили браузеров.",
    "importing": "Импорт профиля...",
    "success": "Профиль успешно импортирован",
    "error": "Ошибка импорта профиля"
  },
  "config": {
    "wayfern": {
      "title": "Настройки Wayfern",
      "fingerprint": {
        "title": "Отпечаток",
        "randomize": "Случайный при запуске",
        "randomizeDescription": "Генерировать новый отпечаток при каждом запуске браузера.",
        "platformPlaceholder": "напр., Win32, MacIntel, Linux x86_64",
        "timezoneOffsetPlaceholder": "напр., 300 для EST (UTC-5)",
        "webglRendererPlaceholder": "напр., Intel(R) HD Graphics"
      },
      "os": {
        "title": "Операционная система",
        "description": "Операционная система для эмуляции при генерации отпечатка.",
        "windows": "Windows",
        "macos": "macOS",
        "linux": "Linux",
        "android": "Android",
        "ios": "iOS"
      },
      "screen": {
        "title": "Размер экрана",
        "minWidth": "Мин. ширина",
        "maxWidth": "Макс. ширина",
        "minHeight": "Мин. высота",
        "maxHeight": "Макс. высота"
      },
      "blocking": {
        "title": "Блокировка",
        "webrtc": "Блокировать WebRTC",
        "webgl": "Блокировать WebGL"
      }
    },
    "shared": {
      "browserBehavior": "Поведение браузера",
      "allowAddonsOpenTabs": "Разрешить расширениям браузера автоматически открывать новые вкладки"
    }
  },
  "cookies": {
    "title": "Cookie",
    "copy": {
      "title": "Копировать Cookie",
      "description": "Выберите cookie для копирования в другие профили.",
      "selectSource": "Выберите исходный профиль",
      "selectTarget": "Выберите целевые профили",
      "selectCookies": "Выберите Cookie",
      "allDomains": "Все домены",
      "selectedCount": "Выбрано {{count}} cookie",
      "selectedCount_plural": "Выбрано {{count}} cookie",
      "dialogDescription_one": "Копировать cookies из исходного профиля в {{count}} выбранный профиль.",
      "dialogDescription_few": "Копировать cookies из исходного профиля в {{count}} выбранных профиля.",
      "dialogDescription_other": "Копировать cookies из исходного профиля в {{count}} выбранных профилей.",
      "dialogDescription_many": "Копировать cookies из исходного профиля в {{count}} выбранных профилей.",
      "sourceProfile": "Исходный профиль",
      "sourcePlaceholder": "Выберите профиль для копирования cookies",
      "running": "(запущен)",
      "targetProfiles": "Целевые профили ({{count}})",
      "noOtherTargets": "Других выбранных Wayfern профилей нет",
      "selectSourceFirst": "Сначала выберите исходный профиль",
      "selectionStatus": "(выбрано {{selected}} из {{total}})",
      "searchPlaceholder": "Поиск доменов или cookies...",
      "noMatching": "Совпадающие cookies не найдены",
      "noFound": "Cookies не найдены",
      "replaceNote": "Существующие cookies с тем же именем и доменом будут заменены. Остальные cookies сохранятся.",
      "cannotCopyRunningOne": "Не удается скопировать cookies: {{names}} еще запущен",
      "cannotCopyRunningMany": "Не удается скопировать cookies: {{names}} еще запущены",
      "someErrors": "Произошли ошибки: {{errors}}",
      "successMessage": "Скопировано {{copied}} cookies ({{replaced}} заменено)",
      "failedMessage": "Не удалось скопировать cookies: {{error}}",
      "copyButton_one": "Скопировать {{count}} cookie",
      "copyButton_few": "Скопировать {{count}} cookies",
      "copyButton_other": "Скопировать {{count}} cookies",
      "copyButton_many": "Скопировать {{count}} cookies",
      "copyButtonEmpty": "Скопировать cookies"
    },
    "success": "Cookie успешно скопированы",
    "error": "Ошибка копирования cookie",
    "management": {
      "title": "Управление Cookies",
      "menuItem": "Управление Cookies",
      "tabImport": "Импорт",
      "tabExport": "Экспорт",
      "importDescription": "Вставьте cookie, скопированные из другого браузера или инструмента, либо выберите файл.",
      "fileReadError": "Не удалось прочитать файл",
      "loadFailed": "Не удалось загрузить cookies: {{error}}",
      "cookiesLabel": "Cookies",
      "selectionStatus": "(выбрано {{selected}} из {{total}})",
      "selectAll": "Выбрать все",
      "deselectAll": "Снять выбор",
      "noCookies": "Cookies в этом профиле не найдены",
      "doneButton": "Готово",
      "exportButton": "Экспорт"
    },
    "import": {
      "title": "Импорт Cookies",
      "description": "Импорт cookies из файла в формате Netscape или JSON.",
      "selectFile": "Выбрать файл",
      "preview": "Найдено {{count}} cookies",
      "success": "Успешно импортировано {{imported}} cookies ({{replaced}} заменено)",
      "error": "Ошибка импорта cookies",
      "proFeature": "Импорт cookies — функция Pro"
    },
    "export": {
      "title": "Экспорт Cookies",
      "description": "Экспорт cookies из этого профиля.",
      "formatLabel": "Формат",
      "netscape": "Netscape TXT",
      "json": "JSON",
      "success": "Cookies успешно экспортированы",
      "error": "Ошибка экспорта cookies"
    },
    "paste": {
      "label": "Cookie",
      "placeholder": "Вставьте cookie сюда. JSON (массив или объект {cookies: [...]}), cookies.txt в формате Netscape или name=value; name2=value2",
      "chooseFile": "или выберите файл",
      "analyzing": "Проверка…",
      "formatJson": "JSON",
      "formatNetscape": "Netscape",
      "formatNameValue": "Name=Value",
      "formatUnknown": "Формат не распознан",
      "siteLabel": "Сайт",
      "sitePlaceholder": "example.com или https://example.com",
      "siteHelp": "Список name=value не содержит домена, поэтому укажите сайт, к которому относятся эти cookie.",
      "scopeSubdomains": "{{domain}}: этот домен и все его поддомены",
      "scopeHostOnly": "{{domain}}: только этот хост, без поддоменов",
      "modeMerge": "Объединить",
      "modeMergeDesc": "Обновляет сохранённые cookie, совпавшие с вставленными, добавляет остальные и ничего не удаляет.",
      "modeReplace": "Заменить совпадающие сайты",
      "modeReplaceDesc": "Удаляет сохранённые cookie этого профиля для сайтов из этой вставки, как с точкой в начале, так и без неё, а затем записывает вставленное. Cookie всех остальных сайтов сохраняются.",
      "replaceDeleteCount": "Сохранённых cookie будет удалено: {{n}}",
      "unknownCount": "неизвестно",
      "includeExpired": "Импортировать также уже истёкшие cookie",
      "expiredNote": "Уже истекли в этой вставке: {{n}}",
      "clearsOnCloseWarning": "Этот профиль стирает данные просмотра при закрытии браузера, поэтому эти cookie будут удалены в конце следующего сеанса.",
      "previewTitle": "Cookie к импорту: {{n}}",
      "colSite": "Сайт",
      "colName": "Имя",
      "colPath": "Путь",
      "colExpires": "Истекает",
      "colSecure": "Secure",
      "colHttpOnly": "HttpOnly",
      "colSameSite": "SameSite",
      "session": "Сеанс",
      "yes": "Да",
      "no": "Нет",
      "sameSiteUnspecified": "Не указано",
      "sameSiteNone": "None",
      "sameSiteLax": "Lax",
      "sameSiteStrict": "Strict",
      "issuesTitle": "Замечания",
      "showAll": "Показать все: {{n}}",
      "showFewer": "Свернуть",
      "sourceLine": "Строка {{n}}",
      "sourceCookie": "Cookie {{n}}",
      "disabledEmpty": "Вставьте cookie выше, чтобы их импортировать.",
      "disabledSite": "Укажите сайт, к которому относятся эти cookie.",
      "disabledNoCookies": "Из этой вставки не удалось прочитать ни одной cookie.",
      "resultAdded": "Добавлено",
      "resultOverwritten": "Перезаписано",
      "resultDeleted": "Удалено",
      "resultSkipped": "Пропущено",
      "issues": {
        "emptyInput": "Пока ничего не вставлено.",
        "siteInvalid": "«{{site}}» не является пригодным сайтом и был проигнорирован.",
        "unrecognizedFormat": "Это не JSON, не cookies.txt в формате Netscape и не список name=value.",
        "siteRequired": "Список name=value не содержит домена. Укажите сайт, к которому относятся эти cookie.",
        "noCookiesFound": "Из этой вставки не удалось прочитать ни одной cookie.",
        "nameEmpty": "Имя cookie пустое.",
        "nameInvalid": "«{{name}}» не является пригодным именем cookie.",
        "nameMissing": "У этой записи нет имени.",
        "valueInvalid": "Значение «{{name}}» содержит символы, недопустимые в cookie.",
        "valueCoerced": "Значение «{{name}}» не было текстом, поэтому оно преобразовано в текст.",
        "domainFromSite": "У «{{name}}» не было домена, она привязана к {{domain}}.",
        "domainMissing": "У «{{name}}» нет домена, и сайт не указан.",
        "domainInvalid": "«{{name}}» указывает непригодный домен: {{domain}}.",
        "domainAttributeIgnored": "Атрибут Domain={{domain}} проигнорирован в пользу указанного вами сайта {{site}}.",
        "hostOnlyMismatch": "У «{{name}}» указано hostOnly={{hostOnly}}, но домен был {{domain}}. Применён флаг.",
        "pathRepaired": "Путь «{{name}}» исправлен из {{path}}.",
        "expiryMilliseconds": "Срок действия «{{name}}» ({{expires}}) был в миллисекундах и переведён в секунды.",
        "expiryClamped": "Срок действия был слишком далёким, чтобы быть настоящим, и ограничен максимумом.",
        "expiryInvalid": "{{field}} не является пригодной меткой времени: {{value}}.",
        "expiresInvalid": "Expires не является читаемой датой: {{value}}.",
        "maxAgeInvalid": "Max-Age не является числом: {{value}}.",
        "maxAgeDeletion": "Max-Age у «{{name}}» удаляет её немедленно.",
        "sameSiteNoneInsecure": "«{{name}}» на {{domain}} имеет SameSite=None без Secure, поэтому браузер откажется её отправлять.",
        "sameSiteUnrecognized": "Значение SameSite «{{value}}» не распознано и оставлено неуказанным.",
        "duplicateCookie": "«{{name}}» для {{domain}}{{path}} встречается дальше в вставке ещё раз. Побеждает последняя копия.",
        "boolCoercedFromString": "{{field}} было текстом «{{value}}» вместо true или false и было прочитано как логическое значение.",
        "boolInvalid": "{{field}} не равно ни true, ни false: {{value}}.",
        "quotedValue": "Кавычки вокруг значения «{{name}}» удалены.",
        "jsonParseFailed": "Не удалось прочитать JSON: {{message}}",
        "jsonNotCookieList": "Этот JSON не является ни массивом cookie, ни объектом с массивом cookies.",
        "jsonEntryNotObject": "Эта запись не является объектом JSON.",
        "netscapePathOmitted": "В этой строке нет столбца пути, поэтому использован /.",
        "netscapeFieldCount": "В этой строке {{actual}} столбцов; в строке cookie Netscape их {{expected}}.",
        "netscapeIncludeSubdomainsInvalid": "Столбец включения поддоменов не равен ни TRUE, ни FALSE: {{value}}.",
        "netscapeSecureInvalid": "Столбец secure не равен ни TRUE, ни FALSE: {{value}}.",
        "netscapeExpiryInvalid": "Столбец срока действия не является числом: {{value}}. Строка отброшена, а не превращена в действующую cookie.",
        "nameValueNoPair": "В этой части нет пары name=value, она проигнорирована.",
        "pairTreatedAsAttribute": "«{{name}}» прочитано как атрибут Set-Cookie, а не как куки, и его значение отброшено.",
        "unknown": "{{code}}"
      }
    }
  },
  "toasts": {
    "success": {
      "profileCreated": "Профиль успешно создан",
      "profileDeleted": "Профиль успешно удалён",
      "profileUpdated": "Профиль успешно обновлён",
      "profileLaunched": "Профиль успешно запущен",
      "proxyCreated": "Прокси успешно создан",
      "proxyDeleted": "Прокси успешно удалён",
      "proxyUpdated": "Прокси успешно обновлён",
      "groupCreated": "Группа успешно создана",
      "groupDeleted": "Группа успешно удалена",
      "groupUpdated": "Группа успешно обновлена",
      "settingsSaved": "Настройки успешно сохранены",
      "copied": "Скопировано в буфер обмена",
      "permissionRequested": "Запрошен доступ к {{permission}}",
      "downloadComplete": "{{browser}} {{version}} успешно загружен!",
      "importSuccess": "Успешно импортировано {{count}} элементов",
      "exportSuccess": "Успешно экспортировано {{count}} элементов",
      "syncSuccess": "Синхронизация успешно завершена",
      "profileSynced": "Профиль '{{name}}' успешно синхронизирован",
      "cacheCleared": "Кэш успешно очищен"
    },
    "error": {
      "profileCreateFailed": "Ошибка создания профиля",
      "profileDeleteFailed": "Ошибка удаления профиля",
      "profileUpdateFailed": "Ошибка обновления профиля",
      "profileLaunchFailed": "Ошибка запуска профиля",
      "proxyCreateFailed": "Ошибка создания прокси",
      "proxyDeleteFailed": "Ошибка удаления прокси",
      "proxyUpdateFailed": "Ошибка обновления прокси",
      "groupCreateFailed": "Ошибка создания группы",
      "groupDeleteFailed": "Ошибка удаления группы",
      "groupUpdateFailed": "Ошибка обновления группы",
      "settingsSaveFailed": "Ошибка сохранения настроек",
      "copyFailed": "Ошибка копирования в буфер обмена",
      "downloadFailed": "Ошибка загрузки {{browser}}",
      "importFailed": "Ошибка импорта",
      "exportFailed": "Ошибка экспорта",
      "syncFailed": "Ошибка синхронизации",
      "profileSyncFailed": "Ошибка синхронизации профиля '{{name}}'",
      "cacheClearFailed": "Ошибка очистки кэша",
      "unknown": "Произошла неизвестная ошибка"
    },
    "loading": {
      "downloading": "Загрузка {{browser}} {{version}}",
      "extracting": "Распаковка {{browser}} {{version}}",
      "verifying": "Проверка {{browser}} {{version}}",
      "syncing": "Синхронизация...",
      "syncingProfile": "Синхронизация профиля '{{name}}'...",
      "syncingProfileWithProgress": "{{count}} файлов ({{size}})",
      "updatingVersions": "Обновление версий браузеров..."
    },
    "progress": {
      "remaining": "осталось {{time}}",
      "filesProgress": "{{completed}}/{{total}} файлов",
      "filesFailed": "Ошибка в {{count}} файле(ах)"
    }
  },
  "errors": {
    "required": "Это поле обязательно",
    "invalidUrl": "Введите корректный URL",
    "invalidPort": "Введите корректный номер порта (1-65535)",
    "invalidEmail": "Введите корректный адрес электронной почты",
    "minLength": "Минимум {{min}} символов",
    "maxLength": "Максимум {{max}} символов",
    "networkError": "Сетевая ошибка. Проверьте подключение.",
    "serverError": "Ошибка сервера. Попробуйте позже.",
    "unknownError": "Произошла неизвестная ошибка. Попробуйте снова.",
    "noProfilesForUrl": "Нет доступных профилей. Сначала создайте профиль, прежде чем открывать URL.",
    "updateWayfernConfigFailed": "Не удалось обновить настройки wayfern: {{error}}",
    "createProfileFailed": "Не удалось создать профиль: {{error}}",
    "launchBrowserFailed": "Не удалось запустить браузер: {{error}}",
    "cannotDeleteRunningProfile": "Невозможно удалить профиль, пока браузер запущен. Сначала остановите браузер.",
    "deleteProfileFailed": "Не удалось удалить профиль: {{error}}",
    "renameProfileFailed": "Не удалось переименовать профиль: {{error}}",
    "killBrowserFailed": "Не удалось остановить браузер: {{error}}",
    "deleteSelectedProfilesFailed": "Не удалось удалить выбранные профили: {{error}}",
    "cookieCopyUnsupportedBrowser": "Копирование cookies работает только с профилями Wayfern",
    "updateSyncSettingsFailed": "Не удалось обновить параметры синхронизации",
    "cloneProfileFailed": "Не удалось клонировать профиль: {{error}}",
    "loadSupportedBrowsersFailed": "Не удалось загрузить поддерживаемые браузеры",
    "setupExtensionListenersFailed": "Не удалось настроить слушатели событий расширений: {{error}}",
    "loadGroupsFailed": "Не удалось загрузить группы: {{error}}",
    "setupGroupListenersFailed": "Не удалось настроить слушатели событий групп: {{error}}",
    "loadProfilesFailed": "Не удалось загрузить профили: {{error}}",
    "setupProfileListenersFailed": "Не удалось настроить слушатели событий профилей: {{error}}",
    "loadProxiesFailed": "Не удалось загрузить прокси: {{error}}",
    "setupProxyListenersFailed": "Не удалось настроить слушатели событий прокси: {{error}}",
    "loadVpnConfigsFailed": "Не удалось загрузить конфигурации VPN: {{error}}",
    "setupVpnListenersFailed": "Не удалось настроить слушатели событий VPN: {{error}}",
    "themeNotFound": "Тема Tokyo Night не найдена",
    "setProfilePasswordFailed": "Не удалось установить пароль профиля: {{error}}"
  },
  "browser": {
    "wayfern": "Wayfern"
  },
  "fingerprint": {
    "crossOsWarning": "Подмена отпечатка для другой операционной системы менее надёжна, так как невозможно идеально имитировать все базовые компоненты. Используйте с осторожностью.",
    "crossOsLimitations": "Подмена отпечатка другой ОС имеет ограничения. Системные API могут по-прежнему отражать вашу реальную операционную систему, а некоторые функции могут работать с пониженной производительностью.",
    "osLabel": "Отпечаток операционной системы",
    "selectOSPlaceholder": "Выберите операционную систему",
    "generateRandomOnLaunch": "Генерировать случайный отпечаток при каждом запуске",
    "generateRandomDescription": "При включении новый отпечаток будет генерироваться при каждом запуске браузера.",
    "generateRandomDescriptionAuto": "При включении новый отпечаток будет генерироваться при каждом запуске браузера. Сгенерированный отпечаток сохраняется для справки.",
    "autoLocationDescription": "Автоматически настраивать информацию о местоположении на основе конфигурации прокси или вашего соединения, если прокси не указан",
    "editingDisabledRunning": "Редактирование отпечатка отключено, так как профиль в данный момент запущен. Остановите профиль для внесения изменений.",
    "editingDisabledRandomized": "Редактирование отпечатка отключено, так как включена генерация случайного отпечатка. Отключите опцию выше для ручного редактирования конфигурации отпечатка.",
    "advancedWarning": "Внимание: редактируйте эти параметры только если вы знаете, что делаете. Неправильные значения могут нарушить работу сайтов, привести к вашему обнаружению и вызвать трудноотлаживаемые ошибки.",
    "basicWarning": "Внимание: редактируйте эти параметры только если вы знаете, что делаете.",
    "automatic": "Автоматически",
    "manual": "Вручную",
    "blockingOptions": "Параметры блокировки",
    "blockImages": "Блокировать изображения",
    "blockWebRTC": "Блокировать WebRTC",
    "blockWebGL": "Блокировать WebGL",
    "navigatorProperties": "Свойства Navigator",
    "userAgent": "User Agent",
    "userAgentAndPlatform": "User Agent и платформа",
    "platform": "Платформа",
    "platformVersion": "Версия платформы",
    "appVersion": "Версия приложения",
    "osCpu": "ЦП ОС",
    "hardwareConcurrency": "Количество потоков процессора",
    "maxTouchPoints": "Максимальное количество точек касания",
    "doNotTrack": "Не отслеживать",
    "selectDntPlaceholder": "Выберите значение DNT",
    "dntAllowed": "0 (отслеживание разрешено)",
    "dntNotAllowed": "1 (отслеживание не разрешено)",
    "dntUnspecified": "не указано",
    "language": "Язык",
    "primaryLanguage": "Основной язык (navigator.language)",
    "languages": "Языки (JSON-массив)",
    "languageAndLocale": "Язык и локаль",
    "screenProperties": "Свойства экрана",
    "screenWidth": "Ширина экрана",
    "screenHeight": "Высота экрана",
    "availableWidth": "Доступная ширина",
    "availableHeight": "Доступная высота",
    "colorDepth": "Глубина цвета",
    "pixelDepth": "Глубина пикселей",
    "devicePixelRatio": "Соотношение пикселей устройства",
    "windowProperties": "Свойства окна",
    "outerWidth": "Внешняя ширина",
    "outerHeight": "Внешняя высота",
    "innerWidth": "Внутренняя ширина",
    "innerHeight": "Внутренняя высота",
    "screenX": "Экран X",
    "screenY": "Экран Y",
    "geolocation": "Геолокация",
    "timezoneAndGeolocation": "Часовой пояс и геолокация",
    "timezoneGeolocationDescription": "Эти значения переопределяют API часового пояса и геолокации браузера.",
    "latitude": "Широта",
    "longitude": "Долгота",
    "timezone": "Часовой пояс",
    "timezoneIana": "Часовой пояс (IANA)",
    "timezoneOffset": "Смещение (минуты от UTC)",
    "accuracy": "Точность (метры)",
    "locale": "Локаль",
    "region": "Регион",
    "script": "Скрипт",
    "webglProperties": "Свойства WebGL",
    "webglVendor": "Производитель WebGL",
    "webglRenderer": "Рендерер WebGL",
    "webglParameters": "Параметры WebGL",
    "webglParametersJson": "Параметры WebGL (JSON)",
    "webgl2Parameters": "Параметры WebGL2",
    "webglShaderPrecisionFormats": "Форматы точности шейдера WebGL",
    "webgl2ShaderPrecisionFormats": "Форматы точности шейдера WebGL2",
    "canvasFingerprint": "Отпечаток Canvas",
    "canvasNoiseSeed": "Сид шума Canvas",
    "canvasNoiseSeedDescription": "Это зерно используется для генерации постоянного, но уникального отпечатка Canvas. У каждого профиля должно быть своё зерно.",
    "fonts": "Шрифты",
    "fontsJson": "Шрифты (JSON-массив)",
    "battery": "Батарея",
    "charging": "Зарядка",
    "chargingTime": "Время зарядки",
    "dischargingTime": "Время разрядки",
    "batteryLevel": "Уровень (0-1)",
    "screenResolution": "Разрешение экрана",
    "maxWidth": "Макс. ширина",
    "maxHeight": "Макс. высота",
    "minWidth": "Мин. ширина",
    "minHeight": "Мин. высота",
    "hardwareProperties": "Свойства оборудования",
    "deviceMemory": "Память устройства (ГБ)",
    "audioProperties": "Свойства аудио",
    "sampleRate": "Частота дискретизации",
    "maxChannelCount": "Максимальное количество каналов",
    "vendorInfo": "Информация о производителе",
    "vendor": "Производитель",
    "vendorSub": "Подверсия производителя",
    "productSub": "Подверсия продукта",
    "brand": "Бренд",
    "brandVersion": "Версия бренда",
    "proFeature": "Это функция Pro",
    "generateFingerprint": "Сгенерировать отпечаток",
    "regenerateFingerprint": "Пересоздать отпечаток",
    "regenerateConfirmTitle": "Пересоздать этот отпечаток?",
    "regenerateConfirmDescription": "Профиль сохранит куки и сессии, но будет выглядеть как другое устройство. Сайты, которые уже знают этот профиль, могут потребовать повторный вход, показать проверку или заблокировать аккаунт. Пересоздавайте только тот профиль, который вы ещё не использовали или готовы потерять. Отменить это действие нельзя.",
    "canvasNoiseSeedPlaceholder": "Введите строку-семя для отпечатка canvas",
    "addFontsPlaceholder": "Добавить шрифты...",
    "enterAsJson": "Введите {{title}} в формате JSON"
  },
  "warnings": {
    "windowResizeTitle": "Пользовательские размеры окна",
    "windowResizeDescription": "Изменение размеров окна браузера может повысить вероятность обнаружения сайтами того, что информация браузера подменена.",
    "dontShowAgain": "Больше не показывать",
    "continue": "Продолжить",
    "cancel": "Отмена"
  },
  "syncAll": {
    "title": "Включить синхронизацию для существующих элементов",
    "description": "У вас есть элементы, которые не синхронизируются. Хотите включить синхронизацию для всех?",
    "enableAll": "Включить все",
    "skip": "Пропустить",
    "success": "Синхронизация включена для всех элементов",
    "labels": {
      "proxies": "Прокси",
      "vpns": "VPN",
      "groups": "Группы",
      "extensions": "Расширения",
      "extensionGroups": "Группы расширений"
    }
  },
  "crossOs": {
    "viewOnly": "Этот профиль был создан на {{os}} и не поддерживается в этой системе",
    "cannotLaunch": "Этот профиль был создан на {{os}} и не поддерживается в этой системе",
    "cannotModify": "Невозможно изменить настройки синхронизации профиля другой ОС"
  },
  "profileInfo": {
    "title": "Детали профиля",
    "tabs": {
      "info": "Информация",
      "settings": "Настройки"
    },
    "fields": {
      "profileId": "ID профиля",
      "browser": "Браузер",
      "releaseType": "Тип релиза",
      "proxyVpn": "Прокси / VPN",
      "launchHook": "Хук запуска",
      "group": "Группа",
      "tags": "Теги",
      "note": "Заметка",
      "syncStatus": "Статус синхронизации",
      "lastLaunched": "Последний запуск",
      "hostOs": "ОС хоста",
      "ephemeral": "Эфемерный",
      "extensionGroup": "Группа расширений",
      "totalSessions": "Всего сессий",
      "syncMode": "Режим синх.",
      "proxy": "ПРОКСИ",
      "vpn": "VPN",
      "cookieCount": "Хранится Cookie",
      "localDataTransfer": "Локальный трафик",
      "created": "Создан",
      "windowColor": "Цвет окна"
    },
    "values": {
      "none": "Нет",
      "never": "Никогда",
      "copied": "Скопировано!",
      "yes": "Да",
      "activeNow": "Сейчас активен",
      "direct": "Без прокси",
      "loading": "Загрузка…",
      "unknown": "Неизвестно"
    },
    "network": {
      "bypassRules": "Правила обхода прокси",
      "bypassRulesTitle": "Правила обхода прокси",
      "bypassRulesDescription": "Запросы, соответствующие этим правилам, будут подключаться напрямую, минуя прокси.",
      "addRule": "Добавить правило",
      "rulePlaceholder": "напр. example.com, 192.168.1.*, .*\\.local",
      "noRules": "Правила обхода не настроены.",
      "ruleTypes": "Поддерживает имена хостов, IP-адреса и шаблоны регулярных выражений.",
      "vpnLabel": "VPN: {{name}}",
      "proxyLabel": "Proxy: {{name}}"
    },
    "launchHook": {
      "title": "URL хука запуска",
      "label": "URL хука запуска",
      "description": "Donut Browser будет отправлять GET-запрос на этот URL при каждом запуске профиля.",
      "placeholder": "https://example.com/hooks/profile-launch",
      "invalidUrlHint": "Введите корректный URL http:// или https://."
    },
    "actions": {
      "manageCookies": "Управление Cookie",
      "assignExtensionGroup": "Назначить группу расширений"
    },
    "clone": {
      "title": "Клонировать профиль",
      "description": "Введите имя для клонированного профиля",
      "namePlaceholder": "Имя профиля",
      "button": "Клонировать"
    },
    "duplicate": "Дублировать",
    "breadcrumbRoot": "Профиль",
    "openDialog": "Открыть настройки",
    "sections": {
      "overview": "Обзор",
      "fingerprint": "Отпечаток",
      "network": "Сеть",
      "cookies": "Cookie",
      "extensions": "Расширения",
      "sync": "Синхронизация",
      "automation": "Автоматизация",
      "security": "Безопасность",
      "delete": "Удалить профиль",
      "activity": "Активность",
      "launchHook": "Хук запуска"
    },
    "sectionDesc": {
      "fingerprint": "Настройте, как этот профиль выглядит для скриптов отпечатков.",
      "network": "Управляйте прокси или VPN, используемым этим профилем.",
      "cookies": "Импортируйте, копируйте или удаляйте cookie этого профиля.",
      "extensions": "Выберите, какие расширения загружать с этим профилем.",
      "sync": "Настройте репликацию этого профиля между устройствами.",
      "automation": "Запускайте команду при старте этого профиля.",
      "security": "Зашифруйте данные профиля паролем.",
      "launchHook": "Отправлять GET-запрос на этот URL при каждом запуске профиля."
    },
    "badges": {
      "locked": "ЗАБЛОК.",
      "active": "АКТИВЕН"
    },
    "cookies": {
      "runningNotice": "Куки нельзя прочитать, пока браузер запущен. Сначала закройте этот профиль.",
      "domainsHeader": "Домены ({{count}})"
    },
    "security": {
      "protected": "Этот профиль зашифрован паролем.",
      "unprotected": "Этот профиль не зашифрован. Задайте пароль, чтобы зашифровать его данные.",
      "cannotWhileRunning": "Остановите профиль перед сменой пароля."
    },
    "fingerprint": {
      "notSupported": "Редактирование отпечатков доступно только для профилей Wayfern.",
      "lockedTitle": "Просмотр и редактирование отпечатка — функция Pro",
      "lockedDescription": "Информация о вашем устройстве защищена в каждом профиле. Для просмотра и редактирования отпечатка профиля требуется активный платный план."
    },
    "syncStatusValue": {
      "waiting": "Ожидание",
      "syncing": "Синхронизация",
      "synced": "Синхронизировано",
      "error": "Ошибка"
    },
    "ephemeral": {
      "cookiesUnavailable": "Временные профили удаляются при закрытии браузера, поэтому здесь нет cookies для управления.",
      "extensionsUnavailable": "Временные профили удаляются при закрытии браузера, поэтому назначить им группы расширений нельзя.",
      "syncUnavailable": "Временные профили удаляются при закрытии браузера, поэтому синхронизировать с облаком нечего.",
      "hint": "Создайте обычный профиль, если эти данные должны сохраняться."
    }
  },
  "extensions": {
    "title": "Расширения",
    "description": "Управляйте расширениями браузера и группами расширений для ваших профилей.",
    "upload": "Загрузить",
    "delete": "Удалить",
    "extensionsTab": "Расширения",
    "groupsTab": "Группы",
    "managedNotice": "Расширения, управляемые здесь, заменят все вручную установленные расширения в профилях при запуске.",
    "proRequired": "Управление расширениями — функция Pro",
    "empty": "Расширения ещё не загружены.",
    "noGroups": "Группы расширений ещё не созданы.",
    "createGroup": "Создать группу",
    "newGroup": "Новая группа",
    "addToGroup": "Добавить расширение...",
    "removeFromGroup": "Удалить из группы",
    "deleteGroup": "Удалить группу",
    "extensionGroup": "Группа расширений",
    "compatibility": {
      "label": "Совместимость",
      "chromium": "Chromium"
    },
    "selectedFile": "Выбранный файл",
    "namePlaceholder": "Название расширения",
    "groupNamePlaceholder": "Название группы",
    "uploadSuccess": "Расширение успешно загружено",
    "deleteSuccess": "Расширение успешно удалено",
    "groupCreateSuccess": "Группа расширений успешно создана",
    "groupUpdateSuccess": "Группа расширений успешно обновлена",
    "groupDeleteSuccess": "Группа расширений успешно удалена",
    "deleteConfirmTitle": "Удалить расширение",
    "deleteConfirmDescription": "Вы уверены, что хотите удалить «{{name}}»? Это действие нельзя отменить.",
    "deleteGroupConfirmTitle": "Удалить группу расширений",
    "deleteGroupConfirmDescription": "Вы уверены, что хотите удалить группу «{{name}}»? Это действие нельзя отменить.",
    "invalidFileType": "Неподдерживаемый тип файла. Выберите файл .crx или .zip.",
    "readError": "Не удалось прочитать файл расширения.",
    "assignTitle": "Назначить группу расширений",
    "assignDescription": "Назначить {{count}} выбранных профилей в группу расширений.",
    "noGroup": "Нет (Без группы расширений)",
    "assignSuccess": "Группа расширений успешно назначена",
    "editExtension": "Редактировать расширение",
    "updateSuccess": "Расширение успешно обновлено",
    "version": "Версия",
    "author": "Автор",
    "homepage": "Домашняя страница",
    "editGroup": "Редактировать группу",
    "editGroupDescription": "Обновите название группы и управляйте включёнными расширениями.",
    "groupExtensions": "Расширения в этой группе",
    "noExtensionsInGroup": "Расширения ещё не добавлены",
    "editExtensionDescription": "Измените имя расширения, посмотрите его метаданные или замените его другим архивом либо папкой.",
    "metadata": "Метаданные",
    "noMetadata": "Метаданные из манифеста недоступны.",
    "selectFile": "Выбрать файл",
    "loadUnpacked": "Загрузить из папки",
    "loadUnpackedTooltip": "Загрузить расширение из папки с файлом manifest.json",
    "selectFolderTitle": "Выберите папку расширения",
    "selectedFolder": "Выбранная папка",
    "selectFolder": "Выбрать папку",
    "linkFolder": "Загружать прямо из этой папки",
    "linkFolderOff": "Папка копируется в Donut. Расширение можно переносить, и оно синхронизируется с другими устройствами.",
    "linkFolderOn": "Donut загружает расширение прямо из этой папки при каждом запуске. Изменения применяются при следующем старте браузера, но расширение остаётся только на этом компьютере и не синхронизируется.",
    "replaceSource": "Заменить источник",
    "linkedNoSync": "Связанные расширения остаются только на этом компьютере и не синхронизируются.",
    "uploadFailed": "Не удалось добавить расширение",
    "updateFailed": "Не удалось обновить расширение",
    "deleteFailed": "Не удалось удалить расширение",
    "groupCreateFailed": "Не удалось создать группу расширений",
    "groupUpdateFailed": "Не удалось обновить группу расширений",
    "groupDeleteFailed": "Не удалось удалить группу расширений",
    "syncEnabled": "Синхронизация включена",
    "syncDisabled": "Синхронизация отключена",
    "syncEnableTooltip": "Включить синхронизацию",
    "syncDisableTooltip": "Отключить синхронизацию",
    "loadGroupsFailed": "Не удалось загрузить группы расширений",
    "assignGroupFailed": "Не удалось назначить группу расширений",
    "bulkDelete": {
      "extensionsTitle": "Удалить расширения",
      "extensionsDescription": "Удалить {{count}} расширений? {{names}}",
      "groupsTitle": "Удалить группы расширений",
      "groupsDescription": "Удалить {{count}} групп расширений? {{names}}",
      "confirmButton": "Удалить"
    },
    "source": {
      "label": "Источник",
      "archive": "Архив",
      "unpacked": "Распакованная папка",
      "linked": "Связанная папка",
      "folderLabel": "Папка",
      "linkedTooltip": "Загружается прямо из {{path}}"
    }
  },
  "pro": {
    "badge": "PRO",
    "fingerprintLocked": "Редактирование отпечатка — функция Pro",
    "cookieCopyLocked": "Копирование cookies — функция Pro",
    "cookieImportLocked": "Импорт cookies — функция Pro",
    "cookieExportLocked": "Экспорт cookies — функция Pro",
    "cookieManagementLocked": "Управление cookies — функция Pro"
  },
  "dnsBlocklist": {
    "title": "Список блокировки DNS",
    "none": "Нет",
    "light": "Лёгкий",
    "normal": "Обычный",
    "pro": "Pro",
    "proPlus": "Pro++",
    "ultimate": "Максимум",
    "settingsDescription": "Списки блокировки DNS блокируют рекламу, трекеры и вредоносные домены на уровне прокси. Списки автоматически обновляются каждые 12 часов.",
    "manageLists": "Управление списками блокировки DNS",
    "refreshAll": "Обновить все списки",
    "refreshFailed": "Не удалось обновить списки блокировки DNS",
    "domains": "доменов",
    "fresh": "Актуальный",
    "stale": "Устаревший",
    "notCached": "Не кэшировано",
    "tabBlocklists": "Списки блокировки",
    "tabCustom": "Пользовательские списки",
    "custom.description": "Составьте собственный список блокировки из URL-источников и ручных правил. Разрешённые домены всегда имеют приоритет над заблокированными.",
    "custom.sourcesLabel": "URL-источники списков блокировки",
    "custom.sourcesPlaceholder": "Один URL на строку",
    "custom.blockLabel": "Заблокированные домены",
    "custom.blockPlaceholder": "Один домен на строку",
    "custom.allowLabel": "Разрешённые домены",
    "custom.allowPlaceholder": "Один домен на строку",
    "custom.allowHint": "Разрешённые домены исключаются из итогового списка блокировки и имеют приоритет над любым правилом блокировки.",
    "custom.saved": "Пользовательские правила DNS сохранены",
    "custom.imported": "Пользовательские правила DNS импортированы",
    "custom.exported": "Пользовательские правила DNS экспортированы",
    "custom.exportTxt": "Экспорт TXT",
    "custom.exportJson": "Экспорт JSON",
    "customLevel": "Пользовательский",
    "custom.allowlistModeLabel": "Режим разрешённого списка",
    "custom.allowlistModeOn": "Доступны только домены ниже; всё остальное блокируется.",
    "custom.allowlistModeOff": "Блокировать домены из списка; всё остальное разрешено.",
    "custom.allowedOnlyLabel": "Разрешённые домены (только эти)",
    "custom.allowedOnlyHint": "Поддомены указанных доменов также разрешены. Пустой список отключает фильтрацию."
  },
  "vpns": {
    "form": {
      "titleEdit": "Изменить VPN",
      "titleCreate": "Создать VPN WireGuard",
      "descEdit": "Обновите имя конфигурации VPN.",
      "descCreate": "Укажите параметры интерфейса WireGuard и пира.",
      "name": "Имя",
      "namePlaceholder": "напр. Домашний WireGuard",
      "privateKey": "Приватный ключ",
      "privateKeyPlaceholder": "Приватный ключ в Base64",
      "address": "Адрес",
      "addressPlaceholder": "напр. 10.0.0.2/24",
      "dnsOptional": "DNS (необязательно)",
      "dnsPlaceholder": "напр. 1.1.1.1",
      "mtuOptional": "MTU (необязательно)",
      "mtuPlaceholder": "напр. 1420",
      "peerPublicKey": "Публичный ключ пира",
      "peerPublicKeyPlaceholder": "Публичный ключ пира в Base64",
      "peerEndpoint": "Endpoint пира",
      "peerEndpointPlaceholder": "напр. vpn.example.com:51820",
      "allowedIps": "Разрешённые IP",
      "allowedIpsPlaceholder": "напр. 0.0.0.0/0, ::/0",
      "keepaliveOptional": "Persistent Keepalive (необязательно)",
      "keepalivePlaceholder": "напр. 25",
      "presharedKeyOptional": "Preshared Key (необязательно)",
      "presharedKeyPlaceholder": "Preshared Key в Base64",
      "updateButton": "Обновить VPN",
      "createButton": "Создать VPN",
      "nameRequired": "Имя VPN обязательно",
      "privateKeyRequired": "Приватный ключ обязателен",
      "addressRequired": "Адрес обязателен",
      "peerPublicKeyRequired": "Публичный ключ пира обязателен",
      "peerEndpointRequired": "Endpoint пира обязателен",
      "updated": "VPN успешно обновлена",
      "created": "VPN WireGuard успешно создана",
      "updateFailed": "Не удалось обновить VPN: {{error}}",
      "createFailed": "Не удалось создать VPN: {{error}}"
    },
    "import": {
      "title": "Импорт конфигурации VPN",
      "descDropzone": "Импортируйте файл конфигурации WireGuard (.conf)",
      "descPreview": "Проверьте конфигурацию VPN перед импортом",
      "descResult": "Импорт VPN завершён",
      "dropzonePrompt": "Перетащите файл .conf WireGuard сюда или нажмите для выбора",
      "pasteHint": "Вставить из буфера обмена через {{modKey}}+V",
      "invalidContent": "Содержимое не похоже на валидную конфигурацию VPN",
      "fileReadError": "Не удалось прочитать файл",
      "wrongFileType": "Перетащите файл .conf WireGuard",
      "configurationLabel": "Конфигурация {{type}}",
      "endpointLabel": "Endpoint: {{endpoint}}",
      "vpnNameLabel": "Имя VPN",
      "vpnNamePlaceholder": "Моя VPN",
      "configPreview": "Предпросмотр конфигурации",
      "importedSuccess": "VPN успешно импортирована",
      "importFailed": "Ошибка импорта",
      "importButton": "Импортировать VPN",
      "doneButton": "Готово",
      "failedGeneric": "Не удалось импортировать конфигурацию VPN",
      "defaultName": "{{type}} VPN"
    },
    "management": {
      "loading": "Загрузка VPN...",
      "noneCreated": "Конфигураций VPN еще нет. Импортируйте или создайте одну с помощью кнопок выше.",
      "editVpn": "Редактировать VPN",
      "deleteVpn": "Удалить VPN",
      "cannotDelete_one": "Невозможно удалить: используется {{count}} профилем",
      "cannotDelete_few": "Невозможно удалить: используется {{count}} профилями",
      "cannotDelete_other": "Невозможно удалить: используется {{count}} профилями",
      "cannotDelete_many": "Невозможно удалить: используется {{count}} профилями",
      "syncCannotDisable": "Нельзя отключить синхронизацию, пока этот VPN используется синхронизированными профилями",
      "deleteSuccess": "VPN успешно удален",
      "deleteFailed": "Не удалось удалить VPN",
      "deleteTitle": "Удалить VPN",
      "deleteDescription": "Это действие нельзя отменить. VPN «{{name}}» будет удален навсегда."
    }
  },
  "importProfile": {
    "title": "Импорт профиля браузера",
    "autoDetect": "Автоопределение",
    "manualImport": "Ручной импорт",
    "detectedProfilesTitle": "Обнаруженные профили браузера",
    "scanning": "Поиск профилей браузера...",
    "noneFound": "На вашей системе профили браузера не найдены.",
    "noneFoundHint": "Попробуйте ручной импорт, если профили находятся в нестандартных местах.",
    "newProfileName": "Имя нового профиля:",
    "newProfileNamePlaceholder": "Введите имя для импортированного профиля",
    "manualTitle": "Ручной импорт профиля",
    "profileFolderPath": "Путь к папке профиля:",
    "profileFolderPlaceholder": "Введите полный путь к папке профиля",
    "browseFolderTitle": "Выбрать папку",
    "examplePaths": "Примеры путей:",
    "selectFolderTitle": "Выберите папку профиля браузера",
    "folderDialogFailed": "Не удалось открыть диалог выбора папки",
    "detectFailed": "Не удалось обнаружить существующие профили браузера",
    "proxyOptional": "Прокси (необязательно)",
    "noProxy": "Без прокси",
    "nextButton": "Далее",
    "importedAs": "Этот профиль будет импортирован как профиль {{browser}}.",
    "selectAll": "Выбрать все",
    "selectedCount": "Выбрано: {{count}}",
    "scanButton": "Сканировать",
    "manualHint": "Выберите папку профиля, папку данных браузера, папку с экспортированными профилями или ZIP-архив.",
    "selectArchiveTitle": "Выбрать ZIP-архив",
    "noProfilesInLocation": "В этом расположении профили не найдены.",
    "selectAtLeastOne": "Выберите хотя бы один профиль для импорта",
    "emptyNames": "Каждому выбранному профилю нужно имя",
    "profilesToImport": "Профили для импорта",
    "groupOptional": "Группа (необязательно)",
    "noGroup": "Без группы",
    "createNewGroup": "Создать новую группу…",
    "newGroupNamePlaceholder": "Название новой группы",
    "duplicateStrategyLabel": "Если имя профиля уже существует",
    "duplicateRename": "Переименовать автоматически",
    "duplicateSkip": "Пропустить",
    "proxyRoundRobin": "Распределить сохранённые прокси (по кругу)",
    "importingTitle": "Импорт профилей…",
    "importProgress": "Обработано {{completed}} из {{total}}",
    "resultsSummary": "Импортировано: {{imported}}, пропущено: {{skipped}}, с ошибкой: {{failed}}",
    "statusImported": "Импортирован",
    "statusSkipped": "Пропущен",
    "statusFailed": "Ошибка",
    "importButtonCount": "Импортировать ({{count}})",
    "vpnOptional": "VPN (необязательно)",
    "noVpn": "Без VPN",
    "advancedOptions": "Дополнительные параметры",
    "configureFingerprint": "Настроить отпечаток (необязательно)",
    "reportCookies": "Файлы cookie",
    "reportPasswords": "Пароли",
    "reportAutofill": "Способы оплаты",
    "reportExtensions": "Расширения",
    "reportHistory": "История",
    "reportBookmarks": "Закладки",
    "reportLocalStorage": "Данные сайтов",
    "reportNothingCarried": "Читаемые данные не перенесены",
    "reportUnrecoverable": "Не удалось расшифровать: {{count}}",
    "closeSourceBrowserHint": "Закройте исходный браузер и повторите попытку, чтобы получить полную копию, либо импортируйте сейчас, приняв, что данные сайтов могут оказаться неполными.",
    "importAnyway": "Всё равно импортировать",
    "warnings": {
      "secretsNotMigrated": "Не удалось разблокировать файлы cookie и пароли, поэтому потребуется войти заново.",
      "appBoundEncrypted": "Chrome 127+ в Windows привязывает файлы cookie к самому браузеру, и другое приложение не может их перенести.",
      "storeTooOld": "База данных оказалась слишком старой для этого браузера и была пропущена.",
      "storeTooNew": "База данных создана более новым браузером и была пропущена.",
      "sourceBrowserRunning": "Исходный браузер был запущен, поэтому данные сайтов могут быть неполными.",
      "securePreferencesReset": "Защищённые настройки, например домашняя страница и поисковая система, сброшены до значений по умолчанию.",
      "extensionsPartial": "Некоторые расширения принадлежали исходному браузеру и не были перенесены.",
      "storeUnreadable": "База данных не читалась и была пропущена, а не скопирована повреждённой."
    }
  },
  "syncTooltips": {
    "syncing": "Синхронизация...",
    "syncedAt": "Синхронизировано {{time}}",
    "synced": "Синхронизировано",
    "waiting": "Ожидание синхронизации",
    "errorWith": "Ошибка синхронизации: {{error}}",
    "error": "Ошибка синхронизации",
    "notSynced": "Не синхронизировано",
    "enable": "Включить синхронизацию",
    "disable": "Отключить синхронизацию",
    "lockedInUse": "Синхронизация заблокирована, пока используется синхронизируемым профилем",
    "bulkToggle": "Переключить синхронизацию"
  },
  "groupManagement": {
    "description": "Управляйте группами профилей",
    "createGroup": "Создать группу",
    "noGroups": "Групп еще нет. Создайте первую группу, используя кнопку выше.",
    "loading": "Загрузка групп...",
    "profileCount_one": "{{count}} профиль",
    "profileCount_few": "{{count}} профиля",
    "profileCount_other": "{{count}} профилей",
    "profileCount_many": "{{count}} профилей",
    "groupsLabel": "Группы",
    "profilesCol": "Профили",
    "syncCannotDisable": "Нельзя отключить синхронизацию, пока эта группа используется синхронизированными профилями",
    "editGroupTooltip": "Редактировать группу",
    "deleteGroupTooltip": "Удалить группу",
    "loadFailed": "Не удалось загрузить группы",
    "bulkDelete": {
      "title": "Удалить группы",
      "description": "Вы уверены, что хотите удалить {{count}} групп? {{names}}. Профили будут перемещены в группу по умолчанию.",
      "description_one": "Вы уверены, что хотите удалить {{count}} группу? {{names}}. Профили будут перемещены в группу по умолчанию.",
      "confirmButton": "Удалить группы"
    }
  },
  "proxyAssignment": {
    "title": "Назначить прокси / VPN",
    "description_one": "Назначить прокси или VPN для {{count}} выбранного профиля.",
    "description_few": "Назначить прокси или VPN для {{count}} выбранных профилей.",
    "description_other": "Назначить прокси или VPN для {{count}} выбранных профилей.",
    "description_many": "Назначить прокси или VPN для {{count}} выбранных профилей.",
    "selectLabel": "Прокси / VPN",
    "placeholder": "Выберите прокси или VPN",
    "noProxy": "Без прокси / VPN",
    "searchPlaceholder": "Поиск прокси или VPN...",
    "notFound": "Прокси или VPN не найдены.",
    "assignButton": "Назначить",
    "success": "Прокси/VPN назначен {{count}} профилю(ям)",
    "failed": "Не удалось назначить прокси/VPN",
    "selectedProfilesLabel": "Выбранные профили:",
    "assignProxyVpnLabel": "Назначить прокси / VPN:",
    "noneOption": "Нет",
    "noValidProfiles": "Нет выбранных допустимых профилей.",
    "vpnGroupHeading": "VPN",
    "failedFallback": "Не удалось назначить прокси/VPN профилям"
  },
  "groupAssignment": {
    "title": "Назначить группу",
    "description_one": "Назначить группу для {{count}} выбранного профиля.",
    "description_few": "Назначить группу для {{count}} выбранных профилей.",
    "description_other": "Назначить группу для {{count}} выбранных профилей.",
    "description_many": "Назначить группу для {{count}} выбранных профилей.",
    "selectLabel": "Группа",
    "placeholder": "Выберите группу",
    "noGroup": "Без группы (по умолчанию)",
    "assignButton": "Назначить",
    "success": "Группа назначена {{count}} профилю(ям)",
    "failed": "Не удалось назначить группу",
    "selectedProfilesLabel": "Выбранные профили:",
    "assignGroupLabel": "Назначить группу:",
    "noValidProfiles": "Нет выбранных допустимых профилей.",
    "failedFallback": "Не удалось назначить группу профилям"
  },
  "profileSelector": {
    "title": "Выбрать профиль",
    "description": "Выберите профиль для запуска с этим URL",
    "searchPlaceholder": "Поиск профилей...",
    "noProfiles": "Нет доступных профилей",
    "noResults": "Профили не найдены",
    "selectButton": "Выбрать",
    "launching": "Запуск...",
    "chooseProfileTitle": "Выбрать профиль",
    "openingUrl": "Открытие URL:",
    "urlCopied": "URL скопирован в буфер обмена!",
    "selectProfileLabel": "Выберите профиль:",
    "noneAvailableShort": "Профили недоступны. Сначала создайте профиль.",
    "noneAvailableLong": "Закройте этот диалог и создайте профиль из главного окна, чтобы начать.",
    "chooseAProfile": "Выберите профиль",
    "badgeProxy": "Прокси",
    "badgeRunning": "Запущен",
    "badgeUnavailable": "Недоступен",
    "openButton": "Открыть"
  },
  "wayfernTerms": {
    "title": "Условия использования Wayfern",
    "description": "Прежде чем использовать Donut Browser, необходимо прочитать и согласиться с Условиями использования Wayfern.",
    "reviewLabel": "Пожалуйста, ознакомьтесь с Условиями использования по адресу:",
    "agreeNotice": "Нажимая «Я принимаю», вы соглашаетесь с этими условиями.",
    "acceptButton": "Я принимаю",
    "acceptSuccess": "Условия успешно приняты",
    "acceptFailed": "Не удалось принять условия",
    "tryAgain": "Пожалуйста, попробуйте снова"
  },
  "commercialTrial": {
    "title": "Срок коммерческой пробной версии истёк",
    "description": "Ваш 2-недельный коммерческий пробный период закончился.",
    "body": "Если вы используете Donut Browser в коммерческих целях, для продолжения вам нужно приобрести коммерческую лицензию. Вы можете продолжать использовать его бесплатно для личных целей.",
    "understandButton": "Понятно",
    "failed": "Не удалось сохранить подтверждение",
    "tryAgain": "Пожалуйста, попробуйте снова"
  },
  "permissionDialog": {
    "titleMicrophone": "Требуется доступ к микрофону",
    "titleCamera": "Требуется доступ к камере",
    "descMicrophone": "Donut Browser нужен доступ к вашему микрофону, чтобы включить функциональность микрофона в браузерах. Каждый сайт, который захочет использовать ваш микрофон, всё равно запросит разрешение отдельно.",
    "descCamera": "Donut Browser нужен доступ к вашей камере, чтобы включить функциональность камеры в браузерах. Каждый сайт, который захочет использовать вашу камеру, всё равно запросит разрешение отдельно.",
    "grantedMicrophone": "Разрешение предоставлено! Браузеры, запущенные через Donut Browser, теперь могут получить доступ к вашему микрофону.",
    "grantedCamera": "Разрешение предоставлено! Браузеры, запущенные через Donut Browser, теперь могут получить доступ к вашей камере.",
    "notGrantedMicrophone": "Разрешение не предоставлено. Нажмите кнопку ниже, чтобы запросить доступ к микрофону.",
    "notGrantedCamera": "Разрешение не предоставлено. Нажмите кнопку ниже, чтобы запросить доступ к камере.",
    "doneButton": "Готово",
    "cancelButton": "Отмена",
    "grantAccessButton": "Предоставить доступ",
    "requestSuccessMicrophone": "Запрошен доступ к микрофону",
    "requestSuccessCamera": "Запрошен доступ к камере",
    "requestFailed": "Не удалось запросить разрешение",
    "stillNotGrantedMicrophone": "Доступ к микрофону всё ещё не предоставлен. Возможно, потребуется включить его вручную в Системных настройках → Конфиденциальность и безопасность → Микрофон.",
    "stillNotGrantedCamera": "Доступ к камере всё ещё не предоставлен. Возможно, потребуется включить его вручную в Системных настройках → Конфиденциальность и безопасность → Камера.",
    "grantedToastMicrophone": "Доступ к микрофону предоставлен",
    "grantedToastCamera": "Доступ к камере предоставлен"
  },
  "traffic": {
    "title": "Подробности трафика",
    "bandwidthOverTime": "Пропускная способность во времени",
    "timePeriodPlaceholder": "Период",
    "last1m": "Последняя 1 мин",
    "last5m": "Последние 5 мин",
    "last30m": "Последние 30 мин",
    "last1h": "Последний час",
    "last2h": "Последние 2 часа",
    "last4h": "Последние 4 часа",
    "last1d": "Последний день",
    "last7d": "Последние 7 дней",
    "last30d": "Последние 30 дней",
    "allTime": "Всё время",
    "allTimeShort": "всё время",
    "totalSuffix": "всего",
    "sentLabel": "Отправлено ({{period}})",
    "receivedLabel": "Получено ({{period}})",
    "requestsLabel": "Запросы ({{period}})",
    "allTimeTraffic": "Трафик за всё время:",
    "allTimeRequests": "Запросов за всё время:",
    "proxyDisclaimer": "Примечание: если вы используете прокси, VPN или подобный сервис, ваш провайдер может рассчитывать трафик иначе из-за накладных расходов на шифрование и протокольных различий.",
    "topByTraffic": "Главные домены по трафику ({{period}})",
    "topByRequests": "Главные домены по запросам ({{period}})",
    "columnDomain": "Домен",
    "columnRequests": "Запросы",
    "columnSent": "Отправлено",
    "columnReceived": "Получено",
    "columnTotal": "Всего трафика",
    "uniqueIps": "Уникальные IP ({{count}})",
    "noData": "Нет данных о трафике для этого профиля.",
    "noDataHint": "Данные о трафике появятся после запуска профиля.",
    "sentLegend": "Отправлено",
    "receivedLegend": "Получено",
    "tooltipSent": "↑ Отправлено: ",
    "tooltipReceived": "↓ Получено: ",
    "clearHistory": "Очистить историю",
    "clearHistoryTitle": "Очистить историю трафика",
    "clearHistoryDescription": "Навсегда и безопасно удаляет всю записанную историю трафика для «{{name}}». Это действие нельзя отменить.",
    "tabOverview": "Обзор",
    "tabTopDomains": "Топ доменов",
    "searchDomains": "Поиск доменов…",
    "noDomainMatch": "Нет доменов, соответствующих запросу."
  },
  "proxyCheck": {
    "unknownLocation": "Неизвестно",
    "locationToast": "Местоположение вашего прокси:",
    "failed": "Не удалось проверить прокси: {{error}}",
    "tooltipChecking": "Проверка прокси...",
    "tooltipIp": "IP: {{ip}}",
    "tooltipChecked": "Проверено {{time}}",
    "tooltipFailed": "Ошибка {{time}}",
    "tooltipFailedTitle": "Не удалось проверить прокси",
    "tooltipDefault": "Проверить прокси"
  },
  "vpnCheck": {
    "valid": "Конфигурация VPN «{{name}}» действительна",
    "invalid": "Конфигурация VPN «{{name}}» недействительна",
    "failed": "Не удалось проверить VPN: {{error}}",
    "tooltipChecking": "Проверка конфигурации VPN...",
    "tooltipValid": "Конфигурация валидна",
    "tooltipInvalid": "Конфигурация невалидна",
    "tooltipChecked": "Проверено {{time}}",
    "tooltipDefault": "Проверить конфигурацию VPN"
  },
  "profileTable": {
    "syncTooltipDisabled": "Синхронизация отключена",
    "syncTooltipSyncing": "Синхронизация...",
    "syncTooltipSyncedAt": "Синхронизировано {{time}}",
    "syncTooltipSynced": "Синхронизировано",
    "syncTooltipWaiting": "Ожидание синхронизации",
    "syncTooltipErrorWith": "Ошибка синхронизации: {{error}}",
    "syncTooltipError": "Ошибка синхронизации",
    "syncTooltipNotSynced": "Не синхронизировано",
    "noTags": "Нет тегов",
    "syncTooltipCloseToSync": "Закройте профиль для синхронизации",
    "syncTooltipDisabledWithLast": "Синхронизация отключена, последняя синхронизация {{time}}",
    "addTagsPlaceholder": "Добавить теги",
    "tagsHeader": "Теги",
    "noteHeader": "Заметка",
    "vpnsHeading": "VPN",
    "createByCountryHeading": "Создать по стране"
  },
  "dataTableActionBar": {
    "selected": "Выбрано: {{count}}",
    "clearSelection": "Очистить выбор"
  },
  "appUpdate": {
    "toast": {
      "updateFailed": "Не удалось обновить Donut Browser",
      "restartFailed": "Не удалось перезапустить",
      "updateReady": "Обновление готово, перезапустите для применения",
      "manualDownloadRequired": "Требуется ручная загрузка",
      "restartNow": "Перезапустить сейчас",
      "viewRelease": "Посмотреть релиз",
      "later": "Позже",
      "uploading": "Загрузка",
      "downloading": "Скачивание",
      "startingUpdate": "Запуск обновления..."
    }
  },
  "browserDownload": {
    "toast": {
      "fetchVersionsFailed": "Не удалось получить версии {{browser}}",
      "foundNewVersions": "Найдено {{count}} новых версий {{browser}}!",
      "totalAvailableVersions": "Всего доступно: {{count}} версий",
      "downloadFailed": "Не удалось загрузить {{browser}} {{version}}",
      "calculating": "вычисление...",
      "extractionFailed": "{{browser}} {{version}}: ошибка распаковки",
      "extractionFailedDescription": "Повреждённый файл удалён. Он будет повторно загружен при следующей попытке.",
      "extracting": "Распаковка файлов браузера... Не закрывайте приложение.",
      "verifying": "Проверка файлов браузера...",
      "downloadingRolling": "Загрузка rolling release сборки...",
      "geoipDownloading": "Загрузка базы данных GeoIP",
      "geoipDownloaded": "База данных GeoIP успешно загружена!"
    }
  },
  "versionUpdater": {
    "toast": {
      "alreadyAvailable": "{{browser}} {{version}} уже доступна",
      "updatingProfiles": "Обновление настроек профилей...",
      "updateCompleted": "Обновление {{browser}} завершено",
      "singleProfileUpdated": "Профиль «{{name}}» обновлён до версии {{version}}. Теперь можно запускать браузеры с последней версией.",
      "multipleProfilesUpdated": "{{count}} профилей обновлены до версии {{version}}. Теперь можно запускать браузеры с последней версией.",
      "versionAvailable": "Версия {{version}} теперь доступна. Запущенные профили начнут использовать новую версию после перезапуска.",
      "autoUpdateFailed": "Не удалось автоматически обновить {{browser}}",
      "updateWithErrors": "Обновление завершено с ошибками",
      "updateWithErrorsDescription": "Найдено {{newVersions}} новых версий, {{failedUpdates}} браузеров не удалось обновить",
      "updateSuccess": "Версии браузеров успешно обновлены",
      "updateSuccessDescription": "Найдено {{newVersions}} новых версий для {{successfulUpdates}} браузеров. Автоматическая загрузка начнётся в ближайшее время.",
      "upToDate": "Новых версий браузеров не найдено",
      "upToDateDescription": "Все версии браузеров актуальны",
      "updateAllFailed": "Не удалось обновить версии браузеров",
      "updateStarted": "Обновление {{browser}} началось",
      "updateStartedDescription": "Загрузка версии {{version}} скоро начнётся. Запуск браузера отключён до завершения обновления.",
      "downloadStarting": "Запуск загрузки {{browser}} {{version}}",
      "downloadProgressBelow": "Прогресс загрузки будет показан ниже...",
      "autoDownloadStarted": "Автоматическая загрузка {{browser}} {{version}}. Прогресс будет показан ниже.",
      "lookingForUpdates": "Поиск обновлений для {{browser}}"
    }
  },
  "profilePassword": {
    "set": {
      "title": "Установить пароль профиля",
      "description": "Шифрует данные {{name}} на диске. Этот пароль потребуется при каждом запуске профиля.",
      "button": "Зашифровать профиль"
    },
    "unlock": {
      "title": "Разблокировать профиль",
      "description": "Введите пароль, чтобы разблокировать {{name}}.",
      "button": "Разблокировать"
    },
    "change": {
      "title": "Изменить пароль профиля",
      "description": "Перезашифровать {{name}} с новым паролем.",
      "button": "Изменить пароль"
    },
    "remove": {
      "title": "Удалить пароль профиля",
      "description": "Расшифровывает данные {{name}} на диске. Профиль больше не будет защищён паролем.",
      "button": "Удалить пароль"
    },
    "fields": {
      "password": "Пароль",
      "currentPassword": "Текущий пароль",
      "newPassword": "Новый пароль",
      "confirm": "Подтвердите пароль",
      "confirmPassword": "Подтвердите новый пароль"
    },
    "errors": {
      "oldPasswordRequired": "Требуется текущий пароль",
      "passwordRequired": "Требуется пароль",
      "tooShort": "Пароль должен содержать не менее 8 символов",
      "mismatch": "Пароли не совпадают"
    },
    "toasts": {
      "set": "Профиль защищён паролем",
      "changed": "Пароль профиля изменён",
      "removed": "Пароль профиля удалён"
    },
    "warnings": {
      "forgetWarningTitle": "Важно: пароль восстановить нельзя",
      "forgetWarningBody": "Donut Browser не может сбросить, восстановить или обойти этот пароль. Если вы его забудете, доступ к данным этого профиля будет утрачен навсегда."
    },
    "modes": {
      "set": "Задать",
      "change": "Изменить",
      "remove": "Удалить",
      "validate": "Проверить"
    },
    "verifyDialog": {
      "title": "Проверка пароля профиля",
      "description": "Введите пароль профиля, чтобы убедиться, что он совпадает с сохранённым на диске.",
      "submit": "Проверить",
      "matchToast": "Пароль верен"
    }
  },
  "backendErrors": {
    "incorrectPassword": "Неверный пароль",
    "lockedOut": "Слишком много неудачных попыток. Повторите через {{duration}}.",
    "lockedOutDuration": {
      "seconds": "{{seconds}}с",
      "minutes": "{{minutes}} мин",
      "hours": "{{hours}} ч"
    },
    "profileNotFound": "Профиль не найден",
    "profileNotProtected": "Профиль не защищён паролем",
    "profileAlreadyProtected": "Профиль уже защищён паролем",
    "profileRunning": "Невозможно выполнить это действие, пока профиль запущен",
    "profileEphemeral": "Эфемерные профили не могут быть защищены паролем — их данные удаляются при выходе.",
    "profileMissingSalt": "У профиля отсутствует соль шифрования",
    "profileLocked": "Профиль заблокирован. Сначала введите пароль.",
    "invalidProfileId": "Недействительный идентификатор профиля",
    "passwordTooShort": "Пароль должен быть не короче {{min}} символов",
    "proxyNotFound": "Прокси не найден",
    "groupNotFound": "Группа не найдена",
    "groupAlreadyExists": "Группа с таким именем уже существует",
    "vpnNotFound": "VPN не найден",
    "extensionNotFound": "Расширение не найдено",
    "extensionGroupNotFound": "Группа расширений не найдена",
    "extensionUnsupportedFileType": "Этот тип файла не поддерживается. Расширение должно быть архивом .crx или .zip либо папкой.",
    "extensionDirNotFound": "Эта папка больше не существует.",
    "extensionNotADirectory": "Указанный путь не является папкой.",
    "extensionManifestMissing": "В этой папке нет файла manifest.json. Выберите папку, в которой лежит manifest.json расширения.",
    "extensionManifestInvalid": "Не удалось прочитать manifest.json в этой папке.",
    "extensionDirTooLarge": "Папка слишком большая, чтобы скопировать её в Donut (не более 256 МБ и 20 000 файлов). Вместо этого свяжите её.",
    "extensionPathHasComma": "В пути к папке есть запятая, которую Chromium не может обработать. Переименуйте или переместите папку.",
    "extensionLinkRequiresDirectory": "Загружать на месте можно только папку. Отключите связывание, чтобы добавить архив.",
    "extensionLinkedCannotSync": "Это расширение загружается из папки на этом компьютере, поэтому синхронизировать нечего.",
    "cannotModifyCloudManagedProxy": "Невозможно изменить синхронизацию для облачного прокси",
    "syncLockedByProfile": "Невозможно отключить синхронизацию, пока используется синхронизированными профилями",
    "syncNotConfigured": "Синхронизация не настроена. Войдите или настройте собственный сервер.",
    "internal": "Что-то пошло не так: {{detail}}",
    "invalidLaunchHookUrl": "Неверный URL хука запуска. Используйте полный URL http:// или https://.",
    "cookieDbLocked": "Не удалось прочитать куки — база данных заблокирована. Закройте браузер и попробуйте снова.",
    "cookieDbUnavailable": "Не удалось прочитать куки — хранилище куки недоступно.",
    "cookieImportBrowserRunning": "Нельзя импортировать куки, пока браузер запущен. Закройте его и попробуйте снова.",
    "cookieImportProfileProtected": "Нельзя импортировать куки в профиль, защищённый паролем. Сначала снимите пароль.",
    "cookieImportRemoteSession": "Нельзя импортировать куки, пока профиль занят удалённой сессией. Дождитесь окончания синхронизации.",
    "cookieImportNoCookies": "В том, что вы вставили, куки не найдены.",
    "selfHostedRequiresLogout": "Выйдите из аккаунта Donut, прежде чем настраивать собственный сервер.",
    "fingerprintRequiresPro": "Для просмотра или редактирования отпечатка требуется активный платный план. Защита включена во все планы.",
    "proxyNotWorking": "Выбранный прокси не работает, поэтому профиль не создан.",
    "proxyPaymentRequired": "Выбранный прокси требует оплаты (402) — возможно, его подписка истекла — поэтому профиль не создан.",
    "vpnNotWorking": "Выбранный VPN не работает, поэтому профиль не создан.",
    "camoufoxImportDeprecated": "Импорт профилей этого типа больше не поддерживается. Используйте Wayfern.",
    "updateChecksumsUnavailable": "Не удалось проверить обновление {{version}}: файл контрольных сумм не удалось получить. Обновление не было установлено; попытка будет повторена позже.",
    "updateChecksumMismatch": "Загруженный файл обновления {{file}} не прошёл проверку контрольной суммы и был удалён. Попробуйте ещё раз.",
    "browserChecksumUnavailable": "Не удалось проверить {{browser}} {{version}}: файл контрольных сумм не удалось получить. Загрузка остановлена; попытка будет повторена позже.",
    "browserChecksumMismatch": "Загруженный архив {{browser}} {{version}} не прошёл проверку контрольной суммы и был удалён. Попробуйте ещё раз.",
    "nameCannotBeEmpty": "Имя не может быть пустым",
    "wayfernVersionNotAvailable": "Версия Wayfern {{requested}} недоступна для загрузки. Текущая версия — {{current}}.",
    "profileNameExists": "Профиль с именем «{{name}}» уже существует",
    "importSourceNotFound": "Исходный путь не существует",
    "importNoItems": "Ничего не выбрано для импорта",
    "browserNotDownloaded": "Нет загруженной версии {{browser}}. Сначала загрузите её, затем повторите импорт.",
    "archiveExtractionFailed": "Не удалось распаковать архив: {{detail}}",
    "unsupportedArchiveFormat": "Неподдерживаемый формат архива. Поддерживаются только ZIP-архивы.",
    "clearOnCloseUnavailable": "Очистка при закрытии недоступна для эфемерных и защищённых паролем профилей.",
    "proxyAndVpnMutuallyExclusive": "Профиль может использовать либо прокси, либо VPN, но не оба сразу.",
    "invalidDnsRulesJson": "Выбранный файл не является корректным JSON с правилами DNS.",
    "unsupportedDnsRulesFormat": "Неподдерживаемый формат правил: {{format}}",
    "dnsRulesSaveFailed": "Не удалось сохранить правила DNS.",
    "dnsRulesExportFailed": "Не удалось экспортировать правила DNS.",
    "fingerprintMatchFailed": "Не удалось подогнать отпечаток под прокси.",
    "proxySidecarVersionMismatch": "Некоторые файлы Donut Browser относятся к разным версиям. Переустановите последнее обновление — ваши профили останутся в безопасности.",
    "updateProfilesRunning": "Остановите все запущенные профили перед установкой обновления.",
    "updatePreparationFailed": "Donut Browser не удалось безопасно остановить фоновый сетевой процесс. Перезагрузите компьютер и повторите обновление.",
    "wayfernTermsRequired": "Примите Условия использования Wayfern перед запуском сервера MCP.",
    "apiPortUnavailable": "Серверу API не удалось найти свободный порт.",
    "mcpServerAlreadyRunning": "Сервер MCP уже запущен.",
    "mcpServerNotRunning": "Сервер MCP не запущен.",
    "mcpPortUnavailable": "Серверу MCP не удалось найти свободный порт.",
    "mcpConfigurationUnavailable": "Конфигурация сервера MCP недоступна. Перезапустите сервер и повторите попытку.",
    "mcpAgentUnknown": "Этот клиент MCP не поддерживается.",
    "mcpAgentInstallFailed": "Не удалось добавить Donut Browser в клиент MCP: {{detail}}",
    "mcpAgentRemoveFailed": "Не удалось удалить Donut Browser из клиента MCP: {{detail}}",
    "vlessConfigInvalid": "URI VLESS недействителен.",
    "xrayUnavailable": "Xray-core недоступен в этой системе.",
    "xrayUnsupportedOs": "Для VLESS требуется macOS 12 или новее.",
    "xrayStartFailed": "Не удалось запустить Xray-core.",
    "cloudNotSignedIn": "Войдите в аккаунт Donut Browser, чтобы использовать эту функцию.",
    "cloudUnreachable": "Не удалось связаться с серверами Donut Browser. Проверьте подключение и попробуйте снова.",
    "cloudRequestFailed": "Запрос не удался. Попробуйте ещё раз через минуту.",
    "remoteRateLimited": "Слишком много запросов. Подождите немного и попробуйте снова.",
    "remoteNoCapacity": "Сейчас нет свободных удалённых машин. Попробуйте через несколько минут.",
    "remoteNotEntitled": "Ваш тариф не включает удалённый запуск.",
    "remoteInteractiveNotEntitled": "В вашем тарифе удалённые часы доступны только для Cookie Bot, но не для интерактивных удалённых сессий.",
    "remoteRequiresRemoteExitNode": "Прокси этого профиля работает только на этом компьютере (например, 127.0.0.1 или адрес локальной сети). Удалённые сессии выполняются на наших хостах, поэтому нужен прокси с публичным адресом.",
    "remoteSessionRefused": "Удалённая машина отклонила эту сессию.",
    "remoteSessionNotFound": "Этой удалённой сессии больше не существует.",
    "remoteSessionConflict": "Этот профиль уже открыт в другом месте.",
    "remoteSyncInProgress": "Профиль ещё загружается в облачную синхронизацию. Дождитесь окончания и попробуйте снова.",
    "remoteHoursExhausted": "Вы израсходовали все {{used}} из {{granted}} удалённых часов в этом месяце.",
    "notTeamMember": "Вы не состоите в команде.",
    "cookieBotNotEntitled": "Ваш тариф не включает Cookie Bot.",
    "cookieBotNotEnrolled": "Этот профиль ещё не настроен для Cookie Bot.",
    "cookieBotScheduleConflict": "{{email}} уже прогревает этот профиль в {{time}}.",
    "cookieBotRunInProgress": "Для этого профиля уже выполняется запуск.",
    "cookieBotRunNotFound": "Этого запуска больше не существует.",
    "cookieBotInvalidSchedule": "Это расписание некорректно. Проверьте время, дни и длительность.",
    "cookieBotInvalidTimezone": "{{timezone}} — часовой пояс, который сервер не распознаёт.",
    "cookieBotInvalidPeriod": "Некорректный период. Укажите месяц, например 2026-08.",
    "cookieBotSiteLimit": "Укажите от {{min}} до {{max}} сайтов, каждый — полным адресом http или https.",
    "cookieBotRequiresCloudSync": "Сначала включите облачную синхронизацию для этого профиля: иначе удалённая машина не сможет его получить.",
    "cookieBotEncryptedSyncUnsupported": "Этот профиль использует сквозное шифрование синхронизации, которое удалённая машина не может расшифровать. Переключите его на обычную синхронизацию.",
    "cookieBotUnknownPlatform": "Для этого профиля не записана операционная система, поэтому подобрать машину невозможно.",
    "cookieBotUnsupportedPlatform": "Cookie Bot не может запускать профили {{platform}}. Поддерживаются только профили Windows и macOS.",
    "cookieBotRequiresExitNode": "Сначала назначьте прокси или VPN. Без них трафик пойдёт с адреса дата-центра, а это вредит репутации профиля.",
    "cookieBotRequiresRemoteExitNode": "Прокси этого профиля работает только на этом компьютере (например, 127.0.0.1 или адрес локальной сети). Cookie Bot выполняется на наших хостах, поэтому нужен прокси с публичным адресом.",
    "unknownCode": "Что-то пошло не так: {{code}}",
    "cookieBotTouchFingerprintUnsupported": "Этот профиль выдаёт себя за сенсорное устройство, которым бот управлять не может. Используйте настольный отпечаток.",
    "profileRunningRemotely": "Этот профиль запущен на удалённой машине. Сначала остановите удалённый сеанс.",
    "profileRemoteSyncPending": "Удалённый сеанс только что завершился. Дождитесь загрузки его изменений, прежде чем открывать профиль здесь.",
    "profileLockedByMember": "Этот профиль используется пользователем {{email}}.",
    "profileLockedElsewhere": "Этот профиль используется на другом устройстве.",
    "profileLockUnavailable": "Не удалось проверить, используется ли профиль где-то ещё. Проверьте подключение и попробуйте снова.",
    "fingerprintExitMismatch": "Выходной узел прокси не совпадает с отпечатком этого профиля.",
    "launchConsentExpired": "Это подтверждение больше не действует. Запустите профиль ещё раз.",
    "vpnWorkerStartFailed": "Не удалось запустить VPN-подключение: {{detail}}",
    "exitProbeFailed": "Не удалось связаться с выходным узлом прокси, чтобы определить его местоположение.",
    "vlessUnsupported": {
      "security": "Этот сервер VLESS не использует REALITY. Donut поддерживает только VLESS с REALITY.",
      "flow": "Этот сервер VLESS не использует поток XTLS Vision, который требуется Donut.",
      "transport": "Donut поддерживает VLESS только поверх обычного TCP — этот сервер использует другой транспорт (например, WebSocket или gRPC).",
      "encryption": "Этот сервер VLESS использует шифрование, которое Donut не поддерживает.",
      "headerType": "Этот сервер VLESS использует обфускацию заголовков, которую Donut не поддерживает.",
      "fingerprint": "Этот VLESS URI запрашивает отпечаток TLS, который Donut не поддерживает.",
      "sni": "В VLESS URI отсутствует SNI (sni), необходимый для REALITY.",
      "publicKey": "В VLESS URI отсутствует открытый ключ REALITY (pbk).",
      "scheme": "Это не ссылка VLESS. Она должна начинаться с vless://.",
      "parameter": "VLESS URI содержит параметр, который Donut не поддерживает.",
      "malformed": "VLESS URI недействителен."
    },
    "camoufoxRemoved": "Camoufox больше не поддерживается. Создайте этот профиль заново с Wayfern.",
    "noE2ePasswordSet": "Пароль сквозного шифрования не задан. Задайте его перед синхронизацией зашифрованных данных.",
    "importSourceNotChromium": "Эта папка не является профилем браузера на Chromium",
    "importSourceNotChromiumNamed": "Профили {{family}} импортировать нельзя: поддерживаются только браузеры на Chromium",
    "importSourceBrowserRunning": "Сначала закройте {{browser}} или выберите импорт всё равно"
  },
  "rail": {
    "profiles": "Профили",
    "extensions": "Расширения",
    "groups": "Группы",
    "settings": "Настройки",
    "more": {
      "label": "Ещё",
      "closeAriaLabel": "Закрыть меню",
      "importProfile": "Импорт профиля",
      "importProfileHint": "Перенести профили из другого инструмента",
      "keyboardShortcuts": "Сочетания клавиш",
      "keyboardShortcutsHint": "Показать все сочетания",
      "about": "О Donut Browser",
      "aboutHint": "Версия и сведения о приложении"
    },
    "network": "Сеть",
    "integrations": "Интеграции",
    "account": "Аккаунт",
    "cookieBot": "Cookie Bot",
    "cookieBotRunning": "Cookie Bot — сейчас работает"
  },
  "pageTitle": {
    "proxies": "Сеть",
    "extensions": "Расширения",
    "groups": "Группы",
    "vpns": "Сеть",
    "settings": "Настройки",
    "integrations": "Интеграции",
    "account": "Аккаунт",
    "import": "Импорт профиля",
    "shortcuts": "Сочетания клавиш",
    "cookieBot": "Cookie Bot"
  },
  "encryption": {
    "required": {
      "title": "Синхронизация приостановлена — нужен пароль",
      "description": "Загружены зашифрованные данные, но на этом устройстве не задан E2E-пароль. Откройте Настройки → Шифрование и введите пароль, чтобы продолжить синхронизацию.",
      "openSettings": "Открыть настройки"
    },
    "rollover": {
      "startedTitle": "Перешифровываем ваши данные",
      "startedDescription": "Мы заново загружаем каждый синхронизированный элемент под новым паролем. Сначала профили, затем прокси, группы, VPN и расширения.",
      "progressTitle": "Перешифровка: {{stage}}",
      "progressDescription": "{{done}} из {{total}}",
      "completedTitle": "Перешифровка завершена",
      "completedDescription": "Все синхронизированные данные запечатаны новым паролем.",
      "stage": {
        "profiles": "профили",
        "proxies": "прокси",
        "groups": "группы",
        "vpns": "VPN",
        "extensions": "расширения",
        "extension_groups": "группы расширений"
      }
    }
  },
  "account": {
    "refreshed": "Аккаунт обновлён",
    "loggedOut": "Вы вышли",
    "signedOut": "Не выполнен вход",
    "signedOutDescription": "Войдите, чтобы включить облачную синхронизацию, зашифрованные профили и командные функции.",
    "plan": "Тариф: {{plan}} · {{period}}",
    "refresh": "Обновить",
    "logout": "Выйти",
    "signIn": "Войти",
    "fields": {
      "plan": "Тариф",
      "status": "Статус",
      "teamRole": "Роль в команде",
      "period": "Период",
      "device": "Устройство"
    },
    "tabs": {
      "account": "Аккаунт",
      "selfHosted": "Свой сервер",
      "teamUsage": "Использование командой"
    },
    "selfHosted": {
      "title": "Свой сервер синхронизации",
      "description": "Подключите Donut к собственному серверу donut-sync, чтобы синхронизировать профили, прокси, группы и расширения без использования облака.",
      "disabledWhileLoggedIn": "Свой сервер синхронизации недоступен, пока вы вошли в аккаунт Donut. Выйдите из аккаунта, чтобы использовать собственный сервер.",
      "connectionStatus": "Соединение:",
      "statusUnknown": "Не проверено",
      "testConnection": "Проверить соединение",
      "disconnect": "Отключить"
    },
    "deviceOrdinal": "{{ordinal}} из {{count}}",
    "automationPrimaryOnly": "Автоматизация браузера работает только на вашем основном устройстве (Устройство 1). Выйдите из аккаунта на нём, чтобы использовать её здесь.",
    "automationActiveHere": "Автоматизация браузера активна на этом устройстве.",
    "viewTeamUsage": "Посмотреть использование командой"
  },
  "shortcutsPage": {
    "title": "Сочетания клавиш",
    "description": "Ускорьте работу с помощью этих сочетаний клавиш."
  },
  "commandPalette": {
    "placeholder": "Введите команду или поиск...",
    "empty": "Ничего не найдено.",
    "groups": {
      "navigation": "Навигация",
      "profiles": "Профили",
      "actions": "Действия",
      "profileGroups": "Группы профилей"
    },
    "actions": {
      "launchProfile": "Запустить {{name}}",
      "stopProfile": "Остановить {{name}}",
      "profileInfo": "Информация — {{name}}",
      "createProfile": "Создать профиль",
      "about": "О Donut Browser"
    }
  },
  "shortcuts": {
    "openPalette": "Открыть командную палитру",
    "openShortcuts": "Показать сочетания клавиш",
    "importProfile": "Импортировать профиль",
    "goProfiles": "Перейти к Профилям",
    "goProxies": "Перейти к Сети",
    "goExtensions": "Перейти к Расширениям",
    "goGroups": "Перейти к Группам",
    "goIntegrations": "Перейти к Интеграциям",
    "goAccount": "Перейти к Аккаунту",
    "goSettings": "Перейти к Настройкам",
    "goCookieBot": "Cookie Bot"
  },
  "closeConfirm": {
    "title": "Закрыть Donut Browser?",
    "description": "Свернуть приложение в системный трей или выйти?",
    "minimize": "Свернуть в трей",
    "quit": "Выйти"
  },
  "tray": {
    "show": "Показать Donut Browser",
    "quit": "Выход"
  },
  "onboarding": {
    "steps": {
      "createProfile": {
        "title": "Создайте первый профиль",
        "content": "Нажмите здесь, чтобы создать первый профиль. Выберите Wayfern в качестве браузера — рекомендуемый Chromium с защитой от цифровых отпечатков."
      },
      "dnsBlocking": {
        "title": "DNS-блокировка",
        "content": "Используйте этот список, чтобы задать уровень DNS-блокировки для профиля — он блокирует рекламу, трекеры и вредоносное ПО на сетевом уровне. Чем выше уровень, тем больше блокируется."
      }
    },
    "buttons": {
      "skip": "Пропустить",
      "back": "Назад",
      "next": "Далее",
      "finish": "Готово"
    },
    "thankYou": {
      "title": "Спасибо, что выбрали Donut Browser",
      "body": "Пусть он сделает ваш просмотр интернета более приватным — каждая личность отдельно, и ничего не покидает ваше устройство. Приятного использования!",
      "cta": "Начать работу"
    }
  },
  "welcome": {
    "title": "Добро пожаловать в Donut Browser",
    "tagline": "Браузер с защитой от обнаружения с открытым исходным кодом для управления множеством личностей одновременно.",
    "skip": "Пропустить",
    "next": "Далее",
    "permissions": {
      "title": "Разрешить микрофон и камеру",
      "desc": "Предоставьте доступ, чтобы сайты, которым нужны микрофон или камера, работали в ваших профилях браузера. macOS спросит один раз; каждый сайт всё равно запросит отдельно.",
      "skip": "Не сейчас",
      "grant": "Разрешить доступ",
      "requesting": "Запрос…"
    },
    "ready": {
      "title": "Настраиваем",
      "descDownloading": "Загружаем ваш первый браузер (Wayfern). Эта однократная настройка выполняется в фоне — подождите немного.",
      "descReady": "Браузер готов. Давайте создадим ваш первый профиль.",
      "cta": "Создать первый профиль",
      "downloading": "Загрузка…",
      "extracting": "Распаковка…",
      "stats": "{{downloaded}} из {{total}}",
      "speed": "{{speed}}/с",
      "timeLeft": "осталось {{time}}",
      "descExtracting": "Распаковка браузера. Эта однократная настройка выполняется в фоновом режиме — подождите.",
      "almostFinished": "Почти готово…",
      "errorTitle": "Ошибка настройки",
      "errorDownload": "Не удалось загрузить {{browser}}. Проверьте подключение и повторите попытку.",
      "errorExtraction": "Не удалось распаковать {{browser}}. Повторите попытку.",
      "errorGeneric": "Что-то пошло не так при настройке {{browser}}. Повторите попытку.",
      "retry": "Повторить"
    },
    "features": {
      "title": "Возможности",
      "items": {
        "setDefault": "Сделать браузером по умолчанию",
        "proxy": "Поддержка прокси (HTTP/SOCKS5)",
        "vpn": "Поддержка VPN (WireGuard)",
        "profiles": "Неограниченное число локальных профилей",
        "api": "API управления профилями и MCP",
        "openSource": "Открытый исходный код",
        "groups": "Группы профилей",
        "cookies": "Импорт и экспорт cookie"
      }
    },
    "license": {
      "title": "Лицензия",
      "body": "Donut Browser имеет открытый исходный код и бесплатен в использовании.",
      "agree": "Понятно",
      "personalTitle": "Личное использование",
      "personalDesc": "Бесплатно навсегда.",
      "commercialTitle": "Коммерческое использование",
      "trialBadge": "2 недели бесплатно",
      "commercialDesc": "Бесплатно в течение 2-недельного ознакомительного периода. После этого требуется платный план, что помогает поддерживать и развивать проект."
    }
  },
  "wayfernBlocked": {
    "title": "Автоматизация браузера приостановлена",
    "description": "Автоматизация браузера работает только на одном устройстве одновременно, и сейчас её использует другое устройство с активным входом. Выйдите из аккаунта на нём и запустите профиль снова."
  },
  "wayfernConfigDialog": {
    "titleView": "Просмотр настроек отпечатка - {{name}} ({{browser}})",
    "titleConfigure": "Настроить отпечаток - {{name}} ({{browser}})",
    "invalidFingerprint": "Неверная конфигурация отпечатка",
    "invalidFingerprintDescription": "Конфигурация отпечатка содержит недопустимый JSON. Проверьте расширенные настройки.",
    "saveFailed": "Не удалось сохранить конфигурацию",
    "unknownError": "Произошла неизвестная ошибка"
  },
  "cookieCopy": {
    "noOtherTargets": "Других выбранных Wayfern профилей нет"
  },
  "about": {
    "title": "О приложении",
    "version": "Версия {{version}}",
    "portableBadge": "портативная",
    "licenseNotice": "Антидетект-браузер с открытым исходным кодом.",
    "website": "Веб-сайт",
    "github": "GitHub",
    "licenses": "Лицензии",
    "searchLicenses": "Поиск лицензий…",
    "noMatchingLicenses": "Совпадающих лицензий нет.",
    "openSource": "Открыть исходный код {{name}}"
  },
  "clearOnClose": {
    "label": "Очищать данные при закрытии",
    "description": "Удаляет cookie, историю и кэш при закрытии браузера. Расширения и закладки сохраняются."
  },
  "consistencyWarning": {
    "timezoneDetail": "Выходной узел находится в {{exit}}, но отпечаток сообщает {{fingerprint}}.",
    "languageDetail": "Страна выхода — {{country}}, но язык отпечатка — {{fingerprint}}.",
    "explainer": "Часовой пояс или язык, не совпадающий с выходным IP, — сильный антибот-сигнал, даже если данные вашего реального устройства никогда не утекают. Приведите отпечаток в соответствие с расположением прокси, чтобы снизить враждебное отношение.",
    "matchToProxy": "Подогнать отпечаток под прокси",
    "matching": "Подгонка…",
    "matchSuccess": "Отпечаток обновлён под прокси. Перезапустите профиль, чтобы применить."
  },
  "cookieBot": {
    "title": "Cookie Bot",
    "description": "Ночной прогрев профилей на удалённой машине.",
    "tabs": {
      "overview": "Обзор",
      "schedule": "Расписание",
      "activity": "Активность",
      "team": "Команда"
    },
    "locked": {
      "title": "Cookie Bot",
      "hint": "Cookie Bot прогревает ваши профили ночью на удалённой машине, чтобы они сохраняли cookies и историю, пока ваш компьютер выключен."
    },
    "empty": {
      "title": "Нет подключённых профилей",
      "hint": "Выберите профиль, и бот будет прогревать его ночью на удалённой машине. Ваш компьютер может быть выключен.",
      "cta": "Подключить профиль"
    },
    "tonight": {
      "label": "Сегодня ночью",
      "nextRun": "Следующий запуск в {{time}}",
      "dueCount_one": "{{count}} профиль в очереди",
      "dueCount_few": "{{count}} профиля в очереди",
      "dueCount_other": "{{count}} профилей в очереди",
      "dueCount_many": "{{count}} профилей в очереди",
      "nothingScheduled": "Ничего не запланировано"
    },
    "lastDay": {
      "label": "Последние 24 часа",
      "none": "Запусков пока нет",
      "ran_one": "{{count}} выполнен",
      "ran_few": "{{count}} выполнено",
      "ran_other": "{{count}} выполнено",
      "ran_many": "{{count}} выполнено",
      "partial_one": "{{count}} частичный",
      "partial_few": "{{count}} частичных",
      "partial_other": "{{count}} частичных",
      "partial_many": "{{count}} частичных",
      "failed_one": "{{count}} с ошибкой",
      "failed_few": "{{count}} с ошибками",
      "failed_other": "{{count}} с ошибками",
      "failed_many": "{{count}} с ошибками"
    },
    "chart": {
      "machineTime": "Машинное время за ночь",
      "minutes": "{{minutes}} мин"
    },
    "hours": {
      "label": "Удалённые часы",
      "remaining": "Осталось {{remaining}} ч из {{total}}",
      "remainingOf": "из {{total}} ч",
      "used": "Использовано {{used}} из {{total}} ч",
      "resets": "Обновление {{date}}",
      "exhausted": "Удалённые часы закончились. Расписания остаются подключёнными и возобновятся в следующем цикле.",
      "exhaustedOn": "Удалённые часы закончились. Расписания остаются подключёнными и возобновятся {{date}}.",
      "estimate": "Около {{hours}} ч в неделю · осталось {{remaining}} ч в этом цикле",
      "estimateOverBudget": "Нужно около {{hours}} ч в неделю — осталось всего {{remaining}} ч",
      "estimateOnly": "Около {{hours}} ч в неделю"
    },
    "enrolled": {
      "columnProfile": "Профиль",
      "columnCadence": "Периодичность",
      "columnTime": "Время",
      "columnNextRun": "Следующий запуск",
      "columnLastRun": "Последний запуск",
      "enrolProfiles": "Подключить профили",
      "edit": "Изменить расписание",
      "neverRun": "Никогда",
      "pausedNoHours": "Приостановлено — часы закончились",
      "profileMissing": "Этого профиля нет на этом компьютере."
    },
    "schedule": {
      "empty": "Пока ничего не запланировано.",
      "quietHours_one": "{{count}} свободный час",
      "quietHours_few": "{{count}} свободных часа",
      "quietHours_other": "{{count}} свободных часов",
      "quietHours_many": "{{count}} свободных часов",
      "crowded_one": "{{count}} профиль стартует одновременно",
      "crowded_few": "{{count}} профиля стартуют одновременно",
      "crowded_other": "{{count}} профилей стартуют одновременно",
      "crowded_many": "{{count}} профилей стартуют одновременно",
      "unenrol": "Убрать из Cookie Bot",
      "unenrolTitle": "Убрать {{name}} из Cookie Bot?",
      "unenrolDescription": "Прогрев прекратится уже этой ночью. Прошлые запуски останутся во вкладке «Активность».",
      "unenrolled": "Убрано из Cookie Bot"
    },
    "status": {
      "provisioning": "Готовим машину",
      "ready": "Загружаем профиль",
      "warming": "Прогрев",
      "finished": "Завершение",
      "failed": "Сбой"
    },
    "runStatus": {
      "pending": "В очереди",
      "running": "Выполняется",
      "succeeded": "Завершён",
      "partial": "Частично",
      "failed": "Ошибка",
      "skipped": "Пропущен",
      "cancelled": "Остановлен"
    },
    "running": {
      "label": "Сейчас выполняется",
      "more": "+{{count}} ещё",
      "stop": "Остановить запуск",
      "stopped": "Запуск остановлен"
    },
    "live": {
      "idle": "Сейчас ничего не выполняется",
      "streamOffline": "Обновления в реальном времени недоступны",
      "streamOfflineDetail": "Обновления в реальном времени недоступны — переподключаемся. Данные ниже могут быть устаревшими.",
      "unnamedSession": "Удалённая сессия",
      "notStartedYet": "Машина ещё не сообщила время начала.",
      "sitesProgress": "{{visited}} из {{total}} сайтов",
      "sitesUnknown": "Сайты ещё не переданы",
      "consentHandled_one": "Обработан {{count}} баннер согласия",
      "consentHandled_few": "Обработано {{count}} баннера согласия",
      "consentHandled_other": "Обработано {{count}} баннеров согласия",
      "consentHandled_many": "Обработано {{count}} баннеров согласия",
      "consentUnknown": "Баннеры согласия ещё не переданы",
      "billed": "Начислено {{duration}}",
      "billedUnknown": "Оплачиваемое время ещё не передано",
      "chunk": "Часть {{index}} из {{total}}"
    },
    "history": {
      "title": "Запуски",
      "allProfiles": "Все профили",
      "searchPlaceholder": "Поиск профилей…",
      "filterAll": "Все запуски",
      "filterComplete": "Завершённые",
      "filterPartial": "Частичные",
      "filterFailed": "С ошибкой",
      "columnStarted": "Начало",
      "columnProfile": "Профиль",
      "columnDuration": "Длительность",
      "columnSites": "Сайты",
      "columnStatus": "Статус",
      "columnOperator": "Оператор",
      "empty": "Запусков пока нет.",
      "noMatch": "Нет запусков по этому фильтру.",
      "unknownProfile": "Неизвестный профиль",
      "outcome": "Причина: {{reason}}",
      "sitesVisited": "{{visited}}/{{total}}",
      "sitesFailed_one": "{{count}} сайт недоступен",
      "sitesFailed_few": "{{count}} сайта недоступно",
      "sitesFailed_other": "{{count}} сайтов недоступно",
      "sitesFailed_many": "{{count}} сайтов недоступно",
      "consentHandled_one": "Обработан {{count}} баннер согласия",
      "consentHandled_few": "Обработано {{count}} баннера согласия",
      "consentHandled_other": "Обработано {{count}} баннеров согласия",
      "consentHandled_many": "Обработано {{count}} баннеров согласия",
      "sitesUnknown": "Нет данных"
    },
    "duration": {
      "hm": "{{hours}} ч {{minutes}} мин",
      "ms": "{{minutes}} мин {{seconds}} с",
      "s": "{{seconds}} с"
    },
    "picker": {
      "title": "Подключить профили",
      "description": "Выберите профили, которые бот будет прогревать ночью.",
      "searchPlaceholder": "Поиск профилей…",
      "noProfiles": "Подходящих профилей нет.",
      "alreadyEnrolled": "Подключён",
      "continue_one": "Продолжить с {{count}}",
      "continue_few": "Продолжить с {{count}}",
      "continue_other": "Продолжить с {{count}}",
      "continue_many": "Продолжить с {{count}}"
    },
    "enrol": {
      "titleOne": "Подключить {{name}}",
      "titleCount_one": "Подключить {{count}} профиль",
      "titleCount_few": "Подключить {{count}} профиля",
      "titleCount_other": "Подключить {{count}} профилей",
      "titleCount_many": "Подключить {{count}} профилей",
      "editTitle": "Изменить расписание",
      "description": "Бот открывает профиль на удалённой машине и просматривает указанные вами сайты. Ваш компьютер может быть выключен.",
      "summaryNightly": "Запускается каждую ночь в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryWeeknights": "Запускается с понедельника по пятницу в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryAlternate": "Запускается через ночь в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryCustom_one": "Запускается {{count}} ночь в неделю в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryCustom_few": "Запускается {{count}} ночи в неделю в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryCustom_other": "Запускается {{count}} ночей в неделю в {{time}}, не дольше {{minutes}} мин за раз.",
      "summaryCustom_many": "Запускается {{count}} ночей в неделю в {{time}}, не дольше {{minutes}} мин за раз.",
      "confirm": "Подключить на эту ночь",
      "confirmSome": "Подключить {{eligible}} из {{total}} на эту ночь",
      "fixFirst": "Сначала исправьте это",
      "saving": "Подключаем…",
      "saved": "Расписание сохранено",
      "enrolled_one": "Подключён {{count}} профиль",
      "enrolled_few": "Подключено {{count}} профиля",
      "enrolled_other": "Подключено {{count}} профилей",
      "enrolled_many": "Подключено {{count}} профилей",
      "adjust": "Настроить расписание",
      "cadenceLabel": "Периодичность",
      "cadenceNightly": "Каждую ночь",
      "cadenceWeeknights": "По будним ночам",
      "cadenceAlternate": "Через ночь",
      "cadenceCustom_one": "{{count}} ночь в неделю",
      "cadenceCustom_few": "{{count}} ночи в неделю",
      "cadenceCustom_other": "{{count}} ночей в неделю",
      "cadenceCustom_many": "{{count}} ночей в неделю",
      "timeLabel": "Время начала",
      "timeHint": "По часовому поясу отпечатка каждого профиля.",
      "maxMinutesLabel": "Максимум минут",
      "intensityLabel": "Глубина",
      "sitesLabel": "Сайты",
      "sitesPlaceholder": "По одному адресу в строке",
      "sitesHint_one": "{{count}} сайт. Посещаются только указанные здесь страницы.",
      "sitesHint_few": "{{count}} сайта. Посещаются только указанные здесь страницы.",
      "sitesHint_other": "{{count}} сайтов. Посещаются только указанные здесь страницы.",
      "sitesHint_many": "{{count}} сайтов. Посещаются только указанные здесь страницы.",
      "sitesTooMany": "Не более {{max}} сайтов.",
      "presetsUnavailable": "Не удалось загрузить пресеты глубины. Попробуйте ещё раз через минуту.",
      "confirmBulkTitle_one": "Подключить {{count}} профиль к Cookie Bot?",
      "confirmBulkTitle_few": "Подключить {{count}} профиля к Cookie Bot?",
      "confirmBulkTitle_other": "Подключить {{count}} профилей к Cookie Bot?",
      "confirmBulkTitle_many": "Подключить {{count}} профилей к Cookie Bot?",
      "confirmBulkDescription_one": "Это резервирует ночной запуск за счёт общих удалённых часов. Время и сайты вы выберете дальше.",
      "confirmBulkDescription_few": "Это резервирует {{count}} ночных запуска за счёт общих удалённых часов. Время и сайты вы выберете дальше.",
      "confirmBulkDescription_other": "Это резервирует {{count}} ночных запусков за счёт общих удалённых часов. Время и сайты вы выберете дальше.",
      "confirmBulkDescription_many": "Это резервирует {{count}} ночных запусков за счёт общих удалённых часов. Время и сайты вы выберете дальше.",
      "confirmBulkButton_one": "Продолжить с {{count}} профилем",
      "confirmBulkButton_few": "Продолжить с {{count}} профилями",
      "confirmBulkButton_other": "Продолжить с {{count}} профилями",
      "confirmBulkButton_many": "Продолжить с {{count}} профилями",
      "sitesRequired": "Добавьте хотя бы один сайт.",
      "addSitesFirst": "Сначала добавьте сайт",
      "presetsMissing": "Пресеты глубины недоступны",
      "sourceOwn": "Свой список",
      "sourceCurated": "Подборки",
      "sourceSaved": "Сохранённые",
      "curatedEmpty": "Сейчас нет доступных подборок.",
      "curatedNote": "Подборка, которую мы поддерживаем в актуальном состоянии. Каждый профиль берёт из неё свою выборку, поэтому два профиля не обходят один и тот же набор — именно это не даёт списку стать приметой. Адреса остаются на нашей стороне.",
      "savedEmpty": "Пока ничего не сохранено. Введите список в разделе «Свой список» и сохраните его оттуда.",
      "savedNote": "Сайты копируются в расписание при сохранении, поэтому правка списка позже не меняет уже созданные расписания.",
      "savedUnavailable": "Не удалось загрузить сохранённые списки.",
      "saveAsList": "Сохранить как список",
      "listNamePlaceholder": "Название списка",
      "listSaved": "Список сохранён",
      "listRenamed": "Список переименован",
      "listDeleted": "Список удалён",
      "listRename": "Переименовать",
      "listDeleteConfirm": "Удалить?",
      "templateMissing": "Этого сохранённого списка больше нет. Выберите другой.",
      "templateNameTaken": "Список с таким названием уже есть.",
      "templateNameInvalid": "Название списка — не длиннее {{max}} символов.",
      "calendarLabel": "Когда запускать",
      "daysLabel": "Дни недели",
      "addSlot": "Добавить время",
      "slotsFull": "Не больше {{max}} времён запуска.",
      "removeSlot": "Убрать это время",
      "pickListFirst": "Сначала выберите список",
      "finishCalendarFirst": "Сначала заполните расписание",
      "duplicateSlot": "Две строки повторяют одни и те же дни и время",
      "listSites_one": "{{count}} сайт",
      "listSites_few": "{{count}} сайта",
      "listSites_other": "{{count}} сайтов",
      "listSites_many": "{{count}} сайтов",
      "summarySlots_one": "Запускается {{count}} раз в неделю, не дольше {{minutes}} мин за раз.",
      "summarySlots_few": "Запускается {{count}} раза в неделю, не дольше {{minutes}} мин за раз.",
      "summarySlots_other": "Запускается {{count}} раз в неделю, не дольше {{minutes}} мин за раз.",
      "summarySlots_many": "Запускается {{count}} раз в неделю, не дольше {{minutes}} мин за раз.",
      "templateNameInvalidNoMax": "Это имя нельзя использовать для сохранённого списка."
    },
    "preset": {
      "light": "Лёгкая",
      "balanced": "Стандартная",
      "deep": "Глубокая"
    },
    "template": {
      "lowIntentPurchaser": "Покупатель с низким намерением",
      "lowIntentPurchaserHint": "Позиционирует профиль как чувствительного к цене покупателя: сравнение цен, купоны, кэшбэк и перепродажа, а к магазинам — через агрегаторы, а не напрямую."
    },
    "preflight": {
      "ineligible_one": "{{count}} профиль нельзя запустить удалённо",
      "ineligible_few": "{{count}} профиля нельзя запустить удалённо",
      "ineligible_other": "{{count}} профилей нельзя запустить удалённо",
      "ineligible_many": "{{count}} профилей нельзя запустить удалённо",
      "reasonSync": "Синхронизация отключена",
      "reasonEncrypted": "Сквозное шифрование",
      "reasonNoFingerprint": "Операционная система не записана",
      "reasonCrossOs": "Создан для {{os}} — подходящей удалённой машины нет",
      "reasonNoExitNode": "Нет прокси или VPN",
      "fixSync": "Включить синхронизацию",
      "fixEncrypted": "Открыть настройки синхронизации",
      "fixProxy": "Назначить прокси",
      "fixFailed": "Не удалось применить это исправление.",
      "exitNodeHint": "Без прокси или VPN трафик выходит с собственного адреса дата-центра нашего парка машин. Часы трафика из хостинговой сети вредят репутации профиля сильнее, чем полный отказ от прогрева."
    },
    "conflict": {
      "title": "{{email}} уже прогревает этот профиль в {{time}}",
      "detail": "Два расписания на одном профиле расходуют часы дважды и могут столкнуться прямо во время запуска.",
      "keepTheirs": "Оставить их расписание",
      "replace": "Заменить моим",
      "replaceForbidden": "Менять чужое расписание может только владелец команды или администратор.",
      "askThem": "Скопировать {{email}}",
      "emailCopied": "Адрес скопирован",
      "copyFailed": "Не удалось скопировать адрес."
    },
    "actionBar": {
      "enrol": "Подключить к Cookie Bot",
      "proRequired": "Для Cookie Bot нужен платный тариф",
      "noneEligible": "Ни один из выбранных профилей нельзя прогреть удалённо"
    },
    "actions": {
      "enrol": "Подключить к Cookie Bot",
      "editSchedule": "Изменить расписание",
      "runNow": "Запустить сейчас",
      "runStarted": "Запуск начат",
      "viewActivity": "Посмотреть активность",
      "runNotStarted": "Запуск не начался: {{reason}}"
    },
    "state": {
      "enrolled": "Подключён",
      "notEnrolled": "Не подключён",
      "paused": "Приостановлен",
      "summary": "{{cadence}} в {{time}}",
      "rowMenu": "Параметры Cookie Bot для {{name}}",
      "blocked": "Не может запуститься: {{reason}}"
    },
    "team": {
      "title": "Использование командой",
      "pooled_one": "{{used}} из {{total}} ч, {{count}} место",
      "pooled_few": "{{used}} из {{total}} ч на {{count}} места",
      "pooled_other": "{{used}} из {{total}} ч на {{count}} мест",
      "pooled_many": "{{used}} из {{total}} ч на {{count}} мест",
      "hours": "{{hours}} ч",
      "legendBot": "Cookie Bot",
      "legendInteractive": "Интерактивно",
      "columnMember": "Участник",
      "columnRuns": "Запуски",
      "columnHours": "Часы",
      "columnShare": "Доля",
      "noActivity": "За этот период удалённых сессий нет.",
      "soloNote": "Пока показано только ваше использование. Пригласите коллег, чтобы увидеть распределение по участникам.",
      "runsFailed": "· с ошибкой: {{n}}"
    },
    "closeReason": {
      "stoppedByUser": "Остановлено вручную",
      "maxDuration": "Достигнут предел времени",
      "other": "Завершено: {{reason}}"
    },
    "outcome": {
      "notEntitled": "Не входит в ваш тариф",
      "syncDisabled": "Для этого профиля отключена облачная синхронизация",
      "encryptedSync": "Сквозное шифрование синхронизации не поддерживается",
      "proxyRequired": "Не назначены ни прокси, ни VPN",
      "touchFingerprint": "Сенсорные отпечатки не поддерживаются",
      "platformUnsupported": "Нет машины с системой этого профиля",
      "noSites": "Нет сайтов для посещения",
      "quotaExhausted": "Удалённые часы израсходованы",
      "profileLocked": "Профиль был открыт в другом месте",
      "noCapacity": "Свободных машин не было",
      "managerError": "Флот не смог запустить браузер",
      "budgetExceeded": "Отведённое на ночь время закончилось",
      "cancelledByUser": "Остановлено вручную",
      "unknown": "Неизвестная причина ({{code}})"
    }
  },
  "prelaunchGate": {
    "titleBlocked": "Запуск заблокирован",
    "titleWarning": "Перед запуском",
    "intro": "Проверьте эти проблемы профиля «{{name}}» перед запуском браузера.",
    "fingerprintHeading": "Измеренный выходной узел не совпадает с отпечатком",
    "vpnExtensionHeading": "Обнаружено VPN- или прокси-расширение",
    "vpnExtensionIntro": "Расширения в этом профиле, способные перенаправить трафик браузера:",
    "vpnExtensionConfirmed": "Известный VPN- или прокси-инструмент",
    "vpnExtensionLikely": "Похоже на VPN- или прокси-инструмент",
    "vpnExtensionCapability": "Имеет разрешение proxy",
    "vpnExtensionExplainer": "Если одно из них направит трафик в другое место, реальное местоположение браузера перестанет совпадать с часовым поясом, языком и геолокацией, с которыми создавался профиль, а Donut не сможет это обнаружить извне.",
    "proxyCapableHeading": "Расширения, способные изменить прокси",
    "proxyCapableIntro": "Это не похоже на VPN, но у них есть разрешение proxy в Chromium, которое нужно и менеджерам загрузок, и инструментам отладки. Donut не может определить, использует ли его кто-то из них:",
    "sourceDonut": "Управляется Donut",
    "sourceBrowser": "Установлено в профиле",
    "measurementUnreliable": "Расширение в этом профиле имеет разрешение proxy, поэтому проверка выходного узла может не отражать реальный маршрут браузера.",
    "scanIncompleteEncrypted": "Профиль зашифрован, поэтому удалось проверить только расширения, управляемые Donut.",
    "scanIncompleteEphemeral": "В профиле ещё нет данных, поэтому удалось проверить только расширения, управляемые Donut.",
    "scanIncompletePartial": "Проверка расширений была прервана, поэтому некоторые могут отсутствовать в списке.",
    "probePending": "Выходной узел прокси ещё не измерен. Donut проверит его при запуске и остановится, если он не совпадёт.",
    "launchAnyway": "Всё равно запустить",
    "dontBlockAgain": "Больше не блокировать при этом несовпадении",
    "dontWarnExtensions": "Больше не предупреждать об этих расширениях",
    "applyToRemaining": "Применить этот выбор к остальным профилям",
    "cancelledSummary": "Отменено запусков: {{cancelled}} из {{total}}",
    "vpnExtensionEntry": " {{version}} — {{capability}}, {{source}}",
    "vpnExtensionEntryNoVersion": " — {{capability}}, {{source}}",
    "scanIncompleteMissing": "Профиль ещё ни разу не запускался, поэтому удалось проверить только расширения, управляемые Donut."
  }
}
