{
  "remoteAccess": {
    "pageTitle": "远程访问",
    "pageSubtitle": "从其他设备连接此 Gateway。选择一种方式即可 — 同一时间只应启用一种对外暴露模式。",
    "docsLink": "阅读远程访问指南",
    "tabsAria": "远程访问方式",
    "tabs": {
      "guide": "概览",
      "tailscale": "Tailscale",
      "public": "公网访问",
      "reverse-proxy": "反向代理",
      "ssh": "SSH 隧道",
      "lan": "局域网"
    },
    "tabIntro": {
      "guide": "对比各方式并查看当前 Gateway 上的激活状态。",
      "tailscale": "适合 tailnet 内的个人设备。Gateway 仍绑定 loopback，由 Tailscale Serve 发布 HTTPS。",
      "public": "先在 Console 创建 Tunnel Registration Key 并保存，再启动隧道获取公网地址，然后扫码配对移动 App。",
      "reverse-proxy": "用自己的 HTTPS 反向代理（Caddy / nginx / Cloudflare Tunnel）将 Gateway 暴露在自定义域名下，然后扫码配对移动 App。",
      "ssh": "无 VPN 或公网隧道时，通过 CLI 做 SSH 端口转发。",
      "lan": "在同一 Wi‑Fi 或局域网内，通过 Gateway 绑定地址访问，并扫码配对移动 App。"
    },
    "guide": {
      "pickMethod": "选择连接方式",
      "recommended": "推荐",
      "configure": "去配置",
      "statusActive": "已启用",
      "statusOff": "未启用",
      "statusConnecting": "连接中",
      "tailscaleCardTitle": "Tailscale Serve",
      "tailscaleCardDesc": "仅在 tailnet 内提供 HTTPS，不暴露到公网。",
      "publicCardTitle": "公网隧道",
      "publicCardDesc": "生成公网 URL，用于移动配对与远程访问。",
      "reverseProxyCardTitle": "反向代理",
      "reverseProxyCardDesc": "用自部署的 HTTPS 反代将 Gateway 暴露在自定义域名下。",
      "sshCardTitle": "SSH 隧道",
      "sshCardDesc": "无 VPN 或公网隧道时，通过 CLI 做端口转发。",
      "sshCardStatus": "CLI",
      "lanCardTitle": "同一 Wi‑Fi / 局域网",
      "lanCardDesc": "通过 Gateway 绑定地址在同一局域网内访问。",
      "lanCardStatus": "本地",
      "conflictsTitle": "配置冲突",
      "conflictsHint": "同一时间只应启用一种暴露方式。切换前请先关闭另一种。",
      "oneAtATimeHint": "Tailscale Serve 与公网隧道不能同时运行。切换前请在概览页查看状态。",
      "needToken": "请先使用有效的 Gateway token 登录后再管理远程访问。",
      "docsLink": "查看完整文档"
    },
    "advanced": {
      "proxyTitle": "反向代理与 remote URL",
      "proxyBody": "Gateway 位于 nginx、Caddy 等反向代理之后时，需配置可信头与可选的 gateway.remote，供 CLI 客户端使用。",
      "proxyDocs": "阅读远程访问文档"
    },
    "lan": {
      "title": "同一网络（局域网）",
      "subtitle": "在同一 Wi‑Fi 下的手机或笔记本访问 Gateway，无需暴露到公网。",
      "body": "将 Gateway 绑定地址设为局域网 IP（或 0.0.0.0），通过 http://<主机>:<端口> 连接。请注意防火墙规则。",
      "link": "打开 Gateway 设置",
      "pairTitle": "移动 App 配对",
      "pairSubtitle": "在同一 Wi‑Fi 下扫码连接手机。App 会用一次性配对密钥换取 Gateway token。",
      "pairBlockedNextSteps": "或使用「公网访问」标签通过隧道配对。",
      "pairPublicTabLink": "打开公网访问"
    },
    "tailscale": {
      "title": "Tailscale Serve（推荐）",
      "subtitle": "在 tailnet 上通过 HTTPS 暴露 Gateway，进程仍绑定 loopback。",
      "statusLabel": "Serve 状态",
      "stepInstallBefore": "在本机安装 ",
      "stepInstallLink": "Tailscale",
      "stepInstallAfter": " 并登录 tailnet。",
      "stepEnable": "在下方启用 Serve，通过 tailnet 主机名发布 HTTPS。",
      "stepCopy": "在 tailnet 内任意设备打开或复制 HTTPS 地址。",
      "loading": "正在加载 Tailscale 状态…",
      "statusActive": "Tailscale Serve 已启用。",
      "statusOff": "Tailscale Serve 未启用。",
      "enableServe": "启用 Serve",
      "disableServe": "停用 Serve",
      "copyUrl": "复制 HTTPS 地址",
      "copied": "已复制",
      "hint": "需要本机已安装并登录 Tailscale。API 仍需要 gateway token。",
      "docsLink": "Tailscale Serve 文档",
      "cliMissingIntro": "本机未找到 Tailscale CLI。",
      "cliMissingDownloadLink": "前往 tailscale.com/download 下载",
      "cliMissingSuffix": "，安装并登录后重试。"
    },
    "ssh": {
      "title": "SSH 隧道（CLI）",
      "subtitle": "无 Tailscale 时，将远程 Gateway 的 loopback 端口转发到本机。",
      "hint": "将 user@your-host 替换为你的 SSH 登录。在需要使用 Gateway 控制台的机器上运行。",
      "copy": "复制命令",
      "copied": "已复制"
    },
    "reverseProxy": {
      "title": "反向代理（自部署 HTTPS）",
      "subtitle": "用自己部署的 Caddy / nginx / Cloudflare Tunnel 将 Gateway 暴露在自定义域名下。",
      "urlLabel": "公网 URL",
      "urlPlaceholder": "https://gateway.example.com",
      "urlHint": "不能包含路径。公网域名必须使用 https；http 仅限 RFC1918 / .local。",
      "probeButton": "测试",
      "probing": "测试中…",
      "autoDetectedTitle": "已自动识别当前浏览器地址",
      "autoDetectedHint": "下方 QR 已使用此 URL。点击「保存为默认」可持久化，让其他机器/重启后共用同一地址。",
      "saveAsDefault": "保存为默认",
      "saving": "保存中…",
      "clear": "清除已保存的 URL",
      "certWarning": "移动端需要系统信任根证书（Let's Encrypt / Cloudflare / 商业 CA）。v1 不支持自签证书。",
      "qrTitle": "移动 App 配对 QR",
      "qrSubtitle": "在 xopc 移动 App 中扫码即可通过反向代理完成配对。",
      "noUrlYet": "请先在上方输入反代公网 URL 以生成配对 QR。",
      "mintingSecret": "正在生成配对密钥…",
      "encoding": "正在生成 QR…",
      "refreshQr": "刷新 QR",
      "copyLink": "复制 deeplink",
      "copied": "已复制",
      "probeStatus": {
        "ok": "可达",
        "mobileReady": "移动配对就绪",
        "codeUnknown": "测试失败",
        "code_TIMEOUT": "请求超时",
        "code_TLS_INVALID": "TLS / 证书错误",
        "code_DNS_OR_CONN_REFUSED": "DNS 解析失败或连接被拒",
        "code_NETWORK_ERROR": "网络错误",
        "code_AUTH_BLOCKED": "反代返回 401/403 — 请移除 /api/tunnel/pair/ping 前面的鉴权",
        "code_HTTP_ERROR": "HTTP 错误",
        "code_NOT_XOPC_GATEWAY": "URL 未识别为 xopc gateway",
        "code_invalid_url": "URL 不合法",
        "code_invalid_scheme": "Scheme 必须是 http(s)",
        "code_has_userinfo": "URL 不能包含用户名密码",
        "code_has_path": "URL 不能包含路径",
        "code_has_query_or_fragment": "URL 不能包含 query 或 fragment",
        "code_requires_https": "公网域名必须使用 https",
        "code_INVALID_JSON": "请求体 JSON 不合法"
      }
    }
  }
}
