{
  "nav": {
    "home": "Главная",
    "features": "Возможности",
    "useCases": "Сценарии",
    "appPreview": "Приложение",
    "editor": "Редактор",
    "docs": "Документация",
    "knowledge": "База знаний",
    "pricing": "Тарифы",
    "download": "Скачать",
    "auth": "Войти",
    "dashboard": "Кабинет",
    "ariaMain": "Основная навигация",
    "langSwitcher": "Переключить язык",
    "contacts": "Контакты"
  },
  "footer": {
    "desc": "Антидетект-браузер и визуальный редактор автоматизации для Windows. Изолированные профили, уникальные отпечатки, 130+ блоков без кода.",
    "colProduct": "Продукт",
    "colCompany": "Компания",
    "colLegal": "Правовая информация",
    "contacts": "Контакты",
    "intf": "Интерфейс",
    "terms": "Пользовательское соглашение",
    "privacy": "Политика конфиденциальности",
    "tgSupport": "Поддержка в Telegram",
    "copyright": "© 2026 Nexly · Басюль К. Д., г. Гомель, Республика Беларусь",
    "legalShort": {
      "terms": "Соглашение",
      "privacy": "Политика",
      "contacts": "Контакты"
    },
    "copyShort": "© 2026 Nexly · Антидетект-браузер с автоматизацией"
  },
  "common": {
    "loading": "Загрузка...",
    "notFound404": "404",
    "notFoundText": "Страница не найдена.",
    "toHome": "На главную",
    "fabTitle": "Поддержка в Telegram",
    "fabAria": "Написать в поддержку",
    "retry": "Повторить",
    "copy": "Копировать",
    "close": "Закрыть",
    "save": "Сохранить",
    "empty": "Пусто",
    "error": "Что-то пошло не так"
  },
  "home": {
    "heroTag": "Антидетект-браузер + автоматизация",
    "heroTitle": "Антидетект-браузер<br>с <em>визуальной автоматизацией</em>",
    "heroDesc": "Изолированные профили с уникальными отпечатками и визуальный редактор скриптов без кода в одном приложении. Запускай десятки сессий параллельно — для арбитража, парсинга, SMM или рутинных задач.",
    "heroCtaStart": "Начать бесплатно",
    "heroCtaUseCases": "Сценарии использования",
    "metricBlocks": "Блоков автоматизации",
    "metricFp": "Fingerprint-пресетов",
    "metricSessions": "Параллельных сессий",
    "mockTitle": "Process Manager — Profiles",
    "useCasesTag": "Сценарии использования",
    "useCasesHead": "Антидетект там, где нужна изоляция.<br>Автоматизация там, где есть рутина.",
    "useCasesLead": "Один инструмент закрывает обе задачи — от мультиаккаунтинга до парсинга и автопостинга без кода",
    "uc": {
      "multiTitle": "Мультиаккаунтинг",
      "multiDesc": "Facebook, Google, TikTok, маркетплейсы, крипто-аирдропы. Каждый аккаунт в изолированном профиле с уникальным отпечатком и своим прокси.",
      "parseTitle": "Парсинг и скрейпинг",
      "parseDesc": "Собирайте цены с маркетплейсов, каталоги, отзывы, лиды. Встроенные блоки извлечения данных, работа через прокси, обход капчи.",
      "autoTitle": "Автоматизация без кода",
      "autoDesc": "130+ drag & drop блоков: клики, ввод, условия, циклы, API, SQLite, файлы. Собери бота за час — без Puppeteer и Selenium.",
      "massTitle": "Массовые операции",
      "massDesc": "Регистрация, прогрев аккаунтов, рассылки, автопостинг. Оркестратор держит до 50+ процессов параллельно с лимитом потоков.",
      "qaTitle": "Автотесты (QA)",
      "qaDesc": "Визуальные сценарии E2E-тестирования без написания кода. Live-скриншоты, headless-режим, запуск в несколько потоков.",
      "routineTitle": "Рутина маркетолога",
      "routineDesc": "Выгрузка отчётов, проверка позиций, мониторинг конкурентов, работа с рекламными кабинетами — по расписанию и без участия."
    },
    "pillarsTag": "Два ядра в одном приложении",
    "pillarsHead": "Антидетект и автоматизация — <em>не отдельные продукты</em>",
    "pillarsLead": "Браузер и оркестратор процессов работают как единая система",
    "pillars": {
      "antidetectTitle": "Антидетект-ядро",
      "antidetectDesc": "Модификация Chromium на уровне исходников, а не JS-инъекций. Pixelscan — 0 противоречий. CreepJS — 0 lies. Canvas, WebGL, Audio, GPU, шрифты, timezone — всё подменяется на уровне ядра.",
      "antidetectNote": "Три режима: Noise (авто), Custom (ручной), None (чистый)",
      "automationTitle": "Визуальный редактор + оркестратор",
      "automationDesc": "130+ блоков автоматизации: взаимодействие, навигация, извлечение данных, flow-контроль, API, SQLite, капча. Компиляция в Puppeteer JS. Запуск профилей кругами с лимитом потоков.",
      "automationNote": "Пользовательские функции, переменные, try/catch, reverse-парсинг JS → граф"
    },
    "security": {
      "tag": "End-to-end шифрование",
      "head": "Ваши cookies — <em>только ваши</em>.<br>Даже мы не сможем их прочитать",
      "lead": "Cookies шифруются на вашем устройстве ключом, которого нет на сервере. Если базу взломают, утечёт бэкап или прилетит судебный запрос — расшифровать данные математически невозможно.",
      "f1Title": "AES-256-GCM на устройстве",
      "f1Desc": "Шифруем перед отправкой. На сервер уходит ciphertext, не данные.",
      "f2Title": "Ключ известен только вам",
      "f2Desc": "Сервер хранит только HMAC-verifier — обратной операции нет.",
      "f3Title": "При компрометации БД — ноль",
      "f3Desc": "Бэкап, реплика, root-доступ — без ключа всё бесполезно.",
      "ctaPrivacy": "Политика конфиденциальности",
      "ctaDocs": "Как это работает",
      "cardTitle": "Что хранится в облаке",
      "rowYours": "У вас (на устройстве)",
      "rowOurs": "У нас (в БД)",
      "cardEncrypt": "AES-256-GCM",
      "promise": "<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" width=\"14\" height=\"14\"><path d=\"M9 12l2 2 4-4\"/><circle cx=\"12\" cy=\"12\" r=\"10\"/></svg><span><b>100%</b> конфиденциальность</span>"
    },
    "stats": {
      "blocks": "Блоков автоматизации",
      "sessions": "Параллельных сессий",
      "fp": "Fingerprint-пресетов",
      "profiles": "Профилей на Team"
    },
    "ctaTitle": "Попробуйте Nexly бесплатно",
    "ctaDesc": "Free-план: 10 профилей, 1 поток, 1 воркспейс. Без ограничений по времени. Обновляйтесь когда нужно больше.",
    "ctaChoose": "Выбрать тариф",
    "ctaSeeUseCases": "Посмотреть сценарии",
    "faq": {
      "head": "Частые вопросы",
      "lead": "Коротко о главном — без воды",
      "q1": "Чем Nexly отличается от обычного антидетекта?",
      "a1": "Nexly объединяет антидетект-браузер и визуальный редактор автоматизации в одном приложении. Не нужно покупать AdsPower и Puppeteer отдельно — собираете изолированный профиль и сценарий запуска в одном месте.",
      "q2": "Можно использовать без подписки?",
      "a2": "Да. Free-план даёт 10 профилей, 1 поток и 1 воркспейс без ограничений по времени. Этого достаточно для знакомства и небольших задач.",
      "q3": "Где хранятся cookie и профили?",
      "a3": "По умолчанию — локально на вашем устройстве. Облачная синхронизация cookie шифруется на стороне клиента и включается опционально в настройках.",
      "q4": "Поддерживаются ли macOS и Linux?",
      "a4": "Сейчас приложение работает на Windows 10/11 (x64). Версии для macOS и Linux в дорожной карте, но без точных сроков."
    }
  },
  "pricing": {
    "freeMonths": "бесплатно",
    "perMonth": "/мес",
    "currentPlan": "Текущий план",
    "yourPlan": "Ваш план",
    "unavailable": "Недоступно",
    "choose": "Выбрать",
    "upgrade": "Обновить",
    "freeCta": "Бесплатно",
    "trialTryDays": "Попробовать {days} дней бесплатно",
    "trialBuyMonth": "Купить за ${price}/мес",
    "trialGetDaysLocked": "🔒 Получить {days} дней бесплатно",
    "trialBadge": "Триал {days} дней бесплатно",
    "trialBadgeTgLocked": "Бесплатно с Telegram",
    "trialBadgePromo": "{days} дней бесплатно для новых пользователей",
    "trialHintTg": "Чтобы получить {days} дней {plan} бесплатно, <a href=\"#\" data-i18n-link=\"linkTgTrial\">привяжите Telegram</a> в кабинете. Это защита от многократных регистраций.",
    "trialHintPromo": "Зарегистрируйтесь и привяжите Telegram — первые {days} дней {plan} бесплатно. Триал доступен один раз.",
    "trialConfirm": "Активировать триал {plan} на {days} дней?\n\nПосле окончания триала вы автоматически вернётесь на Free. Триал доступен только один раз.",
    "trialTgRequired": "Для активации триала нужно привязать Telegram (защита от злоупотреблений).\n\nОткрыть раздел Telegram в кабинете?",
    "trialActivateFail": "Не удалось активировать триал",
    "trialActivatedMsg": "Триал {plan} активирован на {days} дней!",
    "trialBannerMsg": "Триал {plan} заканчивается через ~{hours} ч. После этого вы вернётесь на Free.",
    "trialBannerCta": "Выбрать тариф",
    "trialBannerClose": "Закрыть",
    "purchaseTitle": "Оплата подписки",
    "purchaseMonths": "Период",
    "purchasePrice": "Цена",
    "purchaseTotal": "К оплате",
    "purchaseMonthsOne": "1 мес",
    "purchaseMonthsPlain": "{n} мес",
    "purchaseMonthsDisc": "{n} мес (−{pct}%)",
    "annualHint": "−{pct}% при оплате за год",
    "enterpriseAsk": "Нужно больше — ",
    "enterpriseCurrent": "Ваш тариф — по договору. По любым вопросам ",
    "enterpriseCta": "напишите нам",
    "saleTitle": "Цена раннего доступа — закрепляется за вами навсегда",
    "saleSeats": { "one": "осталось {n} место", "few": "осталось {n} места", "many": "осталось {n} мест" },
    "saleOnlyPlan": "на тариф {plan}",
    "purchaseNotEnough": "Не хватает: ${amount}",
    "purchaseDiscount": "Скидка {pct}% за {months} мес!",
    "purchaseDiscountPersonal": "Персональная скидка {pct}%",
    "purchaseDiscountBoth": "Скидка {month}% за {months} мес + персональная {personal}% — итого −{total}%",
    "purchaseBtnConfirm": "Подтвердить — ${total}",
    "purchaseBtnProcessing": "Обработка...",
    "purchaseBtnRetry": "Попробовать",
    "purchaseBtnNotEnough": "Недостаточно средств",
    "purchaseBtnDone": "✓ Готово",
    "purchaseActivated": "✓ {plan} активирован!",
    "purchaseGeneric": "Ошибка",
    "plan": {
      "free": {
        "name": "Free",
        "sub": "Попробовать"
      },
      "trial": {
        "name": "Триал",
        "sub": "7 дней бесплатно"
      },
      "solo": {
        "name": "Solo",
        "sub": "Для одного"
      },
      "pro": {
        "name": "Pro",
        "sub": "Для профи"
      },
      "team": {
        "name": "Team",
        "sub": "Для команды"
      },
      "enterprise": {
        "name": "Для компании",
        "sub": "По договору",
        "cells": [
          "по договору",
          "от 40",
          "∞",
          "от 15",
          "✓",
          "✓",
          "✓"
        ]
      }
    },
    "loading": "Загрузка тарифов…",
    "loadFail": "Не удалось загрузить тарифы. Обновите страницу.",
    "byContract": "по договору",
    "contactUs": "Связаться с нами",
    "matrixTitle": "Что входит в тарифы",
    "matrixDesc": "Полное сравнение возможностей",
    "trialColumn": "Триал {days}д",
    "row": {
      "profiles": "Профили",
      "threads": "Потоки",
      "workspaces": "Воркспейсы",
      "seats": "Мест в команде",
      "scriptRun": "Запуск сценариев",
      "scriptEditor": "Редактор и блоки",
      "auditLog": "Журнал действий"
    },
    "feat": {
      "profiles": { "one": "{n} профиль", "few": "{n} профиля", "many": "{n} профилей" },
      "threads": { "one": "{n} поток", "few": "{n} потока", "many": "{n} потоков" },
      "workspaces": { "one": "{n} воркспейс", "few": "{n} воркспейса", "many": "{n} воркспейсов" },
      "seats": { "one": "{n} место в команде", "few": "{n} места в команде", "many": "{n} мест в команде" },
      "scriptRun": "Запуск сценариев",
      "scriptEditor": "Редактор и блоки",
      "fingerprint": "Custom отпечатки",
      "cookieRobot": "Cookie Robot",
      "auditLog": "Журнал действий"
    }
  },
  "seo": {
    "/": {
      "t": "Nexly — Бесплатный антидетект-браузер с визуальной автоматизацией",
      "d": "Nexly — антидетект-браузер для мультиаккаунтинга: изолированные профили с уникальными отпечатками (Canvas, WebGL, Audio), визуальный редактор скриптов, прокси-менеджер HTTP/SOCKS5, Cookie Robot, облачная синхронизация. Бесплатный план. Windows."
    },
    "/features": {
      "t": "Возможности антидетект-браузера Nexly — Отпечатки, автоматизация, прокси",
      "d": "Антидетект-отпечатки Canvas/WebGL/Audio/шрифты/GPU. Визуальный редактор скриптов 130+ блоков. Прокси-менеджер HTTP/SOCKS5/SSH. Cookie Robot. Параллельный запуск 50+ браузеров. Workspace изоляция."
    },
    "/app-preview": {
      "t": "Интерфейс антидетект-браузера Nexly — Интерактивное демо",
      "d": "Попробуйте интерфейс антидетект-браузера Nexly: управление профилями, настройка отпечатков, прокси-менеджер, оркестрация процессов, визуальный редактор скриптов."
    },
    "/editor": {
      "t": "Визуальный редактор скриптов для автоматизации браузера — Nexly",
      "d": "Drag & drop конструктор автоматизации браузера: клики, ввод текста, ожидания, условия, циклы, API. 130+ блоков. Кодогенерация в Puppeteer JS. Тестирование с live-скриншотами."
    },
    "/docs": {
      "t": "Документация антидетект-браузера Nexly — Руководство",
      "d": "Интерактивная документация Nexly: профили, прокси, fingerprint, Cookie Robot, визуальный редактор, оркестрация, workspaces, облачная синхронизация."
    },
    "/pricing": {
      "t": "Тарифы антидетект-браузера Nexly — от бесплатного до безлимитного",
      "d": "Free — 10 профилей бесплатно навсегда. Solo $29 (100 профилей), Pro $69 (500), Team $169 (2000), Enterprise по договору. Скидка до 35% при оплате за год. Антидетект-браузер с визуальной автоматизацией без кода."
    },
    "/download": {
      "t": "Скачать антидетект-браузер Nexly бесплатно — Windows x64",
      "d": "Скачайте бесплатный антидетект-браузер Nexly для Windows 10/11 (x64). Изолированные профили, уникальные отпечатки, прокси-менеджер, визуальная автоматизация."
    },
    "/auth": {
      "t": "Вход — Nexly антидетект-браузер",
      "d": "Войдите в аккаунт Nexly или зарегистрируйтесь."
    },
    "/dashboard": {
      "t": "Личный кабинет — Nexly",
      "d": "Управление подпиской, профилями и настройками антидетект-браузера Nexly."
    },
    "/knowledge": {
      "t": "База знаний — Всё об антидетект-браузерах, отпечатках и анонимности",
      "d": "Подробные руководства: что такое антидетект-браузер, browser fingerprinting, анонимный браузер, мультиаккаунтинг, типы прокси, автоматизация без кода."
    },
    "/knowledge/antidetect-browser": {
      "t": "Что такое антидетект-браузер — Полное руководство 2026",
      "d": "Что такое антидетект-браузер, как работает, отличия от VPN и Tor, кому нужен. Canvas, WebGL, Audio fingerprint. Сравнение антидетект-браузеров."
    },
    "/knowledge/browser-fingerprint": {
      "t": "Что такое отпечаток браузера (Browser Fingerprint) — Руководство",
      "d": "Browser fingerprinting: что это, как работает Canvas/WebGL/AudioContext fingerprint, как сайты идентифицируют пользователей, как защитить отпечаток браузера."
    },
    "/knowledge/anonymous-browsing": {
      "t": "Анонимный браузер: VPN vs Tor vs Антидетект — Что работает",
      "d": "Как обеспечить анонимность в интернете. Сравнение VPN, Tor Browser и антидетект-браузера. Что реально защищает от отслеживания и fingerprinting."
    },
    "/knowledge/multiaccounting": {
      "t": "Мультиаккаунтинг: как безопасно работать с аккаунтами 2026",
      "d": "Мультиаккаунтинг в Facebook, Google, TikTok, маркетплейсах. Как платформы детектируют мультиаккаунты. Антидетект-браузер для безопасной работы."
    },
    "/knowledge/proxy-types": {
      "t": "Типы прокси для антидетект-браузера: HTTP, SOCKS5, SSH",
      "d": "Сравнение HTTP, SOCKS5, SSH прокси. Резидентные vs серверные vs мобильные прокси. Какие прокси выбрать для антидетект-браузера и мультиаккаунтинга."
    },
    "/knowledge/automation": {
      "t": "Автоматизация браузера без кода — Визуальное программирование",
      "d": "Автоматизация действий в браузере: визуальный редактор vs Puppeteer vs Selenium. Drag & drop конструктор скриптов. 130+ блоков автоматизации."
    },
    "/privacy": {
      "t": "Политика конфиденциальности — Nexly",
      "d": "Политика обработки персональных данных. Закон Республики Беларусь №99-З и международные стандарты защиты данных."
    },
    "/terms": {
      "t": "Пользовательское соглашение — Nexly",
      "d": "Условия использования сервиса Nexly. Права и обязанности пользователя, ответственность сторон, правила работы с сервисом."
    },
    "/contacts": {
      "t": "Контакты поддержки — Nexly",
      "d": "Связаться с поддержкой Nexly. Telegram-бот для обращений, email для официальных запросов."
    },
    "/use-cases": {
      "t": "Сценарии использования антидетект-браузера Nexly — Парсинг, мультиаккаунтинг, автопостинг",
      "d": "Восемь типовых сценариев: парсинг маркетплейсов, мультиаккаунтинг и арбитраж трафика, массовая регистрация, автопостинг, SMM, E2E-тесты без кода, мониторинг цен и позиций. Всё через визуальный редактор скриптов Nexly без единой строки кода."
    },
    "bc": {
      "home": "Главная",
      "knowledge": "База знаний",
      "features": "Возможности",
      "appPreview": "Приложение",
      "editor": "Редактор",
      "docs": "Документация",
      "pricing": "Тарифы",
      "download": "Скачать",
      "auth": "Вход",
      "dashboard": "Кабинет",
      "privacy": "Политика конфиденциальности",
      "terms": "Пользовательское соглашение",
      "contacts": "Контакты",
      "useCases": "Сценарии"
    }
  },
  "pages": {
    "privacy": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/\">Главная</a> → <span>Политика конфиденциальности</span></div>\n    <h1>Политика конфиденциальности</h1>\n    <p class=\"kb-updated\">Действует с 17 апреля 2026 г. · Редакция 1</p>\n\n    <div class=\"kb-toc\">\n      <b>Содержание</b>\n      <a href=\"#scope\">1. Общие положения</a>\n      <a href=\"#operator\">2. Оператор данных</a>\n      <a href=\"#legal\">3. Правовое основание</a>\n      <a href=\"#data\">4. Какие данные мы обрабатываем</a>\n      <a href=\"#purposes\">5. Цели обработки</a>\n      <a href=\"#storage\">6. Сроки и место хранения</a>\n      <a href=\"#third-parties\">7. Передача третьим лицам</a>\n      <a href=\"#cookies\">8. Cookies и аналитика</a>\n      <a href=\"#security\">9. Меры защиты данных</a>\n      <a href=\"#rights\">10. Права субъекта данных</a>\n      <a href=\"#minors\">11. Несовершеннолетние</a>\n      <a href=\"#international\">12. Международная обработка</a>\n      <a href=\"#changes\">13. Изменения политики</a>\n      <a href=\"#contacts\">14. Контакты</a>\n    </div>\n\n    <section id=\"scope\">\n      <h2>1. Общие положения</h2>\n      <p>Настоящая Политика конфиденциальности (далее — <strong>Политика</strong>) определяет порядок обработки и защиты персональных данных пользователей сайта <a href=\"https://nexly-anty.com\">nexly-anty.com</a> и связанного с ним приложения Nexly (далее совместно — <strong>Сервис</strong>).</p>\n      <p>Политика составлена в соответствии с Законом Республики Беларусь от 7 мая 2021 г. № 99-З «О защите персональных данных» и с учётом общепризнанных международных стандартов защиты данных, включая Общий регламент ЕС по защите данных (GDPR, Regulation (EU) 2016/679) — в части, применимой к пользователям из юрисдикции ЕС.</p>\n      <p>Использование Сервиса означает согласие пользователя с настоящей Политикой. Если пользователь не согласен с её условиями, он не должен использовать Сервис.</p>\n    </section>\n\n    <section id=\"operator\">\n      <h2>2. Оператор персональных данных</h2>\n      <p>Оператором, осуществляющим обработку персональных данных, является физическое лицо:</p>\n      <ul>\n        <li><strong>Басюль Кирилл Денисович</strong></li>\n        <li>Место нахождения: г. Гомель, Республика Беларусь</li>\n        <li>Электронная почта: <a href=\"mailto:zimerfm@gmail.com\">zimerfm@gmail.com</a></li>\n        <li>Telegram: <a href=\"https://t.me/nexly_anty_bot\" target=\"_blank\" rel=\"noopener\">@nexly_anty_bot</a></li>\n      </ul>\n      <p>Обработка персональных данных осуществляется на территории Республики Беларусь; при использовании облачной инфраструктуры зарубежных поставщиков данные могут временно обрабатываться за пределами территории Республики Беларусь (см. раздел 12).</p>\n    </section>\n\n    <section id=\"legal\">\n      <h2>3. Правовое основание обработки</h2>\n      <p>Обработка персональных данных осуществляется на следующих правовых основаниях, предусмотренных статьёй 6 Закона № 99-З:</p>\n      <ul>\n        <li><strong>Согласие субъекта персональных данных</strong> — при регистрации, подписке на уведомления, обращении в поддержку, отправке обратной связи.</li>\n        <li><strong>Исполнение договора</strong> — для предоставления доступа к Сервису, проведения платёжных операций, выполнения обязательств по тарифному плану.</li>\n        <li><strong>Исполнение требований законодательства</strong> — для ведения налогового и бухгалтерского учёта, противодействия неправомерным действиям.</li>\n        <li><strong>Законные интересы оператора</strong> — для обеспечения информационной безопасности, предотвращения мошенничества, технического администрирования Сервиса.</li>\n      </ul>\n    </section>\n\n    <section id=\"data\">\n      <h2>4. Какие данные мы обрабатываем</h2>\n      <p>При использовании Сервиса обрабатываются следующие категории данных:</p>\n      <ul>\n        <li><strong>Регистрационные данные</strong> — адрес электронной почты, хеш пароля, имя пользователя (если указано).</li>\n        <li><strong>Идентификаторы сессий</strong> — токен аутентификации, идентификатор устройства (hw-hash), время последней активности. Используются исключительно для поддержания сеанса и защиты от перехвата.</li>\n        <li><strong>Платёжные данные</strong> — суммы операций, валюта, статус транзакции, провайдер платежа. <strong>Реквизиты банковских карт Оператор не собирает и не хранит</strong> — они обрабатываются платёжным провайдером.</li>\n        <li><strong>Данные связки Telegram</strong> — Telegram user ID и username (если привязан аккаунт для уведомлений и поддержки).</li>\n        <li><strong>Технические логи</strong> — IP-адрес, User-Agent, время запросов, коды ответов. Хранятся ограниченный срок для диагностики и безопасности.</li>\n        <li><strong>Реферальные данные</strong> — реферальный код, факт приглашения, суммы начислений.</li>\n      </ul>\n      <p><strong>Оператор не собирает</strong> данные, которые пользователь обрабатывает внутри приложения Nexly: профили браузера, куки-файлы, отпечатки, содержимое автоматизационных скриптов, результаты их выполнения. Эти данные находятся локально на устройстве пользователя или в его собственном облачном хранилище. Оператор не имеет к ним технического доступа.</p>\n    </section>\n\n    <section id=\"purposes\">\n      <h2>5. Цели обработки персональных данных</h2>\n      <ul>\n        <li>Предоставление доступа к функционалу Сервиса и управление аккаунтом.</li>\n        <li>Обработка платежей, учёт подписок и баланса.</li>\n        <li>Обработка обращений в поддержку, включая канал Telegram.</li>\n        <li>Отправка служебных уведомлений (подтверждение регистрации, пополнение баланса, изменения тарифа).</li>\n        <li>Обеспечение информационной безопасности и выявление злоупотреблений.</li>\n        <li>Соблюдение требований законодательства Республики Беларусь.</li>\n      </ul>\n      <p>Обработка персональных данных ограничивается достижением указанных целей и не осуществляется в целях, не совместимых с ними (п. 4 ст. 4 Закона № 99-З).</p>\n    </section>\n\n    <section id=\"storage\">\n      <h2>6. Сроки и место хранения</h2>\n      <p>Персональные данные хранятся не дольше, чем этого требуют цели обработки:</p>\n      <ul>\n        <li>Регистрационные и учётные данные — в течение срока действия аккаунта и 90 дней после его удаления (для возможности восстановления и для выполнения финансовых обязательств).</li>\n        <li>Данные платежей — в течение сроков, установленных законодательством о налоговом и бухгалтерском учёте.</li>\n        <li>Технические логи — до 90 дней.</li>\n        <li>Одноразовые коды привязки Telegram — 10 минут, после чего автоматически удаляются.</li>\n        <li>Данные для обработки обращений — до 1 года после закрытия обращения.</li>\n      </ul>\n      <p>По истечении сроков данные удаляются или обезличиваются.</p>\n    </section>\n\n    <section id=\"third-parties\">\n      <h2>7. Передача данных третьим лицам</h2>\n      <p>Оператор не продаёт и не передаёт персональные данные третьим лицам в коммерческих целях. Передача данных возможна только в следующих случаях:</p>\n      <ul>\n        <li><strong>Платёжные провайдеры</strong> — в объёме, необходимом для обработки транзакций.</li>\n        <li><strong>Инфраструктурные провайдеры</strong> — хостинг, CDN, почтовые сервисы, облачная база данных; только для хранения и передачи данных в рамках оказания этих услуг.</li>\n        <li><strong>Telegram</strong> — платформа Telegram Messenger Inc. при использовании бота для получения уведомлений и обращений в поддержку.</li>\n        <li><strong>По требованию законодательства</strong> — если этого требуют уполномоченные государственные органы в соответствии с законом.</li>\n      </ul>\n    </section>\n\n    <section id=\"cookies\">\n      <h2>8. Cookies и аналогичные технологии</h2>\n      <p>Сайт использует файлы cookie и технологии локального хранилища браузера (localStorage, sessionStorage) для следующих целей:</p>\n      <ul>\n        <li><strong>Строго необходимые</strong> — хранение токена аутентификации, сохранение сессии, реферальный код (если пользователь пришёл по ссылке).</li>\n        <li><strong>Функциональные</strong> — запоминание настроек интерфейса.</li>\n      </ul>\n      <p>Оператор гарантирует, что сессионные cookie-файлы защищены: передаются только по HTTPS, помечены флагами Secure и HttpOnly (где применимо), имеют ограниченный срок жизни и привязку к устройству. Пользователь может в любой момент очистить cookie в настройках своего браузера — это приведёт к завершению сеанса.</p>\n      <p>Облачные cookies хранятся на сервере в зашифрованном виде. При синхронизации Nexly Browser шифрует данные локально алгоритмом <strong>AES-256-GCM</strong>: на сервер передаётся уже непрозрачный шифротекст, инициализирующий вектор и тег аутентификации. <strong>Ключ шифрования никогда не покидает устройство пользователя</strong> — он выводится из мастер-пароля через PBKDF2 и хранится только в памяти локального приложения. Это означает, что <strong>при компрометации базы данных или серверной инфраструктуры пользовательские cookies остаются нечитаемыми</strong>: Оператор технически не способен их расшифровать, передать третьим лицам или восстановить.</p>\n      <p>Шифрование cookies включается пользователем самостоятельно в разделе «Безопасность» приложения. Для профилей с отключённым шифрованием действуют общие меры защиты: HTTPS, изоляция по user_id, минимизация хранения. Каждый пользователь может в любой момент удалить отдельный облачный профиль или одной операцией стереть все облачные cookies — действие необратимо и подтверждается на стороне сервера обязательным заголовком <code>X-Confirm-Bulk-Delete</code>.</p>\n      \n    </section>\n\n    <section id=\"security\">\n      <h2>9. Меры защиты данных</h2>\n      <p>Оператор принимает правовые, организационные и технические меры по обеспечению защиты персональных данных от несанкционированного доступа, изменения, уничтожения или раскрытия (ст. 17 Закона № 99-З):</p>\n      <ul>\n        <li>Шифрование передаваемых данных по протоколу HTTPS (TLS).</li>\n        <li>Хеширование паролей с использованием криптостойких алгоритмов — в явном виде пароли не хранятся.</li>\n        <li>Привязка активной сессии к устройству (hw-hash) для защиты от перехвата.</li>\n        <li>HMAC-подпись callback-запросов в Telegram-боте для защиты от подделки команд.</li>\n        <li>Разделение прав доступа к данным в базе и на сервере.</li>\n        <li>Периодическое удаление просроченных токенов и сессий.</li>\n        <li>Резервное копирование и мониторинг доступности.</li>\n      </ul>\n    </section>\n\n    <section id=\"rights\">\n      <h2>10. Права субъекта персональных данных</h2>\n      <p>В соответствии со статьями 10–14 Закона № 99-З пользователь имеет право:</p>\n      <ul>\n        <li>Получать информацию о составе и содержании своих персональных данных, целях и сроках их обработки.</li>\n        <li>Требовать от оператора изменения своих персональных данных в случае их неполноты, устаревания или неточности.</li>\n        <li>Отозвать своё согласие на обработку персональных данных.</li>\n        <li>Требовать удаления или прекращения обработки своих персональных данных.</li>\n        <li>Обжаловать действия или бездействие оператора в Национальный центр защиты персональных данных Республики Беларусь или в судебном порядке.</li>\n      </ul>\n      <p>Запрос на реализацию прав направляется на адрес <a href=\"mailto:zimerfm@gmail.com\">zimerfm@gmail.com</a> с указанием аккаунта и сути запроса. Срок ответа — не более 15 рабочих дней с даты поступления запроса.</p>\n    </section>\n\n    <section id=\"minors\">\n      <h2>11. Обработка данных несовершеннолетних</h2>\n      <p>В соответствии с пунктом 9 статьи 5 Закона № 99-З согласие на обработку персональных данных лица, не достигшего шестнадцати лет, даёт один из его законных представителей. Регистрируясь в Сервисе, пользователь подтверждает, что ему исполнилось 16 лет либо что регистрация осуществляется с согласия законного представителя.</p>\n      <p>Приобретение платных тарифов допускается лицами, достигшими 18 лет, либо лицами 16–18 лет с письменного согласия законного представителя.</p>\n    </section>\n\n    <section id=\"international\">\n      <h2>12. Международная обработка данных</h2>\n      <p>Часть технических данных (логи, резервные копии) может обрабатываться на серверах инфраструктурных провайдеров, расположенных за пределами Республики Беларусь. Оператор принимает меры для того, чтобы уровень защиты данных при такой обработке соответствовал требованиям законодательства Республики Беларусь.</p>\n      <p>Для пользователей из Европейского союза обработка осуществляется с учётом применимых норм GDPR: правовое основание обработки, право доступа, исправления, удаления (ст. 15–17 GDPR), право на переносимость данных (ст. 20 GDPR), право подачи жалобы в надзорный орган (ст. 77 GDPR).</p>\n    </section>\n\n    <section id=\"changes\">\n      <h2>13. Изменения политики</h2>\n      <p>Оператор вправе вносить изменения в настоящую Политику. Актуальная редакция всегда публикуется по адресу <a href=\"https://nexly-anty.com/privacy\">nexly-anty.com/privacy</a>. Дата последней редакции указана в начале документа. Существенные изменения доводятся до пользователей уведомлением по электронной почте или в личном кабинете.</p>\n    </section>\n\n    <section id=\"contacts\">\n      <h2>14. Контакты для запросов по персональным данным</h2>\n      <ul>\n        <li>Email: <a href=\"mailto:zimerfm@gmail.com\">zimerfm@gmail.com</a></li>\n        <li>Telegram: <a href=\"https://t.me/nexly_anty_bot\" target=\"_blank\" rel=\"noopener\">@nexly_anty_bot</a></li>\n      </ul>\n      <p>По вопросам, связанным с защитой персональных данных, также можно обратиться в Национальный центр защиты персональных данных Республики Беларусь: <a href=\"https://cpd.by\" target=\"_blank\" rel=\"noopener\">cpd.by</a>.</p>\n    </section>\n  </div>\n</article>\n",
    "terms": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/\">Главная</a> → <span>Пользовательское соглашение</span></div>\n    <h1>Пользовательское соглашение</h1>\n    <p class=\"kb-updated\">Действует с 17 апреля 2026 г. · Редакция 1</p>\n\n    <div class=\"kb-toc\">\n      <b>Содержание</b>\n      <a href=\"#parties\">1. Стороны и предмет</a>\n      <a href=\"#acceptance\">2. Принятие соглашения</a>\n      <a href=\"#description\">3. Описание Сервиса</a>\n      <a href=\"#account\">4. Регистрация и аккаунт</a>\n      <a href=\"#tariffs\">5. Тарифы и оплата</a>\n      <a href=\"#license\">6. Лицензия на использование</a>\n      <a href=\"#user-obligations\">7. Обязательства пользователя</a>\n      <a href=\"#prohibited\">8. Недопустимое использование</a>\n      <a href=\"#user-responsibility\">9. Ответственность пользователя</a>\n      <a href=\"#disclaimer\">10. Ограничение ответственности Оператора</a>\n      <a href=\"#security\">11. Безопасность данных и сессий</a>\n      <a href=\"#ip\">12. Интеллектуальная собственность</a>\n      <a href=\"#suspension\">13. Приостановка и блокировка</a>\n      <a href=\"#termination\">14. Расторжение соглашения</a>\n      <a href=\"#changes\">15. Изменения соглашения</a>\n      <a href=\"#law\">16. Применимое право и споры</a>\n      <a href=\"#contacts\">17. Контакты</a>\n    </div>\n\n    <section id=\"parties\">\n      <h2>1. Стороны и предмет</h2>\n      <p>Настоящее Пользовательское соглашение (далее — <strong>Соглашение</strong>) заключается между:</p>\n      <ul>\n        <li><strong>Оператором</strong> — физическим лицом Басюль Кириллом Денисовичем, г. Гомель, Республика Беларусь, действующим от своего имени (далее — «Оператор», «мы»);</li>\n        <li><strong>Пользователем</strong> — любым дееспособным физическим лицом или законно действующим юридическим лицом, использующим Сервис (далее — «Пользователь», «вы»).</li>\n      </ul>\n      <p>Соглашение регулирует условия использования сайта <a href=\"https://nexly-anty.com\">nexly-anty.com</a>, связанного с ним приложения Nexly и сопутствующих сервисов (далее совместно — <strong>Сервис</strong>).</p>\n      <p>Сервис представляет собой <strong>программный инструмент</strong>. Оператор предоставляет Пользователю техническую возможность использовать этот инструмент — но не совершает никаких действий от имени Пользователя, не участвует в его операциях и не определяет, каким образом Пользователь будет применять функционал Сервиса.</p>\n    </section>\n\n    <section id=\"acceptance\">\n      <h2>2. Принятие соглашения</h2>\n      <p>Использование любой части Сервиса — регистрация, вход в личный кабинет, скачивание приложения, оплата тарифа, обращение в поддержку — означает безусловное и полное принятие Пользователем условий настоящего Соглашения и <a href=\"/privacy\">Политики конфиденциальности</a>.</p>\n      <p>Если Пользователь не согласен с какими-либо условиями Соглашения — он обязан прекратить использование Сервиса.</p>\n    </section>\n\n    <section id=\"description\">\n      <h2>3. Описание Сервиса</h2>\n      <p>Nexly — это десктопное приложение для Windows, предоставляющее два функциональных модуля:</p>\n      <ul>\n        <li><strong>Антидетект-браузер</strong> — создание и управление изолированными браузерными профилями с независимыми цифровыми отпечатками, прокси и хранилищами данных.</li>\n        <li><strong>Визуальный редактор автоматизации и оркестратор процессов</strong> — конструктор скриптов для автоматизации действий в браузере и параллельный запуск процессов.</li>\n      </ul>\n      <p>Сайт <a href=\"https://nexly-anty.com\">nexly-anty.com</a> предоставляет доступ к личному кабинету, тарифам, документации, базе знаний и каналам поддержки.</p>\n      <p>Сервис — это инструмент общего назначения. Оператор не предлагает и не одобряет какие-либо конкретные сценарии его использования Пользователем.</p>\n    </section>\n\n    <section id=\"account\">\n      <h2>4. Регистрация и аккаунт</h2>\n      <p>Для доступа к части функционала Пользователь создаёт аккаунт, указывая адрес электронной почты и пароль. Пользователь обязуется указывать достоверные данные и самостоятельно поддерживать их актуальность.</p>\n      <p><strong>Один Пользователь — один аккаунт.</strong> Регистрация нескольких аккаунтов с целью обхода лимитов бесплатного тарифа или мошенничества в реферальной программе не допускается.</p>\n      <p>Пользователь самостоятельно обеспечивает конфиденциальность своих учётных данных и полностью отвечает за все действия, совершённые под его аккаунтом. О любом несанкционированном доступе следует незамедлительно сообщить Оператору.</p>\n      <p>Минимальный возраст для самостоятельной регистрации — 16 лет. Несовершеннолетние в возрасте от 16 до 18 лет вправе использовать Сервис и приобретать платные тарифы только с согласия законного представителя.</p>\n    </section>\n\n    <section id=\"tariffs\">\n      <h2>5. Тарифы и оплата</h2>\n      <p>Актуальный перечень тарифов и их стоимость указаны на странице <a href=\"/pricing\">тарифов</a>. Бесплатный тариф (Free) предоставляется без ограничения срока действия с пониженными лимитами.</p>\n      <p>Оплата платных тарифов осуществляется списанием средств с внутреннего баланса аккаунта, пополняемого через внешних платёжных провайдеров. Комиссии провайдеров и курсы валют определяются этими провайдерами и не зависят от Оператора.</p>\n      <p>Платные тарифы предоставляются с расчётной периодичностью в месяцах и активируются в момент оплаты. Возврат средств за уже оказанные услуги не производится. Возврат средств при технической невозможности оказания услуг по вине Оператора производится по согласованию, по запросу через канал поддержки.</p>\n    </section>\n\n    <section id=\"license\">\n      <h2>6. Лицензия на использование</h2>\n      <p>Оператор предоставляет Пользователю неисключительное, непередаваемое, отзывное право использовать приложение Nexly и Сервис в соответствии с условиями выбранного тарифа и настоящего Соглашения.</p>\n      <p>Пользователь не вправе:</p>\n      <ul>\n        <li>передавать доступ к своему аккаунту третьим лицам на возмездной или безвозмездной основе;</li>\n        <li>использовать Сервис для предоставления аналогичного функционала третьим лицам в качестве самостоятельной услуги (reselling);</li>\n        <li>осуществлять декомпиляцию, реверс-инжиниринг, модификацию исходного кода приложения или серверной части Сервиса, за исключением случаев, прямо разрешённых законодательством.</li>\n      </ul>\n    </section>\n\n    <section id=\"user-obligations\">\n      <h2>7. Обязательства Пользователя</h2>\n      <p>Пользователь обязуется использовать Сервис <strong>добросовестно</strong> и в соответствии с законодательством той юрисдикции, в которой он находится. Пользователь самостоятельно:</p>\n      <ul>\n        <li>определяет цели и способ использования Сервиса;</li>\n        <li>оценивает правомерность своих действий в отношении сторонних сайтов, сервисов и третьих лиц;</li>\n        <li>соблюдает условия использования (Terms of Service) тех сторонних ресурсов, с которыми взаимодействует через Сервис;</li>\n        <li>обеспечивает наличие всех необходимых прав и разрешений на данные, которые он обрабатывает в приложении.</li>\n      </ul>\n    </section>\n\n    <section id=\"prohibited\">\n      <h2>8. Недопустимое использование</h2>\n      <p>Пользователь не вправе использовать Сервис для:</p>\n      <ul>\n        <li>совершения действий, нарушающих законодательство Республики Беларусь или иной применимой юрисдикции;</li>\n        <li>несанкционированного доступа к компьютерным системам, сетям или данным третьих лиц;</li>\n        <li>распространения вредоносного программного обеспечения, фишинга, мошенничества;</li>\n        <li>нарушения авторских, смежных прав и прав интеллектуальной собственности третьих лиц;</li>\n        <li>сбора персональных данных третьих лиц без надлежащего правового основания;</li>\n        <li>DDoS-атак, массированных запросов, направленных на нарушение работы сторонних сервисов;</li>\n        <li>создания множества аккаунтов с целью обхода лимитов бесплатного тарифа или мошенничества в реферальной программе;</li>\n        <li>попыток обхода технических ограничений, защитных механизмов и систем учёта Сервиса;</li>\n        <li>передачи или продажи собственного аккаунта третьим лицам;</li>\n        <li>действий, очевидно нарушающих законные права и интересы Оператора или других пользователей Сервиса.</li>\n      </ul>\n      <p>Нарушение этого раздела является основанием для немедленной блокировки аккаунта без возврата уплаченных средств.</p>\n    </section>\n\n    <section id=\"user-responsibility\">\n      <h2>9. Ответственность Пользователя</h2>\n      <p><strong>Пользователь несёт полную и единоличную ответственность</strong> за все свои действия, совершённые с использованием Сервиса, за их последствия и за любой ущерб — как собственный, так и причинённый третьим лицам.</p>\n      <p>Пользователь самостоятельно отвечает перед третьими лицами, включая владельцев сайтов, платформ и сервисов, с которыми он взаимодействует через Nexly, за соблюдение их правил, условий использования и требований применимого законодательства.</p>\n      <p>Пользователь освобождает Оператора от любых претензий, исков и требований, связанных с его действиями при использовании Сервиса, и обязуется самостоятельно урегулировать такие претензии.</p>\n    </section>\n\n    <section id=\"disclaimer\">\n      <h2>10. Ограничение ответственности Оператора</h2>\n      <p>Сервис предоставляется «как есть» (as is). Оператор прилагает разумные усилия для обеспечения стабильной работы, но не гарантирует бесперебойную и безошибочную работу Сервиса в любое время.</p>\n      <p><strong>Оператор предоставляет только программный инструмент и не совершает никаких действий от имени Пользователя.</strong> Оператор не несёт ответственности за:</p>\n      <ul>\n        <li>действия Пользователя при использовании Сервиса и их последствия;</li>\n        <li>блокировки аккаунтов Пользователя в сторонних сервисах, санкции, штрафы или иные меры, применённые такими сервисами в отношении Пользователя;</li>\n        <li>нарушение Пользователем условий использования сторонних сайтов и платформ;</li>\n        <li>правомерность действий Пользователя в отношении третьих лиц;</li>\n        <li>содержание данных, которые Пользователь обрабатывает или передаёт через Сервис;</li>\n        <li>работоспособность сторонних прокси-серверов, платёжных провайдеров, мессенджеров и иных внешних сервисов, на которые Оператор не может влиять технически;</li>\n        <li>временную недоступность Сервиса, вызванную техническими работами, обстоятельствами непреодолимой силы или действиями третьих лиц.</li>\n      </ul>\n      <p>Совокупный размер ответственности Оператора перед Пользователем в любом случае не может превышать сумму, уплаченную Пользователем за использование Сервиса за последние 3 месяца, предшествующие дате наступления события.</p>\n    </section>\n\n    <section id=\"security\">\n      <h2>11. Безопасность данных и сессий</h2>\n      <p>Оператор гарантирует, что в отношении <strong>данных аутентификации и сессионных куки</strong> на сайте nexly-anty.com применяются следующие защитные меры:</p>\n      <ul>\n        <li>все данные передаются исключительно по защищённому соединению HTTPS (TLS);</li>\n        <li>пароли хранятся в виде криптостойкого хеша и не могут быть восстановлены в исходном виде;</li>\n        <li>сессионные токены имеют ограниченный срок жизни и привязываются к устройству Пользователя (по hw-хешу) — для защиты от перехвата;</li>\n        <li>callback-команды в Telegram-боте подписываются HMAC-подписью — это исключает подделку сигналов от имени Пользователя;</li>\n        <li>одноразовые коды привязки Telegram действуют не более 10 минут и аннулируются после первого использования;</li>\n        <li>Оператор не передаёт и не продаёт сессионные данные третьим лицам.</li>\n      </ul>\n      <p>Данные, которые Пользователь обрабатывает локально в приложении Nexly (куки-файлы профилей, отпечатки, скрипты автоматизации, результаты их работы), хранятся на устройстве Пользователя или в его собственном облачном хранилище. Оператор не имеет к этим данным технического доступа и ответственности за их сохранность на стороне Пользователя не несёт.</p>\n    </section>\n\n    <section id=\"ip\">\n      <h2>12. Интеллектуальная собственность</h2>\n      <p>Все права на Сервис, включая приложение Nexly, сайт, его дизайн, исходный код, графические материалы, тексты и торговое наименование «Nexly», принадлежат Оператору и охраняются законодательством об интеллектуальной собственности.</p>\n      <p>Пользователю не передаётся каких-либо прав на Сервис, кроме права использования в соответствии с условиями настоящего Соглашения.</p>\n    </section>\n\n    <section id=\"suspension\">\n      <h2>13. Приостановка и блокировка</h2>\n      <p>Оператор вправе приостановить или заблокировать доступ Пользователя к Сервису без предварительного уведомления в следующих случаях:</p>\n      <ul>\n        <li>нарушение Пользователем условий настоящего Соглашения;</li>\n        <li>совершение действий, подпадающих под раздел «Недопустимое использование»;</li>\n        <li>получение обоснованной жалобы от третьих лиц или уполномоченных органов;</li>\n        <li>подозрение в мошенничестве, компрометации аккаунта или автоматизированной атаки.</li>\n      </ul>\n      <p>При блокировке за нарушение Соглашения уплаченные средства не возвращаются.</p>\n    </section>\n\n    <section id=\"termination\">\n      <h2>14. Расторжение соглашения</h2>\n      <p>Пользователь вправе в любой момент прекратить использование Сервиса и удалить свой аккаунт через настройки личного кабинета или по запросу в поддержку.</p>\n      <p>Оператор вправе прекратить действие Соглашения в одностороннем порядке при систематическом нарушении Пользователем его условий, при прекращении работы Сервиса, а также в иных случаях, предусмотренных законодательством.</p>\n    </section>\n\n    <section id=\"changes\">\n      <h2>15. Изменения соглашения</h2>\n      <p>Оператор вправе в одностороннем порядке вносить изменения в настоящее Соглашение. Актуальная редакция публикуется по адресу <a href=\"https://nexly-anty.com/terms\">nexly-anty.com/terms</a> с указанием даты вступления в силу. Существенные изменения доводятся до Пользователей уведомлением в личном кабинете или по электронной почте не менее чем за 7 дней до их вступления в силу.</p>\n      <p>Продолжение использования Сервиса после вступления изменений в силу означает согласие Пользователя с новой редакцией Соглашения.</p>\n    </section>\n\n    <section id=\"law\">\n      <h2>16. Применимое право и разрешение споров</h2>\n      <p>К настоящему Соглашению применяется законодательство Республики Беларусь. Все споры, возникающие между сторонами, решаются путём переговоров. При невозможности урегулирования в досудебном порядке спор подлежит рассмотрению в суде по месту нахождения Оператора в соответствии с процессуальным законодательством Республики Беларусь.</p>\n      <p>Для пользователей, являющихся потребителями в юрисдикциях, где действуют специальные нормы защиты прав потребителей, применяются соответствующие императивные нормы таких юрисдикций.</p>\n    </section>\n\n    <section id=\"contacts\">\n      <h2>17. Контакты Оператора</h2>\n      <ul>\n        <li>Оператор: Басюль Кирилл Денисович</li>\n        <li>Место нахождения: г. Гомель, Республика Беларусь</li>\n        <li>Email: <a href=\"mailto:zimerfm@gmail.com\">zimerfm@gmail.com</a></li>\n        <li>Telegram: <a href=\"https://t.me/nexly_anty_bot\" target=\"_blank\" rel=\"noopener\">@nexly_anty_bot</a></li>\n      </ul>\n    </section>\n  </div>\n</article>\n",
    "knowledge": "<section class=\"section page-top\">\n  <div class=\"container\">\n    <span class=\"tag\">База знаний</span>\n    <h1 class=\"page-title\">Всё об антидетекте<br>и <em>автоматизации</em></h1>\n    <p class=\"page-desc\">Руководства по отпечаткам браузера, анонимности, мультиаккаунтингу и автоматизации без кода. Лонгриды с разбором технических деталей.</p>\n  </div>\n</section>\n\n<!-- АНТИДЕТЕКТ -->\n<section class=\"section\" style=\"padding-top:0\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <span class=\"tag\" style=\"background:rgba(139,92,246,.12);color:#a78bfa;border-color:rgba(139,92,246,.25)\">Антидетект и приватность</span>\n      <h2>Как работают цифровые отпечатки и изоляция профилей</h2>\n      <p>Browser fingerprinting, анонимность, прокси — что нужно знать, чтобы грамотно настроить антидетект.</p>\n    </div>\n    <div class=\"use-cases\">\n      <a href=\"/knowledge/antidetect-browser\" class=\"use-case\" style=\"--uc-color:#6366F1;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#6366F1\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"/></svg></div>\n        <h3>Что такое антидетект-браузер</h3>\n        <p>Как работает антидетект, зачем нужен, сравнение с обычными браузерами и VPN. Кому нужен антидетект-браузер.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n      <a href=\"/knowledge/browser-fingerprint\" class=\"use-case\" style=\"--uc-color:#8B5CF6;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#8B5CF6\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><path d=\"M12 11c0 3.517-1.009 6.799-2.753 9.571m-3.44-2.04l.054-.09A13.916 13.916 0 008 11a4 4 0 118 0c0 1.017-.07 2.019-.203 3m-2.118 6.844A21.88 21.88 0 0015.171 17m3.839 1.132c.645-2.266.99-4.659.99-7.132A8 8 0 008 4.07M3 15.364c.64-1.319 1-2.8 1-4.364 0-1.457.39-2.823 1.07-4\"/></svg></div>\n        <h3>Что такое отпечаток браузера</h3>\n        <p>Browser fingerprinting: Canvas, WebGL, AudioContext, шрифты, GPU. Как сайты идентифицируют вас и как защититься.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n      <a href=\"/knowledge/anonymous-browsing\" class=\"use-case\" style=\"--uc-color:#22C55E;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#22C55E\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><path d=\"M15 12a3 3 0 11-6 0 3 3 0 016 0z\"/><path d=\"M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z\"/></svg></div>\n        <h3>Анонимный браузер: полное руководство</h3>\n        <p>Способы анонимизации: VPN, Tor, прокси, антидетект. Что реально работает для приватности и мультиаккаунтинга.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n      <a href=\"/knowledge/multiaccounting\" class=\"use-case\" style=\"--uc-color:#F59E0B;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#F59E0B\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><path d=\"M17 21v-2a4 4 0 00-4-4H5a4 4 0 00-4 4v2\"/><circle cx=\"9\" cy=\"7\" r=\"4\"/><path d=\"M23 21v-2a4 4 0 00-3-3.87M16 3.13a4 4 0 010 7.75\"/></svg></div>\n        <h3>Мультиаккаунтинг: работа с множеством аккаунтов</h3>\n        <p>Безопасная работа с Facebook, Google, TikTok аккаунтами. Изоляция профилей, отпечатков и куки.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n      <a href=\"/knowledge/proxy-types\" class=\"use-case\" style=\"--uc-color:#06B6D4;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#06B6D4\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M2 12h20M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10\"/></svg></div>\n        <h3>Типы прокси: HTTP, SOCKS5, SSH — что выбрать</h3>\n        <p>Сравнение протоколов прокси для антидетект-браузера. Резидентные, мобильные, серверные прокси.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n    </div>\n  </div>\n</section>\n\n<!-- АВТОМАТИЗАЦИЯ -->\n<section class=\"section\" style=\"padding-top:0\">\n  <div class=\"container\">\n    <div class=\"section-head\">\n      <span class=\"tag\" style=\"background:rgba(34,197,94,.12);color:#4ade80;border-color:rgba(34,197,94,.25)\">Автоматизация без кода</span>\n      <h2>No-code инструменты и визуальное программирование</h2>\n      <p>Как автоматизировать рутину в браузере без Puppeteer, Selenium и написания кода.</p>\n    </div>\n    <div class=\"use-cases\">\n      <a href=\"/knowledge/automation\" class=\"use-case\" style=\"--uc-color:#EC4899;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#EC4899\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"/><path d=\"M8 21h8M12 17v4\"/></svg></div>\n        <h3>Автоматизация браузера без кода</h3>\n        <p>Визуальное программирование vs Puppeteer vs Selenium. Как автоматизировать рутину в антидетект-браузере.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Читать →</p>\n      </a>\n      <a href=\"/use-cases\" class=\"use-case\" style=\"--uc-color:#22C55E;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#22C55E\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><path d=\"M4 19.5v-15A2.5 2.5 0 016.5 2H20v20H6.5a2.5 2.5 0 010-5H20\"/></svg></div>\n        <h3>Сценарии использования Nexly</h3>\n        <p>Восемь типовых сценариев с разбором: парсинг, мультиаккаунтинг, массовая регистрация, автопостинг, QA, мониторинг.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Смотреть →</p>\n      </a>\n      <a href=\"/editor\" class=\"use-case\" style=\"--uc-color:#818CF8;text-decoration:none;color:inherit;display:block\">\n        <div class=\"use-case-icon\" style=\"--uc-color:#818CF8\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" width=\"22\" height=\"22\"><polyline points=\"16 18 22 12 16 6\"/><polyline points=\"8 6 2 12 8 18\"/></svg></div>\n        <h3>Онлайн-редактор скриптов</h3>\n        <p>Попробуйте визуальный редактор прямо в браузере. 130+ блоков drag &amp; drop без установки и регистрации.</p>\n        <p style=\"color:var(--accent2);font-size:12px;font-weight:600;margin-top:14px\">Открыть →</p>\n      </a>\n    </div>\n  </div>\n</section>\n\n<!-- CTA -->\n<section class=\"section cta-section\">\n  <div class=\"container\">\n    <h2>Готовы перейти от теории к практике?</h2>\n    <p style=\"color:var(--t2);max-width:480px;margin:14px auto 28px;position:relative\">Free-план Nexly — 10 профилей без ограничений по времени. Попробуйте всё, о чём читали.</p>\n    <div class=\"hero-actions\" style=\"justify-content:center;margin-bottom:0\">\n      <a href=\"/pricing\" class=\"btn btn-primary btn-lg\" style=\"position:relative\">Начать бесплатно</a>\n      <a href=\"/docs\" class=\"btn btn-ghost btn-lg\" style=\"position:relative\">Документация</a>\n    </div>\n  </div>\n</section>",
    "docs": "<section class=\"section page-top\">\n  <div class=\"container\">\n    <span class=\"tag\">Документация</span>\n    <h1 class=\"page-title\">Руководство по<br>работе с Nexly</h1>\n    <p class=\"page-desc\">Интерактивная документация — попробуйте функции прямо здесь</p>\n  </div>\n</section>\n<section class=\"section\" style=\"padding-top:0\">\n  <div class=\"container\">\n\n    <!-- Interactive Demo Tabs -->\n    <div class=\"docs-demo-tabs\">\n      <button class=\"docs-demo-tab active\" data-section=\"profiles\">Профили</button>\n      <button class=\"docs-demo-tab\" data-section=\"processes\">Процессы</button>\n      <button class=\"docs-demo-tab\" data-section=\"admin\">Администрирование</button>\n      <button class=\"docs-demo-tab\" data-section=\"proxy\">Прокси</button>\n      <button class=\"docs-demo-tab\" data-section=\"scripts\">Визуальное программирование</button>\n      <button class=\"docs-demo-tab\" data-section=\"account\">Профиль пользователя</button>\n      <button class=\"docs-demo-tab\" data-section=\"settings\">Настройки</button>\n      <button class=\"docs-demo-tab\" data-section=\"workspaces\">Рабочие пространства</button>\n    </div>\n    <!-- Demo panels -->\n    <div class=\"docs-demo-panel active\" id=\"ddp-profiles\" style=\"display:block\"><div id=\"demo-profiles\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-processes\" style=\"display:none\"><div id=\"demo-processes\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-admin\" style=\"display:none\"><div id=\"demo-admin\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-proxy\" style=\"display:none\"><div id=\"demo-proxy\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-scripts\" style=\"display:none\"><div id=\"demo-scripts\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-account\" style=\"display:none\"><div id=\"demo-user-profile\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-settings\" style=\"display:none\"><div id=\"demo-settings\"></div></div>\n    <div class=\"docs-demo-panel\" id=\"ddp-workspaces\" style=\"display:none\"><div id=\"demo-workspaces\"></div></div>\n\n    <!-- Accordion docs below -->\n    <h2 class=\"docs-section-h2\">Подробная документация</h2>\n    <div class=\"docs-grid\">\n\n      <!-- 1. Профили -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#6366F1\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#6366F1\" stroke-width=\"2\" width=\"20\" height=\"20\"><path d=\"M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2\"/><circle cx=\"12\" cy=\"7\" r=\"4\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Профили</h3>\n            <p>Создание, batch-создание, копирование и управление профилями</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Создание профиля</h4>\n          <p>Нажмите «Новый профиль» на верхней панели. Выберите количество: 1, 5, 10 или произвольное число. Каждый профиль получает собственную директорию Chrome с изолированным хранилищем.</p>\n          <img loading=\"lazy\" src=\"materials/docs/profiles_create.png\" alt=\"Скриншот: диалог создания профиля\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Batch-создание</h4>\n          <p>Массовое создание N профилей за раз. Все профили получают автоматические имена и могут быть сразу привязаны к прокси через авто-распределение.</p>\n          <img loading=\"lazy\" src=\"materials/docs/profiles_batch_create.png\" alt=\"Скриншот: batch-создание профилей\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Копирование профиля</h4>\n          <p>Клонирование существующего профиля с сохранением всех настроек: прокси, отпечаток, скрипт. Новый профиль получает отдельную директорию Chrome.</p>\n          <img loading=\"lazy\" src=\"materials/docs/profiles_copy.png\" alt=\"Скриншот: контекстное меню → копирование\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 2. Прокси -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#06B6D4\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#06B6D4\" stroke-width=\"2\" width=\"20\" height=\"20\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M2 12h20M12 2a15.3 15.3 0 014 10 15.3 15.3 0 01-4 10\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Прокси-менеджер</h3>\n            <p>Импорт, проверка, автоназначение прокси к профилям</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Импорт прокси</h4>\n          <p>Добавляйте прокси по одному или списком. Поддерживаемые форматы:</p>\n          <ul>\n            <li>socks5://user:pass@host:port</li>\n            <li>http://host:port:user:pass</li>\n            <li>host:port (HTTP по умолчанию)</li>\n          </ul>\n          <img loading=\"lazy\" src=\"materials/docs/proxy_add_edit.png\" alt=\"Скриншот: диалог импорта прокси\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Проверка прокси</h4>\n          <p>Проверяйте все прокси на доступность одним кликом. Рабочие прокси отмечаются зелёным, нерабочие — красным.</p>\n          <img loading=\"lazy\" src=\"materials/docs/proxy_check.png\" alt=\"Скриншот: результат проверки прокси\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Автоназначение</h4>\n          <p>Автоматическое распределение прокси по профилям (round-robin). Можно назначить на все профили или только на профили без прокси.</p>\n          <img loading=\"lazy\" src=\"materials/docs/proxy_assign.png\" alt=\"Скриншот: диалог назначения прокси\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 3. Fingerprint -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#8B5CF6\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#8B5CF6\" stroke-width=\"2\" width=\"20\" height=\"20\"><path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Fingerprint (Отпечатки)</h3>\n            <p>Режимы отпечатков и редактор параметров</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Три режима</h4>\n          <ul>\n            <li><strong>None</strong> — чистый Chrome без модификаций отпечатка</li>\n            <li><strong>Noise</strong> — автоматическая рандомизация на основе seed из пути профиля</li>\n            <li><strong>Custom</strong> — ручная настройка каждого параметра через редактор</li>\n          </ul>\n          <img loading=\"lazy\" src=\"materials/docs/fingerprint_modes.png\" alt=\"Скриншот: выбор режима fingerprint\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Редактор отпечатков</h4>\n          <p>В режиме Custom настраиваются: Canvas seed, количество CPU ядер, Device Memory, GPU Vendor и Renderer, разрешение экрана, Pixel Ratio, платформа. Доступна генерация случайного профиля из реалистичных пресетов.</p>\n          <img loading=\"lazy\" src=\"materials/docs/fingerprint_editor.png\" alt=\"Скриншот: редактор отпечатков (Custom)\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 4. Cookie Robot -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#10B981\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#10B981\" stroke-width=\"2\" width=\"20\" height=\"20\"><circle cx=\"12\" cy=\"12\" r=\"3\"/><path d=\"M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Cookie Robot</h3>\n            <p>Прогрев куки, импорт и экспорт</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Прогрев куки</h4>\n          <p>Выберите профили и нажмите «Cookie Robot» на тулбаре. Робот посещает список URL с настраиваемыми задержками и скроллом. Два режима: Native (через CDP без Node.js) и Puppeteer.</p>\n          <img loading=\"lazy\" src=\"materials/docs/cookie_robot_warmup.png\" alt=\"Скриншот: настройки Cookie Robot\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Импорт / Экспорт куки</h4>\n          <p>Экспорт через CDP WebSocket (расшифрованные значения) или из SQLite-файла Chrome. Формат: ChromeCookie JSON. Импорт поддерживает тот же формат.</p>\n          <img loading=\"lazy\" src=\"materials/docs/cookie_import_export.png\" alt=\"Скриншот: диалог импорта/экспорта куки\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 5. Визуальный редактор скриптов -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#3B82F6\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3B82F6\" stroke-width=\"2\" width=\"20\" height=\"20\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"/><path d=\"M8 21h8M12 17v4\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Визуальный редактор скриптов</h3>\n            <p>Drag & drop блоки, пользовательские функции, кодогенерация</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Работа с блоками</h4>\n          <p>Перетащите блоки из палитры слева на рабочую область. Категории: взаимодействие, навигация, ожидание, извлечение данных, логика, капча, файлы, API и другие (~130 блоков). Соедините блоки для создания последовательности.</p>\n          <img loading=\"lazy\" src=\"materials/docs/script_editor_blocks.png\" alt=\"Скриншот: визуальный редактор с блоками на canvas\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Пользовательские функции</h4>\n          <p>Создавайте собственные функции с аргументами и возвратом. Каждая функция имеет свой подграф блоков, который можно переиспользовать в разных скриптах.</p>\n          <img loading=\"lazy\" src=\"materials/docs/script_editor_functions.png\" alt=\"Скриншот: создание пользовательской функции\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Кодогенерация</h4>\n          <p>Визуальный граф компилируется в Puppeteer JS-скрипт с поддержкой stealth-плагина, циклов, условий и пользовательских функций.</p>\n          <img loading=\"lazy\" src=\"materials/docs/script_editor_codegen.png\" alt=\"Скриншот: сгенерированный JS-код\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 6. Оркестрация процессов -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#F59E0B\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#F59E0B\" stroke-width=\"2\" width=\"20\" height=\"20\"><path d=\"M12 2L2 7l10 5 10-5-10-5z\"/><path d=\"M2 17l10 5 10-5M2 12l10 5 10-5\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Оркестрация процессов</h3>\n            <p>Запуск профилей, круги, мониторинг памяти и таймаутов</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Запуск</h4>\n          <p>Выберите профили и нажмите «Запуск». Приложение ограничивает одновременные процессы через семафор. Поддержка нескольких кругов с паузой между ними. Режим «Chrome Only» — запуск браузера без скрипта.</p>\n          <img loading=\"lazy\" src=\"materials/docs/orchestration_launch.png\" alt=\"Скриншот: страница процессов с карточками\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Мониторинг</h4>\n          <p>Автоматический контроль: памяти (закрытие при превышении лимита), таймаутов (закрытие по времени), тишины (закрытие при зависании скрипта), health-check (очистка мёртвых процессов).</p>\n          <img loading=\"lazy\" src=\"materials/docs/orchestration_monitor.png\" alt=\"Скриншот: настройки мониторинга в Settings\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 7. Workspaces -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#EC4899\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#EC4899\" stroke-width=\"2\" width=\"20\" height=\"20\"><path d=\"M3 3h7v7H3zM14 3h7v7h-7zM14 14h7v7h-7zM3 14h7v7H3z\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Workspaces</h3>\n            <p>Изолированные рабочие пространства</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Создание и переключение</h4>\n          <p>Кликните на иконку workspace в верхнем левом углу сайдбара. Каждый workspace имеет свой config.json, список профилей, прокси и процесс-менеджер. Процессы продолжают работать при переключении между workspace.</p>\n          <img loading=\"lazy\" src=\"materials/docs/workspace_switch.png\" alt=\"Скриншот: меню workspace в сайдбаре\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Управление</h4>\n          <p>Создание, переименование и удаление workspace. Каждый workspace полностью изолирован — свои профили, прокси и настройки.</p>\n          <img loading=\"lazy\" src=\"materials/docs/workspace_create.png\" alt=\"Скриншот: диалог управления workspace\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n      <!-- 8. Облачная синхронизация и экспорт/импорт -->\n      <div class=\"doc-accordion\" style=\"--doc-color:#22C55E\">\n        <div class=\"doc-accordion-header\" onclick=\"this.parentElement.classList.toggle('open')\">\n          <div class=\"doc-icon-wrap\">\n            <div class=\"doc-accordion-icon\"></div>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#22C55E\" stroke-width=\"2\" width=\"20\" height=\"20\"><path d=\"M18 10h-1.26A8 8 0 109 20h9a5 5 0 000-10z\"/></svg>\n          </div>\n          <div class=\"doc-accordion-text\">\n            <h3>Облако и экспорт/импорт</h3>\n            <p>Облачная синхронизация, лёгкий и тяжёлый экспорт профилей</p>\n          </div>\n          <svg class=\"doc-accordion-arrow\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"6 9 12 15 18 9\"/></svg>\n        </div>\n        <div class=\"doc-accordion-body\"><div class=\"doc-accordion-content\">\n          <h4>Облачная синхронизация</h4>\n          <p>При закрытии браузера куки автоматически выгружаются в облако. Стратегия: свежий CDP-экспорт, fallback на кешированные куки. Восстановление профилей из облака через личный кабинет.</p>\n          <img loading=\"lazy\" src=\"materials/docs/cloud_profiles.png\" alt=\"Скриншот: облачные профили в личном кабинете\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n          <h4>Лёгкий экспорт (JSON)</h4>\n          <p>Метаданные профиля + куки в JSON-файле. Быстрый способ перенести профиль на другое устройство.</p>\n          <h4>Тяжёлый экспорт (ZIP)</h4>\n          <p>Полный архив директории Chrome со всеми данными — LocalStorage, куки, кеш, настройки.</p>\n          <img loading=\"lazy\" src=\"materials/docs/export_import_menu.png\" alt=\"Скриншот: диалог экспорта/импорта\" style=\"width:100%;border-radius:var(--r);border:1px solid var(--border-s);margin:16px 0\">\n        </div></div>\n      </div>\n\n    </div>\n  </div>\n</section>",
    "kb-anonymous-browsing": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Анонимный браузер</span></div>\n    <h1>Анонимный браузер: как обеспечить настоящую приватность в интернете</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 9 мин</p>\n    <section>\n      <h2>Что значит «анонимный браузер»</h2>\n      <p><strong>Анонимный браузер</strong> — это браузер, который минимизирует отслеживание пользователя в интернете. Но понятие анонимности бывает разным: от скрытия IP-адреса до полной защиты цифрового отпечатка.</p>\n      <p>Обычный Chrome, Firefox или Safari собирают данные и позволяют сайтам идентифицировать вас через <a href=\"/knowledge/browser-fingerprint\">browser fingerprinting</a>. Режим «Инкогнито» не защищает от отпечатков — он лишь не сохраняет историю и куки локально.</p>\n      <p>В 2026 году антифрод-системы анализируют не только IP, но и десятки параметров устройства: Canvas, WebGL, AudioContext, шрифты, размер экрана, часовой пояс, язык и поведенческие паттерны. Простая смена IP через VPN больше не обеспечивает анонимность.</p>\n\n      <h2>Сравнение способов анонимизации</h2>\n      <h3>VPN (Virtual Private Network)</h3>\n      <p>VPN шифрует трафик и подменяет IP-адрес. Это базовый уровень приватности, но VPN не защищает от <a href=\"/knowledge/browser-fingerprint\">browser fingerprinting</a>. Провайдер VPN видит ваш трафик, а сайты по-прежнему идентифицируют вас по отпечатку браузера. В 2026 году крупные платформы (Facebook, Google, Amazon) легко связывают аккаунты с одинаковым fingerprint даже при разных IP.</p>\n      <h3>Tor Browser</h3>\n      <p>Tor шифрует трафик через цепочку из трёх узлов и стандартизирует fingerprint для всех пользователей. Это делает вас «одним из тысяч одинаковых браузеров». Минусы: очень медленный (задержка 3-5 секунд на каждый запрос), блокируется большинством коммерческих сайтов, невозможно работать с аккаунтами в соцсетях.</p>\n      <h3>Антидетект-браузер + прокси</h3>\n      <p><a href=\"/knowledge/antidetect-browser\">Антидетект-браузер</a> создаёт уникальный реалистичный fingerprint для каждого профиля. В сочетании с индивидуальным <a href=\"/knowledge/proxy-types\">прокси</a> это обеспечивает максимальную анонимность: каждый профиль выглядит как отдельное реальное устройство из другой точки мира.</p>\n\n      <h2>Что не работает для анонимности в 2026 году</h2>\n      <ul>\n        <li><strong>Режим Инкогнито (Private Browsing)</strong> — не скрывает IP, не меняет fingerprint, не защищает от отслеживания. Сайты видят тот же отпечаток что и в обычном режиме</li>\n        <li><strong>Смена User-Agent</strong> — один параметр из сотен. Антифрод-системы обнаруживают несоответствие User-Agent и реальных характеристик устройства</li>\n        <li><strong>Отключение JavaScript</strong> — ломает 95% сайтов и само по себе является маркером подозрительного пользователя</li>\n        <li><strong>Расширения для приватности</strong> — Privacy Badger, uBlock помогают с трекерами, но не изменяют Canvas, WebGL и другие аппаратные fingerprint-параметры</li>\n        <li><strong>Только VPN без антидетекта</strong> — IP меняется, но fingerprint остаётся прежним. Facebook забанит все аккаунты с одним fingerprint</li>\n      </ul>\n\n      <h2>Как проверить свою анонимность</h2>\n      <p>Используйте сервисы проверки отпечатков: Pixelscan, BrowserLeaks, CreepJS, Cover Your Tracks (от EFF). Они покажут, какие параметры вашего браузера видны сайтам и насколько уникален ваш отпечаток. В идеале — каждый профиль антидетект-браузера должен проходить все проверки как уникальное реалистичное устройство.</p>\n\n      <h2>Антидетект-браузер как комплексное решение</h2>\n      <p><a href=\"/knowledge/antidetect-browser\">Антидетект-браузер</a> — единственный инструмент, который комплексно решает проблему анонимности: подмена всех параметров fingerprint (Canvas, WebGL, Audio, GPU, шрифты, timezone) + индивидуальный прокси + изоляция данных каждого профиля (куки, localStorage, кеш).</p>\n      <p>Nexly предлагает три режима отпечатков: Noise (автоматическая рандомизация), Custom (ручная настройка каждого параметра) и None (чистый Chrome). Поддерживаются <a href=\"/knowledge/proxy-types\">все типы прокси</a>: HTTP, SOCKS5, SSH.</p>\n\n      <div class=\"kb-related\">\n        <h3>Читайте также</h3>\n        <a href=\"/knowledge/antidetect-browser\">Что такое антидетект-браузер →</a>\n        <a href=\"/knowledge/browser-fingerprint\">Что такое отпечаток браузера →</a>\n        <a href=\"/knowledge/proxy-types\">Типы прокси для антидетекта →</a>\n      </div>\n      <div class=\"kb-cta\">\n        <a href=\"/download\" class=\"btn btn-primary btn-lg\">Скачать Nexly бесплатно</a>\n        <a href=\"/knowledge\" class=\"btn btn-ghost btn-lg\">Все статьи</a>\n      </div>\n    </section>\n  </div>\n</article>",
    "kb-antidetect-browser": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Антидетект-браузер</span></div>\n    <h1>Что такое антидетект-браузер: подробное руководство</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 8 мин</p>\n\n    <div class=\"kb-toc\">\n      <b>Содержание</b>\n      <a href=\"#what-is\">Что такое антидетект-браузер</a>\n      <a href=\"#how-works\">Как работает антидетект</a>\n      <a href=\"#vs-vpn\">Антидетект vs VPN vs Tor</a>\n      <a href=\"#who-needs\">Кому нужен антидетект-браузер</a>\n      <a href=\"#how-choose\">Как выбрать антидетект-браузер</a>\n      <a href=\"#nexly\">Nexly — бесплатный антидетект-браузер</a>\n    </div>\n\n    <section id=\"what-is\">\n      <h2>Что такое антидетект-браузер</h2>\n      <p><strong>Антидетект-браузер</strong> (anti-detect browser, antidetect browser) — это специализированный браузер, который позволяет создавать и управлять множеством изолированных браузерных профилей, каждый из которых имеет уникальный <a href=\"/knowledge/browser-fingerprint\">цифровой отпечаток (fingerprint)</a>.</p>\n      <p>В отличие от обычного браузера, антидетект-браузер подменяет параметры, по которым сайты идентифицируют пользователя: Canvas, WebGL, AudioContext, список шрифтов, GPU-рендерер, User-Agent, разрешение экрана, timezone и десятки других параметров.</p>\n      <p>Каждый профиль в антидетект-браузере — это полностью изолированная среда со своими куки, localStorage, кешем и отпечатком. Для веб-сайтов каждый профиль выглядит как отдельный реальный пользователь с уникальным устройством.</p>\n    </section>\n\n    <section id=\"how-works\">\n      <h2>Как работает антидетект-браузер</h2>\n      <p>Антидетект-браузер работает на базе Chromium (того же движка, что и Google Chrome), но перехватывает и модифицирует API-вызовы, которые сайты используют для получения информации о браузере и устройстве:</p>\n      <ul>\n        <li><strong>Canvas fingerprint</strong> — подмена результатов рендеринга на HTML5 Canvas элементе. Каждый GPU рендерит пиксели чуть по-разному, и сайты используют это для идентификации.</li>\n        <li><strong>WebGL fingerprint</strong> — модификация информации о GPU: вендор, модель рендерера, поддерживаемые расширения.</li>\n        <li><strong>AudioContext fingerprint</strong> — изменение характеристик аудио-обработки, которые уникальны для каждого устройства.</li>\n        <li><strong>Шрифты</strong> — подмена списка установленных шрифтов, который является мощным идентификатором.</li>\n        <li><strong>Navigator API</strong> — User-Agent, платформа, количество ядер CPU, объём памяти, язык.</li>\n        <li><strong>Screen API</strong> — разрешение экрана, глубина цвета, device pixel ratio.</li>\n        <li><strong>Timezone и геолокация</strong> — соответствие IP-адресу прокси.</li>\n      </ul>\n      <p>Важно: качественный антидетект-браузер не просто рандомизирует эти параметры, а создаёт <strong>согласованные конфигурации</strong>. Например, если User-Agent указывает Windows 10, то navigator.platform тоже должен быть \"Win32\", а список шрифтов — типичным для Windows.</p>\n    </section>\n\n    <section id=\"vs-vpn\">\n      <h2>Антидетект-браузер vs VPN vs Tor: в чём разница</h2>\n      <p><strong>VPN</strong> меняет только IP-адрес. Отпечаток браузера остаётся прежним — сайты всё равно могут связать ваши сессии через Canvas fingerprint, WebGL и другие параметры. VPN не защищает от browser fingerprinting.</p>\n      <p><strong>Tor Browser</strong> стандартизирует отпечаток — все пользователи Tor выглядят одинаково. Но Tor медленный, многие сайты блокируют его, и он не подходит для работы с аккаунтами — все сессии имеют один и тот же fingerprint.</p>\n      <p><strong>Антидетект-браузер</strong> даёт каждому профилю <em>уникальный</em> реалистичный отпечаток + собственный прокси + изолированные куки. Это единственный инструмент, который позволяет работать с множеством аккаунтов без риска связывания.</p>\n    </section>\n\n    <section id=\"who-needs\">\n      <h2>Кому нужен антидетект-браузер</h2>\n      <ul>\n        <li><strong>Арбитраж трафика</strong> — управление множеством рекламных аккаунтов Facebook, Google Ads, TikTok Ads без риска бана по отпечатку.</li>\n        <li><strong>SMM и маркетинг</strong> — ведение десятков аккаунтов в социальных сетях с разных «устройств».</li>\n        <li><strong>E-commerce</strong> — управление аккаунтами на маркетплейсах: Amazon, eBay, Wildberries, Ozon.</li>\n        <li><strong>Букмекерский арбитраж</strong> — работа с аккаунтами букмекерских контор.</li>\n        <li><strong>Веб-скрапинг</strong> — парсинг данных с ротацией отпечатков для обхода anti-bot систем.</li>\n        <li><strong>Тестирование</strong> — QA-инженеры тестируют приложения с разными конфигурациями браузера.</li>\n        <li><strong>Приватность</strong> — защита от отслеживания и профилирования в интернете.</li>\n      </ul>\n    </section>\n\n    <section id=\"how-choose\">\n      <h2>Как выбрать антидетект-браузер в 2026 году</h2>\n      <p>При выборе антидетект-браузера обратите внимание на следующие критерии:</p>\n      <ul>\n        <li><strong>Качество отпечатков</strong> — проходят ли профили проверку на BrowserLeaks, CreepJS, Pixelscan.</li>\n        <li><strong>Изоляция профилей</strong> — отдельные директории Chrome, изоляция куки и localStorage.</li>\n        <li><strong>Поддержка прокси</strong> — HTTP, SOCKS5, SSH. Авто-распределение по профилям.</li>\n        <li><strong>Автоматизация</strong> — встроенные инструменты или API для автоматизации рутинных задач.</li>\n        <li><strong>Облачная синхронизация</strong> — перенос профилей между устройствами.</li>\n        <li><strong>Стоимость</strong> — наличие бесплатного плана для тестирования.</li>\n        <li><strong>Параллельный запуск</strong> — количество одновременно работающих браузеров.</li>\n      </ul>\n    </section>\n\n    <section id=\"nexly\">\n      <h2>Nexly — бесплатный антидетект-браузер с визуальной автоматизацией</h2>\n      <p>Nexly объединяет антидетект-технологии с визуальным программированием. Три режима отпечатков (None, Noise, Custom), встроенный прокси-менеджер, Cookie Robot для прогрева аккаунтов и drag &amp; drop редактор скриптов со 130+ блоками.</p>\n      <p>Бесплатный план включает 10 профилей без ограничений по времени.</p>\n      <div class=\"kb-cta\">\n        <a href=\"/download\" class=\"btn btn-primary btn-lg\">Скачать бесплатно</a>\n        <a href=\"/pricing\" class=\"btn btn-ghost btn-lg\">Все тарифы</a>\n      </div>\n    </section>\n  </div>\n</article>",
    "kb-automation": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Автоматизация</span></div>\n    <h1>Автоматизация браузера без кода: визуальное программирование vs Puppeteer vs Selenium</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 8 мин</p>\n    <section>\n      <h2>Зачем автоматизировать браузер</h2>\n      <p>При работе с десятками и сотнями <a href=\"/knowledge/multiaccounting\">аккаунтов</a> ручные действия становятся невозможными. Автоматизация браузера позволяет: прогревать аккаунты, выполнять рутинные действия (лайки, подписки, публикации), собирать данные, взаимодействовать с сайтами по расписанию, заполнять формы и регистрировать аккаунты.</p>\n      <p>В 2026 году автоматизация — обязательный компонент масштабируемого мультиаккаунтинга. Без неё невозможно обслуживать больше 10-20 аккаунтов вручную.</p>\n\n      <h2>Puppeteer и Selenium — классический подход</h2>\n      <p><strong>Puppeteer</strong> (от Google) — Node.js библиотека для управления Chrome/Chromium через DevTools Protocol. Мощный, быстрый, отличная документация. Но требует знания JavaScript и навыков программирования.</p>\n      <p><strong>Selenium</strong> — инструмент для автоматизации браузеров на Python, Java, C#. Поддерживает Chrome, Firefox, Safari. Более медленный чем Puppeteer, но с обширной экосистемой.</p>\n      <p><strong>Playwright</strong> — более новая альтернатива от Microsoft. Поддерживает Chromium, Firefox, WebKit. Быстрый, с удобным API. Хороший выбор для разработчиков.</p>\n      <p>Общий минус всех трёх: требуют программирования, отладки кода, настройки среды разработки. Создание скрипта для простого сценария (зайти → кликнуть → ввести текст → подождать) занимает часы вместо минут.</p>\n\n      <h2>Визуальное программирование в Nexly</h2>\n      <p>Nexly предлагает <strong>drag &amp; drop редактор с 130+ блоками автоматизации</strong>: клики, ввод текста, ожидание элементов, условия (if/else), циклы, работа с API, базами данных SQLite, решение капчи, работа с файлами.</p>\n      <p>Скрипт собирается из блоков как конструктор — перетащите блоки из палитры на рабочую область, соедините их, настройте параметры. Никакого кода. Визуальный скрипт автоматически компилируется в Puppeteer JS-код, который можно просмотреть и доработать.</p>\n\n      <h2>Возможности визуального редактора</h2>\n      <ul>\n        <li><strong>Взаимодействие</strong> — клик, ввод текста, наведение курсора, выбор из списка, прокрутка, drag &amp; drop</li>\n        <li><strong>Навигация</strong> — переход по URL, перезагрузка, кнопки назад/вперёд, скриншоты</li>\n        <li><strong>Ожидание</strong> — ожидание элемента, URL, навигации, пауза</li>\n        <li><strong>Данные</strong> — получение текста, атрибутов, проверка существования элемента, парсинг</li>\n        <li><strong>Логика</strong> — условия if/else, циклы for/while, try/catch, переменные</li>\n        <li><strong>Пользовательские функции</strong> — создание переиспользуемых подграфов с аргументами и возвращаемыми значениями</li>\n        <li><strong>XPath конвертор</strong> — вставьте HTML элемента и получите стабильные CSS/XPath селекторы</li>\n      </ul>\n\n      <h2>Тестирование с live-скриншотами</h2>\n      <p>Nexly позволяет тестировать скрипты с визуализацией: headless Chrome делает скриншоты каждые 0.5 секунды, которые отображаются рядом с визуальным графом. Вы видите, что происходит в браузере в реальном времени. Точки останова (breakpoints) позволяют остановить выполнение на нужном блоке.</p>\n\n      <div class=\"kb-related\">\n        <h3>Читайте также</h3>\n        <a href=\"/knowledge/multiaccounting\">Мультиаккаунтинг — когда нужна автоматизация →</a>\n        <a href=\"/knowledge/antidetect-browser\">Что такое антидетект-браузер →</a>\n        <a href=\"/editor\">Попробуйте редактор в браузере →</a>\n      </div>\n      <div class=\"kb-cta\">\n        <a href=\"/editor\" class=\"btn btn-primary btn-lg\">Попробовать редактор онлайн</a>\n        <a href=\"/download\" class=\"btn btn-ghost btn-lg\">Скачать Nexly</a>\n      </div>\n    </section>\n  </div>\n</article>",
    "kb-browser-fingerprint": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Отпечаток браузера</span></div>\n    <h1>Что такое отпечаток браузера (browser fingerprinting)</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 10 мин</p>\n\n    <div class=\"kb-toc\">\n      <b>Содержание</b>\n      <a href=\"#what\">Что такое browser fingerprint</a>\n      <a href=\"#methods\">Методы fingerprinting</a>\n      <a href=\"#canvas\">Canvas Fingerprint</a>\n      <a href=\"#webgl\">WebGL Fingerprint</a>\n      <a href=\"#audio\">AudioContext Fingerprint</a>\n      <a href=\"#protection\">Как защитить отпечаток браузера</a>\n    </div>\n\n    <section id=\"what\">\n      <h2>Что такое browser fingerprint (отпечаток браузера)</h2>\n      <p><strong>Отпечаток браузера (browser fingerprint, цифровой отпечаток)</strong> — это уникальная комбинация характеристик вашего браузера и устройства, которую веб-сайты используют для идентификации посетителей без куки и авторизации.</p>\n      <p>Каждый браузер отдаёт сотни параметров: версию, установленные плагины, разрешение экрана, список шрифтов, параметры GPU, настройки языка и timezone. Комбинация этих параметров уникальна с вероятностью более 99% — это и есть ваш fingerprint.</p>\n      <p>Browser fingerprinting используется для: отслеживания пользователей без куки, борьбы с мошенничеством, детекции ботов, персонализации рекламы и связывания мультиаккаунтов.</p>\n    </section>\n\n    <section id=\"methods\">\n      <h2>Основные методы fingerprinting</h2>\n      <p>Современные системы отслеживания используют десятки методов для сбора отпечатка:</p>\n      <ul>\n        <li><strong>Canvas fingerprinting</strong> — рендеринг текста и фигур на скрытом Canvas элементе</li>\n        <li><strong>WebGL fingerprinting</strong> — информация о GPU и 3D-рендеринге</li>\n        <li><strong>AudioContext fingerprinting</strong> — обработка аудио-сигналов</li>\n        <li><strong>Font enumeration</strong> — список установленных системных шрифтов</li>\n        <li><strong>Navigator properties</strong> — User-Agent, платформа, языки, ядра CPU, память</li>\n        <li><strong>Screen properties</strong> — разрешение, DPI, цветовая глубина</li>\n        <li><strong>Timezone & locale</strong> — часовой пояс и региональные настройки</li>\n        <li><strong>WebRTC leak</strong> — раскрытие реального IP через WebRTC</li>\n        <li><strong>Battery API</strong> — уровень заряда батареи (на мобильных)</li>\n        <li><strong>Hardware concurrency</strong> — количество логических ядер процессора</li>\n      </ul>\n    </section>\n\n    <section id=\"canvas\">\n      <h2>Canvas Fingerprint: как это работает</h2>\n      <p><strong>Canvas fingerprint</strong> — один из самых мощных методов идентификации. Сайт создаёт невидимый HTML5 Canvas элемент, рисует на нём текст определённым шрифтом и извлекает результат как массив пикселей.</p>\n      <p>Из-за различий в GPU, драйверах, настройках сглаживания и рендеринга шрифтов — каждое устройство генерирует чуть отличающееся изображение. Хеш этого изображения и есть Canvas fingerprint.</p>\n      <p>Canvas fingerprint невозможно заблокировать без последствий — многие сайты используют Canvas для легитимных целей. <a href=\"/knowledge/antidetect-browser\">Антидетект-браузер</a> решает эту проблему, добавляя контролируемый шум к результатам Canvas-рендеринга для каждого профиля.</p>\n    </section>\n\n    <section id=\"webgl\">\n      <h2>WebGL Fingerprint</h2>\n      <p><strong>WebGL fingerprint</strong> собирает информацию о графическом процессоре: вендор (NVIDIA, AMD, Intel), модель рендерера, поддерживаемые расширения WebGL, максимальные размеры текстур и viewport.</p>\n      <p>Эта информация уникальна для каждой комбинации GPU + драйвер + ОС. Nexly поддерживает 38 реалистичных GPU-конфигураций для подмены WebGL fingerprint.</p>\n    </section>\n\n    <section id=\"audio\">\n      <h2>AudioContext Fingerprint</h2>\n      <p><strong>AudioContext fingerprint</strong> использует Web Audio API для генерации аудио-сигнала и анализа его обработки. Различия в аудио-чипе, драйверах и реализации API создают уникальный хеш.</p>\n      <p>Этот метод особенно опасен, потому что работает тихо — пользователь не слышит и не видит никаких признаков fingerprinting.</p>\n    </section>\n\n    <section id=\"protection\">\n      <h2>Как защитить отпечаток браузера</h2>\n      <p>Существует несколько подходов к защите от browser fingerprinting:</p>\n      <ul>\n        <li><strong>Блокировка (расширения)</strong> — Canvas Blocker, Privacy Badger. Блокируют API-вызовы, но ломают многие сайты и сами по себе являются уникальным маркером.</li>\n        <li><strong>Стандартизация (Tor)</strong> — все пользователи имеют одинаковый fingerprint. Не подходит для мультиаккаунтинга.</li>\n        <li><strong>Подмена (антидетект-браузер)</strong> — каждый профиль получает уникальный реалистичный fingerprint. Оптимальное решение для приватности и работы с аккаунтами.</li>\n      </ul>\n      <div class=\"kb-cta\">\n        <a href=\"/download\" class=\"btn btn-primary btn-lg\">Попробовать Nexly бесплатно</a>\n        <a href=\"/knowledge/antidetect-browser\" class=\"btn btn-ghost btn-lg\">Что такое антидетект</a>\n      </div>\n    </section>\n  </div>\n</article>",
    "kb-multiaccounting": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Мультиаккаунтинг</span></div>\n    <h1>Мультиаккаунтинг: как безопасно работать с множеством аккаунтов в 2026 году</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 10 мин</p>\n    <section>\n      <h2>Что такое мультиаккаунтинг</h2>\n      <p><strong>Мультиаккаунтинг (multiaccounting)</strong> — это практика использования нескольких аккаунтов на одной платформе. Применяется в арбитраже трафика, SMM, e-commerce, крипте, букмекерском арбитраже и тестировании рекламных кампаний.</p>\n      <p>Главная проблема мультиаккаунтинга — платформы связывают аккаунты по <a href=\"/knowledge/browser-fingerprint\">отпечатку браузера</a>, IP-адресу, куки и поведенческим паттернам, после чего блокируют все связанные аккаунты.</p>\n\n      <h2>Где используется мультиаккаунтинг</h2>\n      <p><strong>Арбитраж трафика</strong> — запуск рекламных кампаний с разных аккаунтов Facebook Ads, Google Ads, TikTok Ads для масштабирования и диверсификации рисков. Один бан не останавливает весь бизнес.</p>\n      <p><strong>SMM и управление соцсетями</strong> — ведение аккаунтов клиентов в Instagram, VK, Twitter. Каждый клиентский аккаунт в изолированном профиле с уникальным отпечатком.</p>\n      <p><strong>E-commerce и маркетплейсы</strong> — работа с несколькими магазинами на Amazon, Wildberries, Ozon, Avito. Платформы банят связанные аккаунты продавцов.</p>\n      <p><strong>Крипта и DeFi</strong> — участие в аирдропах, фарминг поинтов, работа с несколькими кошельками. Проекты анализируют fingerprint для выявления сибил-атак.</p>\n\n      <h2>Как платформы детектируют мультиаккаунтинг в 2026 году</h2>\n      <ul>\n        <li><strong>Browser fingerprint</strong> — Canvas, WebGL, AudioContext, шрифты, GPU-рендерер совпадают у всех аккаунтов с одного устройства</li>\n        <li><strong>IP-адрес и подсеть</strong> — все аккаунты с одного IP или из одного диапазона datacenter-адресов</li>\n        <li><strong>Куки и localStorage</strong> — общие трекинг-куки Facebook Pixel, Google Analytics между сессиями</li>\n        <li><strong>WebRTC leak</strong> — утечка реального локального IP даже через VPN или прокси</li>\n        <li><strong>Поведенческий анализ</strong> — одинаковые паттерны навигации, скорость набора текста, время активности</li>\n        <li><strong>Корреляция сессий</strong> — совпадение timezone, языка, разрешения экрана, числа ядер CPU</li>\n      </ul>\n\n      <h2>Антидетект-браузер для мультиаккаунтинга</h2>\n      <p><a href=\"/knowledge/antidetect-browser\">Антидетект-браузер</a> решает все эти проблемы: каждый аккаунт работает в изолированном профиле с уникальным fingerprint, собственным <a href=\"/knowledge/proxy-types\">прокси</a> и изолированными куки.</p>\n      <p>Nexly обеспечивает полную изоляцию через отдельные директории Chrome для каждого профиля, поддержку HTTP/SOCKS5/SSH прокси и три режима отпечатков (Noise, Custom, None). Параллельный запуск до 50+ браузеров одновременно с мониторингом памяти и автоперезапуском.</p>\n\n      <h2>Правила безопасного мультиаккаунтинга</h2>\n      <p><strong>Один аккаунт — один профиль — один прокси.</strong> Не используйте один прокси для нескольких аккаунтов на одной платформе. Nexly автоматически распределяет прокси по профилям (round-robin).</p>\n      <p><strong>Прогрев аккаунтов.</strong> Новые аккаунты нужно прогревать: заходить, скроллить, ставить лайки. Cookie Robot в Nexly автоматизирует прогрев через список сайтов.</p>\n      <p><strong>Не меняйте fingerprint на прогретом аккаунте.</strong> Резкая смена отпечатка — маркер для антифрод-систем. Создайте профиль один раз и используйте его стабильно.</p>\n      <p><strong>Резидентные или мобильные прокси.</strong> Datacenter-прокси легко детектируются. Для Facebook и Google лучше использовать <a href=\"/knowledge/proxy-types\">резидентные или мобильные прокси</a>.</p>\n\n      <div class=\"kb-related\">\n        <h3>Читайте также</h3>\n        <a href=\"/knowledge/antidetect-browser\">Что такое антидетект-браузер →</a>\n        <a href=\"/knowledge/browser-fingerprint\">Как работает отпечаток браузера →</a>\n        <a href=\"/knowledge/proxy-types\">Какие прокси выбрать →</a>\n        <a href=\"/knowledge/automation\">Автоматизация для масштабирования →</a>\n      </div>\n      <div class=\"kb-cta\">\n        <a href=\"/download\" class=\"btn btn-primary btn-lg\">Начать бесплатно — 10 профилей</a>\n        <a href=\"/features\" class=\"btn btn-ghost btn-lg\">Все возможности Nexly</a>\n      </div>\n    </section>\n  </div>\n</article>",
    "kb-proxy-types": "<article class=\"kb-article\">\n  <div class=\"container kb-container\">\n    <div class=\"kb-breadcrumb\"><a href=\"/knowledge\">База знаний</a> → <span>Типы прокси</span></div>\n    <h1>Типы прокси для антидетект-браузера: HTTP, SOCKS5, SSH</h1>\n    <p class=\"kb-updated\">Обновлено: 2026 · Время чтения: 5 мин</p>\n    <section>\n      <h2>Зачем нужны прокси в антидетект-браузере</h2>\n      <p>Прокси — обязательный компонент антидетекта. Даже с уникальным <a href=\"/knowledge/browser-fingerprint\">отпечатком браузера</a>, если все профили используют один IP — платформы свяжут аккаунты. Каждый профиль должен иметь свой IP через прокси.</p>\n      <h2>HTTP / HTTPS прокси</h2>\n      <p>Самый распространённый тип. Работает на уровне HTTP-протокола. Подходит для большинства задач: социальные сети, маркетплейсы, рекламные кабинеты. Поддерживает авторизацию по логину/паролю или по IP.</p>\n      <h2>SOCKS5 прокси</h2>\n      <p>Более универсальный протокол: работает на уровне TCP, поддерживает любой трафик (не только HTTP). Быстрее и надёжнее для антидетект-браузера. Поддерживает UDP (важно для WebRTC).</p>\n      <h2>SSH-туннель</h2>\n      <p>Шифрованное соединение через SSH-сервер. Максимальная безопасность — весь трафик зашифрован. Подходит для работы с банковскими и финансовыми аккаунтами.</p>\n      <h2>Резидентные vs серверные прокси</h2>\n      <p><strong>Резидентные прокси</strong> — IP-адреса реальных пользователей. Максимальное доверие со стороны платформ. Дороже, но меньше блокировок.</p>\n      <p><strong>Серверные (datacenter) прокси</strong> — IP из дата-центров. Дешевле, но легче детектируются.</p>\n      <p><strong>Мобильные прокси</strong> — IP мобильных операторов. Самый высокий уровень доверия, так как за одним IP находятся тысячи реальных пользователей.</p>\n      <h2>Прокси в Nexly</h2>\n      <p>Nexly поддерживает HTTP, HTTPS, SOCKS4, SOCKS5 и SSH прокси. Массовый импорт из файла, автоматическое распределение по профилям (round-robin), проверка доступности одним кликом.</p>\n      <div class=\"kb-related\">\n        <h3>Читайте также</h3>\n        <a href=\"/knowledge/antidetect-browser\">Что такое антидетект-браузер →</a>\n        <a href=\"/knowledge/multiaccounting\">Мультиаккаунтинг: безопасная работа с аккаунтами →</a>\n        <a href=\"/knowledge/anonymous-browsing\">VPN vs Tor vs Антидетект →</a>\n      </div>\n      <div class=\"kb-cta\">\n        <a href=\"/download\" class=\"btn btn-primary btn-lg\">Скачать Nexly</a>\n        <a href=\"/knowledge\" class=\"btn btn-ghost btn-lg\">Все статьи</a>\n      </div>\n    </section>\n  </div>\n</article>"
  },
  "pricingPage": {
    "title": "Масштабируйтесь<br>под ваши задачи",
    "desc": "От фрилансера до агентства — тариф для каждого масштаба"
  },
  "featuresPage": {
    "title": "Антидетект + автоматизация.<br>Всё в одном приложении",
    "desc": "Две крупные системы работают вместе: изолированные браузерные профили с уникальными отпечатками и визуальный редактор скриптов с оркестратором на 50+ параллельных процессов.",
    "antidetect": {
      "tag": "Антидетект",
      "head": "Изоляция на уровне ядра Chromium",
      "lead": "Модификация исходников, а не JS-инъекций. Pixelscan — 0 противоречий, CreepJS — 0 lies.",
      "fp": {
        "t": "Fingerprint-движок",
        "d": "Canvas, WebGL, AudioContext, шрифты, GPU, timezone, разрешение. Три режима: Noise (авто-рандом), Custom (ручной), None (чистый).",
        "x": "<b>38 пресетов</b> собраны из реальных связок GPU + шрифты + разрешение. Отпечаток остаётся согласованным: Windows-профиль не выдаёт macOS-шрифты, а мобильное разрешение не приходит с десктопным GPU."
      },
      "profiles": {
        "t": "Управление профилями",
        "d": "Одиночные и batch-профили. Копирование, массовое редактирование, назначение прокси. Каждый профиль — отдельная директория Chrome.",
        "x": "<b>Batch до 500 профилей</b> за одну операцию. Копия наследует прокси, отпечаток и скрипт, но получает свою директорию Chrome — прогретый аккаунт не «клонируется» вместе с куки."
      },
      "proxy": {
        "t": "Прокси-менеджер",
        "d": "HTTP, SOCKS5, SSH. Массовый импорт, проверка alive/dead. Auto-proxy — round-robin назначение новым профилям. Auto timezone по IP.",
        "x": "<b>Проверка списком</b>: alive/dead и страна выхода за один клик. Таймзона и локаль подтягиваются по IP через ip-api, чтобы система и прокси не спорили друг с другом."
      },
      "cookie": {
        "t": "Cookie Robot",
        "d": "Прогрев куки через CDP — без Node.js. Импорт/экспорт в JSON и SQLite. Cookie Lock защищает от одновременного доступа.",
        "x": "<b>Два режима прогрева</b>: Native через CDP WebSocket — без Node.js в памяти, и Puppeteer — когда нужен полный сценарий. Cookie Lock не даёт двум процессам писать в одну базу."
      },
      "ws": {
        "t": "Workspace-изоляция",
        "d": "Каждое рабочее пространство — свой config, свои профили, прокси, процессы. Процессы продолжают работать при переключении.",
        "x": "<b>Полная изоляция</b>: свой config.json, свой список профилей и прокси, свой пул процессов. Переключение workspace не останавливает то, что уже запущено."
      },
      "cloud": {
        "t": "Облачная синхронизация",
        "d": "Автовыгрузка куки в облако при закрытии браузера. Восстановление профилей на другом устройстве. Свежие куки через CDP при graceful shutdown.",
        "x": "<b>AES-256-GCM на устройстве</b>. На сервер уходит шифротекст, ключ выводится из мастер-пароля и остаётся локально — база данных без ключа бесполезна."
      }
    },
    "auto": {
      "tag": "Автоматизация",
      "head": "Визуальный редактор без кода",
      "lead": "130+ блоков, компиляция в Puppeteer JS, оркестратор на 50+ процессов. Пишите боты drag & drop, а не кодом.",
      "editor": {
        "t": "Визуальный редактор",
        "d": "Нодовый граф с drag & drop. 130+ блоков: взаимодействие, навигация, ожидание, извлечение данных, flow-контроль, БД, файлы, API, капча.",
        "x": "<b>130+ блоков</b> по 14 категориям: взаимодействие, навигация, ожидание, извлечение, логика, БД, файлы, HTTP, капча, математика, строки, массивы, объекты, отладка."
      },
      "codegen": {
        "t": "Кодогенерация в Puppeteer",
        "d": "Граф компилируется в чистый JS-скрипт с поддержкой stealth-плагинов, reCAPTCHA, Cloudflare Turnstile, пользовательских функций.",
        "x": "<b>Читаемый JS на выходе</b>. Сгенерированный скрипт запускается и вне Nexly — обычный Puppeteer с stealth-плагином, без рантайма приложения."
      },
      "orch": {
        "t": "Оркестратор процессов",
        "d": "Запуск профилей кругами с лимитом потоков. До 50+ одновременных сессий. Паузы между кругами, повторы, headless-режим.",
        "x": "<b>Семафор на потоки</b>: 500 профилей и лимит 8 — очередь идёт волнами, освободился один, стартует следующий. Круги с паузой между ними задаются в настройках."
      },
      "mon": {
        "t": "Мониторинг и автокилл",
        "d": "Закрытие процесса при превышении памяти (по умолчанию 1500 MB), таймауте, тишине (скрипт завис). Health-check каждые N секунд.",
        "x": "<b>Три сторожа сразу</b>: память (WorkingSet64 против лимита), таймаут процесса и «тишина» — если скрипт перестал писать в лог, процесс считается зависшим."
      },
      "admin": {
        "t": "Страница администрирования",
        "d": "Кастомные stat-карточки со статистикой бота в реальном времени. Кнопки действий (очистка таблиц, просмотр логов). Встроенный SQLite-браузер.",
        "x": "<b>Свои карточки и кнопки</b>: считают строки в SQLite, записи в JSON, файлы в папке. Кнопка выполняет действие — очистить таблицу, показать содержимое — и пишет результат в консоль."
      },
      "reverse": {
        "t": "Reverse JS → граф",
        "d": "Импорт готовых Puppeteer-скриптов с автогенерацией визуального графа. Удобно для отладки и адаптации чужого кода.",
        "x": "<b>Esprima AST → граф</b>. Чужой Puppeteer-скрипт разбирается на блоки, которые можно править мышью, а не искать нужную строку в чужом коде."
      },
      "fn": {
        "t": "Свои функции и переменные",
        "d": "Создавайте пользовательские функции с аргументами и возвратом — каждая со своим подграфом. Переменные, try/catch, циклы, условия.",
        "x": "<b>Свой подграф у каждой функции</b>, аргументы и возврат. Одна логин-процедура пишется один раз и вызывается из всех сценариев."
      },
      "human": {
        "t": "Human-like эмуляция",
        "d": "Клики, ввод текста и движения мыши эмулируются по-человечески: задержки, опечатки, траектории. Сайты не детектят бота.",
        "x": "<b>Эмуляция человека</b>: неравномерные задержки между символами, опечатки с возвратом, траектория курсора вместо телепорта к элементу."
      },
      "console": {
        "t": "Консоль и отчёты",
        "d": "Потоковый stdout/stderr с фильтрацией по профилю. Отчёты с выгрузкой ссылок на Telegraph и скриншотов на files.fm. Индикатор готовых отчётов.",
        "x": "<b>Лог по процессам</b> с фильтром и поиском. Батч-апдейт раз в 100 мс вместо строки-на-событие — консоль не роняет UI при сотне параллельных сессий."
      }
    },
    "cta": {
      "title": "Готовы посмотреть в деле?",
      "desc": "Откройте редактор онлайн или скачайте приложение. Free-план не требует карты.",
      "openEditor": "Открыть редактор"
    }
  },
  "editorPage": {
    "tag": "Редактор скриптов",
    "title": "Визуальная автоматизация",
    "desc": "Перетаскивай блоки, соединяй порты, создавай логику без кода",
    "tabVisual": "Visual",
    "tabCode": "Code",
    "emptyHint": "Перетащи блок из палитры слева"
  },
  "downloadPage": {
    "tag": "Скачать Nexly",
    "title": "Скачайте Nexly Browser",
    "lead": "Антидетект-браузер с визуальной автоматизацией и изолированными отпечатками",
    "btnWindows": "Скачать для Windows (x64)",
    "reqTitle": "Системные требования",
    "reqOS": "ОС:",
    "reqRAM": "RAM:",
    "reqRAMval": "4 GB минимум",
    "reqDisk": "Диск:",
    "reqDiskVal": "500 MB свободно",
    "version": "Текущая версия:",
    "checked": "Проверено:",
    "shaHint": "— для проверки целостности файла"
  },
  "contactsPage": {
    "title": "Связаться с <em>поддержкой</em>",
    "desc": "Основной канал — Telegram-бот: обращения попадают напрямую к нам, история ответов сохраняется в чате.",
    "tgTitle": "Telegram-бот",
    "tgDesc": "Создание обращений в поддержку прямо из Telegram. Ответы приходят в тот же чат — ничего не теряется. Работает 24/7.",
    "tgOpen": "Открыть в Telegram →",
    "emailTitle": "Электронная почта",
    "emailDesc": "Для официальных обращений, юридических запросов и вопросов по персональным данным. Ответ в течение 1–2 рабочих дней.",
    "emailWrite": "Написать письмо →",
    "howTag": "Как привязать Telegram",
    "howHead": "Получайте ответы на тикеты прямо в мессенджере",
    "howBlock": "<ol style=\"padding-left:20px;line-height:1.8;color:var(--t2)\">\n        <li>Откройте <a href=\"/dashboard\">личный кабинет</a> → раздел <b>Telegram</b>.</li>\n        <li>Нажмите «Привязать Telegram» — откроется бот с готовым кодом.</li>\n        <li>В боте нажмите <b>Start</b> — привязка произойдёт автоматически.</li>\n        <li>После этого вы сможете писать в поддержку через бота и получать уведомления о пополнениях.</li>\n      </ol>\n      <p style=\"color:var(--t4);font-size:13px;margin-top:16px\">Код привязки действует 10 минут и может быть использован один раз.</p>",
    "legalTag": "Реквизиты",
    "legalHead": "Оператор Сервиса",
    "legalBlock": "<p><strong>Басюль Кирилл Денисович</strong> — физическое лицо</p>\n      <p>Место нахождения: г. Гомель, Республика Беларусь</p>\n      <p>Email: <a href=\"mailto:zimerfm@gmail.com\">zimerfm@gmail.com</a></p>\n      <p>Telegram: <a href=\"https://t.me/nexly_anty_bot\" target=\"_blank\" rel=\"noopener\">@nexly_anty_bot</a></p>\n      <p style=\"margin-top:18px;font-size:13px;color:var(--t4)\">\n        Юридические документы:\n        <a href=\"/terms\" style=\"color:var(--accent2)\">Пользовательское соглашение</a> ·\n        <a href=\"/privacy\" style=\"color:var(--accent2)\">Политика конфиденциальности</a>\n      </p>"
  },
  "useCasesPage": {
    "title": "Что можно сделать<br>в Nexly",
    "desc": "Восемь типовых сценариев — от парсинга цен до массовой регистрации аккаунтов. Каждый реализуется через визуальный редактор без единой строки кода.",
    "cta": {
      "title": "Какой сценарий у вас?",
      "desc": "Free-план позволяет попробовать любой из этих сценариев на 10 профилях. Редактор открывается онлайн — можно поиграться прямо сейчас."
    },
    "s1": {
      "title": "Парсинг маркетплейсов и каталогов",
      "desc": "Соберите цены с Wildberries, Ozon, Amazon, каталоги конкурентов, отзывы и контакты поставщиков. Парсинг через антидетект обходит ограничения, которые блокируют обычные скрейперы: rate-limiting, капчу, fingerprint-детект.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> создайте профиль, назначьте прокси (резидентный для сложных платформ, datacenter для простых), в редакторе соберите скрипт из блоков «Перейти по URL» → «Дождаться элемент» → «Извлечь текст» → «Записать в SQLite». Запустите с лимитом потоков — оркестратор распределит нагрузку.",
      "blocks": "<strong style=\"color:var(--t2)\">Используемые блоки:</strong> Navigate, WaitForSelector, Extract, Loop, SQLite, Export CSV, Captcha (2captcha/Turnstile)"
    },
    "s2": {
      "title": "Мультиаккаунтинг и арбитраж трафика",
      "desc": "Работа с множеством аккаунтов на одной платформе: Facebook Ads, Google Ads, TikTok Ads, рекламные кабинеты маркетплейсов, крипто-биржи. Каждый аккаунт — изолированный профиль с уникальным fingerprint и прокси. Платформы не связывают сессии через Canvas/WebGL/Audio.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> создаёте batch из 10–100 профилей одной операцией. Прокси распределяются автоматически по round-robin. Включаете Noise-отпечаток — GPU, шрифты, canvas-seed уникальны у каждого. Cookie Robot прогревает аккаунты перед активной работой.",
      "blocks": "<strong style=\"color:var(--t2)\">Ключевые фичи:</strong> Batch-создание профилей, auto-proxy, Noise fingerprint, Cookie Robot, Workspace-изоляция (один workspace = один проект)"
    },
    "s3": {
      "title": "Массовая регистрация аккаунтов",
      "desc": "Регистратор для соцсетей, маркетплейсов, сервисов — работает сам пока вы спите. Каждый аккаунт создаётся в своём профиле с чистым fingerprint и прокси. Данные складываются в SQLite, откуда их можно экспортировать.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> собираете скрипт регистрации с блоками human-like ввода (эмуляция опечаток, задержек, движения мыши). Страница администрирования показывает статистику в реальном времени: количество успешных регистраций, ошибки, остаток SMS-номеров.",
      "blocks": "<strong style=\"color:var(--t2)\">Используемые блоки:</strong> Type (human-like), API-запрос к SMS-сервису, Captcha solver, SQLite, условия if/else, циклы"
    },
    "s4": {
      "title": "Автопостинг и SMM",
      "desc": "Публикация контента в десятках аккаунтов по расписанию: Instagram, TikTok, VK, Telegram через веб, X/Twitter, LinkedIn. Контент-план берётся из SQLite, Excel или API. Прогрев куки между сессиями — аккаунты не сыпятся.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> скрипт логинится, проверяет ленту (для естественности), загружает медиа, публикует с подготовленной подписью. Cloud-синхронизация куки держит сессии активными между запусками. Оркестратор прогоняет круги — допустим, «по 5 аккаунтов каждые 2 часа».",
      "blocks": "<strong style=\"color:var(--t2)\">Ключевые фичи:</strong> Круги запуска, Cloud cookie sync, SQLite для контент-плана, HTTP-request блок для API"
    },
    "s5": {
      "title": "E2E-тесты без кода (AQA)",
      "desc": "Для QA-инженеров и тимлидов: визуальные end-to-end сценарии вместо кода на Selenium/Playwright. Создавайте тесты drag & drop, запускайте в несколько потоков, получайте скриншоты и логи на каждом шаге. Подходит для регресс-тестирования и smoke-тестов.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> импортируйте готовый Puppeteer-скрипт (reverse-парсинг JS → визуальный граф) или собирайте тест с нуля. Headless-режим для CI, live-скриншоты для отладки. Workspace на каждую среду (dev/stage/prod).",
      "blocks": "<strong style=\"color:var(--t2)\">Ключевые фичи:</strong> Reverse JS → граф, Headless, Live-скриншоты, Try/Catch блоки, Assert-блоки"
    },
    "s6": {
      "title": "Мониторинг цен, позиций, конкурентов",
      "desc": "Автоматическая проверка цен, наличия товаров, позиций в поиске, упоминаний бренда. Результаты падают в базу или отправляются в Telegram через HTTP-блок. Запуск по расписанию — каждый час, день, неделю.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> скрипт обходит список URL, сравнивает значения с предыдущим запуском (хранятся в SQLite), при изменении — шлёт уведомление. Прокси меняются между запросами, fingerprint рандомизируется — сайты не детектят мониторинг.",
      "blocks": "<strong style=\"color:var(--t2)\">Используемые блоки:</strong> HTTP-request, SQLite compare, условия, циклы, Telegram Bot API"
    },
    "s7": {
      "title": "Аирдропы, testnet-фарминг, DeFi",
      "desc": "Массовая работа с кошельками и DeFi-протоколами. Каждый кошелёк — отдельный профиль с собственным fingerprint и прокси. Платформы не связывают адреса через браузер, IP или куки.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> батч профилей с расширением кошелька (MetaMask и аналоги), скрипт подключения к dApp, выполнения транзакций, сбора testnet-токенов. Workspace на каждый проект. Cloud-sync бэкапит куки между устройствами.",
      "blocks": "<strong style=\"color:var(--t2)\">Ключевые фичи:</strong> Изоляция fingerprint, batch-профили, workspace, cloud backup"
    },
    "s8": {
      "title": "Рутина маркетолога и фрилансера",
      "desc": "Ежедневные задачи, которые съедают часы: выгрузка статистики из рекламных кабинетов, сбор отчётов, проверка позиций в поисковой выдаче, экспорт данных из CRM, автоответы в чатах. Любая рутина, которая «открывается в браузере», автоматизируется.",
      "how": "<strong style=\"color:var(--t1)\">Как это работает:</strong> скрипт входит в нужный сервис, выполняет действия, сохраняет результат (CSV, Google Sheets через API, Telegraph-отчёт). Запуск по кнопке или на расписании. Экономия — до 10 часов в неделю на типовых операциях.",
      "blocks": "<strong style=\"color:var(--t2)\">Используемые блоки:</strong> HTTP-request (API), File write, Telegraph upload, Screenshot, Google Sheets API"
    }
  },
  "appPreviewPage": {
    "title": "Попробуйте UI<br>приложения",
    "desc": "Интерактивный превью интерфейса — прямо в браузере. Точная копия десктоп-приложения.",
    "tabProfiles": "Профили",
    "tabScripts": "Редактор скриптов",
    "tabProxy": "Прокси",
    "tabProcesses": "Процессы",
    "tbExport": "Экспорт / Импорт",
    "tbNewProfile": "Новый профиль",
    "palInteract": "Взаимодействие",
    "palClick": "Клик",
    "palType": "Ввод текста",
    "palHover": "Наведение",
    "palScroll": "Прокрутка",
    "palNav": "Навигация",
    "palGoto": "Перейти по URL",
    "palScreenshot": "Скриншот",
    "palBack": "Назад",
    "palWait": "Ожидание",
    "palWaitEl": "Ждать элемент",
    "palPause": "Пауза",
    "palData": "Данные",
    "palGetText": "Получить текст",
    "palGetAttr": "Получить атрибут",
    "palLogic": "Логика",
    "palIf": "Условие (if)",
    "palLoop": "Цикл",
    "palLog": "Лог",
    "procFinished": "Завершён",
    "procTime": "Время:"
  },
  "authPage": {
    "loginTitle": "Вход в аккаунт",
    "loginSub": "Войдите чтобы управлять подпиской и профилями",
    "email": "Email",
    "password": "Пароль",
    "passwordPh": "Минимум 8 символов",
    "loginBtn": "Войти",
    "forgot": "Забыли пароль?",
    "noAccount": "Нет аккаунта?",
    "registerBtn": "Зарегистрироваться",
    "verifyTitle": "Подтвердите email",
    "verifySub": "Код отправлен на",
    "verifyCode": "Код подтверждения",
    "verifyBtn": "Подтвердить",
    "resendBtn": "Отправить повторно",
    "resetTitle": "Сброс пароля",
    "resetSub": "Введите email для получения кода",
    "resetCodeLabel": "Код из письма",
    "newPassLabel": "Новый пароль",
    "resetSendCode": "Отправить код",
    "backToLogin": "← Вернуться к входу",
    "rightLead": "Изолированные отпечатки, визуальная автоматизация, облачная синхронизация",
    "feat1": "Уникальный отпечаток",
    "feat2": "Cookie синхронизация",
    "feat3": "Визуальные скрипты",
    "tfaTitle": "Двухфакторная аутентификация",
    "tfaCode": "Код",
    "tfaConfirm": "Подтвердить",
    "or": "или",
    "signInWithGoogle": "Войти через Google",
    "fpLive": "Живой отпечаток"
  },
  "dash": {
    "menuAria": "Меню",
    "welcome": "Добро пожаловать!",
    "toSite": "На сайт",
    "logout": "Выйти",
    "support": "Поддержка",
    "tariffShort": "Тариф",
    "copy": "Копировать",
    "navOverview": "Обзор",
    "navSubscription": "Подписка",
    "navBalance": "Баланс",
    "navProfiles": "Профили",
    "navSecurity": "Безопасность",
    "navDevices": "Устройства",
    "cardCurrentPlan": "Текущий план",
    "cardBalance": "Баланс",
    "cardProfiles": "Профили",
    "cardThreads": "Потоки",
    "quickActions": "Быстрые действия",
    "subExpires": "Истекает",
    "subUpgrade": "Обновить тариф",
    "payHistory": "История платежей",
    "noPayments": "Нет платежей",
    "balCurrent": "Текущий баланс:",
    "topupTitle": "Пополнить баланс",
    "topupCustom": "Или сумма ($)",
    "topupMethod": "Способ оплаты",
    "payCrypto": "Криптовалюта",
    "payCryptoDesc": "BTC, ETH, USDT, 70+ монет · NOWPayments",
    "payCard": "Банковская карта",
    "payCardDesc": "Visa, MasterCard, МИР, СБП · FreeKassa",
    "topupNote": "Зачисление 1-15 мин после подтверждения в блокчейне.",
    "topupHistory": "История пополнений",
    "noTopups": "Нет пополнений",
    "promoTitle": "Промокод",
    "promoPh": "Введите промокод",
    "promoActivate": "Активировать",
    "promoBonus": "Бонусный баланс: <strong id=\"bonusDisplay\" style=\"color:var(--amber)\">$0.00</strong> — используется при покупке тарифа наравне с основным",
    "profilesSubtitle": "Синхронизированные профили браузера",
    "noProfiles": "Нет синхронизированных профилей",
    "cloudProfilesTitle": "Облачные профили",
    "cloudProfilesSubtitle": "Просмотр сохранённых профилей. Удалить можно по одному, выделением или сразу все. Восстановление доступно только из приложения.",
    "secSubtitle": "Управляйте защитой аккаунта",
    "secAccount": "Аккаунт",
    "secSignup": "Регистрация",
    "secVerify": "Верификация",
    "emailNotConfirmed": "Не подтверждён",
    "emailCode": "Код",
    "emailCodePh": "6 цифр",
    "emailSend": "Отправить код",
    "passCurrent": "Текущий",
    "passCurrentPh": "Текущий пароль",
    "passNewPh": "Мин. 8 символов",
    "passChange": "Сменить",
    "refTitle": "Реферальная программа",
    "refInvited": "Приглашено",
    "refEarned": "Заработано",
    "refBy": "Вас пригласил",
    "refLink": "Ваша реферальная ссылка:",
    "refReward": "Вы получаете <b>10%</b> от каждого пополнения баланса приглашённого пользователя",
    "refYourList": "Ваши рефералы",
    "activeSessions": "Активные сессии",
    "tgSubtitle": "Привяжите Telegram — обращайтесь в поддержку прямо из мессенджера и получайте ответы на тикеты в тот же чат.",
    "tgTrialTitle": "🎁 Привяжите Telegram — получите 7 дней Триала бесплатно",
    "tgTrialDesc": "Это защищает сервис от массовой регистрации одноразовых аккаунтов. После привязки кнопка активации триала появится на странице тарифов.",
    "tgTrialCta": "К тарифам",
    "tgLinkTitle": "Привязка аккаунта",
    "tgHint": "Нажмите кнопку ниже — бот откроется автоматически и привяжет аккаунт одним кликом.",
    "tgLinkBtn": "Привязать Telegram",
    "tgUnlinkBtn": "Отвязать",
    "tgSupportTitle": "Техническая поддержка",
    "tgSupportDesc": "Создавайте обращения прямо в Telegram. Ответы приходят в тот же чат — ничего не потеряется.",
    "tgSupportOpen": "Открыть чат с поддержкой",
    "tgSupportUnavailable": "Поддержка временно недоступна.",
    "tgSupportHint": "В боте: «➕ Новый тикет» — создать обращение, «🎫 Мои тикеты» — список.",
    "cloudDeleteAll": "Удалить все облачные профили",
    "tfaTitle": "Двухфакторная аутентификация",
    "tfaDisabledStatus": "Защита выключена",
    "tfaDisabledHint": "Включите 2FA, чтобы при входе требовался дополнительный код. Это защитит аккаунт даже если пароль утечёт.",
    "tfaEnableTotp": "Включить через приложение Authenticator",
    "tfaEnableTg": "Включить через Telegram",
    "tfaSetup1": "Шаг 1. Отсканируйте QR в приложении Authenticator",
    "tfaSetup1Hint": "Откройте Google Authenticator / Authy / 1Password и нажмите «+».",
    "tfaSetup2": "Шаг 2. Введите 6-значный код из приложения",
    "tfaManualKey": "КЛЮЧ ДЛЯ РУЧНОГО ВВОДА",
    "tfaCopy": "Копировать",
    "tfaEnabledTitle": "2FA активна",
    "tfaActiveTotp": "Метод: приложение Authenticator",
    "tfaActiveTelegram": "Метод: Telegram",
    "tfaEnabledHint": "При входе на новое устройство потребуется ввести код. Сохраните секрет/доступ к Telegram — без них восстановить вход невозможно.",
    "tfaDisable": "Отключить 2FA",
    "tfaDisableHint": "Введите пароль и текущий код 2FA для подтверждения.",
    "tfaSendTgCode": "Отправить код в Telegram →",
    "tfaConfirmDisable": "Отключить",
    "tfaTgConfirmTitle": "Код отправлен в Telegram",
    "tfaTgConfirmHint": "Откройте чат с ботом Nexly и скопируйте 6-значный код. Код действует 5 минут.",
    "tfaResend": "Отправить код повторно",
    "encTitle": "Шифрование cookies",
    "encDisabledStatus": "Шифрование выключено",
    "encDisabledHint": "Cookies хранятся в облаке в открытом виде. Включите шифрование — ключ будет известен только вам, мы физически не сможем расшифровать ваши данные. <b>Это действие необратимо.</b>",
    "encEnable": "Включить шифрование",
    "encEnabledTitle": "Шифрование активно",
    "encActiveSince": "Включено:",
    "encEnabledHint": "Все новые cookies шифруются на вашем устройстве перед загрузкой. Чтобы расшифровывать их в приложении — укажите путь к файлу с ключом в настройках. <b>Без ключа восстановить cookies невозможно.</b>",
    "encRevealTitle": "Сохраните ключ шифрования",
    "encRevealWarn": "⚠ <b>Этот код показывается только один раз.</b> Без него восстановить cookies невозможно. Сохраните его сейчас — мы не храним его на сервере. Шифрование активируется ТОЛЬКО после вашего подтверждения.",
    "encRevealCopy": "Скопировать",
    "encRevealCopied": "скопировано",
    "encRevealDownload": "Скачать .txt",
    "encRevealConfirm": "Я сохранил ключ в надёжном месте. Я понимаю, что без него восстановить cookies невозможно.",
    "encRevealIrreversible": "<b>Это действие необратимо.</b> Шифрование нельзя отключить после активации. Если я потеряю ключ — все зашифрованные сессии будут потеряны навсегда. Сервер не хранит ключ и математически не способен его восстановить.",
    "encRevealPasswordLabel": "Подтвердите паролем от аккаунта",
    "encRevealPasswordPh": "Текущий пароль",
    "encRevealPasswordHint": "Используется только для разовой проверки. На сервер не уходит в виде ключа шифрования.",
    "encRevealCancel": "Отмена",
    "encRevealActivate": "Активировать шифрование",
    "secHeroTitle": "Защита вашего аккаунта",
    "secHeroDesc": "Включите 2FA и шифрование cookies, чтобы поднять уровень защиты до максимального.",
    "secScoreLabel": "Уровень защиты",
    "tgHeroTitle": "Поддержка прямо в Telegram",
    "tgHeroDesc": "Создавайте тикеты, получайте ответы и уведомления о платежах — без переключения между вкладками. Привязка занимает 10 секунд.",
    "tgHeroLinked": "Подключено",
    "tgHeroUnlinked": "Не привязан",
    "tgFeatTickTitle": "Тикеты в чат",
    "tgFeatTickDesc": "Создавайте обращения в боте — ответы поддержки приходят в тот же чат, история сохраняется.",
    "tgFeatNotifTitle": "Уведомления о платежах",
    "tgFeatNotifDesc": "Мгновенные алерты о пополнениях, оплате тарифа и активации триала. Никаких писем в спаме.",
    "tgFeatTfaTitle": "2FA через Telegram",
    "tgFeatTfaDesc": "Альтернатива Authenticator-приложениям: код приходит в чат при входе, не нужно ставить отдельное приложение.",
    "tgStepsTitle": "Как привязать Telegram",
    "tgStep1Title": "Откройте бота",
    "tgStep1Desc": "Нажмите «Привязать Telegram» — бот откроется в новой вкладке с готовым кодом.",
    "tgStep2Title": "Нажмите Start",
    "tgStep2Desc": "В чате с ботом нажмите кнопку Start — привязка произойдёт автоматически.",
    "tgStep3Title": "Готово",
    "tgStep3Desc": "Можно создавать тикеты, получать уведомления и использовать 2FA через Telegram.",
    "heroDays": "С нами дней",
    "heroProfiles": "Профилей",
    "checklistTitle": "Что улучшить",
    "chkEmail": "Подтвердить email",
    "chk2fa": "Включить двухфакторную аутентификацию",
    "chkTg": "Привязать Telegram (бесплатный триал)",
    "chkEnc": "Включить шифрование cookies",
    "chkGo": "Перейти",
    "navTeam": "Команда",
    "navWorkspaces": "Рабочие пространства",
    "teamTitle": "Команда",
    "teamSubtitle": "Общий доступ к облачным профилям. Приглашайте коллег, выдавайте роли и следите за журналом действий.",
    "teamHeroTitle": "Работайте над профилями вместе",
    "teamHeroDesc": "Профили и cookies остаются зашифрованными: доступ выдаётся ролью, а не передачей ключа. Приглашение действует 72 часа и привязано к почте.",
    "teamOrg": "Организация",
    "teamRename": "Переименовать",
    "teamSeats": "Места",
    "teamSeatsUsed": "{used} из {limit}",
    "teamMembers": "Участники",
    "teamInvites": "Приглашения",
    "teamInvite": "Пригласить",
    "teamInviteEmail": "Email коллеги",
    "teamInviteRole": "Роль",
    "teamRoleAdmin": "Администратор",
    "teamRoleOperator": "Оператор",
    "teamRoleOwner": "Владелец",
    "teamRoleHintAdmin": "Приглашает людей, управляет профилями.",
    "teamRoleHintOperator": "Работает с профилями, но не меняет состав команды.",
    "teamPending": "Ожидает принятия",
    "teamOpened": "Ссылку открывали",
    "teamCopyLink": "Скопировать ссылку",
    "teamRotate": "Перевыпустить",
    "teamRevoke": "Отозвать",
    "teamRemove": "Исключить",
    "teamLeave": "Покинуть команду",
    "teamAudit": "Журнал действий",
    "teamAuditEmpty": "Действий пока не было",
    "teamNoInvites": "Активных приглашений нет",
    "teamSeatLimit": "Мест больше нет. Обновите тариф или освободите место.",
    "teamSwitch": "Переключить",
    "teamActive": "Активна",
    "teamPersonal": "Личное пространство",
    "teamExpiresIn": "Истекает через {h} ч",
    "teamLinkCopied": "Ссылка скопирована",
    "teamInviteSent": "Приглашение отправлено на {email}",
    "teamConfirmRevoke": "Отозвать приглашение для {email}?",
    "teamConfirmRemove": "Исключить {email} из команды?",
    "teamConfirmLeave": "Покинуть эту команду? Доступ к общим профилям пропадёт.",
    "teamOnlyOwner": "Это может сделать только владелец команды."
  },
  "js": {
    "auth": {
      "fillFields": "Заполните все поля",
      "fillBoth": "Заполните оба поля",
      "passMin8": "Пароль минимум 8 символов",
      "passMin8Short": "Минимум 8 символов",
      "loading": "Загрузка...",
      "checking": "Проверка...",
      "sending": "Отправка...",
      "netError": "Ошибка сети",
      "netErrorCheck": "Ошибка сети. Проверьте соединение.",
      "genericError": "Что-то пошло не так. Попробуйте ещё раз.",
      "errPrefix": "Ошибка ",
      "errColon": "Ошибка: ",
      "unexpectedResp": "Сервер вернул неожиданный ответ (",
      "signIn": "Войти",
      "signInH": "Вход",
      "signUp": "Зарегистрироваться",
      "signUpH": "Регистрация",
      "signInForManage": "Войдите для управления подпиской",
      "createAccount": "Создайте аккаунт",
      "haveAccount": "Уже есть аккаунт?",
      "noAccount": "Нет аккаунта?",
      "code6digits": "Введите 6-значный код",
      "confirm": "Подтвердить",
      "codeSent": "Код отправлен",
      "codeSentMaybe": "Код отправлен (если аккаунт существует)",
      "codeOk": "✓ Код отправлен",
      "codeOkAgain": "✓ Код отправлен повторно",
      "resend": "Отправить повторно",
      "resendCounter": "Повторно (",
      "s": "с)",
      "sendCode": "Отправить код",
      "enterEmail": "Введите email",
      "enterCode": "Введите код",
      "enterCodeAndPass": "Введите код из письма и новый пароль",
      "passReset": "Сброс пароля",
      "passChange": "Сменить пароль",
      "passChanged": "✓ Пароль изменён",
      "passChangedReLogin": "✓ Пароль изменён! Войдите с новым паролем",
      "emailConfirmed": "✓ Email подтверждён!",
      "emailAlreadyConfirmed": "✓ Email уже подтверждён",
      "notConnected": "Не подключена",
      "notConfirmed": "Не подтверждён",
      "confirmed": "Подтверждён",
      "connectedOk": "✓ Подключена",
      "confirmedOk": "✓ Подтверждён",
      "tgNotLinked": "Не привязан",
      "tgLinked": "Привязан",
      "tgLinkedAt": "✓ Привязан: @",
      "tgLinkedSuccess": "✓ Telegram успешно привязан!",
      "tgUnlinked": "Telegram отвязан.",
      "tgUnlinkConfirm": "Отвязать Telegram? После отвязки перестанут приходить ответы на тикеты.",
      "tgAlreadyUnlinked": "Привязка уже отсутствовала.",
      "tgAlreadyLinkedOther": "К вашему аккаунту уже привязан Telegram. Отвяжите его перед привязкой нового.",
      "tgBotNotConfigured": "Telegram-бот не настроен на сервере.",
      "tgGenCode": "Генерируем код...",
      "tgValidMin": " (действует 10 минут).",
      "tgClickStart": "📨 В Telegram нажмите <b>Start</b>. Если не сработало — отправьте боту вручную: ",
      "tgClickHint": "Нажмите кнопку ниже — бот откроется автоматически и привяжет аккаунт одним кликом.",
      "tgSupportHint": "Вы можете обращаться в поддержку и получать ответы в Telegram.",
      "tgTrialAvailable": "🎁 Вам доступен бесплатный триал",
      "tgTrialBannerTitle": "🎁 Привяжите Telegram — получите бесплатный триал",
      "toPricing": "К тарифам",
      "copied": "✓ Скопировано",
      "endSession": "Завершить сессию?",
      "currentSession": " <span class=\"sess-badge\">Текущая</span>",
      "endBtn": "Завершить",
      "activate": "Активировать",
      "enterPromo": "Введите промокод",
      "credited": "Зачислено",
      "creditedExcl": "Начислено!",
      "payCreating": "Создание платежа...",
      "payOpened": "✓ Окно оплаты открыто. Завершите оплату.",
      "payMin5": "Минимум $5",
      "payButton": "Оплатить $",
      "crypto": "Крипто",
      "cardRu": "Карта РФ/СНГ",
      "cardRuShort": "Карта RU",
      "cardInt": "Карта INT",
      "waiting": "Ожидание",
      "cloudDelete": "Удалить из облака",
      "cloudDeleteConfirm": "Удалить профиль из облака?",
      "noCloudCookies": "<span class=\"cloud-badge gray\">нет cookies</span>",
      "noName": "Без имени",
      "noUsername": "без username",
      "foreverFree": "∞ Бессрочно",
      "emptyCloudProfiles": "<p class=\"empty-text\">Нет облачных профилей</p>",
      "emptyPayments": "<p class=\"empty-text\">Нет платежей</p>",
      "emptyTopups": "<p class=\"empty-text\">Нет пополнений</p>",
      "emptyReferrals": "<p class=\"empty-text\">Нет рефералов</p>",
      "emptySessions": "<p class=\"empty-text\">Нет сессий</p>",
      "emptySyncedProfiles": "<p class=\"empty-text\">Нет синхронизированных профилей</p>",
      "refRegistered": "Зарегистрирован",
      "refToppedUp": "пополнил",
      "refEarnedShort": "заработано",
      "sessCores": "ядер",
      "pckUpdated": "Обновлено",
      "pckSynced": "✓ Синхронизирован",
      "tgTrialAvailableDesc": "Вы уже привязали Telegram — активируйте триал на странице тарифов. После окончания вы автоматически вернётесь на Free.",
      "tgTrialBannerDesc": "Это защита от массовой регистрации одноразовых аккаунтов. После привязки кнопка активации триала появится автоматически.",
      "openAgain": "Открыть снова",
      "proxyLabel": "Прокси",
      "monShort": "мес",
      "tfaSubTotp": "Откройте приложение Authenticator и введите 6-значный код",
      "tfaSubTelegram": "Бот прислал вам 6-значный код. Введите его ниже",
      "googleError": "Не удалось запустить вход через Google",
      "cloudDeleteAllConfirm": "Это действие нельзя отменить. Удалить ВСЕ облачные профили?",
      "cloudDeleting": "Удаление…",
      "cloudDeletedN": "Удалено: {n} профил.",
      "cloudDeleteFailed": "Ошибка сервера ({code})",
      "endSessionTitle": "Завершить сессию?",
      "endSessionMsg": "Устройство больше не сможет использовать этот аккаунт без повторного входа.",
      "sessionEnded": "Сессия завершена",
      "tgUnlinkMsg": "После отвязки уведомления и поддержка через Telegram станут недоступны.",
      "tgUnlinkBtn": "Отвязать",
      "tgHeroLinked": "Подключено",
      "tgHeroUnlinked": "Не привязан",
      "sessUnknownDevice": "Неизвестное устройство",
      "sessNoDetails": "Данных об устройстве нет — сессия старше, чем появился их сбор",
      "sessFirstSeen": "Первый вход",
      "sessLastSeen": "Последняя активность",
      "sessToday": "сегодня",
      "sessYesterday": "вчера",
      "sessAt": "в",
      "sessRam": "ГБ"
    },
    "dd": {
      "proxiesAutoNote": " Прокси назначены автоматически.",
      "warmupDone": "Прогрев завершён для {n} профилей.",
      "imported": "Импортировано профилей: {n}.",
      "deleteConfirm": "Удалить профилей: {n}?",
      "cantDeleteActive": "Нельзя удалить активное пространство.",
      "noProfilesToRun": "Нет профилей для запуска.",
      "selectProfilesDel": "Выберите профили для удаления.",
      "selectProxy": "Выберите прокси.",
      "addProxiesFirst": "Добавьте прокси в список.",
      "createProfilesFirst": "Создайте профили.",
      "cycleDone": "Круг завершён.",
      "allStopped": "Все остановлены.",
      "copied": "Скопировано!",
      "invalidJson": "Невалидный JSON.",
      "notRecognized": "Не распознано",
      "accountActive": "Аккаунт активен. Basic. 30/30 профилей.",
      "restoredTpl": "«{name}» восстановлен.",
      "configSaved": "\\n[CONFIG] Конфиг сохранён",
      "systemStarted": "[INFO] Система запущена\\n[INFO] Workspace: Default",
      "emptyProfiles": "<div class=\"dm-empty\">Нет профилей. Нажмите «Новый профиль» для создания.</div>",
      "emptyProcesses": "<div class=\"dm-empty\">Нет процессов</div>",
      "emptyProxies": "<div class=\"dm-empty\">Нет прокси</div>",
      "emptyCloudProfiles": "<div class=\"dm-empty\">Нет облачных профилей</div>",
      "emptyProxiesPad": "<div class=\"dm-empty\" style=\"padding:14px\">Нет прокси</div>",
      "emptyWsProfiles": "<div class=\"dm-empty\" style=\"padding:20px\">Нет профилей в этом пространстве</div>",
      "emptyActiveProcs": "<div class=\"dm-empty\" style=\"padding:30px\">Нет активных процессов. Запустите профили.</div>",
      "fooDelete": "<button class=\"dm-b dm-bd dd-y\">Удалить</button> <button class=\"dm-b dd-n\">Отмена</button>",
      "fooRun": "<button class=\"dm-b dm-bp dd-run\">Запуск</button> <button class=\"dm-b dd-n\">Отмена</button>",
      "fooSave": "<button class=\"dm-b dm-bp dd-sv\">Сохранить</button> <button class=\"dm-b dd-n\">Отмена</button>",
      "fooAdd": "<button class=\"dm-b dm-bp dd-y\">Добавить</button> <button class=\"dm-b dd-n\">Отмена</button>",
      "fooCreate": "<button class=\"dm-b dm-bp dd-y\">Создать</button> <button class=\"dm-b dd-n\">Отмена</button>",
      "runningCircle": "<span class=\"dm-ri\">● Выполняется круг...</span>",
      "headlessMode": "Headless режим",
      "sentinel": "Отправить",
      "report": "Отчёт",
      "error": "Ошибка",
      "copy": "Копировать",
      "add": "Добавить",
      "delete": "Удаление",
      "delSelected": "Удалить выбранные",
      "cards": "Карточка",
      "button": "Кнопка",
      "acctsTitle": "Аккаунты",
      "profilesTitle": "Профили",
      "processesTitle": "Процессы",
      "settingsTitle": "Настройки",
      "settingsFor": "Настройки: ",
      "proxiesTitle": "Управление прокси",
      "processesMgr": "Управление процессами",
      "exportImport": "Экспорт / Импорт",
      "scriptDefault": "Скрипт по умолчанию",
      "cfgEditor": "Редактор конфига",
      "cfgScript": "Конфиг скрипта (JSON)",
      "parProfiles": "Параллельных профилей",
      "cyclesCount": "Количество кругов",
      "pauseBetween": "Пауза между кругами (сек)",
      "checkInterval": "Интервал проверки (сек)",
      "maxRunMin": "Макс. время работы (мин)",
      "maxRamMB": "Макс. память Chrome (МБ)",
      "maxSilenceMin": "Макс. тишина (мин)",
      "monLimits": "Мониторинг и лимиты",
      "monMemory": "Мониторинг памяти",
      "monSilence": "Мониторинг тишины",
      "procTimeLimit": "Лимит времени процесса",
      "filesPaths": "Файлы и пути",
      "profilesRoot": "Корневая папка профилей Chrome",
      "autoProxy": "Автопрокси",
      "byId": "По ID",
      "byAria": "По aria-label",
      "byClass": "По классу",
      "byText": "По тексту (contains)",
      "tagOnly": "Только тег",
      "newWs": "Новое рабочее пространство",
      "createProfiles": "Создать профили",
      "stop": "Стоп",
      "done": "✓ Готово",
      "created": "✓ Создано",
      "noProxies": "Нет прокси",
      "copyTpl": " (копия)",
      "cloudTpl": " (облако)",
      "h2agoT": "2ч назад",
      "h5agoT": "5ч назад",
      "yesterday": "Вчера",
      "allOf": "всех ({n})",
      "selOf": "выбранных ({n})",
      "allShort": "всех",
      "selShort": "выбранных",
      "proxiesRemoved": "Прокси удалены у {n} профилей.",
      "proxiesAssigned": "Прокси назначены для {n} профилей.",
      "btnActionRead": "\n[BTN] {title} → Данные загружены",
      "btnActionClear": "\n[BTN] {title} → Очищено",
      "createdN": "Создано профилей: {n}.",
      "all": "Все",
      "selectAll": "Выбрать все",
      "clearAll": "Снять выделение",
      "exportImportBtn": "Экспорт / Импорт",
      "manage": "Управление",
      "newProfile": "Новый профиль",
      "runAll": "Запуск всех",
      "stopAll": "Остановить все",
      "name": "Имя",
      "fingerprint": "Отпечаток",
      "fpNoiseHint": "Noise — детерминированный шум по seed из пути профиля.",
      "fpCustomHint": "Custom — все параметры задаются вручную в редакторе отпечатка.",
      "fpNoneHint": "None — чистый Chrome, отпечаток не подменяется.",
      "saved": "Сохранено",
      "savedFp": "Профиль «{name}»: отпечаток — {fp}.",
      "createProfilesDesc": "Каждый профиль получит уникальный отпечаток и отдельную директорию Chrome.",
      "nProfiles": "{n} профилей",
      "oneProfile": "1 профиль",
      "customCount": "Своё количество:",
      "create": "Создать",
      "headlessHint": "Браузер в фоне без окна",
      "scrollPages": "Скроллить страницы",
      "scrollHint": "Имитирует просмотр",
      "siteList": "СПИСОК САЙТОВ",
      "profilesCount": "Профилей: {n}",
      "actionFor": "Действие для <b>{scope}</b> профилей.",
      "rmProxyEverywhere": "Удалить прокси везде",
      "rmProxyHint": "Удаляет прокси у {scope} профилей",
      "addProxyEverywhere": "Назначить прокси везде",
      "addProxyHint": "Назначает прокси из списка, не меняя текущие",
      "replaceProxy": "Назначить с заменой",
      "replaceProxyHint": "Заменяет прокси у всех равномерно",
      "easyExport": "Лёгкий экспорт",
      "import": "Импорт",
      "exportScopeSel": "Экспортируются выбранные профили: {n}.",
      "exportScopeAll": "Экспортируются все профили: {n}.",
      "pasteJson": "Вставьте JSON с профилями:",
      "doImport": "Импортировать",
      "demoProcess": "Демо-процесс",
      "stopSelected": "Остановить выбранные",
      "closeAll": "Закрыть все",
      "selectProcesses": "Отметьте процессы, которые нужно остановить.",
      "addCard": "Карточку",
      "addButton": "Кнопку",
      "config": "Конфиг",
      "title": "Название",
      "type": "Тип",
      "action": "Действие",
      "actShow": "Показать содержимое",
      "actClear": "Очистить",
      "adminConsole": "Консоль администратора",
      "cfgHint": "Конфиг парсится автоматически. Вы можете ввести любой JSON.",
      "reportDesc": "Публикация отчёта на files.fm / telegra.ph. Выберите формат — ниже появится результат.",
      "reportLinks": "Ссылок на отчёт",
      "reportProxy": "Прокси",
      "reportBtnLinks": "Ссылки",
      "reportBtnPhoto": "Фото",
      "reportBtnFull": "Полный",
      "reportResults": "Результаты",
      "reportBuilding": "Формируем отчёт…",
      "reportDoneLinks": "Готово. Опубликовано ссылок: {n}. Формат: только ссылки, одна страница telegra.ph.",
      "reportDonePhoto": "Готово. Загружено скриншотов: {n} на files.fm, срок хранения — 30 дней.",
      "reportDoneFull": "Готово. Полный отчёт: {n} ссылок + скриншоты + лог выполнения, единым документом.",
      "reportLink": "Ссылка на отчёт",
      "reportElapsed": "Время сборки: {s} с",
      "proxyProtocol": "Протокол",
      "proxyList": "Список (по строке)",
      "check": "Проверить",
      "pulledIntoProfiles": "Добавлено прокси: {n}. Новые профили получат их автоматически.",
      "reassignNow": "Раздать прокси профилям сейчас",
      "reassigned": "Прокси розданы: обновлено профилей — {n}.",
      "noProfilesYet": "Профилей пока нет — прокси назначатся при создании."
    }
  },
  "editor": {
    "cat": {
      "interact": "Взаимодействие",
      "nav": "Навигация",
      "wait": "Ожидание",
      "data": "Данные",
      "logic": "Логика"
    },
    "block": {
      "click": "Клик",
      "type": "Ввод текста",
      "hover": "Наведение",
      "scroll": "Прокрутка",
      "goto": "Перейти по URL",
      "screenshot": "Скриншот",
      "reload": "Перезагрузить",
      "back": "Назад",
      "waitEl": "Ждать элемент",
      "pause": "Пауза",
      "getText": "Получить текст",
      "getAttr": "Получить атрибут",
      "exists": "Элемент есть?",
      "if": "Условие (if)",
      "loop": "Цикл",
      "log": "Лог"
    }
  },
  "TwoFactor": {
    "Back": "← Назад",
    "Confirm": "Подтвердить",
    "Disable": {
      "Sending": "Отправка…",
      "CodeSent": "Код отправлен. Проверьте Telegram."
    }
  },
  "Auth": {
    "TwoFactor": {
      "Code": "Код"
    },
    "Err": {
      "BadCode": "Введите 6-значный код"
    }
  },
  "uikit": {
    "cancel": "Отмена",
    "confirm": "Подтвердить",
    "ok": "OK",
    "typeToConfirm": "Введите",
    "toConfirm": "для подтверждения",
    "deleteAllPhrase": "УДАЛИТЬ ВСЕ",
    "deletePhrase": "УДАЛИТЬ"
  },
  "profilesList": {
    "searchPh": "Поиск по имени, ID или прокси…",
    "colName": "Имя",
    "colDetails": "Параметры",
    "colUpdated": "Обновлено",
    "selectAll": "Выделить всё",
    "selectedN": "Выбрано: {n}",
    "clearSelection": "Снять выделение",
    "deleteSelected": "Удалить выбранные",
    "deleteAll": "Удалить все",
    "delete": "Удалить",
    "unnamed": "Без имени",
    "statTotal": "Всего: {n}",
    "statFiltered": "Найдено: {n} из {total}",
    "emptyAll": "Нет облачных профилей",
    "emptySearch": "По вашему запросу ничего не найдено",
    "confirmDeleteTitle": "Удалить профиль?",
    "confirmDeleteMsg": "Действие необратимо.",
    "confirmDeleteSelTitle": "Удалить выбранные профили?",
    "confirmDeleteSelMsg": "Будет удалено профилей: {n}. Действие необратимо.",
    "confirmDeleteAllTitle": "Удалить ВСЕ облачные профили?",
    "confirmDeleteAllMsg": "Будут удалены все {n} профилей вместе с зашифрованными cookies. Это действие нельзя отменить.",
    "deletedOne": "Профиль удалён",
    "deletedN": "Удалено профилей: {n}",
    "deleteFailed": "Ошибка при удалении",
    "encryptedTitle": "Cookies зашифрованы — сервер не может их прочитать",
    "wsAll": "Все пространства",
    "wsFilter": "Пространство",
    "wsLegacy": "Без пространства",
    "wsShared": "Общий",
    "wsPrivate": "Личный",
    "wsCount": "{n} проф.",
    "groupBy": "Группировать по пространствам",
    "wsShare": "Открыть команде",
    "wsUnshare": "Сделать личным",
    "wsShareOk": "Пространство «{name}» теперь доступно команде",
    "wsUnshareOk": "Пространство «{name}» снова личное",
    "wsShareFail": "Не удалось изменить видимость пространства",
    "emptyHint": "Профили появятся здесь после первой синхронизации из приложения."
  },
  "nextSteps": {
    "head": "Что дальше",
    "editor": {
      "t": "Открыть редактор",
      "d": "Собрать сценарий из блоков прямо в браузере — установка не нужна.",
      "k": "Онлайн"
    },
    "docs": {
      "t": "Читать документацию",
      "d": "Интерактивные демо профилей, прокси, процессов и рабочих пространств.",
      "k": "Практика"
    },
    "pricing": {
      "t": "Посмотреть тарифы",
      "d": "Free — 10 профилей и 1 поток, бессрочно. Дальше растёт лимит, не функциональность.",
      "k": "Лимиты"
    },
    "download": {
      "t": "Скачать Nexly",
      "d": "Windows 10/11 x64, 4 ГБ RAM, 500 МБ на диске, .NET 8 Runtime.",
      "k": "Windows"
    },
    "knowledge": {
      "t": "База знаний",
      "d": "Как устроен отпечаток, какие прокси выбрать, чем антидетект отличается от VPN.",
      "k": "Теория"
    },
    "useCases": {
      "t": "Сценарии использования",
      "d": "Восемь разборов: парсинг, мультиаккаунтинг, автопостинг, E2E-тесты.",
      "k": "Разборы"
    }
  }
}