/*
 * CoolerControl - monitor and control your cooling and other devices
 * Copyright (c) 2021-2025  Guy Boldon and contributors
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */

export default {
    common: {
        save: 'Сохранить',
        cancel: 'Отмена',
        confirm: 'Подтвердить',
        delete: 'Удалить',
        edit: 'Редактировать',
        add: 'Добавить',
        remove: 'Удалить',
        yes: 'Да',
        no: 'Нет',
        ok: 'OK',
        error: 'Ошибка',
        success: 'Успешно',
        warning: 'Предупреждение',
        loading: 'Загрузка...',
        restarting: 'Перезапуск...',
        noData: 'Нет данных',
        retry: 'Повторить',
        saveAndRefresh: 'Сохранить и обновить',
        reset: 'Сбросить',
        back: 'Назад',
        sslTls: 'SSL/TLS',
        protocol: 'Протокол',
        address: 'Адрес',
        port: 'Порт',
        search: 'Поиск',
        selected: 'Выбрано',
        clear: 'Очистить',
        finish: 'Завершить',
        next: 'Далее',
        previous: 'Назад',
        apply: 'Применить',
        defaults: 'По умолчанию',
        unmanaged: 'Без управления',
        readOnly: 'Только чтение',
        rename: 'Переименовать',
        password: 'Пароль',
        currentPassword: 'Текущий пароль',
        newPassword: 'Новый пароль',
        confirmPassword: 'Подтвердите пароль',
        passwordPrompt: 'Введите пароль',
        passwordWeak: 'Слабый',
        passwordMedium: 'Средний',
        passwordStrong: 'Сильный',
        savePassword: 'Сохранить пароль',
        editName: 'Изменить имя',
        state: 'Состояние',
        name: 'Имя',
        message: 'Сообщение',
        timestamp: 'Время',
        overview: 'Обзор',
        login: 'Вход',
        logout: 'Выход',
        temperature: 'Температура',
        duty: 'Скорость',
        offset: 'Смещение',
        stay: 'Остаться',
        discard: 'Отменить',
        blankNameResetDefault: 'Пустое имя сбросит значение на системное по умолчанию.',
        copy: '(копия)',
        minuteAbbr: 'мин',
        rpmAbbr: 'об/мин',
        mhzAbbr: 'МГц',
        ghzAbbr: 'ГГц',
        tempUnit: '°C',
        percentUnit: '%',
        secondAbbr: 'с',
        wattAbbr: 'Вт',
        toast: {
            modeCreated: 'Режим создан',
            modeDuplicated: 'Режим дублирован',
            modeNameUpdated: 'Имя режима обновлено',
            modeUpdated: 'Режим обновлен с текущими настройками',
            modeDeleted: 'Режим удален',
            modeActivated: 'Режим активирован',
            customSensorSaved: 'Пользовательский датчик сохранен и обновляется интерфейс...',
            customSensorUpdated:
                'Пользовательский датчик успешно обновлен и обновляется интерфейс...',
            customSensorDeleted:
                'Пользовательский датчик успешно удален и обновляется интерфейс...',
            alertSaved: 'Оповещение сохранено',
            alertUpdated: 'Оповещение обновлено',
            alertDeleted: 'Оповещение удалено',
            alertNotFound: 'Оповещение для обновления не найдено',
            settingsUpdated: 'Настройки успешно обновлены и применены к устройству',
            settingsError: 'Произошла ошибка при попытке применить эти настройки',
            thinkPadFanControlApplied: 'Управление вентилятором ThinkPad успешно применено',
        },
    },
    layout: {
        topbar: {
            login: 'Вход',
            logout: 'Выход',
            changePassword: 'Изменить пароль',
            accessTokens: 'Токены доступа',
            restartUI: 'Перезапустить интерфейс',
            restartDaemonAndUI: 'Перезапустить демон и интерфейс',
            restartConfirmMessage: 'Вы уверены, что хотите перезапустить демон и интерфейс?',
            restartConfirmHeader: 'Перезапуск демона',
            shutdownSuccess: 'Сигнал выключения демона принят',
            shutdownError:
                'Неизвестная ошибка при отправке сигнала выключения. Подробности в логах.',
            quitDesktopApp: 'Выйти из приложения',
            applicationInfo: 'Информация и инструменты',
            back: 'Назад',
            expandMenu: 'Развернуть меню',
            collapseMenu: 'Свернуть меню',
            controls: 'Управление',
            alerts: 'Оповещения',
            settings: 'Настройки',
            openInBrowser: 'Открыть в браузере',
            modes: 'Режимы',
            loginSuccessful: 'Вход выполнен успешно',
        },
        settings: {
            title: 'Настройки',
            userInterface: 'Пользовательский интерфейс',
            device: 'Устройства',
            daemon: 'Демон',
            devices: {
                devicesAndSensors: 'Устройства и датчики',
                detectionIssues: 'Проблемы с обнаружением? См.',
                hardwareSupportDoc: 'Документацию по поддержке оборудования',
                toggleRequiresRestart:
                    'Переключение устройств или датчиков требует перезапуска демона и интерфейса. Вы уверены, что хотите сделать это сейчас?',
                enableDevices: 'Включить устройства',
                selectTooltip:
                    'Выберите устройства и датчики для отключения или включения.\nНастоятельно рекомендуется отключить неиспользуемые устройства и датчики.',
                unknownError:
                    'Неизвестная ошибка при применении изменений ко всем устройствам. Подробности в логах.',
            },
            plugin: 'Плагины (бета)',
            plugins: {
                device: 'Плагин сервиса устройств',
                integration: 'Плагин интеграции',
                privileged: 'Привилегированный доступ',
                pluginUrl: 'Домашняя страница',
                restricted: 'Ограниченный доступ',
                settingsSaved: 'Настройки плагина успешно сохранены',
                settingsNotSaved: 'Не удалось сохранить настройки плагина',
            },
            profiles: 'Профили',
            alerts: 'Оповещения',
            dashboards: 'Панели',
            modes: 'Режимы',
            appearance: 'Внешний вид',
            language: 'Язык',
            selectLanguage: 'Выбрать язык',
            english: 'Английский',
            chinese: 'Китайский (упрощённый)',
            japanese: 'Японский',
            chineseTrad: 'Китайский (традиционный)',
            russian: 'Русский',
            german: 'Немецкий',
            french: 'Французский',
            spanish: 'Испанский',
            arabic: 'Арабский',
            portuguese: 'Португальский',
            hindi: 'Хинди',
            theme: 'Тема',
            themeLight: 'Светлая',
            themeDark: 'Тёмная',
            themeSystem: 'Системная',
            themeCustom: 'Пользовательская',
            themeHighContrastDark: 'Тёмная с высоким контрастом',
            themeHighContrastLight: 'Светлая с высоким контрастом',
            lineThickness: 'Толщина линий',
            fullScreen: 'Полный экран',
            menuBarAlwaysVisible: 'Всегда показывать строку меню',
            hideMenuCollapseIcon: 'Скрыть иконку сворачивания меню',
            eyeCandy: 'Визуальные эффекты',
            showOnboarding: 'Показывать обучение при запуске',
            introduction: 'Введение',
            startTour: 'Начать тур',
            timeFormat: 'Формат времени',
            time24h: '24 часа',
            time12h: '12 часов',
            frequencyPrecision: 'Точность частоты',
            startupPage: 'Стартовая страница',
            sidebarToCollapse: 'Сворачивание боковой панели',
            entitiesBelowSensors: 'Элементы под датчиками',
            dashboardLineSize: 'Размер линий на панели',
            themeStyle: 'Стиль темы',
            themeMode: {
                system: 'Системная',
                dark: 'Тёмная',
                light: 'Светлая',
                highContrastDark: 'Тёмная с высоким контрастом',
                highContrastLight: 'Светлая с высоким контрастом',
                custom: 'Пользовательская',
            },
            desktop: 'Рабочий стол',
            startInTray: 'Запускать в трее',
            closeToTray: 'Сворачивать в трей',
            zoom: 'Масштаб',
            desktopStartupDelay: 'Задержка запуска приложения',
            applySettingsOnStartup: 'Применять настройки при запуске',
            deviceDelayAtStartup: 'Задержка устройств при запуске',
            pollingRate: 'Частота опроса',
            compressApiPayload: 'Сжимать данные API',
            liquidctlIntegration: 'Интеграция с Liquidctl',
            liquidctlDeviceInit: 'Инициализация устройств Liquidctl',
            hideDuplicateDevices: 'Скрыть дублирующиеся устройства',
            drivePowerState: 'Состояние питания дискового привода',
            sensorsAutoDetect: 'Автоопределение датчиков',
            deviceListener: 'Отслеживание изменений устройств',
            customTheme: {
                title: 'Пользовательская тема',
                accent: 'Цвет акцента',
                bgOne: 'Основной фон',
                bgTwo: 'Вторичный фон',
                border: 'Цвет границы',
                text: 'Цвет текста',
                textSecondary: 'Цвет вторичного текста',
                export: 'Экспорт темы',
                import: 'Импорт темы',
                copyCode: 'Копировать код',
                pasteCode: 'Вставить код',
                themeCodeCopied: 'Код темы скопирован',
                themeApplied: 'Тема применена',
                invalidThemeCode: 'Неверный код темы',
            },
            tooltips: {
                introduction: 'Запустить ознакомительный тур по приложению.',
                timeFormat: 'Формат времени: 12-часовой (AM/PM) или 24-часовой',
                frequencyPrecision: 'Настроить точность отображаемых значений частоты.',
                startupPage: 'Страница, отображаемая после загрузки приложения.',
                eyeCandy:
                    'Включить визуальные анимации, такие как вращающиеся значки вентиляторов.\nЭто потребует дополнительных ресурсов GPU.',
                sidebarCollapse:
                    'Показывать ли значок сворачивания меню в боковой панели,\nили использовать пустую область боковой панели для расширения или сворачивания главного меню.',
                entitiesBelowSensors:
                    'Показывать ли сущности под датчиками устройства в главном меню.',
                fullScreen: 'Переключить полноэкранный режим',
                lineThickness: 'Настроить толщину линий на графиках на панели управления',
                startInTray:
                    'При запуске главное окно интерфейса будет скрыто, и будет виден только\nзначок в системном трее.',
                closeToTray:
                    'Закрытие окна приложения оставит приложение работающим в системном трее',
                zoom: 'Вручную установить уровень масштабирования интерфейса.',
                desktopStartupDelay:
                    'Добавляет задержку перед запуском настольного приложения (в секундах).\nПомогает с проблемами, возникающими при автоматическом запуске настольного приложения\nпри входе в систему или слишком быстром запуске',
                applySettingsOnStartup:
                    'Автоматически применять настройки при запуске демона и при выходе из спящего режима',
                deviceDelayAtStartup:
                    'Задержка перед началом связи с устройством (в секундах).\nПомогает с устройствами, которым требуется время для инициализации или которые обнаруживаются с перебоями',
                pollingRate:
                    'Частота опроса данных датчика (в секундах).\nБолее высокая частота опроса снизит использование ресурсов, а более низкая увеличит отзывчивость.\nЧастота менее 1,0 должна использоваться с осторожностью.',
                compressApiPayload: 'Включить сжатие полезной нагрузки API',
                liquidctlIntegration:
                    'Отключение этого полностью деактивирует интеграцию Liquidctl,\nнезависимо от состояния установки пакета coolercontrol-liqctld. Если доступно, вместо этого будут использоваться драйверы HWMon.',
                liquidctlDeviceInit:
                    'Внимание: отключите это ТОЛЬКО в том случае, если вы или другая программа\nобрабатываете инициализацию устройства liquidctl.\nЭто может помочь избежать конфликтов с другими программами.',
                hideDuplicateDevices:
                    'Некоторые устройства поддерживаются как драйверами Liquidctl, так и HWMon.\nLiquidctl используется по умолчанию из-за его дополнительных функций. Чтобы использовать драйверы HWMon вместо этого,\nотключите это и устройство liquidctl, чтобы избежать конфликтов драйверов.',
                drivePowerState:
                    'SSD и HDD в частности могут перейти в режим низкого потребления энергии. \nЭта опция, когда она включена и диск это поддерживает, будет сообщать о температуре диска \nкак 0°C, когда он остановлен, чтобы профили вентиляторов могли быть соответственно скорректированы.',
                sensorsAutoDetect:
                    'Автоматически обнаруживать аппаратные датчики Super-I/O и загружать\nмодули ядра при запуске. (только x86_64)',
                deviceListener:
                    'Отслеживать события добавления/удаления устройств (например, подключение USB)\nи уведомлять при обнаружении изменений оборудования.',
                daemonAddress:
                    'IP-адрес или доменное имя демона для установления соединения.\nПоддерживает IPv4, IPv6 и DNS-решаемые имена хостов.',
                daemonPort: 'Порт, используемый для установления соединения с демоном.',
                sslTls: 'Подключаться ли к демону с использованием SSL/TLS.\nТребуется настройка прокси.',
                triggersRestart: 'Вызывает автоматическую перезагрузку',
                triggersUIRestart: 'Вызывает автоматическую перезагрузку интерфейса',
                triggersDaemonRestart: 'Вызывает автоматическую перезагрузку демона',
                resetToDefaults: 'Сбросить на настройки по умолчанию',
                saveAndReload: 'Сохранить и перезагрузить интерфейс',
                copyThemeCode:
                    'Скопировать компактный код, представляющий вашу текущую пользовательскую тему.\nПоделитесь им в чате или на форуме.',
                pasteThemeCode:
                    'Применить пользовательскую тему из кода (cct1:...), которым с вами поделились.',
                exportThemeFile: 'Сохранить текущую пользовательскую тему в файл JSON.',
                importThemeFile: 'Загрузить пользовательскую тему из файла JSON.',
            },
            applySettingAndRestart:
                'Изменение этой настройки требует перезагрузки демона и интерфейса. Вы уверены, что хотите сделать это сейчас?',
            restartHeader: 'Применить настройку и перезагрузить',
            restartSuccess: 'Перезагрузка сейчас',
            success: 'Успех',
            successDetail: 'Операция успешно завершена',
            settingsAppliedSuccess: 'Настройки успешно применены',
            restartRequestSuccess: 'Запрос на перезагрузку успешно отправлен',
            colorPickerDialogTitle: 'Выбрать цвет',
            colorPickerConfirm: 'Подтвердить',
            colorPickerCancel: 'Отмена',
            languageChangeConfirm: 'Изменить язык?',
            languageChangeConfirmMessage:
                'Вы уверены, что хотите продолжить? Если некоторые элементы интерфейса отображаются некорректно, пожалуйста, обновите страницу вручную.',
            languageChangeSuccess: 'Язык успешно изменен.',
            languageChangeError: 'Не удалось изменить язык. Пожалуйста, попробуйте снова.',
            themeChangeSuccess: 'Тема успешно изменена.',
            entitiesBelowSensorsEnabledMessage: 'Элементы будут отображаться под датчиками.',
            entitiesBelowSensorsDisabledMessage:
                'Элементы больше не будут отображаться под датчиками.',
        },
        menu: {
            system: 'Система',
            dashboards: 'Панели',
            profiles: 'Профили',
            functions: 'Функции',
            customSensors: 'Пользовательские датчики',
            modes: 'Режимы',
            alerts: 'Оповещения',
            pinned: 'Закреплено',
            tooltips: {
                delete: 'Удалить',
                createMode: 'Создать режим из текущих настроек',
                addProfile: 'Добавить профиль',
                editName: 'Изменить имя',
                addAlert: 'Добавить оповещение',
                deleteFunction: 'Удалить функцию',
                addDashboard: 'Добавить панель',
                deleteDashboard: 'Удалить панель',
                duplicate: 'Дублировать',
                setAsHome: 'Установить как домашнюю',
                save: 'Сохранить',
                deleteMode: 'Удалить режим',
                updateWithCurrentSettings: 'Обновить текущими настройками',
                rename: 'Переименовать',
                createModeFromCurrentSettings: 'Создать режим из текущих настроек',
                addCustomSensor: 'Добавить пользовательский датчик',
                addFunction: 'Добавить функцию',
                chooseColor: 'Выбрать цвет',
                deviceSettings: 'Расширенные настройки устройства',
                options: 'Дополнительные опции',
                moveTop: 'Переместить наверх',
                moveBottom: 'Переместить вниз',
                disable: 'Отключить',
                pin: 'Закрепить наверху',
                unpin: 'Открепить',
                profileApply: 'Применить профиль к вентиляторам',
                tags: 'Управление тегами',
            },
        },
        plugins: {
            plugins: 'Плагины',
            notFound: 'Плагин не найден',
            type: 'Тип',
            address: 'Адрес',
            privileges: 'Привилегии',
            url: 'URL',
            start: 'Запустить',
            stop: 'Остановить',
            restart: 'Перезапустить',
            started: 'Плагин запущен',
            stopped: 'Плагин остановлен',
            restarted: 'Плагин перезапущен',
            startFailed: 'Не удалось запустить плагин',
            stopFailed: 'Не удалось остановить плагин',
            restartFailed: 'Не удалось перезапустить плагин',
            overview: 'Обзор Плагинов',
            gettingStarted:
                'Плагины расширяют CoolerControl дополнительной поддержкой устройств, интеграциями и автоматизацией. Они могут предоставлять новые датчики и элементы управления устройствами, подключаться к внешним сервисам или добавлять пользовательские страницы интерфейса.',
            docsLink: 'Документация по плагинам',
            restartNote:
                'Если вы недавно добавили новый плагин и он не отображается здесь, перезапустите демон CoolerControl.',
            containerNote:
                'При запуске CoolerControl в контейнере плагины должны быть размещены в постоянной виртуальной общей папке, чтобы они сохранялись после перезапуска контейнера.',
            installedPlugins: 'Установленные плагины',
            noPlugins: 'Плагины не установлены',
            info: 'Информация',
            description: 'Описание',
            enable: 'Включить',
            disable: 'Отключить',
            disabled: 'Отключён',
            pluginDisabled: 'Плагин отключён.',
            pluginEnabled: 'Плагин включён.',
            pluginDisabledRestart: 'Плагин отключён. Перезапустите демон для применения.',
            pluginEnabledRestart: 'Плагин включён. Перезапустите демон для применения.',
            disableFailed: 'Не удалось отключить плагин',
            enableFailed: 'Не удалось включить плагин',
            serviceLogs: 'Журналы сервиса',
            commandCopied: 'Команда скопирована в буфер обмена',
        },
        add: {
            dashboard: 'Панель',
            mode: 'Режим',
            profile: 'Профиль',
            function: 'Функция',
            alert: 'Оповещение',
            customSensor: 'Пользовательский датчик',
        },
    },
    views: {
        daemon: {
            title: 'Демон',
            daemonErrors: 'Ошибки демона',
            daemonErrorsDetail:
                'Демон сообщил об ошибках. Проверьте логи для получения подробностей.',
            daemonDisconnected: 'Демон отключен',
            daemonDisconnectedDetail:
                'Не удается подключиться к демону. Пожалуйста, проверьте, запущен ли демон.',
            connectionRestored: 'Соединение восстановлено',
            connectionRestoredMessage: 'Соединение с демоном было восстановлено.',
            thinkpadFanControl: 'Управление вентилятором ThinkPad',
            pollRate: 'Частота опроса',
            applySettingAndRestart: 'Применить настройку и перезапустить',
            changeSetting:
                'Изменение этой настройки требует перезапуска демона и интерфейса. Вы уверены, что хотите сделать это сейчас?',
            status: {
                ok: 'Ок',
                hasWarnings: 'Есть предупреждения',
                hasErrors: 'Есть ошибки',
            },
        },
        devices: {
            detectionIssues: 'Проблемы с обнаружением? См.',
            hardwareSupportDocs: 'Документацию по поддержке оборудования',
            selectDevices:
                'Выберите устройства и датчики для отключения или включения.\nНастоятельно рекомендуется отключить неиспользуемые устройства и датчики.',
            devicesAndSensors: 'Устройства и датчики',
            apply: 'Применить',
            applySettingsAndReload: 'Применить настройки и перезагрузить',
            triggersAutoRestart: 'Вызывает автоматический перезапуск демона',
            restartPrompt:
                'Переключение устройств или датчиков требует перезапуска демона и интерфейса. Вы уверены, что хотите сделать это сейчас?',
            enableDevices: 'Включить устройства',
        },
        speed: {
            automatic: 'Автоматический',
            manual: 'Ручной',
            unsavedChanges: 'Несохраненные изменения',
            unsavedChangesMessage: 'Есть несохраненные изменения в этом канале управления.',
            manualDuty: 'Ручная настройка',
            profileToApply: 'Профиль для применения',
            controlModeAutomaticTooltip: 'Применить профиль вентилятора к этому каналу',
            controlModeManualTooltip: 'Установить фиксированный процент рабочего цикла вручную',
            controlModeUnmanagedTooltip:
                'Прекратить управление этим каналом, оставив решение за оборудованием или драйвером устройства',
            driverNoSupportControl:
                'Канал только для чтения. Текущий драйвер не поддерживает установку скорости этого канала.',
            amdOverdriveNotEnabled:
                'AMD GPU overdrive не включен. Включите его в расширенных настройках этого устройства (требуется перезагрузка).',
            controlOrView: 'Управление или просмотр',
            applySetting: 'Применить настройку',
            defaultProfileInfo:
                'Выбор «Без управления» указывает CoolerControl прекратить управление<br/>этим вентилятором и вернуть управление драйверу устройства.<br/><br/><b>Предупреждение:</b> Многие драйверы <i>не</i> имеют автоматического<br/>управления вентилятором. На таких устройствах вентилятор останется<br/>на последней установленной скорости.',
        },
        customSensors: {
            newSensor: 'Новый датчик',
            sensorType: 'Тип датчика',
            type: 'Тип',
            mixFunction: 'Функция смешивания',
            howCalculateValue: 'Как рассчитать результирующее значение датчика',
            tempFileLocation: 'Расположение температурного файла',
            tempFile: 'Температурный файл',
            filePathTooltip:
                'Введите абсолютный путь к температурному файлу для использования с этим датчиком.\nФайл должен использовать стандартный формат данных sysfs:\nЧисло с фиксированной точкой в миллиградусах Цельсия.\nНапример, 80000 для 80°C.\nФайл проверяется при отправке.',
            browse: 'Обзор',
            browseCustomSensorFile: 'Обзор файла пользовательского датчика',
            tempSources: 'Источники температуры',
            tempSource: 'Источник температуры',
            tempSourcesTooltip:
                'Источники температуры, используемые в функции смешивания<br/><i>Примечание: При объединении нескольких пользовательских датчиков допускаются только прямые отношения родитель—потомок.<br/>Для более сложных конфигураций используйте профили смешивания.</i>',
            offset: 'Смещение',
            offsetTooltip:
                'Введите отрицательное или положительное значение смещения для применения к исходному датчику.<br/><i>Примечание: Итоговое значение ограничено нормальными температурными диапазонами.</i>',
            timeWindow: 'Окно сглаживания',
            timeWindowTooltip:
                'Сколько секунд последних образцов сглаживать вместе.<br/><i>Примечание: Должно быть от 1 до 300 секунд.</i>',
            helpText: {
                mix: 'Объединяет несколько источников температуры с помощью выбранной функции (Мин/Макс/Среднее/Дельта/Взвешенное среднее). Используется для управления вентиляторами по самому горячему из нескольких датчиков или для балансировки между зонами.',
                file: 'Считывает температуру из файла. Используйте для датчиков, не обнаруженных автоматически CoolerControl.',
                offset: 'Добавляет или вычитает фиксированное значение из источника температуры. Используется для калибровки известной неточности датчика.',
                timeAverage:
                    'Арифметическое среднее по фиксированному временному окну. Выход ограничен диапазоном входа и никогда не превышает его. Для вентиляторов, которые должны игнорировать кратковременные скачки температуры.',
                exponentialMovingAvg:
                    'Взвешенное среднее с предпочтением недавних показаний. Более плавное, чем среднее по времени, при том же окне, но требует примерно в 3 раза больше длины окна, чтобы полностью отследить устойчивое изменение. Для вентиляторов, которые должны отслеживать реальные тенденции без дрожания.',
            },
            tempWeights: 'Веса температур',
            tempWeightsTooltip: 'Индивидуальный вес каждого выбранного источника температуры.',
            tempName: 'Название температуры',
            weight: 'Вес',
            saveSensor: 'Сохранить датчик',
            saveCustomSensor: 'Сохранить пользовательский датчик',
            unsavedChanges: 'Есть несохраненные изменения в этом пользовательском датчике.',
            unsavedChangesHeader: 'Несохраненные изменения',
            stay: 'Остаться',
            discard: 'Отменить',
            selectCustomSensorFile: 'Выбрать файл пользовательского датчика',
            deleteCustomSensor: 'Удалить пользовательский датчик',
            deleteCustomSensorConfirm:
                'Вы уверены, что хотите удалить пользовательский датчик: "{name}"?',
        },
        dashboard: {
            timeRange: 'Временной диапазон',
            minutes: 'мин',
            chartType: 'Тип графика',
            dataType: 'Тип данных',
            filterSensors: 'Фильтр датчиков',
            showControls: 'Показать управление',
            mouseActions:
                'Действия мыши на панели:\n- Выделение для увеличения.\n- Прокрутка для увеличения.\n- Клик правой кнопкой мыши для перемещения при увеличении.\n- Двойной клик для сброса и возобновления обновления.\n- Ctrl+клик или клик средней кнопкой мыши, чтобы показать все датчики в подсказке.',
            fullPage: 'На весь экран',
            filterTags: 'Фильтр тегов',
            filterByTag: 'Фильтр по тегу',
            filterBySensor: 'Фильтр по датчику',
            search: 'Поиск',
            filterTypes: 'Фильтр типов',
            filterByDataType: 'Фильтр по типу данных',
            selectChartType: 'Выбрать тип графика',
            exitFullPage: 'Выйти из полноэкранного режима',
            controls: 'Управление',
            sensorValues: 'Значения датчиков',
            selected: 'Выбрано',
            clear: 'Очистить',
            deleteDashboard: 'Удалить панель',
            deleteDashboardConfirm: 'Вы уверены, что хотите удалить панель: "{name}"?',
            dashboardDeleted: 'Панель удалена',
            setAsHome: 'Установить как домашнюю',
            duplicateDashboard: 'Дублировать панель',
        },
        appInfo: {
            title: 'Информация и инструменты',
            noWarranty: 'Эта программа поставляется абсолютно без гарантий.',
            changeStartupPage: 'Изменить стартовую страницу в Настройках',
            daemonStatus: 'Статус демона',
            acknowledgeIssues: 'Подтвердить проблемы',
            status: 'Статус',
            processStatus: 'Статус процесса',
            host: 'Хост',
            uptime: 'Время работы',
            version: 'Версия',
            processId: 'ID процесса',
            memoryUsage: 'Использование памяти',
            liquidctl: 'Liquidctl',
            connected: 'Подключено',
            disconnected: 'Отключено',
            helpfulLinks: 'Полезные ссылки',
            uiTour: 'Тур по интерфейсу',
            uiTourDesc: 'Пройдите интерактивный тур по приложению',
            gettingStarted: 'Начало работы',
            gettingStartedGraphProfile: 'Графический профиль',
            gettingStartedControlsPage: 'странице Управление',
            gettingStartedStep1:
                'Создайте {profile} в Профилях вентиляторов и настройте кривую вентилятора.',
            gettingStartedStep2:
                'Назначьте его на {controls} (или на странице самого вентилятора). Профили не применяются автоматически.',
            gettingStartedStep3:
                'Используйте один и тот же Профиль для любого количества вентиляторов.',
            helpSettingUp: 'Помощь в настройке управления вентиляторами',
            hardwareSupport: 'Поддержка оборудования',
            hardwareSupportDesc: 'Поддерживаемые устройства и установка драйверов',
            gitRepository: 'Git репозиторий',
            gitRepositoryDesc: 'Сообщить о проблемах или запросить функции',
            discord: 'Discord',
            discordDesc: 'Присоединяйтесь к нашему сообществу Discord',
            whatsNew: 'Что нового',
            whatsNewDesc: 'Смотрите последние примечания к выпуску',
            logsAndDiagnostics: 'Логи и диагностика',
            downloadCurrentLog: 'Скачать текущий лог',
            stressTest: 'Термические стресс-тесты',
            stressTestTooltip:
                'Создает устойчивую тепловую нагрузку для проверки<br>кривых вентиляторов и профилей охлаждения.<br>Результаты могут отличаться в зависимости от оборудования.<br>Установите stress-ng для дополнительных бэкендов.',
            cpuStress: 'Стресс CPU',
            gpuStress: 'Стресс GPU',
            gpuStressTooltip:
                'Может требовать драйверы Vulkan или OpenGL ES<br>при использовании встроенного бэкенда.',
            ramStress: 'Стресс RAM',
            driveStress: 'Стресс диска',
            driveStressTooltip:
                'Нагрузка ввода-вывода на блочном устройстве для<br>генерации тепла на контроллерах дисков.<br>stress-ng требует, чтобы устройство было смонтировано.',
            builtInBackend: 'встроенный',
            stressNgBackend: 'stress-ng',
            backendTooltip:
                'Выберите бэкенд для стресс-теста.<br>Встроенный работает без внешних зависимостей.<br>stress-ng (если установлен) предоставляет дополнительные варианты стрессоров.',
            selectDrive: 'Выбрать диск',
            threadCount: 'Потоки',
            duration: 'Длительность (с)',
            start: 'Старт',
            stop: 'Стоп',
            stopAll: 'Остановить всё',
            active: 'Активно',
            inactive: 'Неактивно',
            allCores: 'Все ядра',
            psuWarningHeader: 'Предупреждение о высокой нагрузке',
            psuWarningMessage:
                'Одновременный запуск стресс-тестов CPU и GPU создаст значительную нагрузку на блок питания. При разгоне или использовании маломощного БП возможна нестабильность системы. Вы уверены, что хотите продолжить?',
            proceed: 'Продолжить',
        },
        alerts: {
            createAlert: 'Создать оповещение',
            editAlert: 'Редактировать оповещение',
            deleteAlert: 'Удалить оповещение',
            noAlerts: 'Нет настроенных оповещений',
            alertsOverview: 'Обзор оповещений',
            alertLogs: 'Логи оповещений',
            alertTriggered: 'Оповещение сработало',
            alertRecovered: 'Оповещение восстановлено',
            deleteAlertConfirm: 'Вы уверены, что хотите удалить: "{name}"?',
            saveAlert: 'Сохранить оповещение',
            channelSource: 'Источник канала для оповещения',
            channelSourceTooltip: 'Источник канала, используемый для оповещения',
            triggerConditions: 'Условия срабатывания',
            maxValueTooltip: 'Значения выше этого вызовут оповещение.',
            minValueTooltip: 'Значения ниже этого вызовут оповещение.',
            warmupDurationTooltip:
                'Сколько времени должно быть активно условие, чтобы оповещение считалось активным?\nОно проверяется только с регулярными интервалами опроса\nи может не соответствовать указанной продолжительности.',
            greaterThan: 'больше чем',
            lessThan: 'меньше чем',
            newAlert: 'Новое оповещение',
            warmupGreaterThan: 'состояние срабатывает дольше, чем',
            unsavedChanges: 'Есть несохраненные изменения в этом оповещении.',
            unsavedChangesHeader: 'Несохраненные изменения',
            createFailAlert: 'Оповещение о неисправности',
            desktopNotify: 'уведомление на рабочем столе',
            desktopNotifyTooltip:
                'Включить уведомления на рабочем столе при срабатывании оповещения.\n(Если поддерживается)',
            desktopNotifyRecovery: 'уведомление на рабочем столе при восстановлении',
            desktopNotifyRecoveryTooltip:
                'Включить уведомления на рабочем столе при восстановлении оповещения.\n(Если поддерживается)',
            desktopNotifyAudio: 'звук уведомления на рабочем столе',
            desktopNotifyAudioTooltip:
                'Включить звук уведомления на рабочем столе при срабатывании оповещения.\n(Если поддерживается)',
            shutdownOnActivation: 'выключение при активации',
            shutdownOnActivationTooltip:
                'Включить выключение системы при срабатывании оповещения.\nВыключение системы начнется через одну минуту после срабатывания оповещения\nи будет отменено, если оповещение восстановится.',
        },
        profiles: {
            createProfile: 'Создать профиль',
            editProfile: 'Редактировать профиль',
            deleteProfile: 'Удалить профиль',
            noProfiles: 'Нет настроенных профилей',
            profileType: 'Тип профиля',
            fixedDuty: 'Фиксированная скорость вентилятора',
            selectedPointDuty: 'Мощность выбранной точки',
            selectedPointTemp: 'Температура выбранной точки',
            tempSource: 'Источник температуры',
            memberProfiles: 'Профили-участники',
            mixFunction: 'Функция смешивания',
            applyMixFunction: 'Применить функцию смешивания к выбранным профилям',
            profilesToMix: 'Профили для смешивания',
            saveProfile: 'Сохранить профиль',
            function: 'Функция',
            functionToApply: 'Функция для применения',
            graphProfileMouseActions:
                'Действия мыши для графического профиля:\n- Прокрутка для масштабирования.\n- Левый клик на линии для добавления точки.\n- Правый клик на точке для удаления.\n- Перетаскивание точки для перемещения.',
            unsavedChanges: 'В этом профиле есть несохраненные изменения.',
            unsavedChangesHeader: 'Несохраненные изменения',
            appliedFunction: 'Применяемая функция',
            newProfile: 'Новый профиль',
            tooltip: {
                profileType:
                    'Типы профилей:<br/>- По умолчанию: Без управления, возвращает управление драйверу устройства<br/>- Фиксированный: Устанавливает постоянную скорость<br/>- График: Настраиваемая кривая вентилятора<br/>- Смешанный: Комбинирует несколько профилей<br/>- Наложение: применяет смещение к выходу существующего профиля',
            },
            profileDeleted: 'Профиль удалён',
            profileDuplicated: 'Профиль дублирован',
            deleteProfileConfirm: 'Вы уверены, что хотите удалить: "{name}"?',
            deleteProfileWithChannelsConfirm:
                '"{name}" в настоящее время используется: {channels}.\nУдаление этого профиля сбросит настройки этих каналов.\nВы уверены, что хотите удалить "{name}"?',
            profileUpdated: 'Профиль успешно обновлен',
            profileUpdateError: 'Произошла ошибка при попытке обновить этот профиль',
            tempSourceRequired: 'Для графического профиля требуется источник температуры.',
            memberProfilesRequired:
                'Для смешанного профиля требуется как минимум 2 профиля-участника.',
            minProfileTemp: 'Минимальная температура профиля',
            maxProfileTemp: 'Максимальная температура профиля',
            staticOffset: 'Статическое смещение',
            offsetType: 'Тип смещения',
            offsetTypeStatic: 'Статическое смещение',
            offsetTypeGraph: 'Графическое смещение',
            baseProfile: 'Базовый профиль',
            baseProfileRequired: 'Для профиля наложения требуется базовый профиль.',
            selectedPointOutputDuty: 'Выходная скорость профиля в выбранной точке',
            selectedPointOffset: 'Смещение скорости в выбранной точке',
            profileOutputDuty: 'Выходная скорость профиля',
            offsetDuty: 'Скорость смещения',
            points: 'Точки',
            moveTable: 'Переместить в другой угол',
            addPointAfter: 'Добавить точку после',
            removePoint: 'Удалить точку',
            curvePointLimitBadge: 'макс. {n} тчк',
            curveLimitedByAmdGpu:
                'Кривая ограничена {n} точками аппаратной кривой вентилятора AMD GPU.',
            curveLimitedByFirmware:
                'Кривая ограничена {n} точками кривой вентилятора прошивки устройства.',
        },
        controls: {
            viewType: 'Тип отображения',
            controlOrView: 'Управление или просмотр',
            title: 'Управление системой',
            noControllableChannels: 'Управляемые каналы не найдены.',
            noControlChain: 'Цепочка управления для этого канала не найдена.',
            controlFlow: 'Поток управления',
            backToOverview: 'Вернуться к обзору управления',
            viewControlFlow: 'Просмотр потока управления',
            switchProfile: 'Сменить профиль',
            switchTempSource: 'Сменить источник температуры',
            switchFunction: 'Сменить функцию',
            switchMembers: 'Сменить профили-участники',
            switchBaseProfile: 'Сменить базовый профиль',
            adjustFixedSpeed: 'Настроить фиксированную скорость',
            editSources: 'Редактировать источники',
        },
        modes: {
            createMode: 'Создать режим',
            editMode: 'Редактировать режим',
            deleteMode: 'Удалить режим',
            noModes: 'Нет настроенных режимов',
            deleteModeConfirm: 'Вы уверены, что хотите удалить режим: "{name}"?',
            updateModeConfirm:
                'Вы уверены, что хотите перезаписать "{name}" текущей конфигурацией?',
            duplicateMode: 'Дублировать режим',
        },
        functions: {
            createFunction: 'Создать функцию',
            editFunction: 'Редактировать функцию',
            deleteFunction: 'Удалить функцию',
            noFunctions: 'Нет настроенных функций',
            saveFunction: 'Сохранить функцию',
            functionType: 'Тип функции',
            functionTypeTooltip:
                'Типы функций:<br/>' +
                '- <b>Идентичность</b>: Применяет ограничения размера шага, но в остальном передаёт значение профиля без изменений.<br/>' +
                '- <b>Стандартная</b>: Применяет ограничения размера шага и настройки гистерезиса для точного контроля времени отклика и стабильности вентилятора.<br/>' +
                '- <b>Экспоненциальное скользящее среднее</b>: Сглаживает колебания температуры с помощью взвешенного среднего. Проще, но менее точно, чем Стандартная.',
            stepSizeTitle: 'Размер шага',
            fixedStepSize: 'Фиксированный',
            fixedStepSizeTooltip:
                'Включено использует фиксированный размер шага для всех изменений.\nВыключено позволяет установить минимальный и максимальный диапазон размера шага.',
            asymmetric: 'Асимметричный',
            asymmetricTooltip:
                'При включении можно настроить отдельные ограничения размера шага для увеличения и уменьшения скорости.\nПолезно, когда вы хотите, чтобы вентиляторы быстро ускорялись, но медленно замедлялись, или наоборот.',
            stepSizeMin: 'Минимум',
            stepSizeMinTooltip:
                'Наименьшее изменение скорости вентилятора, которое будет применено.\nМеньшие изменения игнорируются для уменьшения ненужных корректировок.',
            stepSizeMax: 'Максимум',
            stepSizeMaxTooltip:
                'Наибольшее изменение скорости вентилятора, разрешенное за обновление.\nБольшие изменения ограничиваются этим значением для более плавных переходов.',
            stepSizeFixed: 'Размер',
            stepSizeFixedTooltip:
                'Единый размер шага, применяемый ко всем изменениям скорости вентилятора.\nВсе корректировки будут ограничены именно этим значением.',
            stepSizeFixedIncreasing: 'Увеличение',
            stepSizeFixedIncreasingTooltip:
                'Фиксированный размер шага при увеличении скорости вентилятора.\nВсе корректировки вверх будут ограничены именно этим значением.',
            stepSizeFixedDecreasing: 'Уменьшение',
            stepSizeFixedDecreasingTooltip:
                'Фиксированный размер шага при уменьшении скорости вентилятора.\nВсе корректировки вниз будут ограничены именно этим значением.',
            stepSizeMinIncreasing: 'Минимум увеличения',
            stepSizeMinIncreasingTooltip:
                'Минимальный размер шага при увеличении скорости вентилятора.\nМеньшие вычисленные изменения игнорируются для уменьшения ненужных корректировок.',
            stepSizeMaxIncreasing: 'Максимум увеличения',
            stepSizeMaxIncreasingTooltip:
                'Максимальный размер шага при увеличении скорости вентилятора.\nОграничивает, насколько быстро вентиляторы могут ускоряться за обновление.',
            stepSizeMinDecreasing: 'Минимум уменьшения',
            stepSizeMinDecreasingTooltip:
                'Минимальный размер шага при уменьшении скорости вентилятора.\nМеньшие вычисленные изменения игнорируются для уменьшения ненужных корректировок.',
            stepSizeMaxDecreasing: 'Максимум уменьшения',
            stepSizeMaxDecreasingTooltip:
                'Максимальный размер шага при уменьшении скорости вентилятора.\nОграничивает, насколько быстро вентиляторы могут замедляться за обновление.',
            windowSize: 'Размер окна',
            windowSizeTooltip:
                'Размер выборки температуры окна, используемый в расчете экспоненциального скользящего среднего.\nМеньшие значения = более быстрая реакция, более чувствительны к скачкам температуры.\nБольшие значения = более медленная реакция, более плавные переходы скорости вентилятора.\nСовет: Используйте стандартную функцию для точного контроля времени реакции.',
            emaCustomSensorAvailableNote:
                'EMA также доступна как тип пользовательского датчика, что позволяет напрямую отображать сглаженную температуру на графике.',
            emaDeprecatedWarning:
                'Тип функции EMA устарел. Пожалуйста, переключитесь на тип пользовательского датчика EMA.',
            hysteresis: 'Расширенный гистерезис',
            hysteresisThreshold: 'Порог',
            hysteresisThresholdTooltip:
                'Минимальное изменение температуры (°C), необходимое для изменения скорости вентилятора.\nПомогает предотвратить быстрые колебания скорости вентилятора из-за небольших изменений температуры.',
            hysteresisDelay: 'Задержка',
            hysteresisDelayTooltip:
                'Задержка реакции (секунды) перед применением изменений скорости вентилятора.\nВременные скачки температуры в пределах этой задержки игнорируются, сглаживая колебания.',
            onlyDownward: 'Только понижение',
            onlyDownwardTooltip: 'Применять настройки гистерезиса только при снижении температуры.',
            general: 'Общие',
            thresholdHopping: 'Пропуск порога',
            thresholdHoppingTooltip:
                'Когда скорость вентилятора остается неизменной 30+ секунд, ограничения размера шага и гистерезиса временно обходятся.\nЭто гарантирует, что вентиляторы в конечном итоге достигнут целевой скорости, даже при консервативных настройках порога.',
            stepOverrides: 'Переопределения шага',
            bypassMinAtExtremes: 'Всегда применять 0% / 100%',
            bypassMinAtExtremesTooltip:
                'При включении целевые скважности 0% или 100% применяются даже когда изменение меньше минимального размера шага.\nПолезно для обеспечения полной остановки вентиляторов или достижения максимальной скорости. По умолчанию отключено.',
            unsavedChanges: 'Есть несохраненные изменения в этой функции.',
            unsavedChangesHeader: 'Несохраненные изменения',
            functionError: 'Ошибка при попытке обновить эту функцию',
            newFunction: 'Новая функция',
            functionDeleted: 'Функция удалена',
            functionDuplicated: 'Функция дублирована',
            deleteFunctionConfirm: 'Вы уверены, что хотите удалить "{name}"?',
            deleteFunctionWithProfilesConfirm:
                '"{name}" в настоящее время используется профилями: {profiles}.\nУдаление этой функции сбросит функции этих профилей.\nВы уверены, что хотите удалить "{name}"?',
            functionUpdated: 'Функция обновлена',
            functionUpdateError: 'Произошла ошибка при попытке обновить эту функцию',
        },
        error: {
            accessDenied: 'Доступ запрещён',
            accessDeniedMessage:
                'Аутентификация не удалась. Пожалуйста, проверьте пароль и попробуйте снова.',
            connectionError: 'Ошибка подключения CoolerControl',
            connectionToast: 'Не удается подключиться к демону',
            connectionToastDetail:
                'Не удается подключиться к демону. Пожалуйста, убедитесь, что служба запущена и попробуйте подключиться снова.',
            connectionRetryFailure: 'Соединение не установлено - повторная попытка не удалась',
            connectionRetryDetail: 'Не удалось подключиться к демону после нескольких попыток.',
            errorLoadingGraph: 'Ошибка загрузки графика',
            highCpuUsageWarning: 'Обнаружено высокое использование ЦП',
            highCpuUsageDetail:
                'Текущее использование ЦП высокое.\nДля снижения нагрузки на систему рассмотрите:\n1. Уменьшение количества отображаемых графиков\n2. Уменьшение количества отслеживаемых датчиков\n3. Увеличение интервала опроса',
            pageNotFound: 'Страница не найдена',
            returnToDashboard: 'Вернуться к панели',
            connectionErrorMessage: 'Не удалось подключиться к демону CoolerControl.',
            serviceRunningMessage: 'Пожалуйста, проверьте, запущена ли служба демона.',
            checkProjectPage: 'Для помощи в настройке демона см.',
            projectPage: 'страницу проекта',
            helpfulCommands: 'Полезные команды:',
            nonStandardAddress:
                'Если у вас нестандартный адрес демона, вы можете указать его ниже:',
            daemonAddressDesktop: 'Адрес демона (настольное приложение)',
            daemonAddressWeb: 'Адрес демона (веб-интерфейс)',
            addressTooltip: 'IP-адрес или доменное имя для установления соединения.',
            portTooltip: 'Порт для установления соединения.',
            sslTooltip: 'Подключаться ли к демону с использованием SSL/TLS.',
            saveTooltip: 'Сохранить настройки и перезагрузить интерфейс',
            resetTooltip: 'Сбросить на настройки по умолчанию',
        },
        singleDashboard: {
            minutes: 'мин',
            chartMouseActions:
                'Действия мыши на панели:\n- Выделите для увеличения.\n- Прокрутите для изменения масштаба.\n- Щелкните правой кнопкой мыши для панорамирования при увеличении.\n- Дважды щелкните для сброса и возобновления обновления.',
            timeRange: 'Временной диапазон',
            chartType: 'Тип графика',
        },
        mode: {
            activateMode: 'Активировать режим',
            currentlyActive: 'Сейчас активен',
            modeHint:
                'Примечание: Режимы не включают настройки профилей или функций, только конфигурации каналов.',
        },
        lighting: {
            saveLightingSettings: 'Сохранить настройки подсветки',
            lightingMode: 'Режим подсветки',
            speed: 'Скорость',
            direction: 'Направление',
            forward: 'Вперед',
            backward: 'Назад',
            numberOfColors: 'Количество цветов',
            numberOfColorsTooltip:
                'Количество цветов для использования в выбранном режиме подсветки.',
        },
        lcd: {
            saveLcdSettings: 'Сохранить настройки LCD',
            lcdMode: 'Режим LCD',
            brightness: 'Яркость',
            brightnessPercent: 'Процент яркости',
            orientation: 'Ориентация',
            orientationDegrees: 'Ориентация в градусах',
            chooseImage: 'Выбрать изображение',
            dragAndDrop: 'Перетащите файлы сюда.',
            tempSource: 'Источник температуры',
            tempSourceTooltip: 'Источник температуры для использования на LCD-дисплее.',
            imagesPath: 'Путь к изображениям',
            imagesPathTooltip:
                'Введите абсолютный путь к каталогу, содержащему изображения.\nКаталог должен содержать хотя бы один файл изображения, и они\nмогут быть статическими изображениями или gif-файлами. Карусель будет циклически\nпереключать их с выбранной задержкой. Все файлы обрабатываются\nпри отправке для обеспечения максимальной совместимости.',
            browse: 'Обзор',
            browseTooltip: 'Обзор каталога изображений',
            delayInterval: 'Интервал задержки',
            delayIntervalTooltip:
                'Минимальное количество секунд задержки между сменой изображений.\nОбратите внимание, что фактическая задержка может быть больше из-за частоты опроса демона.',
            processing: 'Обработка...',
            applying: 'Применение...',
            unsavedChanges: 'Есть несохраненные изменения в настройках LCD.',
            unsavedChangesHeader: 'Несохраненные изменения',
            imageTooLarge: 'Изображение слишком большое. Пожалуйста, выберите меньшее.',
            notImageType: 'Файл не распознается как изображение',
        },
        shortcuts: {
            shortcuts: 'Сочетания клавиш',
            ctrl: 'Ctrl',
            alt: 'Alt',
            left: 'Влево',
            right: 'Вправо',
            comma: ',',
            h: 'h',
            a: 'a',
            c: 'c',
            i: 'i',
            slash: '/',
            one: '1',
            two: '2',
            three: '3',
            four: '4',
            f11: 'F11',
            viewShortcuts: 'Сочетания клавиш',
            home: 'Главная страница',
            settings: 'Настройки',
            info: 'Информация о приложении',
            dashboardOne: 'Панель 1',
            dashboardTwo: 'Панель 2',
            dashboardThree: 'Панель 3',
            dashboardFour: 'Панель 4',
            alerts: 'Оповещения',
            controls: 'Управление',
            sideMenuCollapse: 'Свернуть боковое меню',
            sideMenuExpand: 'Развернуть боковое меню',
            fullScreen: 'Полный экран',
        },
    },
    components: {
        confirmation: {
            title: 'Подтверждение',
            message: 'Вы уверены?',
        },
        aseTek690: {
            sameDeviceID:
                'Устаревшие NZXT Kraken и EVGA CLC имеют одинаковый идентификатор устройства, и CoolerControl не может определить, какое устройство подключено. Это необходимо для правильной связи с устройством.',
            restartRequired:
                'Может потребоваться перезапуск системных служб CoolerControl, который будет выполнен автоматически при необходимости.',
            deviceModel: 'Является ли устройство Liquidctl одной из следующих моделей?',
            modelList: 'NZXT Kraken X40, X60, X31, X41, X51 или X61',
            acceptLabel: 'Да, это устаревшее устройство Kraken',
            rejectLabel: 'Нет, это устройство EVGA CLC',
        },
        password: {
            title: 'Введите свой пароль',
            newPasswordTitle: 'Введите новый пароль',
            invalidPassword: 'Неверный пароль',
            forgotPassword: 'Забыли пароль?',
            forgotPasswordHelpIntro:
                'Выполните эту команду в терминале от имени root, затем нажмите "Перезагрузить UI":',
            forgotPasswordCopyCommand: 'Скопировать команду',
            forgotPasswordCommandCopied: 'Команда скопирована в буфер обмена',
            forgotPasswordReloadButton: 'Перезагрузить UI',
            continueButton: 'Продолжить',
            backButton: 'Назад',
            passwordMismatch: 'Пароли не совпадают',
        },
        notFound: {
            message: 'Как и идеальный Linux 🐧 дистрибутив,\nэта страница не существует.',
        },
        helloWorld: {
            message: 'Вы успешно создали проект с Vite + Vue 3. Что дальше?',
        },
        dashboardInfo: {
            description:
                'Панели позволяют просматривать данные датчиков вашей системы в соответствии с вашими предпочтениями. Вы можете выбирать между графиками на основе времени или таблицами и настраивать фильтры и параметры для каждого графика, чтобы сосредоточиться на конкретных данных, которые вы хотите просмотреть. Кроме того, вы можете создавать несколько панелей, настроенных в соответствии с вашими потребностями.',
        },
        modeInfo: {
            description:
                'Режимы позволяют сохранять настройки каналов устройств для быстрого и легкого применения. Например, вы можете создать режим «Игровой» и режим «Тихий», что позволит легко переключаться между ними.',
            note: 'Обратите внимание, что создание различных профилей вентиляторов может потребоваться для каждого режима, поскольку режимы включают только конфигурации каналов и не включают внутренние настройки профилей или функций.',
        },
        alertInfo: {
            description:
                'Оповещения используются для уведомления о возникновении определенных условий. Они могут отслеживать температуру и скорость вентиляторов, чтобы убедиться, что ваша система работает правильно. Оповещения настраиваются для определенных диапазонов значений датчиков и отправляют уведомления, когда значения превышают или возвращаются в допустимые пороговые диапазоны.',
        },
        customSensorInfo: {
            title: 'Обзор пользовательских датчиков',
            description:
                'Пользовательские датчики позволяют комбинировать существующие датчики различными способами, повышая ваш контроль и эффективность охлаждения системы. Кроме того, они поддерживают данные на основе файлов, что позволяет сценариям внешних входов датчиков для большей гибкости.',
            note: 'Примечание: Вы можете использовать профили Mix для объединения выходов нескольких пользовательских датчиков.',
        },
        functionInfo: {
            title: 'Обзор функций',
            description:
                'Функции — это настраиваемые алгоритмы, применяемые к выходам профилей. Они позволяют управлять изменениями скорости вентиляторов, настраивать параметры гистерезиса и использовать скользящие средние для динамических температур.',
            identityFunction:
                'Функция идентичности — самый простой вариант, так как она не изменяет вычисленный выход профиля; она позволяет только устанавливать минимальные и максимальные диапазоны изменения скорости. Это особенно полезно для минимизации постоянных колебаний скорости вентилятора.',
        },
        profileInfo: {
            title: 'Обзор профилей',
            description:
                'Профили определяют настраиваемые параметры для управления скоростью вентиляторов, при этом один и тот же профиль может использоваться для нескольких вентиляторов. Типы включают:',
            type: {
                fixed: 'Фиксированная скорость',
                fanCurve: 'Кривая вентилятора/график',
                mix: 'Смешанный профиль',
                default: 'Настройки устройства по умолчанию',
            },
            additionalInfo:
                'Профили являются основой для управления скоростью вентиляторов и могут быть дополнительно улучшены путем применения более продвинутых алгоритмических функций.',
        },
        deviceInfo: {
            details: 'Сведения об устройстве',
            systemName: 'Системное имя',
            deviceType: 'Тип устройства',
            deviceUID: 'UID устройства',
            firmwareVersion: 'Версия прошивки',
            model: 'Модель',
            driverName: 'Имя драйвера',
            driverType: 'Тип драйвера',
            driverVersion: 'Версия драйвера',
            locations: 'Расположения',
        },
        onboarding: {
            welcome: 'Добро пожаловать в CoolerControl!',
            gettingStartedIntro:
                'Выберите тур, чтобы освоиться. Быстрый тур охватывает основное в нескольких шагах. Подробный тур проведёт вас через каждое меню и кнопку.',
            startTourAgain:
                'Вы можете снова запустить этот тур в любое время со страницы Информация и инструменты.',
            quickTour: 'Быстрый тур',
            thoroughTour: 'Подробный тур',
            maybeLater: 'Возможно позже',
            openGettingStarted: 'Открыть документацию',
            finishLater: 'Я сам разберусь',
            appInfo: 'Информация и инструменты',
            appInfoDesc:
                'Просмотр информации о приложении, статуса демона, логов, полезных ссылок и инструментов нагрузочного тестирования. Значок на логотипе предупредит о проблемах.',
            controls: 'Управление',
            controlsDesc:
                'Регулируйте скорости вентиляторов, применяйте Профили и управляйте каждым обнаруженным каналом из одного места.',
            profiles: 'Профили',
            profilesDesc:
                'Профили определяют, как вентилятор реагирует на изменения температуры. Графические профили позволяют рисовать собственные кривые вентилятора и могут использоваться на нескольких устройствах.',
            functions: 'Функции',
            functionsDesc:
                'Функции применяются к профилям для сглаживания переходов скорости вентиляторов и снижения шума.',
            systemMenu: 'Системное меню',
            systemMenuDesc:
                'Главное меню перечисляет устройства и датчики этой системы. Каждый раздел можно развернуть, чтобы увидеть его каналы и назначенные элементы управления.',
            dashboards: 'Панели',
            dashboardsDesc:
                'Панели позволяют создавать пользовательские представления с графиками для мониторинга температуры, скорости вентиляторов и других данных в реальном времени.',
            modes: 'Режимы',
            modesDesc:
                'Режимы это сохранённые наборы ваших настроек. Переключайтесь между конфигурациями вроде Тихий и Производительность одним кликом.',
            alerts: 'Оповещения',
            alertsDesc:
                'Оповещения уведомляют, когда значения датчиков превышают выбранные пороги, чтобы вы могли реагировать до того, как возникнут проблемы.',
            customSensors: 'Пользовательские датчики',
            customSensorsDesc:
                'Пользовательские датчики комбинируют существующие данные датчиков разными способами или запускают ваш собственный скриптовый вывод в качестве источника температуры.',
            quickAdd: 'Быстрое добавление',
            quickAddDesc: 'Быстрое создание новых панелей, профилей, функций и другого.',
            dashboardQuick: 'Быстрое меню панелей',
            dashboardQuickDesc: 'Переход к любой панели, даже когда главное меню свёрнуто.',
            modesQuick: 'Быстрое меню режимов',
            modesQuickDesc:
                'Переключайтесь между сохранёнными режимами из любого места приложения.',
            alertsQuick: 'Обзор оповещений',
            alertsQuickDesc:
                'Просматривайте текущее состояние каждого оповещения и проверяйте их недавнюю активность.',
            pluginsQuick: 'Обзор плагинов',
            pluginsQuickDesc:
                'Просматривайте установленные плагины и переходите к любому из них из любого места приложения.',
            settings: 'Настройки',
            settingsDesc: 'Настройка интерфейса, параметров демона и поведения системы.',
            access: 'Доступ',
            accessDesc: 'Управляйте паролем и подтверждайте текущий уровень доступа.',
            restartMenu: 'Меню перезапуска',
            restartMenuDesc:
                'Перезагрузка интерфейса или перезапуск системного демона при необходимости.',
            collapseMenu: 'Свернуть меню',
            collapseMenuDesc:
                'Разверните или сверните главное меню, чтобы дать остальной части приложения больше места.',
            thatsIt: 'Вот и все!',
            startNow:
                'Всё готово. Откройте документацию, чтобы узнать больше, или сразу начните настраивать устройства.',
        },
        axisOptions: {
            title: 'Параметры осей',
            autoScale: 'Автомасштаб',
            max: 'Макс',
            min: 'Мин',
            dutyTemperature: 'Нагрузка / Температура',
            rpmMhz: 'об/мин / МГц',
            krpmGhz: 'тыс. об/мин / ГГц',
            watts: 'ватт',
        },
        sensorTable: {
            device: 'Устройство',
            channel: 'Канал',
            current: 'Текущий',
            min: 'Мин',
            max: 'Макс',
            average: 'Среднее',
        },
        modeTable: {
            setting: 'Настройка',
        },
        menuTagAssign: {
            title: 'Назначить теги',
            noTags: 'Тегов пока нет.',
            newTag: 'Создать новый тег',
            tagName: 'Имя тега',
            editTag: 'Редактировать тег',
            deleteTag: 'Удалить тег',
        },
        wizards: {
            fanControl: {
                fanControlWizard: 'Мастер управления вентилятором',
                editCurrentProfile: 'Редактировать профиль',
                editCurrentFunction: 'Редактировать функцию',
                currentSettings: 'Текущие настройки',
                manualSpeed: 'Ручная скорость',
                createNewProfile: 'Новый профиль',
                existingProfile: 'Выбрать профиль',
                resetSettings: 'Сбросить в Без управления',
                chooseProfileNameType: 'Выберите имя и тип профиля',
                newDefaultProfile: 'Новый профиль по умолчанию',
                profileCreatedApplied: 'Профиль создан и применен',
                willCreatedAndAppliedTo: 'будет создан и применен к',
                newFixedProfile: 'Новый фиксированный профиль',
                withSettings: 'со следующими настройками',
                selectSpeed: 'Выберите скорость',
                newMixProfile: 'Новый смешанный профиль',
                newGraphProfile: 'Новый графический профиль',
                newOverlayProfile: 'Новый профиль наложения',
                functionFor: 'Выберите функцию для применения к',
                functionDescription:
                    'Функции позволяют точно настроить применение профиля, например, время отклика и минимальную скорость.',
                createNewFunction: 'Новая функция',
                existingFunction: 'Выбрать функцию',
                defaultFunction: 'Функция по умолчанию',
                chooseFunctionNameType: 'Выберите имя и тип функции',
                newFunctionName: 'Функция для {profileName}',
                summary: 'Итог',
                aNewProfile: 'Новый профиль',
                andFunction: 'и функция',
            },
            profile: {
                willCreated: 'будет создан.',
            },
            profileApply: {
                applyProfile: 'Применить профиль',
                channelsApply: 'Каналы для применения профиля',
                selectChannels: 'Выбрать каналы',
                channelsTooltip:
                    'Выберите один или несколько каналов для применения этого профиля.',
                selectByTag: 'Выбрать по тегу',
                selectByChannel: 'Выбрать по каналу',
                tagFanCount: '{count} канал | {count} каналов',
                noTags: 'Теги не настроены.',
            },
            functionApply: {
                applyFunction: 'Применить функцию',
                profilesApply: 'Профили для применения функции',
                selectProfiles: 'Выбрать профили',
                profilesTooltip:
                    'Выберите один или несколько профилей для применения этой функции.',
            },
            customSensor: {
                new: 'Новый пользовательский датчик',
            },
        },
        channelExtensionSettings: {
            title: 'Настройки канала устройства',
            firmwareControlledProfile: 'Профиль, управляемый прошивкой',
            firmwareControlledProfileDesc:
                'Если включено, прошивка устройства управляет профилем вентилятора.\nПолезно для оборудования, которое плохо реагирует на частые программные изменения скорости.\nДоступно только для граф-профилей, использующих внутренние датчики температуры устройства.\nНастройки функций не применяются.',
            saveError: 'Не удалось сохранить настройки расширения канала',
            firmwareControlDisabled:
                'Управление прошивкой недоступно при текущих настройках.\nИспользуйте граф-профиль для этого устройства с поддерживаемым внутренним датчиком температуры.',
        },
        deviceExtensionSettings: {
            title: 'Расширенные настройки устройства',
            directAccess: 'Прямой доступ',
            directAccessDesc:
                'При включении драйвер liquidctl будет игнорировать драйвер ядра HWMon\nи напрямую взаимодействовать с устройством.\nЭто может быть полезно для устройств, у которых возникают конфликты при использовании обоих драйверов.',
            useHwmon: 'Использовать драйвер HWMon',
            useHwmonDesc:
                'Переключает драйвер для этого устройства с liquidctl на драйвер ядра HWMon.\nЭто может улучшить производительность и стабильность, но может уменьшить доступные функции.',
            disableDevice: 'Отключить устройство liquidctl',
            disableInfo:
                'Отключение драйвера liquidctl отключит это устройство. Новое устройство на основе HWMon появится внизу меню устройств. Вы можете повторно включить устройство liquidctl в любое время из меню настроек.',
            commandDelay: 'Задержка команд',
            commandDelayDesc:
                'Задержка в миллисекундах между командами, отправляемыми на это устройство.\nЭто может помочь устройствам с проблемами связи,\nкогда несколько команд отправляются в быстрой последовательности.',
            overdrive: 'GPU Overdrive',
            overdriveDesc:
                'GPU AMD RDNA3/4 требуют включения overdrive для управления вентиляторами.\nЭто настраивает параметр ядра amdgpu.ppfeaturemask\nи требует перезагрузки системы.',
            overdriveEnable: 'Включить',
            overdriveActive: 'Активно',
            overdriveSuccess: 'Overdrive настроен',
            thinkPadFanControl: 'Управление вентилятором',
            thinkPadFanControlDesc:
                'Включает управление вентилятором ThinkPad ACPI.\nУправление вентилятором отключено по умолчанию из соображений безопасности.\nПродолжайте на свой страх и риск.',
            thinkPadFullSpeed: 'Полная скорость',
            thinkPadFullSpeedDesc:
                'Включает режим полной скорости для вентиляторов ThinkPad.\nПозволяет вентиляторам вращаться на абсолютном максимуме при 100%,\nно работает вне спецификации с повышенным износом.',
        },
    },
    auth: {
        enterPassword: 'Введите Ваш Пароль',
        setNewPassword: 'Введите Новый Пароль',
        changeDefaultPassword:
            'Пожалуйста, установите пароль для предотвращения несанкционированного доступа. Он не связан с вашей системной учётной записью.',
        loginFailed: 'Ошибка входа',
        invalidPassword: 'Неверный пароль',
        passwordSetFailed: 'Ошибка установки пароля',
        passwordSetSuccessfully: 'Новый пароль успешно установлен',
        logoutSuccessful: 'Вы успешно вышли из системы.',
        unauthorizedAction: 'Вам необходимо войти в систему для выполнения этого действия',
        accessTokens: 'Токены доступа',
        tokenLabel: 'Метка (напр. cctv)',
        tokenExpiry: 'Срок действия (необязательно)',
        createToken: 'Создать токен',
        tokenCreated: 'Токен создан',
        tokenCreatedDetail: 'Скопируйте этот токен сейчас. Он больше не будет показан.',
        tokenCopied: 'Токен скопирован в буфер обмена',
        tokenDeleted: 'Токен удалён',
        tokenCreateError: 'Не удалось создать токен',
        tokenDeleteError: 'Не удалось удалить токен',
        tokenLoadError: 'Не удалось загрузить токены',
        tokenDeleteConfirm:
            'Вы уверены, что хотите удалить этот токен? Все сервисы, использующие его, потеряют доступ.',
        tokenDeleteHeader: 'Удалить токен',
        noTokens: 'Токены доступа ещё не созданы.',
        expires: 'Истекает',
        expired: 'Истёк',
        active: 'Активен',
        never: 'Никогда',
        lastUsed: 'Последнее использование',
        neverUsed: 'Не использовался',
        created: 'Создан',
        label: 'Метка',
        actions: 'Действия',
        writeAccess: 'Доступ на запись',
        writeAccessTooltip:
            'Когда включено, этот токен может вносить изменения. Когда выключено, токен может только читать данные.',
    },
    device_store: {
        unauthorized: {
            summary: 'Сессия истекла',
            detail: 'Ваша сессия истекла. Перезагрузка для повторного входа.',
        },
        login: {
            success: {
                summary: 'Успех',
                detail: 'Вход выполнен успешно.',
            },
            failed: {
                summary: 'Ошибка входа',
                detail: 'Неверный пароль',
            },
            rate_limited: {
                summary: 'Вход временно заблокирован',
            },
        },
        logout: {
            summary: 'Выход',
            detail: 'Вы успешно вышли из системы.',
        },
        password: {
            set_success: {
                summary: 'Пароль',
                detail: 'Новый пароль успешно установлен',
            },
            set_failed: {
                summary: 'Ошибка установки пароля',
            },
        },
        asetek: {
            header: 'Обнаружено неизвестное устройство',
            success: {
                summary: 'Успех',
                detail_legacy: 'Тип модели устройства успешно установлен. Выполняется перезапуск.',
                detail_evga: 'Тип модели устройства успешно установлен.',
            },
            error: {
                summary: 'Ошибка',
                detail: 'Процесс прерван.',
            },
        },
    },
    models: {
        chartType: {
            timeChart: 'Временной график',
            table: 'Таблица',
        },
        dataType: {
            temp: 'Темп',
            duty: 'Нагрузка',
            load: 'Загрузка',
            rpm: 'Об/мин',
            freq: 'Частота',
            watts: 'Ватт',
        },
        profile: {
            profileType: {
                default: 'По умолчанию',
                fixed: 'Фиксированный',
                graph: 'График',
                mix: 'Смешанный',
                overlay: 'Наложение',
            },
            functionType: {
                identity: 'Идентичность',
                standard: 'Стандартная',
                exponentialMovingAvg: 'Экспоненциальное скользящее среднее',
            },
            mixFunctionType: {
                min: 'Минимум',
                max: 'Максимум',
                avg: 'Среднее',
                diff: 'Разность',
                sum: 'Сумма',
            },
        },
        customSensor: {
            sensorType: {
                mix: 'Смешанный',
                file: 'Файл',
                offset: 'Смещение',
                timeAverage: 'Среднее по времени',
                exponentialMovingAvg: 'Экспоненциальное скользящее среднее',
            },
            mixFunctionType: {
                min: 'Минимум',
                max: 'Максимум',
                delta: 'Дельта',
                avg: 'Среднее',
                weightedAvg: 'Взвешенное среднее',
            },
        },
        themeMode: {
            system: 'Системная',
            dark: 'Тёмная',
            light: 'Светлая',
            highContrastDark: 'Тёмная с высоким контрастом',
            highContrastLight: 'Светлая с высоким контрастом',
            custom: 'Пользовательская тема',
        },
        channelViewType: {
            control: 'Управление',
            dashboard: 'Панель',
        },
        startupPage: {
            appInfo: 'Информация и инструменты',
            homeDashboard: 'Домашняя панель',
            controls: 'Управление',
        },
        alertState: {
            active: 'Активный',
            inactive: 'Неактивный',
            error: 'ошибка',
        },
        pluginStatus: {
            running: 'Работает',
            stopped: 'Остановлен',
            unmanaged: 'Неуправляемый',
            disabled: 'Отключён',
        },
        deviceType: {
            customSensors: 'Пользовательские датчики',
            cpu: 'ЦП',
            gpu: 'ГП',
            liquidctl: 'Liquidctl',
            hwmon: 'Hwmon',
            servicePlugin: 'Плагин сервиса',
        },
        driverType: {
            kernel: 'Ядро',
            liquidctl: 'Liquidctl',
            nvml: 'NVML',
            nvidiaCli: 'Nvidia CLI',
            coolercontrol: 'CoolerControl',
            external: 'Внешний',
        },
        lcdModeType: {
            none: 'Нет',
            liquidctl: 'Liquidctl',
            custom: 'Пользовательский',
        },
        channelType: {
            lcd: 'ЖК-экран',
            lighting: 'Подсветка',
        },
    },
    daemon: {
        status: {
            ok: 'OK',
            hasWarnings: 'Есть предупреждения',
            hasErrors: 'Есть ошибки',
        },
    },
}
