{
  "app": {
    "title": "ScanChess",
    "subtitle": "AI 国际象棋记谱识别",
    "aiPowered": "AI 驱动"
  },
  "auth": {
    "login": "登录",
    "signup": "注册",
    "logout": "退出登录",
    "loginRequired": "请先登录",
    "loginDescription": "登录后即可使用扫描功能，新用户赠送 10 积分",
    "loginNow": "立即登录 / 注册",
    "email": "邮箱",
    "password": "密码",
    "confirmPassword": "确认密码",
    "forgotPassword": "忘记密码？",
    "noAccount": "没有账号？",
    "hasAccount": "已有账号？",
    "signupSuccess": "注册成功",
    "orContinueWith": "或使用以下方式登录",
    "loginSuccess": "登录成功",
    "logoutSuccess": "已退出登录",
    "emailNotVerified": "邮箱未验证",
    "emailNotVerifiedDesc": "请查看您的邮箱并点击验证链接以激活账户。",
    "invalidCredentials": "邮箱或密码错误",
    "emailAlreadyRegistered": "该邮箱已被注册",
    "verificationSent": "验证邮件已发送",
    "verificationSentDesc": "请查看收件箱并点击验证链接。",
    "checkYourEmail": "请查看您的邮箱",
    "verificationSentTo": "我们已向 {{email}} 发送验证邮件，请点击链接激活账户。",
    "resendEmail": "重新发送验证邮件",
    "verificationResent": "邮件已重发",
    "verificationResentDesc": "新的验证邮件已发送。",
    "enterEmailFirst": "请先输入邮箱地址",
    "didntReceiveEmail": "没收到邮件？重新发送",
    "referralBonus": "使用邀请码可获得 5 积分奖励",
    "emailVerificationNotice": "注册后需要验证邮箱才能完成注册。",
    "emailVerified": "邮箱已验证",
    "emailUnverified": "邮箱未验证",
    "verifyStatus": {
      "waiting": {
        "title": "请查看邮箱",
        "description": "使用扫描积分前，请先打开我们发送的验证链接。"
      },
      "verifying": {
        "title": "正在验证邮箱",
        "description": "请稍候。"
      },
      "verified": {
        "title": "邮箱验证成功",
        "description": "你的账号现在可以开始扫描。"
      },
      "failed": {
        "title": "验证链接无效",
        "description": "链接无效或已过期，请登录后重新发送。"
      }
    },
    "welcomeBack": "欢迎回来。",
    "welcome": "欢迎使用 ScanChess。",
    "emailPlaceholder": "you@example.com",
    "passwordPlaceholder": "至少 6 个字符",
    "signupWithCredits": "注册——赠送 10 积分",
    "enterValidEmail": "请输入有效的邮箱地址",
    "passwordResetSent": "请查看邮箱",
    "passwordResetSentDesc": "如果该邮箱对应一个账号，我们已发送密码重置链接。",
    "validation": {
      "emailInvalid": "请输入有效的邮箱地址。",
      "passwordMin": "密码至少需要 6 个字符。"
    },
    "agreement": "继续即表示你同意《<terms>服务条款</terms>》和《<privacy>隐私政策</privacy>》。",
    "pageTitle": "登录 ScanChess"
  },
  "scan": {
    "title": "开始扫描",
    "seoHeading": "扫描国际象棋棋谱或棋盘照片",
    "seoIntro": "上传清晰照片，把手写着法转换为经过校验的 SAN 与 PGN，或把棋盘局面转换为 FEN。",
    "inputType": "图片类型",
    "scoresheetMode": "手写棋谱",
    "boardMode": "棋盘图片",
    "uploadBoardImage": "上传棋盘图片",
    "scanning": "AI 识别中...",
    "uploadImages": "上传图片",
    "dragDrop": "拖拽记谱图片到此处",
    "orClick": "或点击选择文件",
    "tapUpload": "点这里添加记谱单照片",
    "tapUploadHint": "可以现拍，也可以从相册里选",
    "pasteSupport": "支持粘贴 (Ctrl+V)",
    "maxImages": "最多 {{count}} 张图片",
    "maxSize": "单张最大 {{size}}MB",
    "scanSuccess": "扫描完成",
    "scanSuccessDesc": "成功识别 {{count}} 步棋谱，消耗 {{credits}} 积分",
    "scanSuccessSavedDesc": "成功识别 {{count}} 步棋谱，消耗 {{credits}} 积分，并已保存到历史记录",
    "scanSuccessImagePending": "棋谱已识别并保存到历史记录，但原始图片仍需重新保存",
    "notationTranslated": "记谱单上的棋子字母按{{language}}记法读取（{{mapping}}）。",
    "scanFailed": "扫描失败",
    "noImages": "请先上传图片",
    "noImagesDesc": "需要上传记谱图片才能进行扫描",
    "insufficientCredits": "积分不足",
    "insufficientCreditsDesc": "扫描需要 {{cost}} 积分，当前余额 {{balance}}",
    "inviteFriends": "邀请好友获取更多积分",
    "scoresheetImages": "棋谱图片",
    "uploadedImages": "已上传图片",
    "monthlyQuotaUsed": "本月 Pro 额度已用完",
    "monthlyQuotaUsedDesc": "本月 Pro 扫描额度已用完，将于 {{date}} 自动刷新。",
    "monthlyQuotaUsedDescNoDate": "本月 Pro 扫描额度已用完，下个周期自动刷新。",
    "upgradeHint": "在 ScanChess App 中升级 Pro，每月获得 100 积分",
    "outOfCredits": "积分不足，无法完成本次扫描。",
    "seePricing": "获取更多积分——$4.99/月",
    "overlayDescription": "正在分析记谱图片并提取棋谱数据。",
    "cancelWait": "停止等待",
    "cancelWaitDesc": "服务端可能仍会完成处理。用相同图片重试可取回结果，不会重复扣费。",
    "uploadRejected": "部分图片无法添加",
    "uploadRejectedDesc": "{{count}} 个文件不符合类型、大小或最多 {{max}} 张图片的限制。",
    "verifyEmailRequired": "请先验证邮箱",
    "verifyEmailRequiredDesc": "验证邮箱后即可开始扫描。请查收邮件，或重新发送验证链接。",
    "verifyEmailCta": "发送验证链接",
    "repeatScanTitle": "同一张图——未扣除积分",
    "repeatScanDesc": "这是这张照片上次扫描的结果。重复扫描未修改的图片不会消耗积分。想得到不同的结果，请换一张更清晰或更完整的照片。",
    "lowBalance": "还剩 {{balance}} 积分，约够再扫一张记谱单。",
    "onlineSourceNotice": "这看起来是在线对局的截图。截图只包含走法面板里当前可见的几步，扫描无法还原其余部分——在 Chess.com 或 Lichess 上直接导出该局的 PGN 可以拿到完整棋谱。",
    "scanWithCost": "扫描 · {{cost}} 积分",
    "recognizeWithCost": "识别 · {{cost}} 积分",
    "pasteHint": "支持 {{shortcut}} 粘贴",
    "uploadLimits": "最多 {{max}} 张，每张不超过 {{size}} MB，支持 JPG、PNG、WebP。不支持 HEIC，请先转换格式。",
    "uploadLimitsBoard": "一张图片，不超过 {{size}} MB，支持 JPG、PNG、WebP。不支持 HEIC，请先转换格式。",
    "imageCount": "已添加 {{count}} / {{max}} 张图片",
    "fileRejectedType": "{{name}}：不支持的格式。请使用 JPG、PNG 或 WebP，HEIC 需先转换。",
    "fileRejectedSize": "{{name}}：超过 {{size}} MB。",
    "fileRejectedCount": "{{name}}：一次最多扫描 {{max}} 张图片。",
    "fileRejectedRead": "{{name}}：无法读取为图片。",
    "switchToBoardTitle": "只保留第一张图片？",
    "switchToBoardDesc": "棋盘识别只处理一张照片。切换后将保留 {{count}} 张图片中的第一张，其余移除。",
    "switchToBoardConfirm": "保留第一张",
    "signInHint": "开始扫描前需要先登录。新账户赠送 10 积分。",
    "unverifiedNotice": "首次扫描无需验证邮箱；要继续扫描，请先完成验证。",
    "unverifiedUsedTitle": "未验证账户的免费扫描已用完",
    "unverifiedUsedDesc": "验证邮箱后即可继续扫描。可以重新发送验证链接。",
    "resendVerification": "重新发送",
    "stillRunningTitle": "扫描仍在进行",
    "stillRunningDesc": "服务器仍在处理这张照片。积分只扣一次，同一张照片不会再次扣费——请一分钟后重试以取回结果。",
    "replayedTitle": "已载入之前的结果",
    "replayedDesc": "这张照片之前已扫描过，未扣除积分。",
    "getCredits": "获取积分",
    "insufficientInline": "当前 {{balance}} 积分，本次扫描需要 {{cost}} 积分。",
    "imageAlt": "记谱单第 {{n}} 页",
    "boardImageAlt": "棋盘照片",
    "removeImage": "移除第 {{n}} 张图片",
    "moveImageEarlier": "将第 {{n}} 张图片前移",
    "moveImageLater": "将第 {{n}} 张图片后移",
    "restoredTitle": "已恢复未保存的棋局",
    "restoredDesc": "刷新前的着法和图片已恢复。",
    "restoredDismiss": "关闭",
    "batchHint": "要扫描整轮比赛？试试批量扫描"
  },
  "notation": {
    "de": "德语",
    "es": "西班牙语",
    "fr": "法语",
    "pt": "葡萄牙语",
    "nl": "荷兰语",
    "pl": "波兰语",
    "cs": "捷克语",
    "hu": "匈牙利语",
    "ru": "俄语",
    "zh": "中文"
  },
  "game": {
    "moves": "棋谱记录",
    "totalMoves": "共 {{count}} 步",
    "doubleClickEdit": "点击铅笔按钮编辑",
    "noMoves": "暂无棋谱数据",
    "noMovesDesc": "上传记谱图片开始扫描",
    "suspiciousMoves": "{{count}} 个走法可能需要检查",
    "autoFixPrompt": "引擎检查发现 {{issues}} 步存在问题，自动修复将调整 {{changes}} 处",
    "autoFixApply": "一键尝试自动修复",
    "autoFixDismiss": "保持原样",
    "allMovesValid": "所有走法验证通过",
    "alternatives": "候选",
    "moveEmpty": "走法不能为空",
    "illegalMove": "第 {{move}} 手在前一个局面下走不通。用铅笔改正后，后面若还有问题会接着显示。",
    "white": "白方",
    "black": "黑方",
    "event": "赛事",
    "site": "地点",
    "date": "日期",
    "result": "结果",
    "unknown": "未知",
    "unknownEvent": "未知赛事",
    "unknownSite": "未知地点",
    "unknownDate": "未知日期",
    "navStart": "回到起始局面",
    "navPrev": "上一步",
    "navNext": "下一步",
    "navEnd": "跳到最终局面",
    "navReset": "重置棋盘",
    "navFlip": "翻转棋盘",
    "resultWhite": "白方胜",
    "resultBlack": "黑方胜",
    "resultDraw": "和棋",
    "resultOngoing": "进行中",
    "editMove": "编辑 {{move}}",
    "goToMove": "显示走完 {{move}} 后的局面",
    "resetTitle": "放弃本次扫描？",
    "resetDescription": "这会清除当前图片、走法和未保存的修正，且无法撤销。",
    "scanUnreliable": {
      "notFromStartingPosition": "这份着法不是从开局第一步开始的",
      "notFromStartingPositionHint": "看起来只是一局棋的片段——着法面板的截图，或记谱单的后面几页。着法按扫描原样显示；缺少前面的着法，我们无法复盘或自动纠错。请从第 1 步开始扫描完整记谱，或手动编辑着法。",
      "descriptiveNotation": "这份记谱使用的是描述式记谱法",
      "descriptiveNotationHint": "像 P-K4 或 P4R 这样的写法记的是棋子而不是格子。目前我们只能识别代数记谱法（e4、Nf3），所以着法按扫描原样显示，未做转换。"
    },
    "lowConfidence": "识别置信度 {{percent}}%，请对照记谱单核对。",
    "implausible": "这一手合法，但棋理说不通：{{san}} 可以在 {{square}} 白吃 {{gain}} 个兵，却没人走。这一手或下一手很可能识别错了。",
    "replaceWith": "改为 {{move}}",
    "insertBefore": "在 {{move}} 前插入一步",
    "insertMove": "插入着法",
    "deleteMove": "删除 {{move}}",
    "undoEdit": "撤销上一次编辑",
    "newMovePlaceholder": "例如 Nf3",
    "moreActions": "{{move}} 的更多操作",
    "round": "轮次",
    "opening": "开局",
    "addWhite": "填写白方",
    "addBlack": "填写黑方",
    "addEvent": "填写赛事",
    "addSite": "填写地点",
    "addDate": "填写日期",
    "addRound": "填写轮次",
    "editField": "编辑{{field}}"
  },
  "history": {
    "title": "历史记录",
    "viewAll": "查看全部",
    "noHistory": "暂无历史记录",
    "cloudSync": "登录后可云端同步历史记录",
    "gameLoaded": "棋谱已加载",
    "deleted": "已删除",
    "deletedDesc": "历史记录已删除",
    "justNow": "刚刚",
    "minutesAgo": "{{count}}分钟前",
    "hoursAgo": "{{count}}小时前",
    "daysAgo": "{{count}}天前",
    "startScan": "扫描棋谱",
    "totalRecords_one": "已保存 1 盘棋",
    "totalRecords_other": "已保存 {{count}} 盘棋",
    "loadedRecords": "已加载 {{count}} 盘，还有更多记录",
    "moveCount_one": "1 步",
    "moveCount_other": "{{count}} 步",
    "scanAnother": "再扫一张",
    "noHistoryDesc": "扫描后保存的棋谱会出现在这里，登录后所有设备通用。",
    "deleteGame": "删除 {{game}}",
    "deleteTitle": "确认删除这盘棋？",
    "deleteDesc": "{{game}} 将从你的棋谱库中移除，且无法恢复。想留存的话，请先导出 PGN。",
    "searchLabel": "搜索已保存的对局",
    "searchPlaceholder": "按选手、赛事或日期搜索",
    "matchCount": "{{count}} / {{total}} 局",
    "savedAt": "保存于 {{when}}",
    "loadMore": "加载更多棋谱",
    "openGame": "打开 {{game}}",
    "deleteFailed": "删除失败",
    "deleteFailedDesc": "这盘棋仍在你的棋谱库中，请重试。",
    "sharedBadge": "已分享",
    "revokeShare": "撤销 {{game}} 的分享链接",
    "revokeTitle": "撤销这个分享链接？",
    "revokeDesc": "{{game}} 的链接将对所有人失效。之后可以再生成新的链接。",
    "needsCorrection_one": "1 步待修正",
    "needsCorrection_other": "{{count}} 步待修正",
    "sortLabel": "排序",
    "sort": {
      "savedDesc": "最近保存",
      "savedAsc": "最早保存",
      "gameDateDesc": "对局日期，从新到旧",
      "gameDateAsc": "对局日期，从旧到新",
      "white": "白方姓名 A–Z",
      "black": "黑方姓名 A–Z"
    },
    "filterLabel": "结果",
    "filter": {
      "all": "全部",
      "whiteWins": "1-0",
      "blackWins": "0-1",
      "draws": "½-½",
      "unfinished": "未完成"
    },
    "tryBatch": "一次扫描整轮比赛"
  },
  "export": {
    "exportPGN": "导出 PGN",
    "copyPGN": "复制 PGN",
    "copied": "已复制",
    "embed": "嵌入棋局",
    "embedCopied": "嵌入代码已复制到剪贴板",
    "exportSuccess": "导出成功",
    "exportSuccessDesc": "PGN 文件已下载",
    "copySuccess": "复制成功",
    "copySuccessDesc": "PGN 已复制到剪贴板",
    "noData": "暂无棋谱数据",
    "noDataDesc": "请先扫描记谱图片",
    "saveGame": "保存棋局",
    "saving": "保存中...",
    "gameSaved": "保存成功",
    "gameSavedDesc": "棋局已保存到历史记录",
    "saveFailed": "保存失败",
    "saveFailedDesc": "保存棋局失败，请重试",
    "gameSavedWithCorrections_one": "已保存——还有 1 步待修正",
    "gameSavedWithCorrections_other": "已保存——还有 {{count}} 步待修正",
    "gameSavedWithCorrectionsDesc": "回放到第 {{ply}} 步停止。修正着法后请再次保存。",
    "signInToSave": "登录后保存",
    "openLichess": "在 Lichess 打开",
    "lichessOpening": "正在发送到 Lichess…",
    "lichessFailed": "Lichess 没有接受这盘棋",
    "lichessFailedDesc": "导入没有成功。可以复制 PGN，到 lichess.org/paste 手动粘贴。",
    "lichessRateLimited": "Lichess 暂时限制了导入频率。请稍等一分钟再试，或复制 PGN 到 lichess.org/paste 粘贴。",
    "lichessPasteReady": "已打开 Lichess 的粘贴页并复制了 PGN——在那里按 ⌘V / Ctrl+V 粘贴导入即可。"
  },
  "share": {
    "title": "分享",
    "text": "看看这盘棋：{{title}}（{{count}} 步）- 使用 ScanChess.com 扫描",
    "wechat": "微信",
    "wechatTitle": "分享到微信",
    "wechatDesc": "链接已复制！粘贴到微信即可分享。",
    "copyLink": "复制链接",
    "copied": "已复制！",
    "linkCopied": "链接已复制",
    "linkCopiedDesc": "分享链接已复制到剪贴板",
    "more": "更多选项",
    "cardTitle": "分享给对手",
    "cardBody": "这盘棋是两个人下的——把链接发给对手，他也能回放。任何人都能打开，无需注册。",
    "cardBodyShared": "链接已生效。拿到链接的人都可以回放这盘棋。",
    "needsSave": "请先保存棋局——分享链接指向已保存的那一份。",
    "createLink": "生成分享链接",
    "linkReady": "分享链接已生成",
    "linkReadyDesc": "发给对手即可，他不用登录就能打开。",
    "linkFailed": "链接生成失败",
    "linkFailedDesc": "请稍后再试。",
    "linkRevoked": "链接已撤销",
    "linkRevokedDesc": "旧链接不再能打开这盘棋。",
    "revokeLink": "撤销",
    "anyoneWithLink": "拿到链接的人都能查看这盘棋。",
    "anyoneWithLinkImages": "拿到链接的人都能查看这盘棋和记谱单原图。",
    "unsavedEdits": "保存之后你又改动了这盘棋。请再次保存，链接才会显示改动后的内容。",
    "includeImages": "同时分享记谱单原图",
    "includeImagesHint": "默认关闭。如果希望收到链接的人也能看到上传的照片，请打开。",
    "imagesNowShared": "链接现在会显示记谱单原图",
    "imagesNowPrivate": "链接不再显示记谱单原图",
    "updateFailed": "链接更新失败",
    "revokeFailed": "链接撤销失败",
    "copyFailedDesc": "请直接从上方的框中复制链接。"
  },
  "user": {
    "profile": "个人资料",
    "credits": "积分",
    "settings": "设置",
    "referralCode": "邀请码",
    "copyCode": "复制邀请码",
    "codeCopied": "邀请码已复制",
    "copyReferralLink": "复制邀请链接",
    "referralBonusDesc": "分享给好友，双方各获得 5 积分！",
    "referralPlaceholder": "好友的邀请码",
    "proUntil": "Pro 有效期至",
    "creditsRefresh": "额度刷新",
    "manageSubscription": "管理订阅"
  },
  "demo": {
    "title": "使用演示",
    "source": "手写棋谱",
    "sourceBoard": "棋盘照片",
    "result": "数字棋盘"
  },
  "nav": {
    "home": "首页",
    "history": "历史记录",
    "about": "关于",
    "howToUse": "使用教程",
    "faq": "常见问题",
    "boardRecognition": "棋盘识别",
    "scan": "扫描",
    "howItWorks": "使用指南",
    "blog": "博客",
    "solutions": "解决方案",
    "scanCta": "识别图片",
    "pricing": "定价",
    "settings": "设置",
    "tools": "工具"
  },
  "footer": {
    "tagline": "棋盘图片变成可分析的局面，手写棋谱变成可回放的对局。核对结果后，就可以继续使用。",
    "rights": "保留所有权利",
    "product": "产品",
    "resources": "资源",
    "company": "公司",
    "scanScoresheet": "扫描棋谱",
    "boardToFen": "棋盘照片 → FEN",
    "howItWorks": "使用指南",
    "blog": "博客",
    "solutions": "解决方案",
    "scoresheetToPgn": "棋谱 → PGN",
    "faq": "常见问题",
    "about": "关于",
    "gameHistory": "对局历史",
    "privacy": "隐私政策",
    "terms": "服务条款",
    "deleteAccount": "删除账号",
    "pricing": "定价",
    "support": "客服支持",
    "contactSupport": "联系客服",
    "supportLabel": "客服",
    "refunds": "退款政策",
    "operator": "ScanChess 由 SudoAI 运营。网页版订阅的销售主体（Merchant of Record）为 Waffo。",
    "security": "安全",
    "status": "服务状态",
    "changelog": "更新日志",
    "cookieSettings": "Cookie 设置",
    "tools": "免费国际象棋工具",
    "allTools": "全部免费工具",
    "pgnViewer": "PGN 回放",
    "boardEditor": "棋盘编辑器 & FEN",
    "pgnValidator": "PGN 校验",
    "printableScoresheets": "可打印记谱纸"
  },
  "about": {
    "kicker": "关于 ScanChess",
    "title": "一个由会下棋的小团队做的棋谱扫描工具",
    "lead": "ScanChess 把手写国际象棋记谱单的照片转换成经过规则校验、可编辑的 PGN。这一页说明它是谁做的、为什么做、识别是怎么工作的，以及它做不到什么。",
    "cta": "扫描棋谱",
    "who": {
      "title": "谁在做",
      "body1": "ScanChess 由 SudoAI 开发，这是一家很小的软件工作室。没有销售团队，也没有客服部门：写代码的人自己看客服邮箱，也会逐张查看用户反馈识别有误的扫描。",
      "body2": "博客里的指南由同一批人撰写，并对照 FIDE 手册和文中提到的平台核对过。"
    },
    "why": {
      "title": "为什么做它",
      "body": "线下对局最后往往变成一叠纸。把它们敲进数据库太慢，以至于大多数对局再也没人看过。我们希望从一张记谱单照片到一盘可以回放的棋，只需要一分钟左右——包括核对的时间。"
    },
    "how": {
      "title": "识别是怎么工作的",
      "steps": [
        "视觉模型读取每张照片上的手写字迹，为每一格给出一个候选着法和置信度。",
        "候选着法会用 chess.js 在棋盘上逐手复盘。在当前局面下不合法的着法，或模型没有把握的着法，都会被标记出来。不会有任何静默修改。",
        "你在编辑器里对照记谱单核对被标记的着法——重新输入、从规则允许的候选中选一个、插入或删除一手——然后导出 PGN 或保存对局。"
      ],
      "note": "识别效果取决于字迹、光线和记谱方式，所以我们不给出准确率数字。一盘普通的对局，通常需要核对几手。"
    },
    "not": {
      "title": "它做不到什么",
      "items": [
        "它不保证转录零错误。被标记的着法需要核对；没被标记的着法在字迹被自信地读错时也可能是错的。",
        "它识别标准代数记谱（e4、Nf3、O-O）。描述式记谱（P-K4）和非拉丁字母的棋子记号不会被转换。",
        "它不会替你把对局上传到 Lichess 或 Chess.com。它给你的是标准 .pgn 文件，这些网站和桌面软件都能导入。",
        "扫描需要账户并消耗积分。PGN 查看器、棋盘编辑器和 PGN 校验器免费，无需登录。"
      ]
    },
    "links": {
      "title": "站内其他页面",
      "security": "安全——上传内容和账户如何受保护，以及如何报告漏洞",
      "status": "服务状态——实时检测网站与扫描 API",
      "changelog": "更新日志——什么时候上线了什么",
      "contact": "联系我们——识别出错或账单问题，给团队发邮件"
    }
  },
  "common": {
    "loading": "加载中...",
    "error": "错误",
    "success": "成功",
    "cancel": "取消",
    "confirm": "确认",
    "save": "保存",
    "delete": "删除",
    "edit": "编辑",
    "back": "返回",
    "next": "下一页",
    "prev": "上一页",
    "language": "语言",
    "optional": "可选",
    "closeMenu": "关闭菜单",
    "copyFailed": "复制失败",
    "pageNotFound": "页面未找到",
    "returnHome": "返回首页",
    "imgScoresheet": "国际象棋棋谱",
    "imgBoard": "国际象棋棋盘",
    "imgDigitalBoard": "电子棋盘",
    "menu": "菜单",
    "versus": "对阵",
    "sentenceEnd": "。"
  },
  "notFound": {
    "description": "地址可能输错了，或者页面已经移动。下面是大家最常去的几个地方。",
    "tools": "免费国际象棋工具"
  },
  "errors": {
    "INVALID_CREDENTIALS": "邮箱或密码错误。",
    "EMAIL_EXISTS": "该邮箱已被注册。请直接登录；忘记密码可使用重置链接。",
    "REAUTH_REQUIRED": "密码或登录验证与该账号不匹配。",
    "INVALID_RESET_TOKEN": "重置链接无效或已过期，请在登录页重新申请。",
    "INVALID_VERIFICATION_TOKEN": "验证链接无效或已过期，请登录后重新发送。",
    "VERIFICATION_UNAVAILABLE": "目前无法发送验证邮件，请稍后再试。",
    "INVALID_GOOGLE_TOKEN": "Google 未能确认你的身份，请重试。",
    "GOOGLE_EMAIL_UNVERIFIED": "你的 Google 账号邮箱尚未验证，无法用于登录。",
    "GOOGLE_LOGIN_DISABLED": "Google 登录目前不可用。",
    "INVALID_INPUT": "部分填写内容无效，请检查后重试。",
    "NOT_FOUND": "找不到对应的记录。",
    "SESSION_EXPIRED": "登录已过期，请重新登录。",
    "EMAIL_NOT_VERIFIED": "使用扫描积分前请先验证邮箱。",
    "INSUFFICIENT_CREDITS": "积分不足，无法执行此操作。",
    "SUBSCRIPTION_ACTIVE": "请先在 Apple 端取消仍在生效的 App Store 订阅，再删除账号。",
    "CHECKOUT_FAILED": "无法开始结算，请稍后重试。",
    "CANCEL_FAILED": "取消订阅失败，请重试或联系客服。",
    "server": "我们这边出了点问题，请稍后重试。",
    "network": "无法连接到 ScanChess，请检查网络后重试。",
    "generic": "出了点问题，请重试。"
  },
  "resetPassword": {
    "title": "重置密码",
    "checkingLink": "正在检查重置链接…",
    "missingToken": "链接缺少令牌。请通过登录页或应用内的“忘记密码”重新发送重置邮件。",
    "goToSignIn": "去登录",
    "done": "密码已更新，请用新密码登录。",
    "confirmNew": "确认新密码",
    "submit": "设置新密码"
  },
  "boardRecognition": {
    "title": "棋盘识别",
    "subtitle": "上传棋盘图片，AI 自动识别局面并生成 FEN",
    "uploadTitle": "上传棋盘图片",
    "uploadDesc": "支持棋谱图、真实棋盘照片、屏幕截图",
    "dragDrop": "拖拽棋盘图片到此处",
    "orClick": "或点击选择文件",
    "tapUpload": "点这里添加棋盘照片",
    "uploadImageFirst": "请先上传棋盘图片",
    "recognizing": "AI 识别中...",
    "recognize": "识别局面",
    "result": "识别结果",
    "confidence": "置信度",
    "notes": "备注",
    "noResult": "暂无识别结果",
    "noResultDesc": "上传棋盘图片后开始识别",
    "recognitionSuccess": "识别成功",
    "recognitionSuccessDesc": "局面已识别，消耗 {{credits}} 积分",
    "recognitionFailed": "识别失败",
    "insufficientCreditsDesc": "识别需要 {{cost}} 积分，当前余额 {{balance}}",
    "fenCopied": "FEN 已复制到剪贴板",
    "copyFen": "复制 FEN",
    "uncertainSquares": "请检查高亮格：{{squares}}",
    "invalidFen": "FEN 格式无效，可能需要手动修正",
    "reset": "重置棋盘",
    "feature1Title": "多种图片支持",
    "feature1Desc": "支持棋谱图、真实棋盘照片、数字棋盘截图",
    "feature2Title": "AI 智能识别",
    "feature2Desc": "先进 AI 准确识别棋子位置，生成标准 FEN",
    "feature3Title": "一键复制",
    "feature3Desc": "识别结果可直接复制到任何象棋软件使用",
    "flipBoard": "翻转棋盘",
    "openInEditor": "在棋盘编辑器中打开",
    "analyseLichess": "在 Lichess 分析"
  },
  "analysis": {
    "title": "引擎分析",
    "depth": "深度",
    "calculating": "计算中",
    "startAnalysis": "开始分析",
    "stopAnalysis": "停止分析",
    "bestMove": "最佳着法",
    "evaluation": "评估",
    "annotations": "标注",
    "comment": "评论",
    "addComment": "添加评论...",
    "arrows": "箭头",
    "arrowsHighlights": "箭头和高亮",
    "bookmark": "书签",
    "symbols": "符号",
    "engineOff": "引擎关闭",
    "engineLoading": "引擎加载中...",
    "engineReady": "引擎就绪",
    "engineError": "引擎加载失败",
    "enable": "开启引擎",
    "disable": "关闭引擎",
    "unavailable": "引擎无法在这个浏览器里加载。",
    "lines": "最佳着法",
    "noLegalMoves": "没有合法着法：对局已结束。",
    "reviewGame": "复盘整盘棋",
    "reviewing": "正在分析第 {{done}} / {{total}} 个局面…",
    "stopReview": "停止复盘",
    "accuracy": "准确率",
    "bestWas": "最佳着法是 {{san}}",
    "kind": {
      "book": "开局库",
      "best": "最佳",
      "good": "好棋",
      "inaccuracy": "失误",
      "mistake": "错误",
      "blunder": "严重失误"
    },
    "poweredBy": "Stockfish 18 在你的浏览器里运行，不会上传任何内容。",
    "licence": "引擎源码（GPL-3.0）",
    "linePreview": "变例预演",
    "previewingLine": "变例预演 · 第 {{current}} / {{total}} 步",
    "exitPreview": "退出预演",
    "previewLineHint": "在棋盘上预演这条路线",
    "saveAsVariation": "保存为变例"
  },
  "home": {
    "badge": "AI 棋谱识别",
    "hero": {
      "titlePre": "把手写棋谱",
      "titleMid": "转换成",
      "titleEm": "规范 PGN",
      "lead": "拍一张棋谱照片，ScanChess 会逐手转录、按规则校验每一步、标出没把握的着法，并生成可编辑的 PGN，可用于 Lichess、Chess.com 或你的分析软件。",
      "ctaPrimary": "扫描你的棋谱",
      "ctaSecondary": "了解工作原理",
      "trust": "新用户赠送 10 积分，无需绑卡。",
      "demoOriginal": "手写原稿",
      "demoArrow": "AI 识别并校验",
      "reviewBadge": "规则校验 · 可编辑"
    },
    "exportsLabel": "PGN 可用于",
    "steps": {
      "kicker": "工作原理",
      "title": "三步，从纸面到 PGN",
      "subtitle": "无需打字，无需手动誊写，零学习成本。",
      "s1title": "拍下棋谱",
      "s1desc": "只需一张清晰、平整、光线良好的照片——手机或扫描仪皆可，无需安装应用。",
      "s2title": "AI 识别每一手",
      "s2desc": "ScanChess 转录记谱，并在棋盘上逐手校验每一步。",
      "s3title": "检查并导出",
      "s3desc": "在编辑器里修正被标记的着法，然后下载对局或逐手回放。"
    },
    "features": {
      "kicker": "为什么选择 ScanChess",
      "title": "数字化对局所需的一切",
      "f1title": "识别你的笔迹",
      "f1desc": "AI OCR 将手写棋谱照片转换为代数记谱——字迹潦草也能读，没把握的地方会标出来请你确认。",
      "f2title": "发现错误",
      "f2desc": "每一手都经过规则校验并且可编辑：非法或低置信度的着法会被标记，导出前由你确认。",
      "f3title": "导出标准 PGN",
      "f3desc": "下载标准 .pgn 文件，可在 Lichess、Chess.com、ChessBase 或 SCID 中打开。",
      "f4title": "比手敲快得多",
      "f4desc": "整局棋谱通常不到一分钟就转录完成，核对几处被标记的着法，远比把整盘棋敲一遍省事。"
    },
    "blog": {
      "kicker": "博客文章",
      "title": "记谱与 PGN 指南",
      "all": "全部文章",
      "minRead": "分钟"
    },
    "cta": {
      "title": "准备好数字化你的棋谱了吗？",
      "desc": "上传你的第一局，几秒内获得经过规则校验、可编辑的 PGN。",
      "button": "扫描你的棋谱"
    }
  },
  "blog": {
    "pageTitle": "ScanChess 博客",
    "pageSubtitle": "关于国际象棋记谱、棋谱、PGN 与对局数字化的实用指南。",
    "solutions": "解决方案",
    "allArticles": "全部文章",
    "searchLabel": "搜索文章",
    "searchPlaceholder": "搜索文章",
    "clearSearch": "清除搜索",
    "resultCount_one": "{{count}} 篇文章",
    "resultCount_other": "{{count}} 篇文章",
    "noResults": "没有匹配的文章。换个关键词，或清除筛选。",
    "minRead": "分钟阅读",
    "keepReading": "继续阅读",
    "diagramAlt": "{{title}}的流程示意图",
    "sources": "来源与复核说明",
    "reviewed": "来源复核于 {{date}}",
    "ctaTitle": "几秒内把你的棋谱变成 PGN",
    "ctaDesc": "上传一张照片，让 ScanChess 完成转录。",
    "ctaButton": "开始扫描记谱单",
    "categories": {
      "Improvement": "提高",
      "Guides": "指南",
      "Notation": "记谱法",
      "Comparison": "对比",
      "Rules": "规则",
      "Tools": "工具",
      "Billing": "计费",
      "Statistics": "数据"
    }
  },
  "blogTools": {
    "pgnTitle": "在棋盘上试读 PGN",
    "pgnLead": "示例已预先载入。逐步播放或点击任意着法，也可以复制每个局面的 FEN。",
    "fenTitle": "逐字段解码 FEN",
    "fenLead": "粘贴包含六个字段的完整 FEN，棋盘和解释会在浏览器本地同步更新。",
    "invalidFen": "请输入完整、有效的六字段 FEN。",
    "placement": "棋子布局",
    "placementHint": "从第 8 横线写到第 1 横线；字母代表棋子，数字代表连续空格数。",
    "sideToMove": "走棋方",
    "sideToMoveHint": "w 表示轮到白方，b 表示轮到黑方。",
    "castling": "易位权",
    "castlingHint": "K/Q 是白方王翼/后翼易位权，k/q 是黑方；横线表示均无。",
    "enPassant": "吃过路兵目标格",
    "enPassantHint": "兵刚走两格时越过的格子，不是兵当前所在格；无则为横线。",
    "halfmove": "半回合计数",
    "halfmoveHint": "自上次兵移动或吃子后双方共走的步数，用于 50 回合规则。",
    "fullmove": "完整回合数",
    "fullmoveHint": "从 1 开始，每当黑方走完一着后加 1。",
    "white": "白方",
    "black": "黑方",
    "none": "无",
    "white-kingside": "白方王翼",
    "white-queenside": "白方后翼",
    "black-kingside": "黑方王翼",
    "black-queenside": "黑方后翼",
    "openEditor": "在棋盘编辑器中打开此 FEN",
    "sanTitle": "在棋盘上读懂 SAN",
    "sanLead": "点击每个 SAN 着法，直观看到这种紧凑记谱如何改变局面。",
    "start": "初始局面"
  },
  "solution": {
    "faqTitle": "常见问题",
    "alsoTitle": "ScanChess 的其他用法",
    "freeCredits": "注册即送 10 个免费积分。大量使用见",
    "hubKicker": "选择你的工作流",
    "hubTitle": "棋谱扫描与 PGN 转换解决方案",
    "hubIntro": "从目标出发：识别记谱、生成 PGN、归档棋谱，或帮助棋手系统复盘。",
    "explore": "查看方案",
    "diagramAlt": "{{title}}的 ScanChess 工作流",
    "clusters": {
      "capture": {
        "title": "从纸张或照片识别对局",
        "description": "把手写记谱和棋盘照片转换为结构化国际象棋数据。"
      },
      "convert": {
        "title": "转换为标准 PGN",
        "description": "生成可导入 Lichess、Chess.com、ChessBase 和 SCID 的通用棋谱文件。"
      },
      "archive": {
        "title": "数字化并归档棋谱",
        "description": "把赛事和俱乐部记谱单保存为可检索的数字档案。"
      },
      "audiences": {
        "title": "教练与家庭工作流",
        "description": "保存学生或孩子的线下对局，随时用于复盘。"
      }
    }
  },
  "howToUse": {
    "metaTitle": "ScanChess 使用教程 - 如何扫描棋谱",
    "pageTitle": "使用教程",
    "pageSubtitle": "5 步完成棋谱数字化，简单快捷",
    "demoAlt": "手写棋谱示例",
    "demoCaption": "一张典型的手写赛事记谱单，ScanChess 读的就是这种",
    "shotAlts": [
      "一张平放拍摄的手写赛事记谱单",
      "扫描页的上传区：已添加一张记谱单图片，下方是格式与数量限制",
      "扫描后的着法列表：两处橙黄色低置信着法、一处红色非法着法，每步旁有铅笔按钮",
      "行内编辑第 4 回合的着法，下方是识别器给出的两个合法备选",
      "保存棋局、导出 PGN、复制 PGN 按钮，以及分享卡片"
    ],
    "shotCaptions": [
      "你手上的原稿",
      "应用里的第 2 步",
      "应用里的第 3、4 步",
      "编辑一处被标记的着法",
      "应用里的第 5 步"
    ],
    "ctaTitle": "准备好了吗？",
    "ctaSubtitle": "立即上传你的第一张棋谱",
    "ctaStart": "开始扫描",
    "ctaFaq": "查看 FAQ",
    "schemaName": "如何使用 ScanChess 扫描棋谱",
    "schemaDesc": "使用 AI 将手写棋谱转换为 PGN 格式",
    "steps": [
      {
        "title": "1. 拍摄棋谱照片",
        "description": "使用手机或相机拍摄你的手写棋谱。确保光线充足，着法文字清晰可见。",
        "tips": [
          "保持照片平整，避免倾斜",
          "确保所有着法都在画面内",
          "多页棋谱可以分别拍摄"
        ]
      },
      {
        "title": "2. 上传图片",
        "description": "从手机或电脑添加照片——点上传区域选择文件，在电脑上也可以把文件拖进去。支持 JPG、PNG、WebP，每次最多 10 张。暂不支持 HEIC（iPhone 默认格式），请先转换。",
        "tips": [
          "单张图片最大 15 MB",
          "多页按列表顺序识别，扫描前可用箭头调整顺序",
          "用手机拍一张照片，直接上传即可"
        ]
      },
      {
        "title": "3. AI 智能识别",
        "description": "点击“扫描 · 2 积分”按钮。模型逐格读取着法，并在棋盘上逐手复盘。整局通常不到一分钟就能返回。",
        "tips": [
          "系统会验证每步着法的合法性",
          "低置信度的着法会被标记出来供你核对",
          "一次扫描 2 积分，不论上传几页"
        ]
      },
      {
        "title": "4. 校对修正",
        "description": "在棋盘上预览着法，点击着法旁的铅笔按钮进行编辑。支持简写输入，如\"dc\"会自动转为\"dxc5\"。",
        "tips": [
          "红色标记表示非法着法",
          "黄色标记表示低置信度着法，请对照原稿确认",
          "点着法即可跳到该步；在电脑上也可以用方向键前后翻着"
        ]
      },
      {
        "title": "5. 导出保存",
        "description": "确认无误后，导出 PGN 文件或复制到剪贴板。可直接导入 Chess.com、Lichess 等平台。",
        "tips": [
          "扫描成功后自动保存到历史记录",
          "PGN 包含完整对局信息",
          "保存后可以分享对局链接"
        ]
      }
    ]
  },
  "seo": {
    "homeTitle": "ScanChess · 棋盘图片转 FEN，手写棋谱转 PGN",
    "homeDesc": "国际象棋 OCR，识别棋盘图片和手写记谱单：把照片变成可分析的局面或可回放的对局，核对结果后接着下。",
    "scanTitle": "识别棋盘图片或手写棋谱 | ScanChess",
    "scanDesc": "棋盘图片，变成可编辑的局面. 手写棋谱，变成可回放的 PGN. 预加载示例，无需登录，不调用识别、不扣积分。可以直接体验结果和编辑操作。",
    "aboutTitle": "关于 ScanChess | AI 国际象棋棋谱扫描",
    "aboutDesc": "了解 ScanChess 如何帮助棋手、裁判和俱乐部把手写棋谱数字化为 PGN。",
    "faqTitle": "ScanChess 常见问题 | 棋谱识别与 PGN 转换",
    "faqDesc": "关于 ScanChess、手写棋谱 OCR、PGN 导出与扫描积分的常见问题解答。",
    "blogTitle": "国际象棋棋谱与记谱指南 | ScanChess 博客",
    "blogDesc": "关于读懂棋谱、代数记谱法（SAN）、PGN、FIDE 规则以及用 ScanChess 数字化对局的指南。",
    "privacyTitle": "隐私政策 | ScanChess",
    "privacyDesc": "ScanChess 如何收集、使用、存储和删除您的数据，包括账户邮箱、上传的棋谱图片及积分。",
    "termsTitle": "服务条款 | ScanChess",
    "termsDesc": "约束您使用 ScanChess 的条款，包括账户、积分与购买、可接受的使用以及账户注销。",
    "pricingTitle": "定价 | ScanChess Pro",
    "pricingDesc": "注册即送 10 个积分。Pro 每 30 天增加 100 个扫描积分，$4.99/月 或 $29.99/年；Pro+ 每 30 天增加 500 个，$19.99/月 或 $119.99/年。",
    "refundsTitle": "退款政策 | ScanChess",
    "refundsDesc": "ScanChess 不提供退款，所有付款均为最终交易。例外情形、积分的性质，以及不想续费时该怎么做。",
    "contactTitle": "联系 ScanChess 客服",
    "contactDesc": "计费、退款、注销账户或识别问题，都可以发邮件到 support@scanchess.com。",
    "settingsTitle": "账户设置 | ScanChess",
    "settingsDesc": "积分、订阅、邀请码、语言、分析 Cookie 选择，以及导出或删除你的数据。",
    "statusTitle": "服务状态 | ScanChess",
    "statusDesc": "实时检测 ScanChess 网站与扫描 API 是否可访问。",
    "securityTitle": "安全 | ScanChess",
    "securityDesc": "ScanChess 如何保护你的数据，以及如何报告安全漏洞。",
    "changelogTitle": "更新日志 | ScanChess",
    "changelogDesc": "ScanChess 什么时候改了什么。",
    "historyTitle": "我的棋谱 | ScanChess",
    "historyDesc": "你保存的棋谱，多设备同步——可重新载入棋盘或导出为 PGN。",
    "howToUseTitle": "使用教程 | ScanChess",
    "howToUseDesc": "按手中的材料选择流程，完成上传、核对和导出。",
    "toolsTitle": "免费在线国际象棋工具 – PGN 查看器、棋盘编辑器等",
    "toolsDesc": "免费、免注册、全部在浏览器里运行的国际象棋工具箱。用 Stockfish 复盘整盘棋、逐着回放 PGN、计算 FIDE 等级分变化、导出局面图与动态 GIF，并打印比赛记谱单。",
    "solutionsTitle": "棋谱扫描与 PGN 转换解决方案 | ScanChess",
    "solutionsDesc": "按需求选择棋谱识别、照片转 PGN、赛事棋谱归档，或为棋手和教练保存对局记录的工作流。",
    "deleteAccountTitle": "删除账户 | ScanChess",
    "deleteAccountDesc": "永久删除 ScanChess 账户、已保存棋局和已上传的棋谱图片。",
    "authTitle": "登录 | ScanChess",
    "authDesc": "登录 ScanChess，保存扫描棋局并管理扫描积分。",
    "resetTitle": "重置密码 | ScanChess",
    "resetDesc": "为您的 ScanChess 账户设置新密码。",
    "verifyEmailTitle": "验证邮箱 | ScanChess",
    "verifyEmailDesc": "验证 ScanChess 账户的邮箱地址。",
    "batchTitle": "批量扫描记谱单 | ScanChess",
    "batchDesc": "一次扫描整轮比赛：上传全部记谱单，按局分组，每局自动存入对局库。"
  },
  "deleteAccount": {
    "title": "删除账号",
    "intro": "此操作会删除你的 ScanChess 账号及其全部数据。如果只是想退出登录，请使用菜单中的退出。",
    "warningTitle": "此操作不可撤销",
    "warningGames": "棋谱库中所有已保存的对局和 PGN 都会被删除。",
    "warningImages": "你上传的所有记谱单图片都会被删除。",
    "warningCredits": "剩余积分将作废，且不予退款。",
    "warningSubscription": "删除前会先取消网页续费。仍在生效的 App Store 订阅必须先在 Apple 端取消，否则系统会阻止删号。",
    "manageSubscription": "管理订阅",
    "warningIrreversible": "删除立即生效且永久有效——我们无法在事后恢复账号。",
    "confirmPrompt": "请输入你的邮箱地址以确认：",
    "passwordPrompt": "请输入当前密码",
    "providerPrompt": "或通过登录服务商再次验证身份",
    "providerVerified": "删除账号所需的身份验证已完成",
    "button": "永久删除我的账号",
    "signInFirst": "请先登录你要删除的账号，然后回到本页面。",
    "noAccessNote": "无法登录该账号？发邮件给我们，我们会处理你的请求：",
    "doneTitle": "账号已删除",
    "doneDesc": "你的账号及全部相关数据已被移除。",
    "failedTitle": "删除失败",
    "failedDesc": "出了点问题，请重试，或发邮件至 support@scanchess.com。",
    "proofRequired": "删除账号前需要证明账号属于你：输入当前密码，或重新用 Google 登录验证。",
    "appleTitle": "用 Apple 登录的账号？",
    "appleDesc": "Apple 登录只在 iOS 应用内可用，本页面无法验证仅用 Apple 登录的账号。请用账号邮箱给我们发邮件，我们会为你删除。",
    "requestByEmail": "通过邮件申请删除",
    "emailSubject": "账号删除申请（{{email}}）",
    "emailBody": "请删除我的 ScanChess 账号 {{email}} 及其全部数据。我了解此操作不可撤销。"
  },
  "cookies": {
    "title": "Cookie 选择",
    "body": "我们使用 Google Analytics 和 Microsoft Clarity 了解网站的使用情况，其中 Clarity 会记录你在页面上的操作轨迹。",
    "accept": "同意",
    "decline": "拒绝",
    "learnMore": "我们如何使用你的数据",
    "currentlyOn": "分析目前已开启。",
    "currentlyOff": "分析目前已关闭。"
  },
  "pricing": {
    "checkoutSuccessTitle": "付款成功",
    "checkoutSuccessDesc": "订阅状态和积分余额已更新。",
    "title": "简单定价",
    "subtitle": "扫描积分与完整棋谱库，所有设备通用。",
    "perMonth": "/月",
    "perYear": "/年",
    "yearlyNote": "比月付便宜一半",
    "bestValue": "最划算",
    "billing": {
      "monthly": "月付",
      "yearly": "年付",
      "yearlySave": "省 50%"
    },
    "tiers": {
      "pro": "Pro",
      "proplus": "Pro+"
    },
    "tierCredits": {
      "pro": "每 30 天 100 个扫描积分——约 50 张记谱单",
      "proplus": "每 30 天 500 个扫描积分——约 250 张记谱单"
    },
    "subscribe": "订阅",
    "signInToSubscribe": "登录后订阅",
    "included": "Pro 额外提供",
    "smallPrint": "以美元计价，并按同价自动续订（月付每月、年付每年），直到你取消为止。你可以随时在本页取消：取消后 Pro 权益保留至已付费周期结束，且不会再次扣费。所有付款均为最终交易，不提供退款（适用法律强制要求的情形除外），详见退款政策。税费由我们的经销商 Waffo 在结算时计算，网页购买的销售主体为 Waffo。",
    "manage": {
      "title": "你的订阅",
      "activeUntil": "Pro 有效期至 {{date}}，到期将自动续订，除非你取消。",
      "cancel": "取消订阅",
      "cancelNote": "取消后不再扣下一期费用。已付费周期内你仍然是 Pro，余额中的积分也照常保留。",
      "canceledTitle": "订阅已取消",
      "canceledDesc": "不会再次扣费。Pro 权益保留至已付费周期结束。",
      "cancelFailedTitle": "取消失败",
      "cancelFailedDesc": "请重试，或发邮件到 support@scanchess.com，我们帮你取消。",
      "titleWithPlan": "你当前订阅：{{plan}}",
      "appStoreNote": "此订阅是在 iOS 应用内购买的，请在 Apple ID 的订阅设置中管理或取消。",
      "passTitle": "你当前持有：{{plan}}",
      "passActiveUntil": "Pro 有效期至 {{date}}，到期不会自动扣费。",
      "passNote": "需要续期时，在下方再买一张即可，剩余天数会顺延。"
    },
    "failedTitle": "无法开始结算",
    "failedDesc": "请稍后重试。",
    "plans": {
      "pro_monthly": "Pro 月付",
      "pro_yearly": "Pro 年付",
      "proplus_monthly": "Pro+ 月付",
      "proplus_yearly": "Pro+ 年付",
      "pro_pass_365": "Pro 年付通行证"
    },
    "benefits": {
      "credits": "每 30 天发放扫描积分——Pro 100 个，Pro+ 500 个——在你登录时加入余额",
      "history": "完整棋谱库，多设备同步",
      "export": "PGN 导出与交互式复盘",
      "priority": "新功能优先体验"
    },
    "free": {
      "name": "免费",
      "price": "$0",
      "period": "起步",
      "note": "注册即送 10 个积分，无需绑卡",
      "cta": "扫描棋谱",
      "signUpCta": "免费开始——注册",
      "includedNote": "所有账号的起点，Pro 在此之上。",
      "priceCn": "¥0"
    },
    "credits": {
      "title": "积分如何计费",
      "intro": "积分是 ScanChess 唯一的消耗单位。每个新账户注册即获得 10 个免费积分，积分永不过期。",
      "colAction": "你的操作",
      "colCost": "消耗",
      "rows": {
        "scoresheet": "记谱单照片 → PGN",
        "scoresheetCost": "2 个积分",
        "board": "棋盘照片 → FEN",
        "boardCost": "1 个积分",
        "other": "编辑、复盘、PGN 导出、棋谱历史",
        "otherCost": "免费"
      },
      "topUp": "Pro 每 30 天增加 100 个积分——约 50 张记谱单；Pro+ 每 30 天增加 500 个积分。满 30 天后在你登录时发放，未用完的积分会保留在余额中。",
      "perScanMonthly": "按月订阅时，Pro 约合每积分 $0.05、Pro+ 约合 $0.04——也就是每张记谱单 Pro 约 $0.10、Pro+ 约 $0.08。",
      "perScanYearly": "按年订阅时，Pro 与 Pro+ 都约合每积分 $0.02——也就是每张记谱单 Pro 约 $0.05、Pro+ 约 $0.04，是月付的一半。",
      "perScanPass": "Pro 年度通行证约合每积分 ¥0.08——也就是每张记谱单约 ¥0.17。"
    },
    "support": {
      "title": "关于付费有疑问？",
      "body": "扣费、退款或积分余额的问题，请发邮件联系"
    },
    "help": {
      "credits": "积分如何计费",
      "cancel": "如何取消订阅",
      "compare": "免费版与 Pro 对比",
      "refunds": "退款政策（不支持退款）"
    },
    "currentPlan": "当前套餐",
    "currentPlanButton": "当前套餐",
    "switchPlan": "切换到此套餐",
    "switchNote": "切换会打开新套餐的结算页；完成付款前，当前套餐不会有任何变化。之后我们会应你的请求停止之前套餐的续费，升级到更高档位会立即发放更多积分。",
    "appStoreSwitchDesc": "该订阅在 iOS 应用内购买，只能由 Apple 修改。请前往 Apple ID 的订阅设置中切换套餐。",
    "overlapTitle": "你已有生效中的 Pro 权益",
    "overlapDesc": "请先取消当前订阅，并在已付费周期结束后再购买其他套餐，以免发生重复扣费。",
    "checkout": {
      "processingTitle": "正在确认付款",
      "processingDesc": "Waffo 正在把付款结果通知我们，通常不到一分钟。你可以让本页保持打开。",
      "pendingTitle": "仍在处理中",
      "pendingDesc": "付款结果到达得比平时慢。一旦到达，套餐会自动开通——稍后点“再查一次”确认；若几分钟后仍未出现，请联系我们。",
      "refresh": "再查一次",
      "contactSupport": "联系客服"
    },
    "subscriptionUnknownTitle": "无法查询你的订阅",
    "subscriptionUnknownDesc": "订阅信息暂时加载失败。更换套餐前请先重试。",
    "retry": "重试",
    "switchDoneDesc": "新套餐已生效。之前的套餐（{{previous}}）仍会续费，请看下方说明来停止它。",
    "switchDoneNote": "之前的套餐（{{previous}}）仍处于续费状态。把下面的申请发给我们，我们会在当天、下次扣费之前为你停止它。",
    "switchStopPrevious": "请我们停止之前的套餐",
    "switchEmailSubject": "停止之前套餐的续费（{{previous}}）",
    "switchEmailBody": "我在 ScanChess（{{email}}）从 {{previous}} 切换到了 {{current}}，请停止之前套餐的续费。",
    "switchPreviousCanceledDesc": "新套餐已生效。之前的套餐（{{previous}}）已停止，不会再续费。",
    "switchPreviousNoneDesc": "新套餐已生效。之前的套餐（{{previous}}）此前已停止，不会再产生扣费。",
    "switchPreviousCancelFailedTitle": "新套餐已生效，但之前的套餐仍在续费",
    "switchPreviousCancelFailedDesc": "未能自动停止 {{previous}}。请使用下方的申请，我们会在下次扣费前为你停止它。",
    "allAccountsNote": "所有账号——无论免费还是付费——都可以编辑、交互式复盘、导出 PGN 并保存棋谱历史。",
    "market": {
      "label": "购买渠道",
      "global": "国际版",
      "globalDetail": "美元 · 银行卡 / Apple Pay / Google Pay",
      "cn": "中国大陆",
      "cnDetail": "人民币 · 微信支付",
      "showingGlobal": "当前显示国际版价格：美元计价，银行卡、Apple Pay 或 Google Pay 支付。",
      "switchToCn": "你在中国大陆？切换到人民币价格（微信支付）。",
      "showingCn": "当前显示中国大陆价格：人民币计价，微信支付一次付清。",
      "switchToGlobal": "不在中国大陆？切换到国际版价格。"
    },
    "pass": {
      "period": "/年，一次付清",
      "noRenew": "到期不自动扣费",
      "buy": "微信支付购买",
      "extend": "再买一年（顺延）",
      "signInToBuy": "登录后购买",
      "note": "通行证一次付清、有效 365 天，到期不会自动扣费。要续期就再买一张，剩余天数会顺延，不会浪费。",
      "holderSwitchDesc": "你持有的通行证还在有效期内。通行证到期后再订阅，以免重复付费。",
      "listPrice": "原价 {{price}}"
    },
    "smallPrintCn": "中国大陆渠道以人民币计价，通过微信支付一次付清，购买的是 365 天 Pro 通行证（仅此一档）：到期不自动扣费，也不需要取消；再次购买即可续期，剩余天数顺延。所有付款均为最终交易，不提供退款（适用法律强制要求的情形除外），详见退款政策。税费由我们的经销商 Waffo 在结算时计算，网页购买的销售主体为 Waffo。"
  },
  "settings": {
    "title": "设置",
    "subtitle": "你的账户、套餐，以及你的数据去向。",
    "account": "账户",
    "memberSince": "注册时间",
    "password": "密码",
    "sendReset": "发送重置链接到邮箱",
    "resetSent": "重置链接已发送",
    "resetSentDesc": "请查收邮件并点击链接设置新密码。",
    "resetFailed": "重置邮件发送失败",
    "plan": "套餐与积分",
    "currentPlan": "当前套餐",
    "upgrade": "查看套餐",
    "refresh": "刷新",
    "referral": "邀请好友",
    "preferences": "偏好设置",
    "analytics": "分析 Cookie",
    "analyticsAccepted": "已同意",
    "analyticsDeclined": "已拒绝",
    "analyticsUnset": "尚未选择",
    "analyticsOn": "已开启分析",
    "analyticsOff": "已关闭分析",
    "analyticsNote": "只有在开启状态下，Google Analytics 与 Microsoft Clarity 才会运行。在法律要求事前同意的地区（欧洲经济区、英国、瑞士），未同意前它们不会加载。详见",
    "yourData": "你的数据",
    "yourDataDesc": "把棋谱带走，或向我们索取全部数据副本。",
    "exportGames": "下载全部棋谱（{{count}}）",
    "exportEmpty": "还没有已保存的棋谱",
    "exportDone": "已导出 {{count}} 盘棋",
    "exportFailed": "棋谱导出失败，请重试。",
    "dangerZone": "账户操作",
    "displayName": "显示名称",
    "displayNamePlaceholder": "你的名字",
    "nameSaved": "名称已更新",
    "nameFailed": "名称保存失败",
    "passwordDesc": "修改密码需要输入当前密码。用 Apple 或 Google 登录的账户请改用重置链接。",
    "currentPassword": "当前密码",
    "newPassword": "新密码",
    "changePassword": "修改密码",
    "passwordChanged": "密码已修改",
    "passwordChangedDesc": "所有设备已退出登录，请用新密码重新登录。",
    "passwordFailed": "密码修改失败",
    "passwordMismatch": "两次输入的新密码不一致",
    "passwordTooShort": "新密码至少需要 6 个字符",
    "billingHistory": "账单记录",
    "billingHistoryDesc": "我们在你账户上记录到的事件。收据由 Waffo 发送到你的邮箱。",
    "payment": {
      "paid": "已支付",
      "canceled": "已取消",
      "refunded": "已退款"
    },
    "receiptNote": "需要收据或发票？回复 Waffo 的邮件，或带上订单号联系客服。",
    "analyticsDefaultOn": "你所在地区默认开启",
    "analyticsDefaultOff": "未同意前保持关闭",
    "passwordSignsOutNote": "修改密码后，所有设备（包括当前设备）都会退出登录。",
    "passwordConfirmTitle": "修改密码并在所有设备退出登录？",
    "passwordConfirmDesc": "登录了此账号的所有设备（包括当前设备）都会退出登录。随后会跳转到登录页，用新密码继续。",
    "exportGamesAll": "下载全部棋谱",
    "requestData": "索取数据副本",
    "dataRights": "其他数据权利请来信 "
  },
  "status": {
    "title": "服务状态",
    "subtitle": "打开本页时从你的浏览器实时检测——不是我们手填的数字。",
    "website": "网站",
    "api": "扫描与账户 API",
    "checking": "检测中",
    "up": "可访问",
    "down": "无法访问",
    "recheck": "重新检测",
    "checkedAt": "最后检测：{{time}}",
    "footnote": "网站一行是这个页面 HTML 的响应时间（首次为浏览器记录的到达时间，重新检测时为一次完整请求）；API 一行是一次实时的 /api/health 请求。",
    "failingHint": "扫描本身失败？请看 ",
    "downTitle": "从这里连不上 API",
    "downBody": "在恢复之前，扫描与登录都会失败。如果持续几分钟以上，请告诉我们：",
    "honestTitle": "关于这个页面",
    "honestBody": "我们不公布可用率百分比，因为我们并没有在统计它。本页只是用你的浏览器向 API 发出和扫描时相同的请求并显示结果。这里失败也可能是你自己的网络或请求被拦截。"
  },
  "changelog": {
    "title": "更新日志",
    "subtitle": "什么时候改了什么。",
    "feedback": "有想让我们改的地方吗？"
  },
  "savedGame": {
    "title": "已保存的棋谱",
    "body": "你正在查看棋谱库里的一盘棋。编辑和导出都不收费——重新扫描只会为已有的棋谱再花一次积分。",
    "newScan": "扫描新的记谱单",
    "backToLibrary": "返回我的棋谱"
  },
  "tools": {
    "common": {
      "home": "ScanChess",
      "load": "加载",
      "clear": "清空",
      "copy": "复制",
      "copied": "已复制到剪贴板",
      "copyFailed": "复制失败——请手动选中复制",
      "download": "下载",
      "share": "分享链接",
      "shareCopied": "分享链接已复制",
      "embed": "嵌入代码",
      "embedCopied": "嵌入代码已复制",
      "openInEditor": "在棋盘编辑器中打开",
      "openInViewer": "在 PGN 回放中打开",
      "analyzeLichess": "到 Lichess 分析",
      "flipBoard": "翻转棋盘",
      "chooseFile": "选择文件",
      "dropHint": "或把文件拖到这里",
      "pasteHint": "也可以直接把着法粘贴到上面",
      "loadSample": "加载示例",
      "navStart": "初始局面",
      "navPrev": "上一着",
      "navNext": "下一着",
      "navEnd": "最终局面",
      "featuresTitle": "这个工具能做什么",
      "faqTitle": "常见问题",
      "relatedTools": "更多免费工具",
      "relatedGuides": "这个工具的相关指南",
      "allTools": "全部工具",
      "white": "白方",
      "black": "黑方",
      "fen": "FEN",
      "privacyNote": "在浏览器本地运行，不上传任何内容。",
      "openTool": "打开工具",
      "scanStripBoard": "有这个局面的截图或照片？扫描一下，棋盘会自动摆好。",
      "scanStripScoresheet": "对局记在纸质记谱纸上？扫描成 PGN，不用手动输入。",
      "scanStripAction": "扫描图片",
      "scanStripSample": "试试免费示例",
      "pasteFirst": "请先在上方粘贴 PGN、选择文件，或载入示例。"
    },
    "viewer": {
      "placeholder": "在这里粘贴 PGN，例如：\n\n[Event \"Casual game\"]\n[White \"Anderssen\"]\n[Black \"Kieseritzky\"]\n\n1. e4 e5 2. f4 exf4 3. Bc4 Qh4+ ...",
      "gameSelect": "对局",
      "gameCount": "文件中共 {{count}} 局",
      "movesTitle": "着法",
      "headersTitle": "对局信息",
      "noMoves": "还没有加载着法。在上方粘贴 PGN 后点击\"加载\"。",
      "parseFailed": "无法从这段文本读取任何着法。",
      "stoppedAt": "在 {{label}} {{token}} 处停止——这一着在当前局面不合法。打开校验器查看详情。",
      "downloadPgn": "下载 PGN",
      "currentFen": "当前局面",
      "result": "结果",
      "openValidator": "用校验器检查",
      "startPosition": "初始局面"
    },
    "editor": {
      "startPosition": "初始局面",
      "emptyBoard": "空棋盘",
      "fenInput": "粘贴 FEN 以加载",
      "fenLoad": "加载 FEN",
      "fenInvalid": "这不是有效的 FEN：{{reason}}",
      "turn": "走棋方",
      "white": "白方",
      "black": "黑方",
      "castling": "易位权",
      "epSquare": "吃过路兵格",
      "epNone": "无",
      "downloadPng": "下载 PNG",
      "swapColours": "黑白互换",
      "tray": "棋子",
      "trayHint": "把棋子拖到棋盘上，或先选中棋子再点格子。把棋子拖出棋盘即可移除。",
      "eraser": "橡皮擦",
      "playable": "局面合法，可以使用",
      "notPlayable": "局面不可用",
      "status": {
        "checkmate": "将死：{{side}}被将死。",
        "stalemate": "逼和：{{side}}没有合法着法。",
        "check": "轮到{{side}}走，正被将军。",
        "normal": "轮到{{side}}走。"
      },
      "problems": {
        "pawn-back-rank": "兵不能位于第一或第八横线。",
        "white-king-count": "白方必须恰好有一个王。",
        "black-king-count": "黑方必须恰好有一个王。",
        "opponent-in-check": "非走棋方正处于被将军状态。",
        "unplayable": "引擎无法加载这个局面。"
      },
      "selectedPiece": "正在放置：{{piece}}",
      "pieceNames": {
        "wK": "白王",
        "wQ": "白后",
        "wR": "白车",
        "wB": "白象",
        "wN": "白马",
        "wP": "白兵",
        "bK": "黑王",
        "bQ": "黑后",
        "bR": "黑车",
        "bB": "黑象",
        "bN": "黑马",
        "bP": "黑兵"
      },
      "pngFailed": "当前浏览器无法渲染图片。"
    },
    "validator": {
      "placeholder": "粘贴 PGN 或纯着法列表，例如：\n\n1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. 0-0 Be7 ...",
      "validate": "校验",
      "okTitle": "全部 {{count}} 着均合法",
      "okBody": "对局从初始局面顺利走完。结果：{{result}}。",
      "errorTitle": "{{label}} {{token}} 为非法着法",
      "errorBody": "在此之前有 {{count}} 着合法。下面列出了该局面下的合法着法。",
      "warningsTitle": "已自动修正记谱",
      "warningsBody": "{{count}} 处记法被改写为标准 SAN。",
      "legalMoves": "此处的合法着法",
      "rewritten": "{{token}} → {{replacement}}",
      "trailing": "错误之后的 {{count}} 着未检查。",
      "unknownToken": "忽略了无法识别的内容 \"{{token}}\"。",
      "cleanedTitle": "清洗后的 PGN",
      "downloadPgn": "下载 PGN",
      "empty": "请先粘贴一些着法。",
      "openViewer": "在回放中查看",
      "boardAtError": "停止时的局面",
      "movesPlayed": "已走着法",
      "tokens": "读取的标记"
    },
    "analysis": {
      "summaryTitle": "复盘概要",
      "white": "白方",
      "black": "黑方",
      "accuracy": "准确率"
    },
    "rating": {
      "currentRating": "你当前的等级分",
      "kFactor": "发展系数",
      "kReasons": {
        "new-player": "前 30 盘定级期",
        "junior": "2300 分以下青少年",
        "reached-2400": "曾达到 2400",
        "standard": "常规",
        "manual": "手动指定"
      },
      "newPlayer": "还在完成前 30 盘等级分对局",
      "junior": "青少年棋手（到满 18 岁那年年底为止）",
      "reached2400": "我的等级分达到过 2400",
      "budgetNote": "K 从 {{base}} 降到 {{k}}，因为 K 乘以盘数不能超过 700。",
      "minimumNote": "FIDE 只公布 {{minimum}} 分以上的等级分，低于这个分数会显示为无等级分。",
      "opponents": "对局",
      "addGame": "添加一盘",
      "round": "轮",
      "opponentRating": "对手等级分",
      "opponentRatingFor": "第 {{round}} 轮对手等级分",
      "result": "结果",
      "expected": "期望得分（分差）",
      "removeGame": "删除第 {{round}} 轮",
      "results": {
        "win": "胜",
        "draw": "和",
        "loss": "负"
      },
      "noGames": "添加一盘对局才能算出等级分变化。",
      "newRating": "新的等级分",
      "scored": "实际得分",
      "expectedTotal": "期望得分合计",
      "deltaSum": "实际减期望之和",
      "rawChange": "取整前",
      "performance": "等级分表现",
      "howTitle": "这是怎么算出来的",
      "howBody": "每盘的期望得分取自 FIDE 的 8.1.2 表，而不是逻辑斯蒂曲线，所以结果和公布的等级分表一致。把这些差值相加再乘以 K，然后取整到整数，正好 0.5 时向远离零的方向进位。",
      "capNote": "对 {{threshold}} 分以下的棋手，超过 400 的分差按 400 计算。{{threshold}} 及以上按真实分差计算，这项修订自 2025 年 10 月 1 日起生效。"
    },
    "diagram": {
      "previewAlt": "该局面的棋盘图",
      "startPosition": "初始局面",
      "sizeLabel": "图片尺寸",
      "themeLabel": "棋盘配色",
      "themes": {
        "classic": "经典棕",
        "green": "比赛绿",
        "blue": "蓝",
        "walnut": "胡桃木",
        "slate": "石板灰"
      },
      "coordinates": "显示坐标",
      "downloadPng": "下载 PNG",
      "downloadSvg": "下载 SVG",
      "copySvg": "复制 SVG 代码",
      "exportNote": "局面图由浏览器用矢量棋子绘制，没有水印，也不要求署名。"
    },
    "gif": {
      "idle": "选好设置，点“生成”开始渲染动画。",
      "previewAlt": "该对局的动态棋盘",
      "rendering": "正在绘制第 {{done}} / {{total}} 帧",
      "fileSize": "{{size}} KB",
      "moveCount": "这盘棋共 {{count}} 着",
      "fromMove": "起始着",
      "toMove": "结束着",
      "frameLimit": "已截断到 {{max}} 帧；想做别的片段请缩小区间。",
      "sizeLabel": "画面尺寸",
      "speedLabel": "速度",
      "speeds": {
        "slow": "慢",
        "normal": "正常",
        "fast": "快"
      },
      "highlight": "给每一着经过的格子着色",
      "build": "生成（{{count}} 帧）",
      "download": "下载 GIF",
      "privacyNote": "画帧和 GIF 编码都在你的设备上完成，不上传任何内容。",
      "failed": "GIF 生成失败。请换更小的尺寸或更短的区间再试。"
    },
    "print": {
      "columnsLabel": "分栏",
      "columns": "{{count}} 栏",
      "diagramsLabel": "局面图",
      "diagramModes": {
        "none": "不放局面图",
        "final": "只放终局",
        "every10": "每 10 回合一张",
        "every20": "每 20 回合一张"
      },
      "paperLabel": "纸张",
      "letter": "US Letter",
      "showTags": "包含 PGN 标签",
      "printButton": "打印 / 另存为 PDF",
      "saveHint": "在打印窗口里把目标改成“另存为 PDF”。",
      "afterMove": "{{move}} {{san}} 之后"
    },
    "hub": {
      "badge": "免费工具箱 · 无需登录 · 本地运行",
      "title": "免费在线国际象棋实用工具",
      "subtitle": "为棋手、教练和裁判量身打造的纯前端免登录工具箱。用引擎复盘整盘棋、回放与校验 PGN、计算等级分变化、导出局面图与动画，并打印比赛记谱单。",
      "trustFree": "100% 永久免费",
      "trustLocal": "纯本地运算 · 保护隐私",
      "trustNoAccount": "即开即用 · 无需注册",
      "clientSide": "免登录 · 本地执行",
      "benefitsKicker": "为什么选择我们的工具",
      "benefitsTitle": "快速、安全、免安装的纯净国际象棋体验",
      "benefitPrivacyTitle": "绝不采集任何对局数据",
      "benefitPrivacyDesc": "所有解析均基于浏览器的本地计算完成。你的比赛私密开局准备与对局记录不会离开你的设备。",
      "benefitSpeedTitle": "轻量无广告，毫秒响应",
      "benefitSpeedDesc": "摒弃臃肿的商业广告与冗余脚本，专为棋手复盘、教练备课与快速推演打造流畅体验。",
      "benefitBridgeTitle": "无缝连接物理纸张与数字世界",
      "benefitBridgeDesc": "不仅提供纸张打印，更可配合 ScanChess 手机端拍照，一秒把手写纸质棋谱数字化转为 PGN。",
      "ctaTitle": "手里有手写记谱纸需要转成 PGN？",
      "ctaDesc": "告别费时费力的手动打谱。ScanChess 运用领先的国际象棋 AI，拍照即得校验过的 PGN，新用户送免费额度。",
      "ctaButton": "免费体验记谱扫描",
      "faq": {
        "q1": "这些国际象棋工具真的是免费且免注册的吗？",
        "a1": "是的，完全免费，无需注册账户，也没有使用次数限制。工具直接在你的浏览器里运行。",
        "q2": "我的 PGN 棋谱或摆放的局面会被上传到服务器吗？",
        "a2": "绝对不会。所有棋谱解析、着法校验和图片渲染均在你的浏览器本地进行，数据不会离开你的设备。",
        "q3": "如果我手里有一张纸质的手写记谱单，该怎么录入？",
        "a3": "你可以使用 ScanChess 的核心 AI 扫描功能。只需用手机拍照，AI 会自动识别笔迹并校验每一步着法，几秒钟内为你生成可下载的 PGN。",
        "q4": "这些工具支持手机或平板使用吗？",
        "a4": "完全支持。页面经过触控优化，无论在 iPhone、iPad 还是安卓设备上，都可以流畅拖放棋子、点击走棋或查看棋谱。"
      }
    },
    "badges": {
      "pgn-viewer": [
        "键盘翻棋",
        "多局 PGN 切换",
        "一键导出 FEN"
      ],
      "board-editor": [
        "实时 FEN 生成",
        "局面合法性检查",
        "高清 PNG 导出"
      ],
      "pgn-validator": [
        "精确定位错步",
        "自动清洗修正",
        "规范七标签 PGN"
      ],
      "printable-scoresheets": [
        "FIDE 官方标准",
        "4 款精选版式",
        "矢量高清打印 PDF"
      ],
      "game-analysis": [
        "Stockfish 18",
        "整盘复盘",
        "本地运行"
      ],
      "rating-calculator": [
        "FIDE 官方概率表",
        "K 值全覆盖",
        "等级分表现"
      ],
      "fen-to-image": [
        "PNG 与 SVG",
        "最大 1600 像素",
        "五种棋盘配色"
      ],
      "pgn-to-gif": [
        "动态回放",
        "自选着法区间",
        "浏览器内编码"
      ],
      "pgn-to-pdf": [
        "文字可选中",
        "内嵌局面图",
        "A4 与 Letter"
      ]
    },
    "printable": {
      "selectLayout": "1. 选择记谱纸版式",
      "selectLayoutDesc": "所有版式均按 A4 / US Letter 纸张精密排版，适合物理打印机与“另存为 PDF”。",
      "printButton": "打印记谱纸 (或存为 PDF)",
      "signInToPrint": "登录后免费打印 (存为 PDF)",
      "clearAll": "清空所有预填",
      "signInNotice": "提示：记谱纸支持完全免费打印与下载，请先登录或免费注册 ScanChess 账号。",
      "signInRequiredTitle": "请先登录",
      "signInRequiredDesc": "登录 ScanChess 账号即可免费打印与导出标准记谱纸",
      "layouts": {
        "standard60Badge": "正规赛推荐",
        "standard60Title": "标准 60 回合",
        "standard60Desc": "双栏，对局与签名完整",
        "classical80Badge": "慢棋长局",
        "classical80Title": "慢棋 80 回合",
        "classical80Desc": "适合长时间深度对抗",
        "junior40Badge": "儿童 / 初学",
        "junior40Title": "大格 40 回合",
        "junior40Desc": "加大行距，更易书写",
        "rapid2in1Badge": "快棋经济版",
        "rapid2in1Title": "双局 2 合 1 (30着)",
        "rapid2in1Desc": "一页打两局，省纸高效"
      },
      "prefillTitle": "2. 可选：预填赛事信息 (直接打印在纸张上)",
      "prefillHint": "留空则供棋手现场手写",
      "club": "俱乐部 / 主办方 (选填)",
      "clubPlaceholder": "印在标题下方，例如：城南国际象棋俱乐部",
      "paper": "纸张",
      "event": "赛事名称 (选填)",
      "eventPlaceholder": "例如：市俱乐部公开赛",
      "date": "比赛日期 (选填)",
      "datePlaceholder": "例如：2026-09-08",
      "round": "轮次 (选填)",
      "table": "台次 (选填)",
      "whitePlayer": "白方姓名 (选填)",
      "blackPlayer": "黑方姓名 (选填)",
      "fieldOptional": "留空供手写",
      "printTip": "提示：在浏览器的打印选项中，选择“目标打印机：另存为 PDF”可导出高清电子文档；勾选“背景图形”以确保清晰线框。",
      "digitizeCta": "手上有写完的记谱纸？拍照转 PGN →",
      "sheet": {
        "title": "国际象棋官方比赛记谱纸",
        "subtitle": "ScanChess.com · 国际棋联 FIDE 官方标准记谱单",
        "badgeStandard": "60 着 · 正规赛",
        "badgeClassical": "80 着 · 慢棋长局",
        "badgeJunior": "40 着 · 儿童大格",
        "eventLabel": "赛事:",
        "roundLabel": "轮次:",
        "tableLabel": "台次:",
        "dateLabel": "日期:",
        "whiteLabel": "白方:",
        "blackLabel": "黑方:",
        "ratingLabel": "等级分:",
        "resultLabel": "结果:",
        "whiteSignLabel": "白方签字:",
        "blackSignLabel": "黑方签字:",
        "signLabel": "签字:",
        "signLine": "白方 ________ 黑方 ________",
        "white": "白方 (White)",
        "black": "黑方 (Black)",
        "game1": "第 1 局 · 30 着",
        "game2": "第 2 局 · 30 着",
        "cutHere": "✂ 沿虚线裁开 (Cut Here)",
        "digitize": "⚡ 赛后使用 AI 几秒将手写记谱转为 PGN 棋谱:",
        "digitizeBody": "用手机平整拍摄本记谱纸，ScanChess 运用视觉 AI 自动识别手写着法并校验每步合法性，导出 PGN 到 Lichess 与 Chess.com。",
        "footerNote": "官方比赛标准记谱纸",
        "signInToPrint": "请先登录 ScanChess 账号以免费打印或下载官方记谱纸 (scanchess.com)"
      },
      "previewCaption": "打印预览。着法在打印出的纸上手写；上方的可选信息会印在记谱纸上。"
    },
    "fenImage": {
      "errors": {
        "noSideToMove": "FEN 至少需要局面排列和走棋方",
        "ranks": "局面排列必须包含由 / 分隔的 8 行",
        "character": "局面排列中包含无效字符",
        "squares": "棋盘行格数不为 8",
        "sideToMove": "走棋方必须是 w 或 b"
      }
    }
  },
  "sharedGame": {
    "eyebrow": "分享的棋局",
    "scoresheet": "记谱单原图",
    "scoresheetPage": "记谱单第 {{page}} 页",
    "moveCount": "手数",
    "noMoves": "这盘棋没有可回放的着法。",
    "ctaTitle": "扫描你自己的记谱单",
    "ctaBody": "ScanChess 把手写记谱单的照片变成可回放的棋局和 PGN 文件。注册即送免费积分。",
    "ctaButton": "免费试用",
    "notFoundTitle": "该链接已失效",
    "notFoundBody": "分享链接已被撤销，或棋局已被删除。",
    "replayStops": "回放到第 {{ply}} 步停止：{{san}} 无法在前一局面中走出。下方仍列出了完整着法。",
    "playableCount": "可回放",
    "unplayableMove": "{{san}} 无法走出",
    "pgnPartial": "PGN 只包含可以走出的 {{playable}} 步，记谱单上共 {{total}} 步。",
    "claimButton": "存入我的对局库",
    "claimSaving": "保存中…",
    "claimed": "已存入你的对局库",
    "claimedDesc": "这盘棋的副本已在你的历史记录中。分享者的记谱单照片仍归分享者所有。",
    "claimedOpen": "已在对局库 · 打开历史记录",
    "claimAlready": "这盘棋已经在你的对局库里",
    "claimFailed": "无法保存这盘棋",
    "metaTitle": "{{white}} 对 {{black}} | ScanChess",
    "metaDesc": "逐着回放这盘棋：{{white}} 对 {{black}}，共 {{count}} 手，由 ScanChess 从手写记分表扫描生成。"
  },
  "apiErrors": {
    "RATE_LIMITED": "请求过于频繁，请过几分钟再试。",
    "RATE_LIMITED_RETRY_one": "请求过于频繁，请 1 分钟后再试。",
    "RATE_LIMITED_RETRY_other": "请求过于频繁，请 {{count}} 分钟后再试。",
    "NOT_FOUND": "这盘棋已不存在，可能已被删除。",
    "INVALID_INPUT": "请求未被接受，请检查数据后重试。",
    "PERMISSION_DENIED": "你没有权限访问这盘棋。",
    "EMAIL_NOT_VERIFIED": "验证邮箱前的免费扫描已用完，验证邮箱后即可继续扫描。",
    "INSUFFICIENT_CREDITS": "积分不足，无法完成本次扫描。",
    "SCAN_IN_PROGRESS": "这次扫描仍在处理中，请稍候。",
    "UPLOAD_LIMIT_REACHED": "图片存储空间已满，请删除一些已保存的棋谱腾出空间。",
    "IMAGE_TOO_LARGE": "有一张图片过大，请换一张更小的照片。",
    "PAYLOAD_TOO_LARGE": "请求内容过大，请减少图片数量或使用更小的图片。",
    "AI_GATEWAY_ERROR": "识别服务无法处理这张图片，积分已退还。",
    "AI_INVALID_RESPONSE": "识别服务返回了意外结果，积分已退还。",
    "NO_SCORESHEET_FOUND": "照片里读不到任何棋步。请确保整张棋谱都在画面内、对焦清晰、光线充足。积分已退还。",
    "NO_BOARD_FOUND": "照片里读不到棋盘。请确保整个棋盘和所有棋子都在画面内。积分已退还。",
    "server": "服务器出了点问题，请稍后再试。",
    "network": "无法连接服务器，请检查网络后重试。",
    "unknown": "出了点问题，请重试。"
  },
  "annotations": {
    "title": "批注与变例",
    "needMoves": "先扫描或载入一局棋，再进行批注。",
    "beforeGame": "对局开始前",
    "afterMove": "{{number}}{{ellipsis}} {{move}} 之后",
    "commentOn": "注释（{{position}}）",
    "commentPlaceholder": "这个局面有什么值得记下来的？",
    "commentHint": "注释会跟着这一步写进导出的 PGN。切换棋盘位置即可批注其他局面。",
    "variations": "已记录的变例",
    "insteadOfFirst": "替代第一着",
    "variationFrom": "添加变例（{{position}}）",
    "variationPlaceholder": "例如 Nf3 d5 exd5",
    "addVariation": "添加",
    "variationHint": "用 SAN 输入着法，以空格分隔；它将作为当前局面的另一种走法。",
    "illegalLine": "{{move}} 在这里不是合法着法。",
    "variationRejected": "这条路线无法从当前局面走出。",
    "previewVariation": "在棋盘上预演这条变例",
    "deleteVariation": "删除这条变例"
  },
  "batch": {
    "title": "一次扫描整轮比赛",
    "intro": "为裁判和俱乐部组织者准备：把一轮比赛的全部记谱单一次上传，双面或多页的按局分组，每一局都会单独识别并存入你的对局库。",
    "signInRequired": "批量扫描需要登录——积分按局消耗。",
    "uploadTitle": "记谱单照片堆",
    "dropTitle": "把照片拖到这里",
    "limits": "每批最多 {{max}} 张照片，每张不超过 {{size}} MB。一局棋最多 {{pages}} 页。",
    "fileRejectedCount": "{{name}}：本批已达上限（{{max}} 张）。",
    "groups": "本批的对局",
    "gameLabel": "第 {{number}} 局",
    "pageAlt": "第 {{number}} 张照片",
    "removeImage": "移除第 {{number}} 张照片",
    "joinShort": "同一局",
    "joined": "已并入",
    "joinPrevious": "这张照片接续上一局（同一份记谱单）",
    "separateGame": "以这张照片开始新的一局",
    "joinFull": "上一局页数已满",
    "sharedMeta": "共用信息",
    "sharedMetaHint": "记谱单上没写的内容由这里补齐：赛事、地点和日期会写入本批的每一局。",
    "eventPlaceholder": "春季俱乐部锦标赛",
    "sitePlaceholder": "俱乐部场馆、城市",
    "runTitle": "开始批量识别",
    "costSummary": "{{games}} 局 × {{per}} 积分 = {{cost}} 积分",
    "balance": "余额 {{credits}}",
    "run": "识别 {{count}} 局",
    "stop": "本局结束后停止",
    "insufficient": "本批需要 {{cost}} 积分，当前余额 {{balance}}。会依次识别直到余额用完。",
    "insufficientPro": "本月 Pro 积分已用完；下次发放时间 {{date}}。",
    "outOfCredits": "积分不足，本局未能识别。",
    "summary": "已保存 {{saved}} 局，失败 {{failed}} 局。",
    "state": {
      "pending": "等待中",
      "scanning": "识别中…",
      "saved": "已保存",
      "failed": "失败",
      "blocked": "积分不足"
    },
    "open": "打开",
    "retry": "重试",
    "moveCount": "{{count}} 步",
    "signInCta": "登录",
    "tournament": {
      "title": "对阵表",
      "hint": "上传本轮对阵表，每盘棋会自动填入正确的选手、等级分、轮次和台次。文件名形如 R3B7.jpg 的照片会自动分组归位。",
      "add": "添加对阵表文件",
      "clear": "移除",
      "formats": "带表头的 CSV 或制表符分隔文件、PGN 名单，或 JSON 对阵文件。",
      "loaded": "已从 {{files}} 读取 {{count}} 条对阵",
      "matchSummary": "{{total}} 盘中已匹配 {{matched}} 盘",
      "matched": "匹配到 {{white}} 对 {{black}}",
      "unmatched": "未匹配到对阵。",
      "placed": "第 {{round}} 轮，第 {{board}} 台",
      "parseFailed": "{{name}} 无法作为对阵表读取。",
      "exportHint": "把整轮导出为一个 PGN 供赛事网站使用，并附一份仍需人工核对的记录。",
      "exportPgn": "整轮 PGN",
      "exportCsv": "核对 CSV"
    }
  },
  "extensionImport": {
    "title": "来自 ScanChess 插件",
    "loading": "正在接收采集内容…",
    "error": "未能接收或导入内容。可以在此重试，或丢弃后重新采集；当前工作会保留。",
    "imageHint": "请先检查图片。导入后，只有点击识别按钮才会调用 AI，并使用网站账号及额度。",
    "textHint": "导入到当前工具后检查并编辑棋谱。",
    "replaceHint": "导入将替换此页面的当前工作，请先保存需要保留的内容。",
    "board": "棋盘局面 → FEN",
    "scoresheet": "手写棋谱 → PGN",
    "imageAlt": "从 ScanChess 插件接收的图片",
    "accept": "确认导入",
    "discard": "丢弃",
    "retry": "重试",
    "cleanupPending": "正在清理临时传输内容…",
    "cleanupError": "无法确认临时传输内容已清理。重试只会清理传输，不会改变当前棋谱。"
  },
  "policy": {
    "effectiveDate": "生效日期",
    "updated": "更新于",
    "seeAlso": "相关："
  },
  "privacyPage": {
    "title": "隐私政策",
    "intro": "ScanChess（“我们”）尊重并保护您的隐私。本隐私政策说明我们在您使用 ScanChess 网站、浏览器插件及移动应用（“服务”）时如何收集、使用、存储和披露您的信息。",
    "sections": [
      {
        "heading": "我们收集的信息",
        "paragraphs": [
          "为提供棋谱扫描服务，我们收集以下信息："
        ],
        "bullets": [
          "账户信息：当您通过 Apple 或 Google 登录时，我们会接收您的电子邮件地址和基本账户标识，用于创建并管理您的账户。",
          "您上传的内容：您拍摄或上传的记谱单、棋盘照片及相关图片。这些图片会被发送给第三方 AI 模型服务商进行识别处理，转换为标准棋谱（PGN）。",
          "积分与交易记录：您的积分余额、购买记录及消费记录，用于计费和防止滥用。",
          "使用与设备信息：为保障安全与改进服务，我们可能记录基本的日志数据（如设备类型、应用版本、崩溃信息）。",
          "网站分析：Google Analytics 4 和 Microsoft Clarity 可能按照下方所述的 Cookie 规则及您的选择，收集页面访问、来源渠道、大致城市级位置和页面交互信息。"
        ]
      },
      {
      "id": "browser-extension",
      "heading": "浏览器插件的登录与扫描",
      "paragraphs": [
        "插件会使用您输入的邮箱和密码直接登录 ScanChess API，并将返回的会话令牌和基本账号资料保存在受保护的插件存储中，内容脚本无法读取。退出登录或会话过期时会删除令牌。",
        "只有在您主动选择棋盘或棋谱扫描后，插件才会截取网页可见区域。框选和裁剪在本地完成；松开选区后，只有该图片区域会被发送到 api.scanchess.com 及本政策所述的 AI 服务商进行识别，结果直接显示在插件侧边栏，不再经过网站中转。",
        "当前扫描进度和结果使用浏览器会话存储，在浏览器会话结束或退出登录时清理。新识别的棋谱会在条件允许时保存到您的 ScanChess 账号，以便出现在网站棋谱库中。插件不在后台收集浏览历史，也不包含分析追踪脚本。",
        "只有您另行点击时，插件才会在网站打开识别结果。该可选传输绑定到准确目标和指定标签页，使用 30 分钟后过期的临时浏览器会话记录。账号、图片和棋谱内容仅用于已披露的登录、采集、识别、校对与保存功能，不出售，不用于无关广告、信用评估或贷款决策。"
      ]
      },
      {
        "heading": "我们如何使用信息",
        "bullets": [
          "提供核心功能：识别您上传的图片并生成棋谱结果。",
          "管理您的账户、积分余额与交易。",
          "保障服务安全、防止欺诈与滥用。",
          "响应您的支持请求并改进产品。"
        ]
      },
      {
        "heading": "第三方服务",
        "paragraphs": [
          "我们与以下第三方共享必要的数据以提供服务："
        ],
        "bullets": [
          "AI 模型服务商：为执行扫描识别，您上传的棋谱/棋盘图片会被传输至我们使用的 AI 模型服务商进行处理。",
          "Apple 与 Google 登录：用于身份验证（Sign in with Apple / Google）。",
          "Waffo（Waffo Pancake）：网页版订阅的经销商（Merchant of Record）。您的支付信息由 Waffo 直接收集与处理，我们不接触也不存储您的银行卡信息；我们仅接收订单号、账单邮箱与订阅状态，用于开通权益。",
          "Google Analytics 4 与 Microsoft Clarity：网站分析服务，遵循下方所述的 Cookie 规则及您的选择。",
          "Cloudflare：为网站与 API 提供托管、CDN 与邮件路由，会处理必要的连接日志。",
          "我们不会将您的个人信息出售给第三方，也不会用于与本服务无关的广告。"
        ]
      },
      {
        "heading": "Cookie 与分析",
        "paragraphs": [
          "网页登录会话保存在仅供服务器读取的安全 Cookie 中。浏览器存储保存界面偏好；在您确认导入后，也可能保存棋谱数据和图片，以便恢复工作。这些草稿优先使用会话存储，会话存储不可用时使用本地存储。必要会话 Cookie 无法关闭，否则您无法在网页保持登录状态。",
          "除此之外，我们使用两项分析服务，它们都会设置 Cookie。在法律要求事前同意的地区——欧洲经济区（EEA）、英国、瑞士——未经您在提示中点击“同意”，它们不会加载；在其他地区它们默认开启，您可以随时关闭（见下）："
        ],
        "bullets": [
          "Google Analytics 4：统计访问量、来源渠道与页面表现。数据由 Google 处理，可能传输至中国境外（含美国）。",
          "Microsoft Clarity：记录页面内的点击、滚动与鼠标轨迹（会话回放）与热图，用于发现界面问题。我们不会用它来识别个人身份。"
        ],
        "paragraphsAfter": [
          "您可以随时更改选择：点击任意页面页脚的「Cookie 设置」，或在账户设置中操作。关闭后上述脚本完全不会加载；但已经在当前标签页运行的脚本不会因此中止，刷新页面后即不再出现。"
        ]
      },
      {
        "heading": "数据保留",
        "paragraphs": [
          "我们仅在为您提供服务所必需的期间内保留您的账户信息、棋谱历史和图片。当这些数据不再需要，或您请求删除时，我们会将其删除。"
        ]
      },
      {
        "heading": "数据删除与注销账户",
        "paragraphs": [
          "您可以随时删除账户——在移动应用的“设置”中，或在网页 https://scanchess.com/delete-account 上。该操作将删除您的账户信息以及与您账户关联的已上传图片和扫描数据。删除后这些数据无法恢复。",
          "如需协助删除数据，您也可以发送邮件至 {{email}}。"
        ]
      },
      {
        "heading": "数据安全",
        "paragraphs": [
          "我们采用合理的技术与组织措施保护您的数据传输与存储。但请注意，任何通过互联网传输或电子存储的方式都无法保证绝对安全。"
        ]
      },
      {
        "heading": "您的权利",
        "paragraphs": [
          "无论您身处何地，您都可以就我们持有的个人数据主张以下权利。行使方式：发送邮件至 {{email}}，我们会在 30 天内答复。"
        ],
        "bullets": [
          "访问与获取副本：了解我们持有哪些与您有关的数据。",
          "更正：要求更正不准确的数据。",
          "删除：随时通过“注销账户”自助删除，或来信要求删除。",
          "限制处理与反对：反对我们基于正当利益进行的处理（例如分析）。",
          "数据可携：以通用格式获取您的棋谱数据；您也可以随时自行导出 PGN。",
          "撤回同意：随时撤回分析 Cookie 的同意，且不影响撤回前处理的合法性。"
        ],
        "paragraphsAfter": [
          "欧盟/英国用户：我们处理数据的法律依据是——为履行与您的服务合同（账户、扫描、计费）、我们的正当利益（安全与防滥用）、以及您的同意（分析 Cookie）。您有权向所在地的数据保护监管机构投诉。",
          "加州用户：我们不会“出售”或“分享”您的个人信息（依 CCPA/CPRA 定义），也不会因您行使权利而给予差别待遇。",
          "数据跨境：我们的服务商（AI 模型服务商、Cloudflare、Google、Microsoft、Waffo）可能在中国境外（含美国与欧盟）处理数据。"
        ]
      },
      {
        "heading": "儿童隐私",
        "paragraphs": [
          "本服务不面向 13 周岁以下的儿童。我们不会在知情的情况下收集儿童的个人信息。如您认为有儿童向我们提供了个人信息，请联系 {{email}}，我们会删除。"
        ]
      },
      {
        "heading": "本政策的变更",
        "paragraphs": [
          "我们可能会不时更新本隐私政策。重大变更将在本页面发布并更新顶部的生效日期。"
        ]
      },
      {
        "heading": "联系我们",
        "paragraphs": [
          "如您对本隐私政策有任何疑问，请通过电子邮件联系我们：{{email}}。"
        ]
      }
    ]
  },
  "termsPage": {
    "title": "服务条款",
    "intro": "欢迎使用 ScanChess。以下条款（“条款”）约束您对 ScanChess 网站及移动应用（“服务”）的访问与使用。使用本服务即表示您同意这些条款。",
    "sections": [
      {
        "heading": "服务说明",
        "paragraphs": [
          "ScanChess 是一款 AI 驱动的工具，可将手写记谱单和棋盘的照片识别并转换为标准棋谱（PGN）格式。AI 识别结果可能存在错误，请您在使用前自行核对走法的准确性。"
        ]
      },
      {
        "heading": "账户与年龄要求",
        "paragraphs": [
          "您需要通过 Apple 或 Google 登录以使用部分功能。您有责任保护好您的账户，并对在您账户下发生的所有活动负责。",
          "本服务不面向 13 周岁以下的用户。若您未满 18 周岁（或您所在地的成年年龄），仅可在父母或监护人同意的前提下使用本服务；任何付费购买都必须由能够签订合同的成年人完成，或经其明确同意。"
        ]
      },
      {
        "heading": "订阅、积分与购买",
        "bullets": [
          "本服务使用积分进行扫描。记谱单扫描消耗 2 个积分，棋盘照片识别消耗 1 个积分；新账户注册即获得 10 个免费积分。当前价格与积分规则请见定价页 scanchess.com/pricing。",
          "Pro 为订阅制，按您选择的周期（每月或每年）以同样价格自动续订，直到您取消为止。",
          "中国大陆渠道以人民币出售 365 天 Pro 通行证，通过微信支付一次付清；通行证到期不自动续费、不再扣款，再次购买即可续期，剩余天数顺延。",
          "您可以随时在 scanchess.com/pricing 自助取消订阅。取消后不再产生新的扣费，Pro 权益保留至已付费周期结束。",
          "网页版订阅的销售主体（Merchant of Record）为 Waffo，账单上显示的是 Waffo，税费由其在结算时计算。",
          "所有付款均为最终交易，不提供退款——包括未使用完的周期与未使用的积分；适用法律强制要求的情形除外。请先用注册赠送的免费积分确认效果，再决定是否订阅。完整说明见退款政策 scanchess.com/refunds。",
          "通过 Apple App Store 或 Google Play 进行的购买，亦受相应平台的条款与退款政策约束，退款需向平台申请。"
        ]
      },
      {
        "heading": "可接受的使用",
        "paragraphs": [
          "使用本服务时，您同意不会："
        ],
        "bullets": [
          "上传任何违法、侵权或您无权处理的内容。",
          "试图破坏、逆向工程或滥用本服务或其底层系统。",
          "以自动化方式过度请求服务，或规避积分与计费机制。"
        ]
      },
      {
        "heading": "期限、暂停与终止",
        "paragraphs": [
          "本条款自您开始使用本服务之日起生效，并持续至您或我们终止为止。若您违反上述“可接受的使用”规则，我们可根据违规的严重程度与是否重复，采取以下一项或多项措施："
        ],
        "bullets": [
          "发出警告，或删除、限制访问违规内容；",
          "暂停您的账户，或限制扫描等具体功能的使用；",
          "对于严重违规——例如上传违法内容、攻击本服务、或规避积分与计费机制——立即终止您的账户，且可不事先通知；",
          "账户因违反本条款被终止的，剩余未使用的积分将失效且不予退款，进行中的订阅将停止续订；适用法律或相关应用商店政策要求退款的情况除外。"
        ],
        "paragraphsAfter": [
          "除法律禁止告知的情形外，我们会通过您账户绑定的邮箱通知暂停或终止的决定。若您认为处理有误，可在收到通知后 30 天内发送邮件至 {{email}} 提出申诉，我们会进行复核。",
          "您也可以随时停止使用本服务，并通过“注销账户”删除账户与相关数据。终止后，依其性质应当继续有效的条款（包括“免责声明”“责任限制”与“适用法律”）仍然有效。"
        ]
      },
      {
        "heading": "您的内容",
        "paragraphs": [
          "您上传的图片归您所有。为提供扫描功能，您授予我们处理这些图片所必需的有限许可，包括将其传输给我们使用的第三方 AI 模型服务商进行识别。具体处理方式详见我们的隐私政策。"
        ]
      },
      {
        "heading": "账户删除",
        "paragraphs": [
          "您可以随时在应用内通过“注销账户”删除您的账户及关联数据。删除后相关数据将无法恢复。"
        ]
      },
      {
        "heading": "免责声明",
        "paragraphs": [
          "本服务按“现状”和“现有”基础提供，不附带任何明示或暗示的保证。我们不保证识别结果完全准确或服务不间断、无错误。"
        ]
      },
      {
        "heading": "责任限制",
        "paragraphs": [
          "在适用法律允许的最大范围内，ScanChess 不对因使用或无法使用本服务而产生的任何间接、附带或后果性损害承担责任。"
        ]
      },
      {
        "heading": "知识产权与侵权投诉",
        "paragraphs": [
          "ScanChess 的软件、界面与文档归我们所有。您上传的图片与生成的棋谱归您所有，我们仅为提供服务而处理它们。",
          "如您认为本服务上的某项内容侵犯了您的著作权或其他权利，请发送邮件至 {{email}}，并说明：您的联系方式、涉嫌侵权的具体内容与位置、您对该作品享有权利的说明，以及您善意相信该使用未经授权的声明。我们收到后会及时核查并在必要时移除相关内容，并可对重复侵权的账户予以终止。"
        ]
      },
      {
        "heading": "服务的变更与中止",
        "paragraphs": [
          "我们可能改进、变更或停止本服务的部分功能。若变更对您有实质不利影响（例如提价、削减 Pro 权益或停止服务），我们会提前至少 30 天通过您账户绑定的邮箱或站内公告通知，订阅用户可在变更生效前取消，避免按新条件续订。",
          "为维护、修复或应对安全事件，服务可能临时中断，我们会尽量减少影响。"
        ]
      },
      {
        "heading": "条款变更",
        "paragraphs": [
          "我们可能不时更新本条款。重大变更将在本页面发布并更新顶部的生效日期，并在生效前通过邮件或站内公告通知订阅用户。继续使用本服务即表示您接受更新后的条款。"
        ]
      },
      {
        "heading": "争议解决与适用法律",
        "paragraphs": [
          "出现问题时，请先发邮件至 {{email}} 与我们沟通——绝大多数争议都能在 30 天内直接解决。",
          "本条款受新加坡法律管辖并据其解释，由此产生的争议提交新加坡有管辖权的法院处理。",
          "如果您是消费者，本条款适用您经常居住地的强制性消费者保护法，您也可以在当地有管辖权的法院提起诉讼——本条款的任何内容都不减损这些权利。",
          "如本条款的任何部分被认定无效或不可执行，该部分将在必要范围内被调整或删除，其余部分继续有效。"
        ]
      },
      {
        "heading": "联系我们",
        "paragraphs": [
          "如对本条款有任何疑问，请通过电子邮件联系我们：{{email}}。"
        ]
      }
    ]
  },
  "refundsPage": {
    "title": "退款政策",
    "sections": [
      {
        "heading": "所有销售均为最终交易",
        "paragraphs": [
          "订阅费用一经支付不予退款，包括未使用完的周期、忘记取消而产生的续订扣费，以及已购买但未使用的积分。",
          "我们之所以能这样定价，正是因为不承担退款成本；作为交换，我们把免费额度做得足够真实：每个新账户获得 10 个免费积分（5 张记谱单），无需绑卡，所有功能不设限制。请先用免费额度确认识别效果符合预期，再决定是否订阅。"
        ]
      },
      {
        "heading": "例外情况",
        "paragraphs": [
          "以下情形不受上述条款限制："
        ],
        "bullets": [
          "适用法律强制要求退款的情形——本政策不会减损你所在地强制性消费者保护法赋予的权利。欧盟/英国用户在法定条件下仍可行使撤回权。",
          "通过 Apple App Store 或 Google Play 完成的购买：退款由相应平台按其自身政策处理，需向平台申请，我们既无权批准也无权拒绝。",
          "重复扣费、扣错金额等我们或支付服务商的技术性错误——这类不是退款，是纠错，请直接联系我们。"
        ]
      },
      {
        "heading": "不想再被扣费怎么办",
        "paragraphs": [
          "取消订阅，而不是等扣费之后来申请退款。取消是自助的，在定价页登录后点“取消订阅”即可，两次点击完成，无需联系客服。",
          "取消后不再产生新的扣费，Pro 权益保留至已付费周期结束，余额里的积分也照常保留、永不过期。具体步骤见《如何取消订阅》。",
          "建议在续订日之前取消。年付订阅可以在收到续订提醒后立即处理。"
        ]
      },
      {
        "heading": "积分的性质",
        "bullets": [
          "积分是使用本服务的内部单位，不是储值，也没有现金价值。",
          "积分不可退款、不可提现、不可转让给其他账户。",
          "注册赠送与邀请奖励获得的积分同样如此。",
          "取消订阅不会清空你已有的积分余额。"
        ]
      },
      {
        "heading": "有疑问先来问",
        "paragraphs": [
          "如果扫描结果完全不可用、账户出现异常扣费，或者你觉得情况不该按上述条款处理，请发邮件到 {{email}}，说明账户邮箱和订单号（在 Waffo 的收据邮件里）。我们在 2 个工作日内答复，会按具体情况处理——政策是政策，人是人。"
        ]
      },
      {
        "heading": "销售主体",
        "paragraphs": [
          "网页版订阅的销售主体（Merchant of Record）为 Waffo，账单上显示的也是 Waffo。任何依法必须执行的退款由我们发起、经 Waffo 完成。",
          "中国大陆渠道通过微信支付购买的 365 天通行证同样由 Waffo 收款，同样适用本政策：一次付清、不可退款；通行证不会自动续费，所以也不存在「忘记取消」的扣费。"
        ]
      }
    ],
    "intro": "ScanChess 不提供退款。这一点我们写在最前面，也写在购买按钮旁边——你在付款前就应该知道，而不是事后才发现。下面说明原因、有哪些例外，以及不想继续付费时该怎么做。",
    "stopCharges": "想停止扣费？直接在<pricing>定价页</pricing>取消订阅，或发邮件到 <mail>{{email}}</mail>。"
  },
  "securityPage": {
    "title": "安全",
    "sections": [
      {
        "heading": "报告漏洞",
        "paragraphs": [
          "发现安全问题请发邮件至 {{email}}，标题带上「Security」。请描述复现步骤与影响，我们会在 3 个工作日内答复，并在修复后告知你结果。",
          "我们不会对善意的安全研究采取法律行动，前提是：不访问、不修改、不外泄他人数据；不做拒绝服务或垃圾信息测试；在我们修复前不公开披露。目前没有付费赏金计划，但我们会在致谢中署名（如果你愿意）。"
        ]
      },
      {
        "heading": "数据如何保护",
        "bullets": [
          "所有流量通过 HTTPS 传输，站点与 API 由 Cloudflare 前置。",
          "密码使用 bcrypt 加盐哈希存储，我们无法读取你的原始密码。",
          "网页会话使用签名 JWT 并保存在 HttpOnly Cookie 中；修改密码会撤销此前签发的会话与密码重置令牌。",
          "支付信息我们从不接触：网页版结算由经销商 Waffo 托管，我们只收到订单号与订阅状态。",
          "账户删除是真删除，不是标记：账户、棋谱、上传的图片一并移除，且不可恢复。"
        ]
      },
      {
        "heading": "你上传的图片",
        "paragraphs": [
          "记谱单照片会传输给我们使用的第三方 AI 模型服务商进行识别，具体范围见隐私政策。图片与你的账户绑定，你可以随时删除单盘对局，或注销账户一并删除。"
        ]
      },
      {
        "heading": "我们没有的",
        "paragraphs": [
          "坦白讲：我们目前没有 SOC 2、ISO 27001 等第三方审计认证，也没有正式的赏金计划。ScanChess 是个小团队的产品。如果你所在的机构需要这类合规材料，请来信说明需求，我们会如实告知能提供什么。"
        ]
      }
    ]
  },
  "contactPage": {
    "title": "联系我们",
    "subtitle": "我们是个小团队，每一封邮件都是人工回复。",
    "emailHeading": "客服邮箱",
    "replyTime": "我们在 2 个工作日内答复；计费相关的问题通常当天处理。",
    "includeHeading": "写信时请附上",
    "include": [
      "你注册时用的邮箱地址。",
      "如果是计费问题：Waffo 收据邮件里的订单号。",
      "如果是识别错误：那张记谱单的照片，以及识别错的是第几步。"
    ],
    "shortcutsHeading": "也许这里就有答案",
    "shortcuts": {
      "pricing": "价格、积分与取消订阅",
      "refunds": "退款政策（不支持退款）",
      "deleteAccount": "注销账户与删除数据",
      "faq": "常见问题"
    },
    "operatorHeading": "经营主体",
    "operatorBody": "ScanChess 由 SudoAI 运营。网页版订阅的销售主体（Merchant of Record）为 Waffo，你的账单上显示的是 Waffo。"
  },
  "faqPage": {
    "title": "常见问题",
    "subtitle": "关于 ScanChess 棋谱扫描的常见问题解答",
    "items": [
      {
        "question": "什么是 ScanChess？",
        "answer": "ScanChess 是一款 AI 驱动的棋谱扫描工具，可以将手写的国际象棋记谱单照片转换为标准 PGN 格式。只需上传照片，AI 会自动识别着法。"
      },
      {
        "question": "支持哪些记谱格式？",
        "answer": "我们支持标准代数记法（SAN），包括各种手写风格。支持简写形式如 \"dc\"（兵吃兵），系统会自动转换为标准格式如 \"dxc5\"。"
      },
      {
        "question": "免费使用吗？",
        "answer": "新用户注册即获得 10 个免费积分，无需绑卡。记谱单扫描消耗 2 个积分，棋盘照片识别消耗 1 个积分，编辑、复盘、PGN 导出和历史记录都不额外收费。你也可以通过邀请朋友获得更多积分。"
      },
      {
        "question": "Pro 多少钱？包含什么？",
        "answer": "Pro 为 {{proMonthly}}/月 或 {{proYearly}}/年，每 30 天增加 100 个积分（约 50 张记谱单）；Pro+ 为 {{proPlusMonthly}}/月 或 {{proPlusYearly}}/年，每 30 天增加 500 个积分。未用完的积分会保留在余额里，新功能也会先向 Pro 开放。编辑、复盘、PGN 导出和云端历史记录对所有账户都是免费的，Pro 买的是额度。完整对照见定价页 /pricing。"
      },
      {
        "question": "怎么付款？账单上显示什么？",
        "answer": "在定价页登录后点“订阅”，会跳转到 Waffo 的结算页。Waffo 是我们网页版订阅的销售主体（Merchant of Record），负责收款与计税，你的账单上显示的是 Waffo，而不是 ScanChess。我们不接触也不存储你的银行卡信息。中国大陆用户可在定价页切换到「中国大陆」渠道，用微信支付以人民币购买 365 天 Pro 通行证，一次付清、到期不自动扣费。"
      },
      {
        "question": "怎么取消订阅？",
        "answer": "在定价页 /pricing 登录后，页面顶部会出现“你的订阅”，点“取消订阅”即可，无需联系客服。取消后不再扣费，Pro 权益保留至已付费周期结束，余额里的积分也照常保留。通过 App Store 购买的订阅需要在 iPhone 的“设置 → 订阅”里取消。"
      },
      {
        "question": "可以退款吗？",
        "answer": "不可以。所有付款均为最终交易，不提供退款，包括未使用完的周期和未使用的积分（适用法律强制要求的情形除外）。所以我们把免费额度做得很实在：注册即送 10 个积分、无需绑卡、功能不设限，请先用它确认识别效果再订阅。不想继续付费的话，取消订阅即可，取消是自助的、两次点击完成。完整说明见 /refunds。"
      },
      {
        "question": "识别准确率如何？",
        "answer": "识别效果取决于字迹、光线、拍摄角度和记谱格式，因此我们不承诺固定准确率。系统会用国际象棋规则验证结果，并标记低置信或不合法的着法供你确认。"
      },
      {
        "question": "可以一次扫描多页吗？",
        "answer": "是的！一次扫描最多可上传 10 张图片（JPG、PNG 或 WebP，暂不支持 HEIC）。多页按列表顺序识别，双面或多页记谱单会合成一局，并且只算一次扫描。"
      },
      {
        "question": "如何导出棋谱？",
        "answer": "扫描完成后，点击\"导出 PGN\"按钮即可下载标准 PGN 文件。你也可以复制 PGN 到剪贴板，直接粘贴到 Chess.com 或 Lichess。"
      },
      {
        "question": "识别出错怎么办？",
        "answer": "点击着法旁的铅笔按钮即可编辑。系统会实时验证着法合法性。你也可以使用简写输入（如 \"dc\"），系统会自动转换为完整记法。"
      },
      {
        "question": "我的对局记录会保存吗？",
        "answer": "扫描成功后会自动保存到云端历史记录；之后如果你修改着法或对局信息，“保存棋局”会更新同一条记录，不会重复创建。扫描功能需要登录。"
      },
      {
        "question": "我的照片和棋谱会保存多久？怎么删除？",
        "answer": "记谱单照片和识别出的棋谱一起保存在你的账户里，直到你删除。在历史记录里删除一盘棋，照片会随之删除；在设置里删除账户，所有对局、照片和积分记录会一起清除。删除会立即从线上数据库生效，日常备份副本最长保留 90 天后过期。"
      }
    ],
    "ctaTitle": "还有其他问题？",
    "ctaBody": "立即试用 ScanChess，体验 AI 棋谱识别",
    "ctaButton": "开始扫描"
  },
  "changelogEntries": {
    "2026-09-10": {
      "title": "八种语言的网站、对可疑着法更敏锐的判断，以及整轮比赛的对阵匹配",
      "items": [
        "ScanChess 现在除英文和中文外，还支持西班牙语、德语、法语、葡萄牙语、意大利语和俄语——网站和 iOS 应用都是。点击页首的地球图标，或在设置里的「语言」中选择。",
        "识别错的着法多半仍然合法，所以光靠规则永远抓不到它。现在扫描结果还会检查子力有没有以真实对局里不会有的方式运动——白送的子却没人吃——相关的半回合会连同理由一起标出，供你复核。不会改写任何一步。",
        "棋手真正会写的记法现在能读懂，而不是被判为无效：兵前面加 P、`e2-e4` 这样的长代数记法、写被吃子的吃法（`BxN`），以及线吃线（`cxd`）。",
        "遇到可疑着法时，复核环节现在给出当前局面下最贴近墨迹的几步合法着法供选择，而不是一个开放式问题；会让棋走不通的选择会被撤销，而不是被保存。",
        "批量扫描学会了裁判的工作流。`R3B7p2.jpg` 这样命名、或放在 `Round 3/Board 7` 下的照片会自动分组归位；上传对阵表——CSV、PGN 名单或 JSON，任何编排软件导出的都行——每一局就会归到正确的选手、等级分、轮次和台次下。可以把整轮下载为一个 PGN，另附一份「还需要人看一眼」的 CSV。"
      ]
    },
    "2026-09-07": {
      "title": "棋盘上的变例预演、对局批注，以及整轮比赛的批量模式",
      "items": [
        "点击引擎给出的任一路线，它会在棋盘上逐步演示；开启引擎后，棋盘还会以箭头标出当前局面的最佳着法。",
        "为对局添加批注：在任意局面写注释，记录变例——可以手动输入，也可以把引擎预演的路线直接保存。注释和变例随对局保存、随分享链接展示，并写进导出的 PGN。",
        "要扫描整轮比赛？新的批量页一次接收全部记谱单，多页记谱单按局分组，每一局单独识别并存入对局库。"
      ]
    },
    "2026-09-06": {
      "title": "引擎分析、开局名称，以及属于双方的对局",
      "items": [
        "Stockfish 直接在浏览器里运行。在棋盘下方开启引擎即可看到评估和最佳着法；也可以复盘整盘棋，标出每一处失误、错误和严重失误，并给出双方准确率。不上传任何内容。",
        "每盘棋都会标出开局名称（ECO 编码与 Lichess 名称），显示在工作台、分享页、对局库和 PGN 头信息里。",
        "用德语、西班牙语、法语、葡萄牙语、荷兰语、波兰语、捷克语、匈牙利语、俄语或中文棋子字母写的记谱单，以及图形记谱，都会被识别并转成标准 SAN。",
        "一键把棋局发送到 Lichess 并打开。收到分享链接后，“存入我的对局库”会把这盘棋复制到你自己的账户，网页和 iOS 均支持。",
        "对局库可按保存时间、对局日期或棋手姓名排序，并按结果筛选。"
      ]
    },
    "2026-09-04": {
      "title": "九月复查后的修复",
      "items": [
        "验证邮箱之前也可以上传记谱纸并完成第一次扫描；从第二次扫描起才需要验证。",
        "正在修正的对局刷新后不会丢失：着法和图片会恢复到你离开时的状态。",
        "低置信度着法重新被标记出来，并列出规则允许的候选；除了改写，现在也可以插入或删除一手。修正尚未完成时也可以先保存对局。",
        "扫描后可以编辑对局信息（棋手、赛事、日期、结果）；历史记录里的对局可以直接导出 PGN。",
        "分享链接可以关闭；撤销后的链接会立即失效。",
        "修复：手机端菜单打不开；登录状态在浏览中途失效而不是静默续期；定价页对套餐的描述有误。",
        "文案更诚实：首页不再暗示零错误，关于页写明了 ScanChess 是谁做的、做不到什么；工具页加载更快且不再出现空白棋盘；中文文章显示真实的阅读时长。"
      ]
    },
    "2026-08-23": {
      "title": "对手也能打开的分享链接",
      "items": [
        "每盘已保存的对局都可以生成公开链接。打开链接的人无需账户即可看到棋盘、着法和 PGN。",
        "AI 请求因发出地区被拒绝时，会自动从美国线路重试，而不是直接失败退款。"
      ]
    },
    "2026-08-19": {
      "title": "不再自信地猜",
      "items": [
        "识别出的对局走不通时，会标出出问题的那一手，其余按原样保留。自动修正已关闭，改动由你决定。",
        "棋盘照片会识别两次并交叉核对后才给出局面；无法读取的图片会如实报告，而不是给出一个看似合理的局面。",
        "棋盘模式展示真实的照片 → 局面示例；免费工具页面的工具移到首屏。"
      ]
    },
    "2026-08-17": {
      "title": "免费工具与 Pro+",
      "items": [
        "三个无需账户的工具：PGN 查看器、可生成 FEN 的棋盘编辑器，以及能找出问题着法的 PGN 校验器。",
        "新增 Pro+（$19.99/月 或 $119.99/年），每 30 天增加 500 积分，面向扫描量大的俱乐部和教练。网页订阅用户可以在 Pro 与 Pro+ 之间切换。",
        "同一张照片扫描两次不再重复扣费：会免费返回之前的结果。",
        "扫描完成邮件恢复发送；API 迁移到 Cloudflare，离你更近。"
      ]
    },
    "2026-08-12": {
      "title": "账户、计费与 Cookie 选择",
      "items": [
        "新增设置页：套餐与积分、显示名称、密码、邀请码、语言、账单记录，以及一键下载全部棋谱。",
        "可以在定价页两次点击自助取消订阅。取消后不再扣费，Pro 与积分保留至已付费周期结束。",
        "分析工具改为先询问：未同意前 Google Analytics 与 Microsoft Clarity 不会加载，且可随时在设置中更改。",
        "新增定价页（写清每次扫描消耗多少积分）、退款政策、联系我们与安全页。",
        "上线首批中文版指南，每篇有译文的文章都带语言切换链接。"
      ]
    },
    "2026-08-11": {
      "title": "网页版订阅",
      "items": [
        "Pro 现在可以在网页上购买，不再只能通过 iOS App。结算由经销商 Waffo 处理。",
        "修复：记谱单上带引号的数字（如把回合号与着法连写）不再导致整页识别失败。"
      ]
    },
    "2026-08-10": {
      "title": "自助注销账户",
      "items": [
        "注销账户不再需要发邮件：/delete-account 可直接删除账户、棋谱与已上传的图片，不可恢复。",
        "邮件改由 Cloudflare 发送，修复了验证邮件进垃圾箱的问题。"
      ]
    }
  },
  "toolCopy": {
    "pgn-viewer": {
      "name": "PGN 棋谱回放",
      "seoTitle": "PGN 查看器 – 在线免费打开和回放 PGN 文件",
      "seoDescription": "粘贴或上传 PGN 文件，逐着回放国际象棋对局。免费在线 PGN 查看器，支持键盘翻棋、FEN 导出和分享链接，无需注册。",
      "kicker": "免费工具 · 无需登录",
      "h1": "在线 PGN 棋谱回放",
      "tagline": "粘贴 PGN，逐着回放对局，随时复制任意局面的 FEN。",
      "intro": "粘贴 PGN 文本或打开 .pgn 文件，即可在交互棋盘上逐着回放对局。任意局面都可以复制 FEN、打开到棋盘编辑器，或生成分享链接。全部在浏览器本地运行，不会上传任何内容。",
      "features": [
        {
          "title": "多局文件",
          "body": "直接加载包含几十局的比赛文件，在列表里切换对局。"
        },
        {
          "title": "点选或键盘翻棋",
          "body": "点任意着法即可跳到该局面；在电脑上还可以用 ← → 前后翻着，Home / End 跳到开局或终局。"
        },
        {
          "title": "局面工具",
          "body": "一键复制任意局面的 FEN、打开到棋盘编辑器，或跳转 Lichess 分析。"
        },
        {
          "title": "宽容解析",
          "body": "注释、变着、NAG 符号，甚至 0-0、dc 这类记谱纸简写都能识别；非法着法会被标出，而不是被悄悄丢掉。"
        }
      ],
      "howToTitle": "如何使用 PGN 回放",
      "howTo": [
        "把 PGN 文本粘贴到输入框，或用\"选择文件\"挑一个 .pgn；在电脑上也可以把文件拖进来。",
        "点击\"加载\"。棋盘显示初始局面；宽屏时着法列表在棋盘旁边，手机上排在棋盘下方。",
        "点任意着法即可跳到对应局面；在电脑上也可以用方向键。",
        "用\"复制 FEN\"\"在编辑器中打开\"或\"分享\"把局面带到别处。"
      ],
      "faq": [
        {
          "question": "什么是 PGN 文件？",
          "answer": "PGN（Portable Game Notation，可移植棋局记法）是记录国际象棋对局的标准纯文本格式。文件开头是 Event、White、Black、Result 等标签，后面是代数记谱法的着法。Chess.com、Lichess 和所有棋谱数据库都能导入导出 PGN。"
        },
        {
          "question": "我的 PGN 会被上传到服务器吗？",
          "answer": "不会。解析和回放完全在你的浏览器里完成，粘贴或打开的内容不会离开你的设备。"
        },
        {
          "question": "可以查看包含多局的 PGN 吗？",
          "answer": "可以。当文件包含多局时，棋盘上方会出现选择器，可以在对局之间切换。"
        },
        {
          "question": "PGN 里有非法着法怎么办？",
          "answer": "查看器会回放到出问题之前的所有合法着法，并高亮无法走出的那一着。用 PGN 校验器可以看到当时的合法着法，并生成清洗后的文件。"
        },
        {
          "question": "怎么把纸质记谱纸变成 PGN？",
          "answer": "给记谱纸拍照，用 ScanChess 识别。AI 会读取手写着法、校验合法性，并生成可下载的 PGN，直接在这个查看器里打开。"
        }
      ],
      "cta": {
        "title": "手上是纸质记谱纸？",
        "body": "ScanChess 几秒钟就能把记谱纸照片变成校验过的 PGN。新用户注册即送免费积分，无需绑卡。",
        "button": "扫描记谱纸"
      }
    },
    "board-editor": {
      "name": "棋盘编辑器 & FEN 生成器",
      "seoTitle": "国际象棋棋盘编辑器 & FEN 生成器 – 免费在线使用",
      "seoDescription": "免费在线国际象棋棋盘编辑器。点选或拖动棋子摆出任意局面，即时得到 FEN，可下载棋盘 PNG 图片或直接分析。无需登录。",
      "kicker": "免费工具 · 无需登录",
      "h1": "国际象棋棋盘编辑器 & FEN 生成器",
      "tagline": "手动摆放棋子，也可以粘贴截图并交给图片转 FEN 扫描。",
      "intro": "点击或拖动棋子即可摆出局面；也可以在棋盘上方粘贴或拖入截图，转到图片转 FEN 扫描。编辑时 FEN 实时更新，可复制、分享、导出图片，或在本站及 Lichess 分析。",
      "features": [
        {
          "title": "实时 FEN",
          "body": "每一步改动都会更新 FEN 字符串，也可以粘贴一个 FEN 作为起点。"
        },
        {
          "title": "局面检查",
          "body": "在面板里设置易位权、走棋方和吃过路兵格；局面不可用时会给出提示。"
        },
        {
          "title": "棋盘转图片",
          "body": "把局面下载为清晰的 PNG，用于博客、习题纸或社交媒体。"
        },
        {
          "title": "触屏友好",
          "body": "点选托盘里的棋子，再点格子放置；点橡皮擦清空格子。"
        }
      ],
      "howToTitle": "如何使用棋盘编辑器",
      "howTo": [
        "从初始局面、空棋盘开始，或粘贴一个 FEN。",
        "先点托盘里的棋子，再点格子即可落子；在电脑上也可以直接拖过去。点橡皮擦，或把棋子拖出棋盘，即可移除。",
        "在面板里选择走棋方和易位权。",
        "复制 FEN、下载 PNG、分享链接，或打开局面进行分析。"
      ],
      "faq": [
        {
          "question": "什么是 FEN？",
          "answer": "FEN（Forsyth–Edwards Notation）用一行文字描述一个国际象棋局面：逐行的棋子摆放、走棋方、易位权、吃过路兵格、半回合计数和回合数。引擎、数据库和网站都用它交换局面。"
        },
        {
          "question": "为什么提示我的局面不可用？",
          "answer": "合法局面要求双方各恰好一个王、第一和第八横线没有兵，并且非走棋方不能处于被将军状态。你仍然可以复制 FEN，但引擎和分析板可能会拒绝它。"
        },
        {
          "question": "可以从真实棋盘的照片得到 FEN 吗？",
          "answer": "可以——ScanChess 内置棋盘照片识别，把实体棋盘或屏幕棋盘的照片变成 FEN，然后可以在这里微调。"
        },
        {
          "question": "怎么把 FEN 变成图片？",
          "answer": "把 FEN 粘贴到编辑器，点击\"下载 PNG\"。图片在本地以高分辨率渲染并带坐标。"
        }
      ],
      "cta": {
        "title": "直接拍一张真实棋盘",
        "body": "ScanChess 能识别实体棋盘照片并给出 FEN，可以在这里继续编辑或分析。注册即送免费积分。",
        "button": "识别棋盘照片"
      }
    },
    "pgn-validator": {
      "name": "PGN 校验与清洗",
      "seoTitle": "PGN 校验器 – 在线检查并修正国际象棋 PGN",
      "seoDescription": "粘贴国际象棋记谱，逐着检查合法性、定位错误着法，并下载符合标准的干净 PGN。免费、即时、无需登录。",
      "kicker": "免费工具 · 无需登录",
      "h1": "PGN 校验与清洗工具",
      "tagline": "找出第一个走不通的着法，并输出规范的七标签 PGN。",
      "intro": "粘贴 PGN 或一串着法。校验器会在真实棋盘上逐着走出来，指出第一个走不通的着法并列出当时的合法着法，然后把对局重写成规范的七标签 PGN。0-0、dc、e8Q 之类的简写会自动标准化。",
      "features": [
        {
          "title": "精确定位错误",
          "body": "看到出错的回合数、原始文本，以及该局面下的全部合法着法。"
        },
        {
          "title": "记谱清洗",
          "body": "用 0 写的易位、缺失的将军符号、小写棋子字母、升变简写都会被修正为标准 SAN。"
        },
        {
          "title": "标准输出",
          "body": "结果是七标签、80 列换行的 PGN，Chess.com、Lichess、ChessBase 都能直接导入。"
        },
        {
          "title": "不上传任何内容",
          "body": "校验用 chess.js 在本地完成，粘贴比赛对局也无需担心隐私。"
        }
      ],
      "howToTitle": "如何校验 PGN",
      "howTo": [
        "把 PGN 或只有着法的文本粘贴到输入框。",
        "点击\"校验\"。绿色表示所有着法合法；红色会指出第一个问题。",
        "在原文（或 PGN 回放里）修正着法，然后重新校验。",
        "复制或下载清洗后的 PGN。"
      ],
      "faq": [
        {
          "question": "校验器检查什么？",
          "answer": "它解析标签头，去掉注释和变着，然后在遵守国际象棋规则的棋盘上逐着走出。任何非法、歧义或格式错误的着法都会连同回合数和当时的合法着法一起报告。"
        },
        {
          "question": "会自动修复错误吗？",
          "answer": "会修复记谱错误——0-0 改为 O-O，dc 改为 dxc5，e8Q 改为 e8=Q，补上缺失的 + 和 #。它无法猜测一个真正非法的着法原本想写什么，所以会列出合法着法供你选择。"
        },
        {
          "question": "可以只粘贴着法，不带标签吗？",
          "answer": "可以。像 \"1. e4 e5 2. Nf3 Nc6\" 这样的裸着法列表就够了。清洗后的输出会补上占位标签供你填写。"
        },
        {
          "question": "为什么手写记谱纸经常产生无效 PGN？",
          "answer": "棋手会漏记一着、写错列，或忘记标记吃子。如果你在手动录入记谱纸，ScanChess 可以直接识别照片、做同样的校验，并让你在棋盘上修正着法。"
        }
      ],
      "cta": {
        "title": "还在手动录入记谱纸？",
        "body": "省掉打字。ScanChess 识别手写记谱纸，用同样的方式校验每一着，并让你在棋盘上修正错误。注册即送免费积分。",
        "button": "扫描记谱纸"
      }
    },
    "printable-scoresheets": {
      "name": "可打印记谱纸模板",
      "seoTitle": "国际象棋记谱单 PDF 打印 – 免费记谱纸模板",
      "seoDescription": "免费打印国际象棋记谱单（记谱纸）PDF：60 着比赛记谱单、80 着慢棋记谱单、给孩子用的 40 着大格记谱单，以及一页两盘的快棋版。",
      "kicker": "免费 PDF · A4 与 US Letter",
      "h1": "可打印国际象棋记谱单",
      "tagline": "选一种版式，填上赛事信息，直接打印或另存为 PDF。",
      "intro": "国际象棋记谱单（也叫记谱纸，装订成册就是记谱本）是比赛对局中双方记录每一步着法的表格。这里有四种版式可选：双栏比赛格式的 60 着记谱单、长时限慢棋用的 80 着记谱单、给孩子和初学者用的 40 着大格记谱单，以及一页容纳两盘 30 着对局的快棋版。填上赛事、轮次和俱乐部，看一眼实时预览，就可以打印或另存为 PDF。下完之后，给写好的记谱单拍一张照片，ScanChess 就能把它变成 PGN。",
      "features": [
        {
          "title": "四种版式",
          "body": "60 着适合俱乐部赛和正式比赛，80 着适合慢棋时限，40 着大格给少儿棋手，快棋赛可以一页印两盘 30 着对局。"
        },
        {
          "title": "赛事信息直接印上",
          "body": "打印前可以填好赛事、日期、轮次、台次、棋手和俱乐部，任何一栏也都可以留空，让棋手现场手写。"
        },
        {
          "title": "A4 与 US Letter 都清晰",
          "body": "记谱单以黑白矢量绘制，线条和回合号在任何办公打印机上都清楚锐利，也很省墨粉。"
        },
        {
          "title": "写完就能扫描",
          "body": "表格把白方和黑方的着法分在编号清楚的两栏里，这正是记谱单扫描识别最可靠的版式。"
        }
      ],
      "howToTitle": "如何打印国际象棋记谱单",
      "howTo": [
        "选择版式：60 着、80 着、儿童 40 着，或一页两盘快棋。",
        "可以选填赛事、轮次、俱乐部或棋手姓名，让它们印在每一张记谱单上。",
        "点击“打印记谱纸”直接打印，或在打印对话框里选择“另存为 PDF”保存文件。",
        "下完之后，给写好的记谱单拍照，让 ScanChess 把手写着法变成 PGN。"
      ],
      "faq": [
        {
          "question": "国际象棋记谱纸是什么？",
          "answer": "它和记谱单是同一样东西：一张带编号行的表格，双方用代数记谱法记录每一步着法，另有填写赛事、轮次、棋手和结果的栏目。记谱本就是把很多张记谱单装订在一起。"
        },
        {
          "question": "这些记谱单符合 FIDE 惯例吗？",
          "answer": "60 着和 80 着记谱单采用常见的比赛版式：表头有白方、黑方、赛事、日期、轮次、台次和结果，下面是分白方、黑方两栏的编号着法行，以及双方签名栏。不过某项赛事的裁判仍然可以要求使用该赛事的官方记谱单。"
        },
        {
          "question": "国际象棋记谱单怎么填？",
          "answer": "每行写一次回合号，白方着法写在左栏，黑方着法写在右栏，用 Nf3、exd5 这样的代数记谱法。按照 FIDE 规则，要先在棋盘上走完这一步，再把它记下来。我们的记谱单填写指南用一个完整示例讲了一遍。"
        },
        {
          "question": "如何把记谱单另存为 PDF 文件？",
          "answer": "点击“打印记谱纸”（或按 Ctrl+P / Cmd+P），把打印目标从打印机改为“另存为 PDF”即可。"
        },
        {
          "question": "该用什么纸张尺寸？",
          "answer": "在纸张设置里选择 A4（210 × 297 毫米）或 US Letter（8.5 × 11 英寸），两种都按标准页边距打印。"
        },
        {
          "question": "写好的记谱单怎么变成 PGN？",
          "answer": "给记谱单拍一张清晰、平整的照片，上传到 ScanChess。它会识别手写笔迹，把每一步着法在棋盘上重放一遍检查是否合法，下载 PGN 之前你还可以修改任何一步。"
        }
      ],
      "cta": {
        "title": "记谱单已经写好了？",
        "body": "省掉打字。ScanChess 读取手写着法，逐步按规则检查，给你一个可以回放、也可以导入 Lichess 的 PGN。",
        "button": "扫描记谱单"
      }
    },
    "game-analysis": {
      "name": "对局分析",
      "seoTitle": "免费国际象棋对局分析 – 浏览器里跑 Stockfish",
      "seoDescription": "粘贴 PGN，让 Stockfish 复盘整盘棋：双方准确率、每一个失误与严重失误、以及引擎更想走的着法。免费、免注册，棋谱不上传。",
      "kicker": "免费工具 · 无需登录",
      "h1": "免费国际象棋对局分析",
      "tagline": "粘贴一盘棋，不用登录就能拿到 Stockfish 对每一着的判断。",
      "intro": "加载 PGN 之后，Stockfish 直接在这个标签页里运行，而不是在服务器上。打开引擎、复盘整盘棋，着法列表里就会标出每一着的判断：双方各一个准确率，以及每一处失误、错误和严重失误的标记。点开任意局面还能看到引擎给出的变着，以及它本来想走的那一着。",
      "features": [
        {
          "title": "引擎跑在你自己的设备上",
          "body": "Stockfish 18 只下载一次，之后都在浏览器里搜索。棋谱不会被发送到任何地方，也不用排队，没有每日次数限制。"
        },
        {
          "title": "每一着都有判断",
          "body": "整盘复盘会逐个局面搜索，把实际走的着法和引擎想走的着法做对比，用胜率差而不是原始厘兵值来打分。"
        },
        {
          "title": "双方各一个准确率",
          "body": "每一方给出一个准确率数字，加上失误、错误、严重失误的计数，复盘时知道该从哪里看起。"
        },
        {
          "title": "变着可以走进去",
          "body": "引擎给的任何一条变着都能摆到棋盘上逐着推演，看完退出就回到原来的对局。"
        }
      ],
      "howToTitle": "怎么分析一盘棋",
      "howTo": [
        "把 PGN 粘贴进输入框，或者打开一个 .pgn 文件。想先看看效果，点一下就能载入示例对局。",
        "点“开始分析”。引擎大约七兆字节，只需下载一次，所以第一次会稍等片刻。",
        "点“复盘整盘棋”。搜索进度会沿着着法列表往下走。",
        "点任意一着，就能看到它的判断、引擎更想走的着法，以及从这个局面出发的变着。"
      ],
      "faq": [
        {
          "question": "真的免费吗，需要注册吗？",
          "answer": "真的免费，也不需要注册。引擎在你的浏览器里运行，没有什么可计费的，不消耗积分，也不限制每天能复盘多少盘棋。"
        },
        {
          "question": "用的是哪个引擎，分析强度怎么样？",
          "answer": "Stockfish 18 的单线程精简 WebAssembly 版本。整盘复盘对每个局面用固定的较浅深度搜索，好让一盘长棋在合理时间内跑完；单独停在某个局面时会搜得更深。如果是认真准备开局，桌面引擎给每一着几分钟时间，永远会看得更远。"
        },
        {
          "question": "我的棋谱会被上传吗？",
          "answer": "不会。PGN 在页面里解析，引擎用你自己的处理器搜索，这盘棋的任何信息都不会离开你的设备。"
        },
        {
          "question": "准确率是什么意思？",
          "answer": "每一着按它相对引擎选择放弃了多少胜率来打分，准确率是一方所有着法的平均值。它是个概括，不是等级分：一盘平稳、没什么抉择的棋，分数会比同样水平下出来的一盘尖锐的棋更高。"
        },
        {
          "question": "为什么第一次分析比较慢？",
          "answer": "WebAssembly 引擎要先下载完才能开始搜索。下载后会被缓存，之后再来就能立即开始。"
        },
        {
          "question": "纸上的棋谱怎么分析？",
          "answer": "先把记谱单拍照交给 ScanChess 扫描。它会识别手写笔迹、按规则校验每一着，生成的 PGN 可以直接粘贴到这里复盘。"
        }
      ],
      "cta": {
        "title": "想分析的那盘棋还在纸上",
        "body": "ScanChess 把拍下来的记谱单读成经过校验的 PGN，拿来就能复盘。新账号自带免费积分。",
        "button": "去扫描记谱单"
      }
    },
    "rating-calculator": {
      "name": "FIDE 等级分计算器",
      "seoTitle": "FIDE 等级分计算器 – 等级分变化与等级分表现",
      "seoDescription": "输入你的等级分和对手等级分，算出 FIDE 会公布的变化。依据官方 8.1.2 概率表、K 值规则，以及 2025 年起 2650 分以上不再按 400 分封顶的修订。",
      "kicker": "免费工具 · 无需登录",
      "h1": "FIDE 等级分计算器",
      "tagline": "你的等级分、对手的等级分，以及等级分表上真正会出现的变化。",
      "intro": "填入你公布的等级分，每盘棋加一行，写上对手等级分和结果，计算器就会照 FIDE 等级分规则一步步算：每盘的期望得分取自 8.1.2 表，发展系数按 8.3.3 条的规则确定，总数按 8.3.4 条的方式取整。同时还会给出这次比赛的等级分表现。",
      "features": [
        {
          "title": "用官方的表，不是公式",
          "body": "FIDE 把分差换算成期望得分用的是一张查找表，每一档保留两位小数。改用逻辑斯蒂曲线的计算器，在一场长赛事里会差出一分甚至更多。"
        },
        {
          "title": "2650 这条规则",
          "body": "2025 年 10 月 1 日起，分差 400 封顶只对 2650 分以下的棋手适用。2650 及以上按实际分差算，这直接改变了和低分对手战平要付出的代价。"
        },
        {
          "title": "K 值的每一种情形",
          "body": "前三十盘定级期内 K 取 40，2300 分以下的青少年取 40，等级分达到过 2400 之后取 10，其余取 20，还有 K 乘盘数不超过 700 的上限。"
        },
        {
          "title": "顺带算等级分表现",
          "body": "对手平均分加上你这个得分率对应的分差，取自 8.1.1 表，也就是比赛成绩单上印的那个数字。"
        }
      ],
      "howToTitle": "怎么算自己的等级分变化",
      "howTo": [
        "填入你当前公布的等级分。如果还在前三十盘的定级期内，或者你是青少年棋手，勾上对应的选项。",
        "每盘棋加一行：对手的等级分，以及你是胜、和还是负。",
        "每行右侧是这盘的期望得分，括号里是封顶之后实际参与计算的分差。",
        "右侧面板给出新的等级分、变化值，以及这次比赛的等级分表现。"
      ],
      "faq": [
        {
          "question": "FIDE 是怎么算等级分变化的？",
          "answer": "每盘棋先取分差，从 8.1.2 表查出期望得分，用实际得分减去它。把整场比赛的这些差值加起来，再乘以你的发展系数 K。结果取整到整数，正好 0.5 时向远离零的方向进位。"
        },
        {
          "question": "我该用哪个 K 值？",
          "answer": "在完成前 30 盘等级分对局之前 K 取 40；棋手在满 18 岁那一年年底之前，只要等级分低于 2300，也取 40。公布等级分达到过 2400 之后取 10，之后即使掉下来也保持 10。其余情况取 20。"
        },
        {
          "question": "为什么分差要按 400 封顶？",
          "answer": "为了避免一盘对阵实力悬殊对手的结果把等级分推得太远。2025 年 10 月 1 日起，这个封顶只对 2650 分以下的棋手适用，2650 及以上一律按真实分差计算。"
        },
        {
          "question": "快棋和超快棋的等级分也能这样算吗？",
          "answer": "可以。快棋和超快棋规则用的是同一张概率表和同一套 K 值规则，算法完全一致。不同的只是哪些比赛计入哪个等级分表。"
        },
        {
          "question": "这是 FIDE 官方工具吗？",
          "answer": "不是。它按公开的 FIDE 等级分规则实现，但以等级分表本身为准。你所在的国家协会也可能按不同规则把同一场比赛计入国内等级分。"
        },
        {
          "question": "对手的等级分从哪里查？",
          "answer": "编排表或比赛公布的参赛名单上就有，而且计算用的正是这个等级分，不是等到等级分表公布时对手的分数。"
        }
      ],
      "cta": {
        "title": "那场比赛的记谱单还在包里",
        "body": "ScanChess 把拍下来的记谱单读成经过校验的 PGN，这样等级分变化背后的对局是可以检索的，而不是压在抽屉里。",
        "button": "去扫描记谱单"
      }
    },
    "fen-to-image": {
      "name": "FEN 转棋盘图",
      "seoTitle": "FEN 转棋盘图 – 免费国际象棋局面图生成器（PNG、SVG）",
      "seoDescription": "把任意 FEN 变成棋盘图片。可选尺寸、格子配色和棋盘朝向，导出 PNG 或矢量 SVG。免费、免注册，不上传任何内容。",
      "kicker": "免费工具 · 无需登录",
      "h1": "FEN 转棋盘图",
      "tagline": "粘贴一个 FEN，导出可下载的棋盘局面图，PNG 或 SVG 都行。",
      "intro": "粘贴 FEN，局面会被画成一张可以下载的棋盘图。尺寸最大 1600 像素，可以换格子配色、把棋盘转过来，或者去掉坐标；发帖用 PNG，需要放大或印刷就用 SVG。棋盘是用页面里的矢量棋子画出来的，文件里没有任何外部图片，生成过程也不上传任何东西。",
      "features": [
        {
          "title": "PNG 或矢量 SVG",
          "body": "要图片的地方用 PNG；印刷、幻灯片，以及之后还要改尺寸的场合用 SVG。"
        },
        {
          "title": "最大 1600 像素",
          "body": "小到够发论坛帖，大到够印在纸上或做成课堂讲义。"
        },
        {
          "title": "五种棋盘配色",
          "body": "经典棕、比赛绿、蓝、胡桃木和石板灰，坐标可以关掉。"
        },
        {
          "title": "任意局面，不限于合法局面",
          "body": "没有王的排局片段、只占半边棋盘的谜题，都能照样画出来。只需要 FEN 的棋子位置那一段。"
        }
      ],
      "howToTitle": "怎么把 FEN 变成图片",
      "howTo": [
        "把 FEN 粘贴进输入框。画图只用到第一段，也就是棋子位置。",
        "选好尺寸、棋盘配色，以及哪一方在下方。",
        "下载 PNG；如果这张图要印刷或放大，就取 SVG。",
        "想先改改局面？打开棋盘编辑器拖动棋子，改完再回来。"
      ],
      "faq": [
        {
          "question": "FEN 是什么？",
          "answer": "FEN 是一行文本，用来描述一个国际象棋局面：棋子的位置、轮到谁走、王车易位权、吃过路兵的目标格，以及两个步数计数器。PGN 传递整盘棋，FEN 传递单个局面。"
        },
        {
          "question": "该下载 PNG 还是 SVG？",
          "answer": "发帖、聊天或者放进文档里就用 PNG。要印刷、投影，或者之后还会放大，就用 SVG，矢量图放到多大都清晰。"
        },
        {
          "question": "图片会被上传吗？会加水印吗？",
          "answer": "都不会。棋盘在你的浏览器里绘制，文件写在你的设备上，没有水印，也不要求署名。"
        },
        {
          "question": "这些局面图能用在书或课程里吗？",
          "answer": "可以。棋子来自我们自己的矢量图，导出的图片没有使用限制，放进讲义、文章和印刷品都没问题。"
        },
        {
          "question": "怎么从棋盘照片得到 FEN？",
          "answer": "把局面拍下来交给 ScanChess 的棋盘识别，它会给出 FEN，粘贴到这里就能生成一张干净的局面图。"
        }
      ],
      "cta": {
        "title": "局面就摆在你面前的真棋盘上",
        "body": "拍一张照片，ScanChess 会把局面读成 FEN。识别一个棋盘消耗 1 积分。",
        "button": "去识别棋盘"
      }
    },
    "pgn-to-gif": {
      "name": "棋谱转 GIF",
      "seoTitle": "PGN 转 GIF – 免费国际象棋动态棋谱生成器",
      "seoDescription": "粘贴 PGN，把整盘棋导出成动态 GIF。可选尺寸、速度、棋盘配色和着法区间。免费、免注册，在你的浏览器里编码。",
      "kicker": "免费工具 · 无需登录",
      "h1": "国际象棋 GIF 生成器",
      "tagline": "把 PGN 变成一张能到处发的动态 GIF。",
      "intro": "载入一盘棋，工具会把每个局面画出来，编码成动态 GIF 交给你。可以选尺寸和速度、换棋盘配色、高亮每一着经过的格子，也可以只截取值得展示的那一段。画帧和编码都在这个页面里完成，一盘棋不用离开你的设备就能变成图片。",
      "features": [
        {
          "title": "在浏览器里编码",
          "body": "不上传、不排队、没有水印。GIF 从第一帧到最后一帧都写在你的设备上。"
        },
        {
          "title": "只要那几着",
          "body": "设定起止着法，只把杀法那一段做成动画，而不是八十个回合的调整没人看得下去。"
        },
        {
          "title": "三种尺寸、三档速度",
          "body": "边长 240、320 或 480 像素，每着大约半秒到一秒半，首尾帧多停一会儿，循环起来才看得清。"
        },
        {
          "title": "着法一眼就跟得上",
          "body": "棋子离开和落下的格子会被着色，视线不用去找哪里变了。"
        }
      ],
      "howToTitle": "怎么做一张国际象棋 GIF",
      "howTo": [
        "粘贴 PGN，或者打开 .pgn 文件。点一下就能载入示例对局。",
        "只想要一部分就先截取着法区间，然后挑尺寸、速度和棋盘配色。",
        "点“生成”。进度条会随着画帧往前走。",
        "看一眼预览，点“下载”保存 GIF。"
      ],
      "faq": [
        {
          "question": "文件大概多大？",
          "answer": "二十着的片段在 320 像素下通常是几百 KB；整盘棋在 480 像素下可能有好几 MB。想把 GIF 压到能发出去，最快的办法是截短区间再降一档尺寸。"
        },
        {
          "question": "为什么限制着法数量？",
          "answer": "超过两百来帧，GIF 就失去了分享的意义：体积超出多数网站的上限，也没人会看到最后。所以工具会把区间截断，而不是拒绝这盘棋。"
        },
        {
          "question": "生成 GIF 会上传我的棋谱吗？",
          "answer": "不会。棋盘绘制和 GIF 编码都在你的浏览器里完成，这也是为什么它需要在你的设备上跑一会儿，而不是瞬间完成。"
        },
        {
          "question": "GIF 可以商用吗？",
          "answer": "可以。棋子是我们自己的矢量图，没有水印，输出也没有任何使用限制。"
        },
        {
          "question": "面对面下的棋能做成 GIF 吗？",
          "answer": "先用 ScanChess 扫描记谱单。棋谱变成 PGN 之后，粘贴到这里，想展示哪一段就做哪一段。"
        }
      ],
      "cta": {
        "title": "值得做成动画的那盘棋写在记谱单上",
        "body": "ScanChess 几秒钟就能把拍下来的记谱单读成 PGN，而这个工具要的正是 PGN。",
        "button": "去扫描记谱单"
      }
    },
    "pgn-to-pdf": {
      "name": "PGN 转打印棋谱",
      "seoTitle": "PGN 转 PDF – 打印带局面图的国际象棋棋谱",
      "seoDescription": "粘贴 PGN，把对局排成适合纸张的版式：两栏或三栏着法、按需插入局面图、A4 或 Letter。在打印窗口里选“另存为 PDF”即可。免费、免注册。",
      "kicker": "免费工具 · 无需登录",
      "h1": "PGN 转打印棋谱",
      "tagline": "把一盘棋排成带局面图的纸质棋谱，另存为 PDF。",
      "intro": "粘贴 PGN，对局会被排成一份印刷体的棋谱：顶部是棋手和赛事信息，着法分栏排列，并在你指定的位置插入局面图。可以直接打印，也可以在打印窗口里选“另存为 PDF”保存文件。因为走的是浏览器自己的打印通道，着法仍然是可选中的文字、局面图仍然是矢量图，所以 PDF 放到多大都清晰，体积也小到可以直接发邮件。",
      "features": [
        {
          "title": "是棋谱，不是截图",
          "body": "着法是文字，局面图是矢量绘制，打印干净，而且可以检索和复制。"
        },
        {
          "title": "局面图插在你想要的位置",
          "body": "只放终局、每十回合一张、每二十回合一张，或者一张都不放。每张图都会给这一着经过的格子上色。"
        },
        {
          "title": "A4 或 Letter",
          "body": "两种纸张都做了排版，页边距保证家用打印机不会把栏切掉。"
        },
        {
          "title": "两栏或三栏",
          "body": "两栏留出手写批注的空间，三栏能把一盘长棋压进一张纸。"
        }
      ],
      "howToTitle": "怎么把一盘棋存成 PDF",
      "howTo": [
        "粘贴 PGN，或者打开 .pgn 文件。",
        "选两栏还是三栏、局面图放在哪里，以及纸张尺寸。",
        "点“打印”。在弹出的窗口里，把目标打印机改成“另存为 PDF”。",
        "页面上除棋谱本身以外的部分都不会进入打印，文件直接从棋谱开始。"
      ],
      "faq": [
        {
          "question": "下载按钮在哪里？",
          "answer": "没有单独的下载按钮，打印窗口就是下载。把目标改成“另存为 PDF”，再选保存位置即可。这样生成的文件比在页面里合成 PDF 更小也更清晰。"
        },
        {
          "question": "PDF 里的着法能选中吗？",
          "answer": "能。棋谱是真正的文字，可以检索、复制，也能被屏幕阅读器读出来。截图做成的 PDF 这些都做不到。"
        },
        {
          "question": "能一次打印好几盘棋吗？",
          "answer": "一张纸一盘棋。如果 PGN 里有多盘，输入框上方会出现选择器，切换之后逐盘打印即可。"
        },
        {
          "question": "会打印 PGN 里的注释和变着吗？",
          "answer": "不会。这个版式排的是棋谱本身：实际走出的着法，加上标签和结果。注释、变着和评注符号都被略去，好让纸面保持易读。"
        },
        {
          "question": "我想打印的是空白记谱单，怎么办？",
          "answer": "用可打印记谱单工具，那里有适配不同时限的版式，也留好了赛事、轮次和棋手姓名的位置。"
        }
      ],
      "cta": {
        "title": "反过来，从纸到 PGN",
        "body": "ScanChess 把拍下来的记谱单读成经过校验的 PGN。新账号自带免费积分，不需要绑卡。",
        "button": "去扫描记谱单"
      }
    }
  },
  "experience": {
    "startWithImage": "从你手中的图片开始",
    "heroTitle": "把图片里的棋，带进分析与复盘。",
    "heroLead": "棋盘图片变成可分析的局面，手写棋谱变成可回放的对局。核对结果后，就可以继续使用。",
    "boardTitle": "棋盘图片，变成可编辑的局面",
    "boardLead": "粘贴或上传一张清晰截图、二维棋图或俯拍棋盘照片，生成可编辑 FEN。倾斜照片和实体立体棋子可能需要修正；请始终核对棋子与行棋方。",
    "sheetTitle": "手写棋谱，变成可回放的 PGN",
    "sheetLead": "按顺序上传同一盘棋的多页记录纸，对照原稿核对走法，再导出 PGN。多盘独立对局请使用批量扫描。",
    "samples": "没有图片？先体验一个样例。",
    "sampleHint": "预加载示例，无需登录，不调用识别、不扣积分。可以直接体验结果和编辑操作。",
    "sample_board": "棋盘照片 → 可编辑局面",
    "sample_scoresheet": "手写记录纸 → 前 8 回合",
    "sample_review": "练习核对一处标记走法",
    "sampleNotice": "这是预加载示例或校对练习，没有执行实时扫描。记录纸示例只展示原稿前 8 回合；练习中的标记用于教学，不代表实际 OCR 测量。",
    "importNotice": "这是直接导入的棋谱，没有执行图片识别。使用前请核对内容。",
    "checkPosition": "规则检查通过，不代表与原稿完全一致。请对照图片核对，并修正不一致的地方。",
    "newTask": "新建扫描",
    "continueTask": "继续刚才的任务",
    "replaceTitle": "保留当前任务吗？",
    "replaceHint": "当前图片或结果仍然保留。你可以继续处理，也可以替换它们并开始新任务；需要保留的结果请先导出。",
    "replace": "替换并开始",
    "keep": "继续当前任务",
    "reviewTitle": "核对这盘棋的走法",
    "reviewNext": "检查下一处",
    "reviewRemaining": "还有 {{count}} 处需要核对",
    "sourceImage": "原始图片",
    "zoom": "缩放",
    "extras": "对局信息、注释与分享",
    "editPosition": "校正棋子与局面",
    "applyPosition": "使用这个局面",
    "turnHint": "轮到哪方行棋？棋盘朝向不能说明这一点。王车易位等历史状态也可能需要在局面编辑器中修正。",
    "confirmPosition": "我已核对这个局面",
    "reviewed": "你已核对",
    "unreviewed": "你尚未核对，仍可复制这份 FEN。",
    "outputTitle": "一个局面，或一整盘对局。",
    "boardCost": "真实图片识别需登录，每个棋盘 1 积分；新账户赠送 10 积分。",
    "sheetCost": "真实图片识别需登录，每次记录纸扫描 2 积分，可包含同一盘棋的多页。",
    "lowBalance": "剩余 {{balance}} 积分，当前模式还能识别 {{count}} 次。",
    "boardWaiting": "正在识别棋子位置与棋盘朝向。结果返回后，可以核对并修正局面。",
    "freeAllowance": "注册赠送 10 积分，最多识别 10 个棋盘或扫描 5 次记录纸，无需绑卡。",
    "pricingUsage": "积分可混合使用：100 积分可识别 100 个棋盘，或扫描 50 次记录纸。编辑、回放、PGN 导出和对局历史仍然免费。",
    "selectedPlan": "已保留所选方案：{{plan}}。请核对下方价格后继续。",
    "group_read": "阅读与分析",
    "group_create": "整理与导出",
    "group_compete": "比赛准备与整理",
    "toolsTitle": "已经有 PGN 或 FEN？",
    "toolsLead": "直接回放、校验、分析，或准备要分享的棋谱素材。这些工具在浏览器中运行，无需账户。",
    "tournamentTitle": "需要整理整轮比赛？",
    "tournamentLead": "按对局归组照片，补充对阵表，核对后按轮次导出 PGN。单盘扫描与多盘赛事各有适合的流程。",
    "faqBoard": "适合上传什么样的棋盘图片？",
    "faqBoardComparison": "与 FENShot 或 Chessify 相比有什么不同？",
    "boardComparison": "它们都解决图片转 FEN，但侧重点不同。FENShot 主打免费的本地截图识别，Chessify 在其服务中提供棋盘扫描；ScanChess 支持截图、二维棋图和清晰照片，并把修正流程放在结果旁边，但识别需要登录并消耗 1 个积分。无论使用哪个工具，分析前都应核对结果。",
    "faqSheet": "同一盘棋可以上传多页吗？",
    "faqCorrection": "识别结果可以修改吗？",
    "faqExample": "体验样例会扣积分吗？",
    "correctionHelp": "打开被标记的走法，或进入局面编辑器修正结果。编辑不消耗积分。",
    "analysisHint": "可以拖动棋子，或依次点选棋子与目标格试走。试走不会修改原始局面。",
    "resetAnalysis": "回到原始局面",
    "partialTitle": "还有走法需要修正",
    "partialHint": "整盘棋尚不能完整回放。可以先导出能够回放的开头部分，结果标记为未完赛。原始走法会保留，供你继续核对。",
    "partialConfirm": "导出可回放部分"
  },
  "refinement": {
    "preparing": "正在准备图片…",
    "boardInputHint": "截图、棋图或照片",
    "sheetInputHint": "同一盘棋，可含多页",
    "fileGuide": "JPG、PNG、WebP · 单张不超过 15 MB",
    "playablePosition": "可编辑的局面",
    "tryResult": "点开这个局面试一试",
    "sampleHint": "样例免费体验，无需登录或积分。",
    "useOwnImage": "用自己的图片",
    "portable": "把结果带到你常用的国际象棋工具中。",
    "position": "局面",
    "correct": "校正",
    "needTurn": "分析前请选择行棋方，当前 FEN 按{{side}}行棋。",
    "reviewHint": "核对棋子或标记的走法，修正不消耗积分。",
    "analyse": "分析局面",
    "notChecked": "你尚未核对",
    "moreOptions": "更多操作",
    "stepImage": "图片",
    "stepReview": "核对",
    "stepUse": "使用",
    "boardReview": "核对棋盘局面",
    "sample": "示例",
    "imported": "已导入",
    "unsaved": "尚未保存修改",
    "saved": "已保存",
    "reviewPending": "待核对",
    "boardSampleHint": "可以直接体验编辑与分析。",
    "sheetSampleHint": "前 8 回合示例，标记项用于校对练习。",
    "next": "下一处",
    "save": "保存",
    "export": "导出",
    "guideLead": "按手中的材料选择流程，完成上传、核对和导出。",
    "exportHint": "核对后下载或复制 PGN；仍有非法走法时，可自主选择仅导出能回放的开头部分。"
  },
  "scanFlow": {
    "signInToScan_one": "登录并识别 · {{cost}} 积分",
    "pagesReady_one": "已添加 {{count}} 页，请按同一盘棋的记录顺序排列。",
    "replaceImage": "更换图片",
    "addPages": "继续添加棋谱页",
    "boardReady": "图片已就绪，确认无误后即可开始识别。",
    "pagesReady": "已添加 {{count}} 页，请按同一盘棋的记录顺序排列。",
    "signInToScan": "登录并识别 · {{cost}} 积分",
    "readyLead": "确认图片后即可开始识别。选错了图片类型？直接切换，无需重新上传。"
  }
}
