{
  "slug": "remote",
  "meta": {
    "title": "Remote | ChromVoid",
    "description": "Телефон и desktop через USB, WebRTC или WSS."
  },
  "hero": {
    "label": "Remote",
    "title": "Один зашифрованный контракт для USB, WebRTC и WSS.",
    "description": "Транспорт меняется, но граница безопасности нет. Noise XX обязателен на каждом пути.",
    "audience": "Для phone-to-desktop workflow, где нужен выбор транспорта без ослабления границы доверия."
  },
  "useCases": {
    "title": "Когда это подходит",
    "intro": "Remote нужен, когда важно, по какому пути идёт связь между телефоном и desktop.",
    "cards": [
      {
        "title": "USB-кабель",
        "body": "Используйте прямой кабель, когда нужен wired path без network stack."
      },
      {
        "title": "WebRTC-канал",
        "body": "Используйте основной сетевой путь, если доступен peer-to-peer transport."
      },
      {
        "title": "Relay fallback",
        "body": "Используйте WSS relay, когда доступен только детерминированный fallback path."
      }
    ]
  },
  "howItWorks": {
    "title": "Как это работает",
    "intro": "Транспорт меняется, но зашифрованная граница остаётся явной.",
    "steps": [
      {
        "title": "Выберите путь",
        "body": "USB, WebRTC или WSS relay подбираются под окружение."
      },
      {
        "title": "Поднимите Noise XX",
        "body": "Каждый путь договаривается об одном encryption contract до передачи данных."
      },
      {
        "title": "Граница остаётся видимой",
        "body": "Телефон остаётся source of truth, а desktop - тонким client."
      }
    ],
    "diagrams": [
      {
        "src": "/assets/diagrams/transport-layers.svg",
        "alt": "Слои remote transport",
        "title": "Слои transport",
        "description": "USB, WebRTC и WSS все находятся под одним Noise contract."
      }
    ]
  },
  "security": {
    "title": "Границы безопасности",
    "cards": [
      {
        "title": "USB - проводной",
        "body": "Кабельный путь не падает молча обратно в network stack."
      },
      {
        "title": "WebRTC - peer-to-peer",
        "body": "Сетевой путь использует DTLS + ICE, а затем заворачивает data в Noise."
      },
      {
        "title": "Relay - транспорт, не trust",
        "body": "WSS relay пересылает opaque bytes и считается только fallback."
      }
    ]
  },
  "limitations": {
    "title": "Ограничения и scope",
    "intro": "Страница описывает текущий transport contract, а не вообще все возможные транспорты.",
    "items": [
      "В public scope входят только определённые families транспорта.",
      "Relay - это fallback, а не trust anchor.",
      "Noise XX требуется на каждом пути."
    ],
    "notTitle": "Не unencrypted sync link",
    "notBody": "Remote не убирает encryption contract только потому, что изменился транспорт."
  },
  "cta": {
    "title": "Держите remote path явным, независимо от транспорта.",
    "body": "USB, WebRTC и relay все используют одну и ту же границу Noise XX."
  },
  "ui": {
    "generic": {
      "audience": "Для кого",
      "useCases": "Сценарии",
      "how": "Как это работает",
      "security": "Безопасность",
      "limitations": "Ограничения",
      "threatModel": "Модель угроз",
      "download": "Скачать",
      "backHome": "На главную",
      "technicalDiagram": "Техническая диаграмма",
      "badges": {
        "inDevelopment": "В разработке",
        "pro": "PRO"
      }
    },
    "remote": {
      "transportSection": "Транспорт",
      "transportTitle": "Три пути. Один контракт шифрования.",
      "transportIntro": "USB, WebRTC или WSS relay — выбор зависит от окружения. Noise XX обязателен на каждом пути.",
      "flowSection": "Поток",
      "flowTitle": "Как это работает",
      "flowIntro": "Транспорт может меняться, но граница безопасности остаётся явной.",
      "boundarySection": "Границы",
      "boundaryTitle": "Границы безопасности",
      "diagramBadge": "Техническая диаграмма",
      "diagramSupportBadge": "Transport layers",
      "audienceLabel": "Для кого это",
      "transports": [
        {
          "id": "usb",
          "name": "USB",
          "title": "Прямой кабель",
          "body": "Проводное подключение без network stack. При обрыве кабеля система не переключается на сеть без явного действия.",
          "meta": "Noise XX · Wired · Отдельное семейство"
        },
        {
          "id": "webrtc",
          "name": "WebRTC",
          "title": "Сетевой канал",
          "body": "Основной сетевой транспорт. Использует DTLS + ICE для установки пути, затем оборачивает data в Noise.",
          "meta": "Noise XX · P2P · Основной сетевой путь"
        },
        {
          "id": "wss",
          "name": "WSS Relay",
          "title": "Детерминированный fallback",
          "body": "Relay пересылает opaque bytes. MVP-baseline для mobile platform. Relay - транспорт, не trust.",
          "meta": "Noise XX · Relay · MVP baseline"
        }
      ],
      "lanes": {
        "phone": "Телефон",
        "phoneRole": "Vault · Keys · Source of truth",
        "desktop": "Десктоп",
        "desktopRole": "Тонкий client · Screen",
        "usb": "USB",
        "webrtc": "WebRTC",
        "wss": "WSS",
        "noise": "Noise XX",
        "noiseCopy": "Один encryption contract на каждом transport path",
        "noiseWrap": "Noise"
      },
      "metrics": [
        {
          "value": "Noise XX",
          "label": "Шифрование"
        },
        {
          "value": "3",
          "label": "Транспорта"
        },
        {
          "value": "0",
          "label": "Plaintext-путей"
        }
      ]
    }
  }
}
