{
  "common": {
    "you": "你",
    "confirm": "确定",
    "cancel": "取消",
    "loading": "加载中...",
    "errorPrefix": "错误：",
    "loadingClassroom": "正在加载课堂...",
    "retry": "重试",
    "close": "关闭"
  },
  "home": {
    "slogan": "Generative Learning in Multi-Agent Interactive Classroom",
    "greetingWithName": "嗨，{{name}}"
  },
  "toolbar": {
    "pdfParser": "解析器",
    "pdfUpload": "上传 PDF",
    "removePdf": "移除文件",
    "documentExtractor": "文档解析器",
    "courseMaterialUpload": "上传课程材料",
    "courseMaterialsSelected": "已选择 {{n}} 个材料",
    "courseMaterialMergeOrder": "材料会按下方显示顺序合并。",
    "removeCourseMaterial": "移除文件",
    "webSearchOn": "已开启",
    "webSearchOff": "点击开启",
    "webSearchDesc": "生成前搜索网络获取最新资料，让内容更丰富准确",
    "webSearchProvider": "搜索引擎",
    "webSearchNoProvider": "请在设置中配置搜索引擎 API Key",
    "selectProvider": "选择模型服务商",
    "configureProvider": "配置模型",
    "configureProviderHint": "请先配置至少一个模型服务商才能生成课程",
    "enterClassroom": "进入课堂",
    "advancedSettings": "高级设置",
    "thinking": "思考",
    "thinkingBudget": "预算",
    "default": "默认",
    "on": "开启",
    "off": "关闭",
    "auto": "自动",
    "dynamic": "动态",
    "ttsTitle": "语音合成",
    "ttsHint": "选择 AI 教师的朗读音色",
    "ttsPreview": "试听",
    "ttsPreviewing": "播放中...",
    "interactiveModeHint": "开启深度交互模式，生成更多互动内容",
    "interactiveModeLabel": "深度交互"
  },
  "export": {
    "pptx": "导出 PPTX",
    "resourcePack": "导出教学资源包",
    "resourcePackDesc": "PPTX + 交互式页面",
    "exporting": "正在导出...",
    "exportSuccess": "导出成功",
    "exportFailed": "导出失败",
    "classroomZip": "导出课堂 ZIP",
    "classroomZipDesc": "课程结构 + 媒体文件",
    "scriptMd": "下载演讲稿 (.md)",
    "scriptMdDesc": "以 Markdown 导出语音播报文字",
    "script": "下载演讲稿",
    "scriptDocx": "下载演讲稿 (.docx)",
    "scriptDocxDesc": "真正的 Word DOCX 文档",
    "slideFallback": "幻灯片 {{order}}",
    "textOnly": "导出演讲稿",
    "mediaPending": "等待媒体生成完成",
    "inlinePartial": "{{count}} 个外部资源未能打包，离线时课程可能无法正常显示。",
    "video": "导出视频",
    "videoDesc": "自包含 Hyperframes 工程（可渲染为 MP4）",
    "videoNoScenes": "没有可导出的场景。",
    "videoCompiling": "正在编译视频时间线...",
    "videoRendering": "正在渲染幻灯片并收集素材...",
    "videoPackaging": "正在打包视频工程...",
    "videoSuccess": "视频工程已导出",
    "videoFailed": "视频导出失败",
    "videoWarnings": "有 {{assets}} 个素材缺失，导出报告中有 {{diagnostics}} 个问题。",
    "videoMp4Success": "视频已渲染",
    "videoServiceUnavailable": "未配置渲染服务 —— 已下载项目 ZIP 供本地渲染。",
    "videoResolution": "分辨率",
    "videoFps": "帧率",
    "videoQuality": "质量",
    "videoQuality_draft": "草稿",
    "videoQuality_standard": "标准",
    "videoQuality_high": "高",
    "videoProgress": "{{percent}}%",
    "videoProgressWithEta": "{{percent}}% · 预计剩余 {{remaining}}",
    "videoEtaMinSec": "{{min}} 分 {{sec}} 秒",
    "videoEtaSec": "{{sec}} 秒",
    "videoRenderMp4": "渲染 MP4",
    "videoDownloadZip": "下载项目 ZIP",
    "videoServiceHint": "渲染 MP4 需要渲染服务。可下载 ZIP 在本地渲染。",
    "videoBurnSubtitles": "烧录字幕",
    "videoBurnSubtitlesDesc": "关闭时导出无字幕的干净视频，可在剪辑软件中自行添加字幕文件。",
    "videoQuizCtaPrompt": "想亲自体验互动测验？",
    "videoPblCtaPrompt": "想亲自参与项目学习？",
    "videoCtaVisit": "访问",
    "videoDownloadSubtitles": "下载字幕 (.srt)",
    "subtitlesCompiling": "正在生成字幕…",
    "subtitlesSuccess": "字幕已下载",
    "subtitlesEmpty": "没有可生成字幕的旁白",
    "subtitlesFailed": "字幕下载失败",
    "noSlides": "无可导出的幻灯片",
    "noSlidesSkipped": "本课程无幻灯片，已跳过 PPTX",
    "nothingToExport": "没有可导出的内容"
  },
  "import": {
    "classroom": "导入课堂",
    "pptx": "导入 PPTX",
    "parsing": "正在解析 ZIP...",
    "parsingPptx": "正在解析 PPTX...",
    "validating": "正在验证数据...",
    "writingMedia": "正在写入媒体文件...",
    "writingCourse": "正在写入课程数据...",
    "success": "课堂导入成功",
    "pptxSuccess": "PPTX 解析成功（共 {{count}} 页，输出已打印到控制台）",
    "error": {
      "invalidZip": "无效文件，请选择有效的 .maic.zip 文件。",
      "invalidPptx": "PPTX 解析失败，请检查文件是否有效。",
      "parserUnavailable": "PPTX 导入不可用：解析器未部署。请重新执行安装/同步步骤。",
      "invalidManifest": "无效课堂文件：manifest.json 缺失或已损坏。",
      "missingData": "无效课堂文件：缺少必需的课程数据。",
      "storageFull": "导入失败：浏览器存储空间已满，请清理旧课堂后重试。"
    }
  },
  "chat": {
    "lecture": "授课",
    "noConversations": "暂无对话",
    "startConversation": "输入消息开始对话",
    "noMessages": "暂无消息",
    "ended": "已结束",
    "unknown": "未知",
    "stopDiscussion": "结束讨论",
    "endQA": "结束问答",
    "softClosing": "继续讨论",
    "error": {
      "emptyAgentResponses": "智能体连续无响应,讨论已停止。请重新尝试或检查模型配置。",
      "streamInterrupted": "数据流意外中断,讨论未能完成。请重新尝试。"
    },
    "elementReference": {
      "button": "引用课件",
      "unavailable": "仅可引用当前 PPT 页面",
      "instruction": "点击一个课件元素 · Esc 退出",
      "fallback": "其他课件元素（{{count}}）",
      "clear": "取消课件引用",
      "summary": {
        "noText": "无文字",
        "emptyContent": "无内容",
        "code": "代码",
        "line": "线条",
        "imageMetadata": "图片（仅引用元数据）",
        "videoMetadata": "视频（仅引用元数据）",
        "audioMetadata": "音频（仅引用元数据）"
      }
    },
    "tabs": {
      "lecture": "笔记",
      "chat": "对话"
    },
    "lectureNotes": {
      "empty": "播放课程后，笔记将在此显示",
      "emptyHint": "点击播放按钮开始授课",
      "pageLabel": "第 {{n}} 页",
      "currentPage": "当前页",
      "jumpToLine": "Jump to this line",
      "jumpUnavailable": "Jump unavailable for this line"
    },
    "badge": {
      "qa": "Q&A",
      "discussion": "讨论",
      "lecture": "授课"
    }
  },
  "actions": {
    "names": {
      "spotlight": "聚光灯",
      "laser": "激光笔",
      "wb_open": "打开白板",
      "wb_draw_text": "白板文本",
      "wb_draw_shape": "白板形状",
      "wb_draw_chart": "白板图表",
      "wb_draw_latex": "白板公式",
      "wb_draw_table": "白板表格",
      "wb_draw_line": "白板线条",
      "wb_clear": "清空白板",
      "wb_delete": "删除元素",
      "wb_close": "关闭白板",
      "discussion": "课堂讨论"
    },
    "status": {
      "inputStreaming": "等待中",
      "inputAvailable": "执行中",
      "outputAvailable": "已完成",
      "outputError": "错误",
      "outputDenied": "已拒绝",
      "running": "执行中",
      "result": "已完成",
      "error": "错误"
    }
  },
  "agentBar": {
    "readyToLearn": "准备好一起学习了吗？",
    "expandedTitle": "课堂角色配置",
    "configTooltip": "点击配置课堂角色",
    "voiceLabel": "音色",
    "voiceLoading": "加载中...",
    "voiceAutoAssign": "音色将自动分配",
    "searchVoice": "搜索音色",
    "noMatchingVoices": "没有匹配音色",
    "noVoice": "无可用音色"
  },
  "proactiveCard": {
    "discussion": "讨论",
    "join": "加入讨论",
    "skip": "跳过",
    "pause": "暂停",
    "resume": "继续"
  },
  "voice": {
    "startListening": "语音输入",
    "stopListening": "停止录音"
  },
  "stage": {
    "currentScene": "当前场景",
    "generating": "生成中...",
    "paused": "已暂停",
    "generationFailed": "生成失败",
    "confirmSwitchTitle": "切换页面",
    "confirmSwitchMessage": "当前话题正在进行中，切换页面将结束当前话题。确定要切换吗？",
    "generatingNextPage": "场景正在生成，请稍候...",
    "courseComplete": "课程完成",
    "fullscreen": "全屏",
    "exitFullscreen": "退出全屏",
    "editCourse": "编辑课程",
    "doneEditing": "完成编辑",
    "proModeDisabledHint": "本页不支持编辑——打开任意课程页即可使用 Pro 模式编辑。"
  },
  "edit": {
    "proMode": "专业模式",
    "undo": "撤销",
    "redo": "重做",
    "delete": "删除",
    "title": "编辑 · {{type}}",
    "unsupportedScene": "{{type}}暂不支持编辑",
    "readOnlyBadge": "{{type}} · 仅查看",
    "sceneType": {
      "slide": "幻灯片",
      "quiz": "测验",
      "interactive": "互动",
      "pbl": "PBL"
    },
    "text": {
      "toolbar": "文本工具栏",
      "label": "文本",
      "font": "字体",
      "fontDefault": "默认",
      "sizeUp": "增大字号",
      "sizeDown": "减小字号",
      "fontSize": "字号",
      "bold": "加粗",
      "italic": "斜体",
      "underline": "下划线",
      "color": "文字颜色",
      "alignLeft": "左对齐",
      "alignCenter": "居中对齐",
      "alignRight": "右对齐",
      "bullet": "项目符号",
      "colorHex": "颜色值"
    },
    "line": {
      "toolbar": "线条工具栏",
      "kind": "线条类型",
      "color": "线条颜色",
      "width": "线宽",
      "style": "线条样式",
      "start": "起点样式",
      "end": "终点样式",
      "straight": "直线",
      "broken": "折线",
      "broken2": "双折线",
      "curve": "曲线",
      "cubic": "三次曲线",
      "solid": "实线",
      "dashed": "虚线",
      "dotted": "点线",
      "none": "无",
      "arrow": "箭头",
      "dot": "圆点"
    },
    "insert": {
      "toolbar": "插入工具栏",
      "textBox": "文本框",
      "line": "线条",
      "linePresets": {
        "straight": "直线",
        "dashed": "虚线",
        "arrow": "箭头直线",
        "dashedArrow": "虚线箭头",
        "dottedEnd": "圆点终点线",
        "broken": "折线",
        "doubleBroken": "双折线",
        "curve": "曲线",
        "cubic": "三次曲线"
      },
      "table": "表格",
      "formula": "公式",
      "chart": "图表",
      "chartBar": "柱状图",
      "chartLine": "折线图",
      "chartPie": "饼图",
      "tableDimensions": "{{rows}} x {{columns}} 表格",
      "dragToolbar": "拖动工具栏",
      "dragToolbarKeyboard": "移动工具栏：按回车或空格开始，再使用方向键移动",
      "collapseToolbar": "收起插入工具",
      "expandToolbar": "展开插入工具",
      "image": "图片",
      "imageDrop": "拖入图片或点击选择文件",
      "imageOr": "或粘贴图片 URL",
      "imageUrlPlaceholder": "https://…",
      "imageInsert": "插入",
      "video": "视频",
      "videoDrop": "拖入视频或点击选择文件",
      "videoOr": "或粘贴视频 URL",
      "videoUrlPlaceholder": "https://…",
      "videoInsert": "插入",
      "audio": "音频",
      "audioDrop": "拖入音频或点击选择文件",
      "audioOr": "或粘贴音频 URL",
      "audioUrlPlaceholder": "https://…",
      "audioInsert": "插入"
    },
    "asset": {
      "drop": "拖入文件或点击选择",
      "orUrl": "或粘贴文件 URL",
      "urlPlaceholder": "https://…",
      "insert": "插入",
      "invalidType": "文件类型不受支持",
      "readFailed": "无法读取文件"
    },
    "latex": {
      "toolbar": "公式工具栏",
      "editFormula": "编辑公式",
      "dialog": "公式编辑器",
      "source": "LaTeX 源码",
      "preview": "预览",
      "symbols": "常用符号",
      "presets": "预置公式",
      "invalidSource": "LaTeX 源码无效。"
    },
    "video": {
      "toolbar": "视频工具栏",
      "poster": "设置封面"
    },
    "audio": {
      "toolbar": "音频工具栏",
      "preview": "试听音频",
      "pause": "暂停试听",
      "loop": "循环播放"
    },
    "table": {
      "doubleClickToEdit": "双击编辑"
    },
    "nav": {
      "addSlide": "新增幻灯片",
      "duplicate": "复制",
      "delete": "删除",
      "deleted": "已删除",
      "undo": "撤销",
      "copySuffix": "（副本）",
      "untitledSlide": "未命名幻灯片",
      "collapse": "收起",
      "expand": "展开",
      "dragHandle": "拖动",
      "deckLabel": "场景",
      "moreActions": "更多操作",
      "rename": "重命名",
      "sceneIncomplete": "本页内容不完整",
      "addPage": "新增页面",
      "nextPage": "下一页",
      "prevPage": "上一页"
    },
    "zorder": {
      "toFront": "置于顶层",
      "toBack": "置于底层"
    },
    "image": {
      "toolbar": "图片工具栏",
      "replace": "替换图片",
      "flipH": "水平翻转",
      "flipV": "垂直翻转",
      "crop": "裁剪图片"
    },
    "contextMenu": {
      "horizontalAlignment": "水平对齐",
      "verticalAlignment": "垂直对齐",
      "selectAll": "全选",
      "copy": "复制",
      "cut": "剪切",
      "paste": "粘贴",
      "unlock": "解锁",
      "lock": "锁定",
      "group": "组合",
      "ungroup": "取消组合",
      "bringForward": "上移一层",
      "sendBackward": "下移一层",
      "alignTop": "顶部对齐",
      "alignMiddle": "垂直居中",
      "alignBottom": "底部对齐"
    },
    "background": {
      "label": "背景",
      "solid": "纯色",
      "image": "图片",
      "color": "颜色"
    },
    "common": {
      "cancel": "取消",
      "confirm": "确定"
    },
    "quiz": {
      "addQuestion": "添加题目",
      "reorder": "拖动排序",
      "deleteQuestion": "删除题目",
      "untitledQuestion": "未命名题目",
      "questionLabel": "题干",
      "questionPlaceholder": "输入题目…",
      "typeLabel": "类型",
      "pointsLabel": "分值",
      "optionsLabel": "选项",
      "optionPlaceholder": "选项内容",
      "addOption": "添加选项",
      "deleteOption": "删除选项",
      "markCorrect": "标记为正确答案",
      "moveUp": "上移",
      "moveDown": "下移",
      "analysisLabel": "解析",
      "analysisPlaceholder": "评分后显示…",
      "commentPromptLabel": "评分指引",
      "commentPromptPlaceholder": "应如何评判这道主观题？",
      "empty": "暂无题目",
      "emptyHint": "点击“添加题目”创建第一道题。",
      "type": {
        "single": "单选",
        "multiple": "多选",
        "short_answer": "简答"
      },
      "shortAnswerGradingNote": "简答题由 AI 依据下方评分指引自动打分。",
      "hint": {
        "emptyText": "第 {{n}} 题：请填写题干",
        "fewOptions": "第 {{n}} 题：至少需要两个选项",
        "emptyOption": "第 {{n}} 题：有选项内容为空",
        "noCorrect": "第 {{n}} 题：请标记正确答案"
      }
    },
    "cue": {
      "speech": "讲解",
      "spotlight": "聚光",
      "laser": "激光",
      "whiteboardOpen": "画板",
      "whiteboardText": "板书",
      "whiteboardShape": "图形",
      "whiteboardLatex": "公式",
      "whiteboardTable": "表格",
      "action": "动作",
      "discussion": "讨论"
    },
    "element": {
      "toolbar": "元素工具栏",
      "text": "文本",
      "image": "图片",
      "shape": "形状",
      "line": "线条",
      "chart": "图表",
      "table": "表格",
      "latex": "公式",
      "video": "视频",
      "audio": "音频",
      "code": "代码"
    },
    "agent": {
      "expand": "展开 AI 助手",
      "collapse": "收起",
      "stopped": "已停止",
      "emptyTitle": "有什么想改的？",
      "emptyHint": "在画布上编辑好这一页后，让 AI 重新生成与内容匹配的讲解旁白。",
      "placeholder": "描述对这一页的修改…",
      "stop": "停止生成",
      "empty": {
        "lead": "告诉我这一页怎么改，我会重做内容并对齐讲解。",
        "boundary": "精细编辑请使用编辑器，增删 / 排序页面请用左侧导航。",
        "comingSoon": "更多能力陆续加入中，敬请期待。"
      },
      "interactive": {
        "emptyTitle": "这个互动页要修什么？",
        "lead": "描述这个互动页的问题（比如某个按钮点了没反应），我只修这一处、其它内容原样保留。",
        "placeholder": "描述这个互动页的问题…",
        "boundary": "我只做定点修复，不整页重做；切换页面请用左侧导航。"
      },
      "cap": {
        "content": {
          "label": "重新生成 PPT 页面",
          "examples": "“精简成三个要点”、“加个生活化例子”"
        },
        "narration": {
          "label": "重新生成讲解脚本",
          "examples": "“讲得更口语一些”、“和画布上的改动对齐”"
        },
        "fixHtml": {
          "label": "修复互动页的 bug",
          "examples": "“开始按钮点了没反应”、“手机上排版重叠”"
        },
        "elements": {
          "label": "微调页面元素",
          "examples": "“把标题改成蓝色并上移一点”、“把这个图缩小”"
        }
      },
      "newConversation": "新对话",
      "sessionHistory": "历史对话",
      "sessionUntitled": "未命名对话",
      "sessionDelete": "删除",
      "sessionEmpty": "暂无历史对话",
      "thinking": "思考中…",
      "reasoning": "思考过程",
      "thought": "已思考",
      "title": "用 AI 编辑"
    },
    "timeline": {
      "title": "讲解脚本",
      "regenAllTts": "重新生成全部配音",
      "voiceAll": "全部配音",
      "counts": "{{speech}} 讲解 · {{cue}} 动作",
      "panLeft": "左移视口",
      "panRight": "右移视口",
      "collapseAxis": "收起为轴线",
      "expandTrack": "展开轨道",
      "emptyHint": "把上方的动作拖到轴上开始编排，或让 MAIC Agent 生成讲解。",
      "speechPlaceholder": "输入这一句讲解…",
      "reorder": "拖动重排",
      "moveLeft": "左移",
      "moveRight": "右移",
      "pickElement": "选元素",
      "bound": "已绑定",
      "fieldAction": "动作",
      "fieldElement": "元素",
      "fieldContent": "内容",
      "addDiscussionExists": "每个场景仅支持一个讨论",
      "discussionTerminal": "末尾",
      "discussionTerminalHint": "讨论固定在场景末尾，每个场景仅一个",
      "discussionTopicPlaceholder": "讨论主题（必填）",
      "discussionPromptPlaceholder": "引导语（可选）",
      "discussionAgent": "发起",
      "discussionAgentUnset": "不指定",
      "addAction": "添加动作"
    },
    "picker": {
      "title": "插入动作",
      "speechDesc": "讲一句话，可自动配音",
      "spotlightDesc": "高亮画布中的一个元素",
      "laserDesc": "用激光点指向一个元素",
      "discussionDesc": "抛出问题，指定发起同学"
    },
    "tts": {
      "cancelPreview": "取消试听",
      "preview": "试听",
      "regenerate": "重新生成配音",
      "statusReady": "已配音",
      "statusNone": "未配音",
      "statusGenerating": "生成中",
      "stopPreview": "停止试听",
      "statusError": "失败"
    },
    "pick": {
      "pickFor": "为「{{label}}」选择元素",
      "pickHint": "点高亮元素或下方列表 · Esc 取消",
      "pageElements": "页面元素 · {{count}}",
      "expand": "展开",
      "collapse": "折叠",
      "noElements": "这一页没有可定位的元素。",
      "bindHint": "点画布上高亮的元素绑定",
      "refCapHint": "已达上限，取消一个再换 · Esc 结束",
      "refHint": "点击加入或取消 · Esc 结束",
      "refLead": "引用元素 · {{count}}/{{max}}"
    },
    "regen": {
      "title": "重新生成讲解",
      "running": "正在生成…",
      "noActions": "未生成动作",
      "actionsCount": "{{count}} 个动作",
      "generating": "生成中",
      "notGenerated": "未生成",
      "updated": "已更新"
    },
    "regenScene": {
      "title": "重新生成页面",
      "generating": "生成中",
      "updated": "已更新",
      "notGenerated": "未生成",
      "elementsCount": "{{count}} 个元素",
      "restore": "还原到重生成前",
      "restored": "已还原",
      "resume": "恢复"
    },
    "fixHtml": {
      "title": "修复交互页",
      "fixing": "修复中",
      "fixed": "已修复",
      "notFixed": "未修复",
      "editsCount": "{{count}} 处修改"
    },
    "readCard": {
      "title": "读取页面内容",
      "reading": "读取中",
      "done": "已读取",
      "failed": "未读取"
    },
    "editElements": {
      "title": "编辑元素",
      "editing": "编辑中",
      "applied": "已应用",
      "notApplied": "未应用",
      "applyFailed": "编辑器无法应用元素修改，未更改任何内容。",
      "applyPartiallyFailed": "编辑器未能应用一项或多项元素修改，其他修改可能已应用。"
    },
    "roster": {
      "title": "课堂阵容",
      "count": "{{count}} 位",
      "editHint": "点击一位展开编辑",
      "personaLabel": "人设描述",
      "personaPlaceholder": "描述角色的性格、教学风格与任务…",
      "noPersona": "暂无人设",
      "unnamed": "未命名",
      "teacherBadge": "主讲",
      "moveUp": "上移",
      "moveDown": "下移",
      "removeFromClass": "移出课堂",
      "aiClassmates": "AI 同学 · {{count}}",
      "addRole": "添加角色",
      "shortTitle": "阵容"
    },
    "elementRef": {
      "remove": "移除引用 {{label}}",
      "counts": "已引用 {{count}}/{{max}}",
      "exitPicking": "完成选取",
      "startPicking": "引用元素"
    },
    "dock": {
      "elementRefHint": "元素引用 —— 选中元素随下一条消息发给 Agent",
      "globalTools": "全局工具"
    }
  },
  "classroomComplete": {
    "title": "课程完成",
    "trailLabels": {
      "slide": "页",
      "quiz": "小测",
      "interactive": "互动",
      "pbl": "项目"
    },
    "quizScoreLabel": "答对 {{correct}} / {{total}}",
    "encouragement": {
      "high": "太棒了，完美发挥！",
      "mid": "表现不错，继续加油！",
      "low": "万事开头难，回去再练练吧。"
    }
  },
  "whiteboard": {
    "title": "互动白板",
    "open": "打开白板",
    "clear": "清空白板",
    "minimize": "最小化白板",
    "ready": "白板已就绪",
    "readyHint": "AI 添加元素后将在此显示",
    "clearSuccess": "白板已清空",
    "clearError": "清空白板失败：",
    "resetView": "重置视图",
    "restoreError": "恢复白板失败：",
    "history": "历史记录",
    "restore": "恢复",
    "noHistory": "暂无历史记录",
    "restored": "已恢复白板内容",
    "elementCount": "{{count}} 个元素"
  },
  "quiz": {
    "title": "随堂测验",
    "subtitle": "检测你的学习成果",
    "questionsCount": "道题",
    "totalPrefix": "共",
    "pointsSuffix": "分",
    "startQuiz": "开始答题",
    "multipleChoiceHint": "（多选题，请选择所有正确答案）",
    "inputPlaceholder": "请在此输入你的回答...",
    "charCount": "字",
    "yourAnswer": "你的回答：",
    "notAnswered": "未作答",
    "aiComment": "AI 点评",
    "singleChoice": "单选",
    "multipleChoice": "多选",
    "shortAnswer": "简答",
    "analysis": "解析：",
    "excellent": "优秀！",
    "keepGoing": "继续加油！",
    "needsReview": "需要复习",
    "correct": "正确",
    "incorrect": "错误",
    "answering": "答题中",
    "submitAnswers": "提交答案",
    "aiGrading": "AI 正在批改中...",
    "aiGradingWait": "请稍候，正在分析你的答案",
    "quizReport": "答题报告",
    "retry": "重新答题"
  },
  "roundtable": {
    "teacher": "教师",
    "you": "你",
    "inputPlaceholder": "输入你的消息...",
    "listening": "录音中...",
    "processing": "处理中...",
    "noSpeechDetected": "未检测到语音，请重试",
    "discussionEnded": "讨论已结束",
    "qaEnded": "问答已结束",
    "thinking": "思考中",
    "yourTurn": "轮到你发言了",
    "stopDiscussion": "结束讨论",
    "softClosing": "继续讨论",
    "autoPlay": "自动播放",
    "autoPlayOff": "关闭自动播放",
    "speed": "倍速",
    "previousLine": "Previous line",
    "nextLine": "Next line",
    "lineProgress": "Line {{current}} / {{total}}",
    "voiceInput": "语音输入",
    "voiceInputDisabled": "语音输入已禁用",
    "textInput": "文字输入",
    "stopRecording": "停止录音",
    "startRecording": "开始录音"
  },
  "pbl": {
    "emptyProject": "PBL项目尚未生成，请通过课程生成创建",
    "v2": {
      "hero": {
        "title": "项目实战 · Project-Based Learning",
        "stage": "阶段",
        "task": "任务",
        "tutor": "导师",
        "greetingBanner": "导师正在和你打招呼…",
        "startProject": "开始项目",
        "continueProject": "继续做项目",
        "resetProgress": "重置学习进度",
        "resetConfirmTitle": "重置学习进度？",
        "resetConfirmDescription": "这会清空本项目的全部进度——对话历史、提交内容和各阶段状态，你将从头重新开始。此操作无法撤销。",
        "resetConfirmConfirm": "确认重置",
        "resetConfirmCancel": "取消",
        "startHint": "点击后会进入工作台，{{name}} 将为你逐步揭晓每个阶段。",
        "startError": "无法开始项目：{{error}}",
        "youWillLearn": "你将收获",
        "instructorTagline": "全程陪伴你完成项目",
        "scenarioCharacter": "模拟角色",
        "scenarioCharacterTagline": "情景模拟中与你互动的角色",
        "scenarioFlow": "环节",
        "close": "关闭"
      },
      "sidebar": {
        "title": "项目路线",
        "summary": "{{completed}} / {{total}} 任务 · {{stages}} 阶段",
        "enterScenario": "进入情景模拟",
        "advanceScene": "推进剧情",
        "continueScene": "进入下一阶段",
        "stagePrep": "准备",
        "stageRoleplay": "模拟",
        "stageWrapup": "复盘",
        "completeAct": "完成这一幕",
        "completeTask": "完成"
      },
      "workspace": {
        "progressLabel": "阶段推进",
        "resizeSidebar": "调整任务栏和对话区宽度",
        "resizeSubmission": "调整对话区和提交区宽度",
        "enterFullscreen": "展开为全屏工作台",
        "exitFullscreen": "退出全屏工作台",
        "exitNativeFullscreen": "退出全屏",
        "returnToHero": "返回项目主页",
        "breadcrumbOverview": "项目首页",
        "breadcrumbCurrent": "工作台"
      },
      "chat": {
        "placeholder": "和 {{name}} 聊聊你的进度...",
        "placeholderCompleted": "项目已完成，看看你的结业报告吧。",
        "send": "发送",
        "voiceInput": "语音输入",
        "keyboardHint": "Enter 发送 · Shift+Enter 换行",
        "readingSubmission": "正在读取最新提交…",
        "generatingMilestoneFeedback": "阶段反馈正在生成中…",
        "generatingFinalEval": "项目总评正在生成…",
        "readingSubmissionWithTitle": "正在读取「{{title}}」的最新提交…",
        "evaluatingTask": "{{name}} · 点评任务中",
        "evaluatingFinal": "{{name}} · 项目总评",
        "narrating": "正在描述场景…",
        "choosePrompt": "请选择一个选项",
        "choiceOrType": "选一个，或自己输入…",
        "suggestionsToggle": "需要灵感？看看可以怎么说",
        "guidancePointer": "没有头绪？右侧面板里有这一幕的目标和提示。",
        "roleplayHistoryTitle": "情景模拟阶段互动历史",
        "coachHint": "教练提示",
        "thinking": "{{name}} · 思考中",
        "typing": "{{name}} · 输入中…",
        "submitted": "已提交产出",
        "evaluatingSubmission": "正在评测你的提交…",
        "evaluatingSubmissionDetail": "任务：「{{title}}」。评测完成后，本次提交点评会出现在这里。",
        "milestoneFeedbackPending": "阶段反馈完成后会显示继续按钮。",
        "emptyChat": "还没有对话。",
        "emptyChatHint": "你和 {{name}} 的项目导学会从这里开始。",
        "continueError": "无法继续到下一阶段：{{error}}",
        "stillTyping": "仍在输入中",
        "handoverHint": "请先点击「继续到下一阶段」。"
      },
      "scene": {
        "expand": "展开",
        "collapse": "收起",
        "greetHint": "点一下打个招呼",
        "label": "场景"
      },
      "milestoneCard": {
        "title": "阶段测评",
        "youLearned": "你学到了",
        "nextStage": "下一阶段：",
        "continueHint": "点击 Continue 按钮后，我会再带你进入下一阶段。",
        "alreadyEntered": "已进入下一阶段",
        "continueToNext": "继续到下一阶段",
        "projectAlmostDone": "🎉 项目即将完成 —— 等待生成结业报告"
      },
      "taskEvalCard": {
        "title": "本次提交点评",
        "strengths": "做得好的",
        "improvements": "下次可以"
      },
      "briefing": {
        "intro": "进入情景后，准备阶段介绍的背景在这里随时可查。",
        "tablistLabel": "右侧面板切换",
        "submissionTab": "提交区",
        "briefingTab": "情景简报",
        "setting": "背景设定",
        "learnerRole": "你的角色",
        "goal": "练习目标",
        "rules": "规则",
        "cast": "出场角色",
        "identity": "身份",
        "situation": "处境"
      },
      "submission": {
        "textSubmission": "文本提交",
        "fileTooLarge": "文件最大 5 MB；超过的话请分段粘贴或精简后再上传。",
        "contentRequired": "内容不能为空",
        "readFileFailed": "读取文件失败：{{error}}",
        "parsingPdf": "正在解析 PDF…",
        "parsePdfFailed": "PDF 解析失败：{{error}}",
        "pdfNoText": "未能从该 PDF 中提取到文本。",
        "imageUploadFailed": "图片上传失败：{{error}}",
        "imageTooLargeNoStorage": "未配置存储时图片过大，本地最大 2 MB。",
        "imageNeedsCaptionNoVision": "当前模型无法识别图片，请用文字补充图片内容后再提交，或在设置中切换支持视觉的模型。",
        "unsupportedFileType": "不支持的文件类型。仅接受文本文件（.txt, .md, .csv, .json, .py 等）与 PDF。",
        "pasteTab": "粘贴文本 / 图片",
        "uploadTab": "上传文件",
        "pastePlaceholder": "把你写的代码、文档、回答，或图片 / 截图粘贴在这里…",
        "uploadPlaceholder": "上传后内容会显示在这里，可在提交前再编辑...",
        "imageCaptionPlaceholder": "可为这张图片补充文字说明（可选）…",
        "imageSelectedReplace": "已选择图片 · 点击更换",
        "removeImage": "移除图片",
        "processing": "处理中…",
        "cancelProcessingConfirm": "文件还在处理中，确定要取消并放弃这次上传吗？",
        "currentTask": "当前任务",
        "hints": "提示",
        "submitOutput": "提交产出",
        "evaluating": "正在评估提交内容...",
        "lockedWhileStreaming": "导师正在回复，请稍候再提交。",
        "evalFailed": "评测失败：{{error}}",
        "submittedCount": "已提交 {{count}} 份",
        "submissionHistory": "已提交记录",
        "fromTask": "任务：{{title}}",
        "download": "下载",
        "viewSubmission": "查看产出",
        "noActiveTask": "没有进行中的任务。",
        "canceling": "取消",
        "submitting": "提交中...",
        "selectFileHint": "点击选择文件 · 最大 5 MB · 文本 / PDF / 图片",
        "modalTitle": "提交你的产出",
        "modalTaskLabel": "任务：{{title}}",
        "fileRead": "已读取：{{filename}} · {{size}} KB",
        "submittedBadge": "已提交（{{count}}）",
        "receiptFile": "文件：{{filename}}",
        "receiptTemplate": "已提交本任务产出（{{label}}）。"
      },
      "agentTabs": {
        "noAgent": "这个项目还没有配置 AI 角色。"
      },
      "completion": {
        "noWhatsNext": "最终评测还没有写入下一步建议。",
        "backToWorkspace": "返回工作台",
        "completionCta": "查看结业报告",
        "title": "项目结业报告",
        "whatYouBuilt": "你打造了什么",
        "whatYouLearned": "你学到了什么",
        "whatsNext": "下一步",
        "noDataFallback": "最终评测还没有写入",
        "stageReview": "阶段回顾",
        "summary": "你完成了全部 {{completed}} / {{total}} 个任务，跨越了 {{stages}} 个阶段。",
        "statConcepts": "掌握概念",
        "statTurns": "对话轮次",
        "statScope": "阶段 · 任务",
        "statDuration": "项目用时",
        "statSubmissions": "提交作品",
        "coreStageBadge": "核心",
        "conceptsInStageLabel": "解锁了概念：",
        "submissionsInStage": "提交了 {{count}} 件作品",
        "coreConceptGrasp": "核心概念「{{concept}}」——{{quality}}",
        "stageNoData": "本阶段没有记录的产出。",
        "highlightsTitle": "你的亮点",
        "scenario": {
          "summary": "你完成了这场情景模拟的 {{acts}} 幕。这是这次角色扮演的表现回顾。",
          "whatYouDidWell": "你做得好的地方",
          "skillsPracticed": "你练到的技能",
          "statGoals": "目标达成",
          "statActs": "完成幕数",
          "goalReviewTitle": "逐幕回顾",
          "goalReviewHint": "这场情景模拟为每一幕都设定了几个关键目标。下面根据你和角色的真实对话，回顾你这次达成了其中的 {{achieved}}/{{total}} 个。",
          "goalListTitle": "每一幕的目标",
          "goalListHint": "这场情景模拟为每一幕都设定了几个关键目标。下面是各幕的目标回顾。",
          "goalAchieved": "做到了",
          "goalPartial": "部分做到",
          "goalMissed": "没做到",
          "statGoodDecisions": "出色决策",
          "statScore": "决策得分",
          "statBeats": "完成幕数",
          "decisionReviewTitle": "决策回顾",
          "good": "出色",
          "ok": "尚可",
          "poor": "待改进",
          "decisionScore": "决策总分 {{score}}",
          "castLabel": "你与之互动的角色：{{names}}"
        },
        "highlight": {
          "independence": "你自主展现了 {{unlocks}}/{{total}} 个概念——不靠追问，自己就表达出来了，理解很扎实。",
          "resilience": "在「{{title}}」阶段你克服了 {{errors}} 个错误，逐一攻克——韧性强。",
          "resilienceGeneral": "你克服了 {{errors}} 个错误，逐一攻克——韧性强。",
          "completion": "完成了全部任务，每一步都扎实走过。"
        },
        "synthesisQuality": {
          "strong": "理解到位 ✅",
          "ok": "基本掌握 👍",
          "weak": "还可以再巩固 💪"
        },
        "durationMinutes": "{{m}} 分钟",
        "durationHours": "{{h}} 小时",
        "durationHoursMinutes": "{{h}} 小时 {{m}} 分钟"
      },
      "completionCard": {
        "title": "项目完成 · Completion",
        "subtitle": "恭喜你！整个项目跑通了。",
        "description": "我们已经基于你这段时间的数据（用时、对话、错误恢复、解锁的概念……）生成了一份结业报告，包含你打造了什么、学到了什么，以及接下来可以走向哪里。"
      }
    }
  },
  "share": {
    "notReady": "生成完成后可分享"
  },
  "classroom": {
    "recentClassrooms": "最近学习",
    "today": "今天",
    "yesterday": "昨天",
    "daysAgo": "天前",
    "slides": "页",
    "nameCopied": "课堂名称已复制",
    "deleteConfirmTitle": "删除课堂",
    "delete": "删除",
    "rename": "重命名",
    "renamePlaceholder": "输入课堂名称",
    "renameFailed": "重命名失败",
    "searchPlaceholder": "搜索课程...",
    "searchAriaLabel": "搜索课程",
    "clearSearch": "清空",
    "searchEmpty": "没有找到匹配的课程",
    "newFolderTitle": "新建文件夹",
    "newFolderDesc": "把课程按主题或用途归类，方便查找。",
    "newFolderInline": "新建文件夹…",
    "folderNameLabel": "文件夹名称",
    "folderNamePlaceholder": "例如：数学、英语、专业课",
    "folderNameHint": "中英文均可，空格计入。",
    "folderNameExists": "已存在同名文件夹，请换一个",
    "folderCountLimit": "文件夹数量已达上限",
    "folderWidth": "宽度 {{width}}/{{max}}",
    "folderCreate": "创建",
    "folderBadge": "文件夹",
    "folderCourseCountUnit": "门课程",
    "deleteFolderTitle": "删除文件夹「{{name}}」",
    "deleteFolderEmptyDesc": "这是一个空文件夹，删除后不可恢复。",
    "deleteFolderUngroupDesc": "课程保留在「我的课程」，只是不再归类。",
    "moveToFolder": "移动到文件夹",
    "moveToFolderLabel": "移动到…",
    "ungrouped": "未分组",
    "searchResults": "搜索结果",
    "folderCreateFailed": "创建文件夹失败",
    "folderRenameFailed": "重命名文件夹失败",
    "folderDeleteFailed": "删除文件夹失败",
    "moveFailed": "移动课程失败",
    "emptyFolderHint": "这个文件夹还是空的",
    "emptyLibraryHint": "还没有课程——在上方创建，或导入一个课程。",
    "folderNameEmpty": "文件夹名不能为空",
    "deleteFolderOnly": "仅删除文件夹",
    "deleteFolderAndCourses": "删除文件夹和 {{count}} 门课程",
    "deleteFolderConfirmRemove": "将删除文件夹及其课程（含聊天记录），不可恢复。",
    "deleteFolderAndCourses_other": "删除文件夹和 {{count}} 门课程",
    "notFound": "找不到这门课程",
    "notFoundDesc": "课程不存在，或已被删除。",
    "backToHome": "返回首页"
  },
  "upload": {
    "pdfSizeLimit": "支持最大50MB的PDF文件",
    "courseMaterialSizeLimit": "支持文档、演示、表格、图像、纯文本，最大 50MB（具体支持格式随所选解析器而定）",
    "generateFailed": "生成课堂失败，请重试",
    "requirementPlaceholder": "输入你想学的任何内容，例如：\n「从零学 Python，30 分钟写出第一个程序」\n「用白板给我讲解傅里叶变换」\n「阿瓦隆桌游怎么玩」",
    "requirementRequired": "请输入课程需求",
    "fileTooLarge": "文件过大，请选择小于 50MB 的文件",
    "courseMaterialCountLimit": "最多可上传 5 个课程材料文件",
    "courseMaterialTotalSizeLimit": "课程材料总大小需小于 150MB",
    "unsupportedCourseMaterial": "当前解析器不支持该格式，请切换解析器或选择其他文件"
  },
  "generation": {
    "pdfLoadFailed": "无法加载 PDF 文件，请重试",
    "pdfParseFailed": "PDF 解析失败",
    "analyzingCourseMaterial": "解析文档",
    "analyzingCourseMaterialDesc": "正在提取文档结构和内容...",
    "courseMaterialLoadFailed": "无法加载课程材料，请重试",
    "courseMaterialParseFailed": "课程材料解析失败",
    "streamNotReadable": "无法读取生成数据流",
    "generatingOutlines": "生成课程大纲",
    "generatingOutlinesDesc": "正在构建学习路径...",
    "generatingSlideContent": "生成页面内容",
    "generatingSlideContentDesc": "正在创建幻灯片、测验和互动内容...",
    "generatingActions": "生成教学动作",
    "generatingActionsDesc": "正在编排讲解、聚焦和互动流程...",
    "generationComplete": "生成完成！",
    "generationFailed": "生成失败",
    "speechFailed": "语音合成失败",
    "retryScene": "重试生成",
    "retryingScene": "正在重新生成...",
    "backToHome": "返回首页",
    "sessionNotFound": "未找到生成会话",
    "sessionNotFoundDesc": "请先填写课程需求开始生成流程。",
    "goBackAndRetry": "返回重试",
    "classroomReady": "你的个性化AI学习环境已成功生成。",
    "aiWorking": "AI智能体工作中...",
    "textTruncated": "文档文本较长，已截取前 {{n}} 字符用于生成",
    "imageTruncated": "文档含 {{total}} 张图片，超出上限 {{max}} 张，多余图片将仅以文字描述传递",
    "agentGeneration": "生成课堂角色",
    "agentGenerationDesc": "正在根据课程内容生成角色...",
    "agentRevealTitle": "你的课堂角色",
    "viewAgents": "查看角色",
    "continue": "继续",
    "outlineRetrying": "大纲生成异常，正在重试...",
    "outlineEmptyResponse": "模型未返回有效的大纲内容，请检查模型配置后重试",
    "outlineGenerateFailed": "大纲生成失败，请稍后重试",
    "sceneGenerateFailed": "场景生成失败，请稍后重试",
    "sceneGenerateAuthFailed": "场景生成失败：模型服务拒绝了当前凭据。请检查模型配置。",
    "sceneGenerateRateLimited": "场景生成触发限流，请稍后重试。",
    "sceneGenerateProviderUnavailable": "模型服务暂时不可用，请稍后重试。",
    "sceneGenerateInvalidResponse": "模型未返回有效的场景内容，请更换模型或调整课程需求后重试。",
    "reviewOutlineTitle": "审阅课程大纲",
    "reviewOutlineDesc": "可在生成内容前编辑、重排、删除或新增场景。",
    "reviewOutlineAutoContinue": "如不审阅，大纲生成后会自动继续生成课程内容。",
    "outlineEditorTitle": "场景大纲",
    "outlineEditorSummary": "共 {{count}} 个场景，可在生成前编辑、添加、删除或重排序",
    "addFirstScene": "添加第一个场景",
    "noOutlines": "暂无场景大纲",
    "sceneTitlePlaceholder": "场景标题",
    "sceneTypeSlide": "幻灯片",
    "sceneTypeQuiz": "测验",
    "sceneTypeInteractive": "互动",
    "sceneTypePbl": "项目式学习",
    "sceneDescriptionPlaceholder": "简短描述这个场景的目的和内容",
    "quizQuestionCount": "题目数量",
    "quizDifficulty": "难度",
    "quizType": "题型",
    "quizDifficultyEasy": "简单",
    "quizDifficultyMedium": "中等",
    "quizDifficultyHard": "困难",
    "quizTypeSingle": "单选",
    "quizTypeMultiple": "多选",
    "quizTypeText": "简答",
    "alwaysReviewOutlines": "以后生成前都审阅大纲",
    "outlineEditorEyebrow": "AI 生成的大纲",
    "outlineEditorStreamingProgress": "生成中 · 已就位 {{count}} 个场景",
    "outlineEditorStreamingWaiting": "正在等待第一个场景到达…",
    "outlineEditorWaitingConfirm": "等待大纲生成完成…",
    "outlineExpandHint": "点击审阅",
    "reviewOutlineStreamingDesc": "大纲正在流式生成中，完成后即可编辑。",
    "addKeyPoint": "添加要点",
    "removeKeyPoint": "移除要点",
    "insertSceneHere": "在此处插入一个场景",
    "deleteSceneConfirm": "删除该场景？",
    "deleteSceneConfirmDesc": "该场景及其关键要点将从大纲中移除。",
    "deleteSceneConfirmAction": "删除",
    "collapseEditor": "收起",
    "quizConfigSummary": "{{count}} 道题",
    "interactiveWidgetKind": "组件类型",
    "widgetSimulation": "仿真模拟",
    "widgetDiagram": "图示",
    "widgetCode": "代码",
    "widgetGame": "游戏",
    "widgetVisualization3d": "3D",
    "interactiveConcept": "概念",
    "interactiveConceptPlaceholder": "要探索的概念",
    "pblConfigSummary": "项目",
    "pblSubtype": "PBL 类型",
    "pblSubtypeProject": "项目",
    "pblSubtypeScenario": "情景模拟",
    "pblProjectTopic": "项目主题",
    "pblProjectTopicPlaceholder": "项目主题",
    "pblProjectDescription": "项目描述",
    "pblProjectDescriptionPlaceholder": "学生将完成的项目",
    "pblScenarioBrief": "情景设定",
    "pblScenarioBriefPlaceholder": "场景、角色与练习目标",
    "pblTargetSkills": "目标技能",
    "pblAddSkill": "添加技能",
    "widgetProceduralSkill": "操作技能",
    "removeSkill": "移除技能",
    "dragSceneHint": "拖动排序；或聚焦后按 Ctrl/⌘ + ↑ / ↓",
    "deleteScene": "删除场景",
    "backToRequirements": "返回修改需求",
    "confirmAndGenerateCourse": "确认并生成课程",
    "generatingInProgress": "生成中...",
    "webSearching": "网络搜索",
    "webSearchingDesc": "正在搜索网络获取最新资料",
    "webSearchFailed": "网络搜索失败",
    "outlinesReadyCount": "{{ready}} / {{total}} 章节就绪",
    "jumpToBlankTitle": "跳到待补充标题的章节",
    "analyzingMediaMaterial": "解析音视频内容"
  },
  "settings": {
    "title": "设置",
    "description": "配置应用程序设置",
    "language": "语言",
    "languageDesc": "选择界面语言",
    "theme": "主题",
    "themeDesc": "选择主题模式（浅色/深色/跟随系统）",
    "themeOptions": {
      "light": "浅色",
      "dark": "深色",
      "system": "跟随系统"
    },
    "apiKey": "API密钥",
    "apiKeyDesc": "配置你的API密钥",
    "apiBaseUrl": "API端点地址",
    "apiBaseUrlDesc": "配置你的API端点地址",
    "apiKeyRequired": "API密钥不能为空",
    "model": "模型配置",
    "modelDesc": "配置AI模型",
    "modelPlaceholder": "输入或选择模型名称",
    "ttsModel": "TTS模型",
    "ttsModelDesc": "配置TTS模型",
    "ttsModelPlaceholder": "输入或选择TTS模型名称",
    "ttsModelOptions": {
      "openaiTts": "OpenAI TTS",
      "azureTts": "Azure TTS"
    },
    "availableModels": "可用模型",
    "modelSelectedViaVoice": "模型随音色选择自动确定",
    "testConnection": "测试连接",
    "testConnectionDesc": "测试当前API配置是否可用",
    "testing": "测试中...",
    "agentSettings": "智能体设置",
    "agentSettingsDesc": "选择参与对话的智能体。选择1个为单智能体模式，选择多个为多智能体协作模式。",
    "agentMode": "智能体模式",
    "agentModePreset": "预设模式",
    "agentModeAuto": "自动生成",
    "agentModeAutoDesc": "AI 将根据课程内容自动生成适合的课堂角色",
    "autoAgentCount": "生成数量",
    "autoAgentCountDesc": "自动生成的角色数量（包含教师）",
    "atLeastOneAgent": "请至少选择1个智能体",
    "singleAgentMode": "单智能体模式",
    "directAnswer": "直接回答",
    "multiAgentMode": "多智能体模式",
    "agentsCollaborating": "协作讨论",
    "agentsCollaboratingCount": "已选择 {{count}} 个智能体协作讨论",
    "priority": "优先级",
    "actions": "动作",
    "actionCount": "{{count}} 个动作",
    "selectedAgent": "选中的智能体",
    "selectedAgents": "选中的智能体",
    "required": "必选",
    "agentNames": {
      "default-1": "AI教师",
      "default-2": "AI助教",
      "default-3": "显眼包",
      "default-4": "好奇宝宝",
      "default-5": "笔记员",
      "default-6": "思考者"
    },
    "agentRoles": {
      "teacher": "教师",
      "assistant": "助教",
      "student": "学生"
    },
    "agentDescriptions": {
      "default-1": "主讲教师，清晰有条理地讲解知识",
      "default-2": "辅助讲解，帮助同学理解重点",
      "default-3": "活跃气氛，用幽默让课堂更有趣",
      "default-4": "充满好奇心，总爱追问为什么",
      "default-5": "认真记录，整理课堂重点笔记",
      "default-6": "深入思考，喜欢探讨问题本质"
    },
    "close": "关闭",
    "save": "保存",
    "providers": "语言模型",
    "addProviderDescription": "添加自定义模型提供方以扩展可用的AI模型",
    "providerNames": {
      "openai": "OpenAI",
      "azure": "Azure OpenAI",
      "anthropic": "Claude",
      "google": "Gemini",
      "bedrock": "Amazon Bedrock",
      "deepseek": "DeepSeek",
      "qwen": "通义千问",
      "kimi": "Kimi",
      "minimax": "MiniMax",
      "glm": "GLM",
      "siliconflow": "硅基流动",
      "doubao": "豆包",
      "openrouter": "OpenRouter",
      "grok": "Grok",
      "tencent-hunyuan": "腾讯混元",
      "xiaomi": "小米 MiMo",
      "lemonade": "Lemonade（本地）",
      "ollama": "Ollama（本地模型）",
      "tavily": "Tavily",
      "bocha": "博查",
      "brave": "Brave Search",
      "baidu": "百度",
      "claude": "Claude",
      "searxng": "SearXNG"
    },
    "providerTypes": {
      "openai": "OpenAI 协议",
      "azure": "Azure OpenAI",
      "anthropic": "Claude 协议",
      "google": "Gemini 协议",
      "bedrock": "Amazon Bedrock"
    },
    "modelCount": "个模型",
    "modelSingular": "个模型",
    "defaultModel": "默认模型",
    "webSearch": "联网搜索",
    "mcp": "MCP",
    "knowledgeBase": "知识库",
    "documentParser": "文档解析器",
    "conversationSettings": "对话设置",
    "keyboardShortcuts": "键盘快捷键",
    "generalSettings": "常规设置",
    "systemSettings": "系统设置",
    "addProvider": "添加",
    "importFromClipboard": "从剪贴板导入",
    "apiSecret": "API 密钥",
    "apiHost": "Base URL",
    "azureDeploymentHint": "请在上方填写 Azure OpenAI Endpoint，并将每个 Azure Deployment 名称添加为模型。",
    "baseUrlRegion": {
      "china": "国内站",
      "international": "国际站",
      "xiaomiPayg": "按量付费",
      "xiaomiTokenPlanCN": "Token Plan 中国",
      "xiaomiTokenPlanSGP": "Token Plan 新加坡",
      "xiaomiTokenPlanEU": "Token Plan 欧洲"
    },
    "requestUrl": "请求地址",
    "models": "模型",
    "comfyuiWorkflows": "工作流",
    "comfyuiRefresh": "刷新",
    "comfyuiNoWorkflowsFoundPrefix": "未在",
    "comfyuiAddWorkflowPrefix": "添加一个",
    "comfyuiAddWorkflowSuffix": "文件即可开始。",
    "comfyuiFolderHintPrefix": "请将工作流 JSON 文件放入",
    "comfyuiFolderHintMiddle": "文件夹。文件名将作为显示名称，例如",
    "comfyuiLoadError": "加载工作流失败：{error}",
    "addModel": "添加",
    "reset": "重置",
    "fetch": "获取",
    "connectionSuccess": "连接成功",
    "connectionFailed": "连接失败",
    "capabilities": {
      "vision": "视觉",
      "tools": "工具",
      "streaming": "流式"
    },
    "contextWindow": "上下文",
    "contextShort": "上下文",
    "outputWindow": "输出",
    "addProviderButton": "添加",
    "addProviderDialog": "添加模型提供方",
    "providerName": "名称",
    "providerNamePlaceholder": "例如：我的OpenAI代理",
    "providerNameRequired": "请输入提供方名称",
    "providerApiMode": "API 模式",
    "apiModeOpenAI": "OpenAI 协议",
    "apiModeAnthropic": "Claude 协议",
    "apiModeGoogle": "Gemini 协议",
    "defaultBaseUrl": "默认 Base URL",
    "providerIcon": "Provider 图标 URL",
    "requiresApiKey": "需要 API 密钥",
    "deleteProvider": "删除提供方",
    "deleteProviderConfirm": "确定要删除此提供方吗？",
    "addCustomTTSProvider": "添加自定义语音合成",
    "addCustomASRProvider": "添加自定义语音识别",
    "addCustomAudioProviderDescription": "添加兼容 OpenAI 协议的音频服务",
    "customVoices": "音色列表",
    "voiceIdPlaceholder": "音色 ID（如 alloy）",
    "voiceNamePlaceholder": "显示名称",
    "addVoice": "添加",
    "modelNamePlaceholder": "可选",
    "defaultModelHint": "API 请求中的模型名（如 kokoro、tts-1）",
    "noVoicesAdded": "暂无音色，请在下方添加以支持 Agent 选择不同音色。",
    "noModelsAdded": "暂无模型，请在下方添加以支持模型选择。",
    "noModelsWarning": "请先在下方添加至少一个模型，才能使用此服务。",
    "asrNoTranscription": "未生成转写结果，请尝试说大声一些或说长一些。",
    "cannotDeleteBuiltIn": "无法删除内置提供方",
    "resetToDefault": "重置为默认配置",
    "resetToDefaultDescription": "将模型列表恢复到默认状态（保留 API 密钥和 Base URL）",
    "resetConfirmDescription": "此操作将清除所有自定义模型，恢复到内置的默认模型列表。API 密钥和 Base URL 将被保留。",
    "confirmReset": "确认重置",
    "resetSuccess": "已成功重置为默认配置",
    "saveSuccess": "配置已保存",
    "saveFailed": "保存失败，请重试",
    "cannotDeleteBuiltInModel": "无法删除内置模型",
    "cannotEditBuiltInModel": "无法编辑内置模型",
    "modelIdRequired": "请输入模型 ID",
    "noModelsAvailable": "没有可用于测试的模型",
    "providerMetadata": "Provider 元数据",
    "editModel": "编辑模型",
    "editModelDescription": "编辑模型配置和能力",
    "addNewModel": "新建模型",
    "modelsManagementDescription": "管理此提供方可用的模型列表和模型能力。",
    "addNewModelDescription": "添加新的模型配置",
    "modelId": "模型ID",
    "modelIdPlaceholder": "例如：gpt-4o",
    "modelName": "显示名称",
    "modelCapabilities": "能力",
    "advancedSettings": "高级设置",
    "contextWindowLabel": "上下文窗口",
    "contextWindowPlaceholder": "例如 128000",
    "outputWindowLabel": "最大输出Token数",
    "outputWindowPlaceholder": "例如 4096",
    "testModel": "测试模型",
    "deleteModel": "删除",
    "cancelEdit": "取消",
    "saveModel": "保存",
    "howToUse": "使用说明",
    "step1ConfigureProvider": "前往\"模型提供方\"页面，选择或添加一个提供方，配置连接信息（API 密钥、Base URL 等）",
    "step2SelectModel": "在下方\"使用模型\"中选择要使用的模型",
    "step3StartUsing": "保存设置后，系统将使用您选择的模型",
    "activeModel": "使用模型",
    "activeModelDescription": "选择当前用于 AI 对话和内容生成的模型",
    "searchModels": "搜索模型",
    "noModelsFound": "未找到匹配的模型",
    "noConfiguredProviders": "暂无已配置的提供方",
    "configureProvidersFirst": "请先在左侧\"模型提供方\"中配置提供方连接信息",
    "currentlyUsing": "当前使用",
    "ttsSettings": "语音合成",
    "asrSettings": "语音识别",
    "audioSettings": "音频设置",
    "ttsSection": "文字转语音 (TTS)",
    "asrSection": "语音识别 (ASR)",
    "ttsDescription": "TTS (Text-to-Speech) - 将文字转换为语音",
    "asrDescription": "ASR (Automatic Speech Recognition) - 将语音转换为文字",
    "enableTTS": "启用语音合成",
    "ttsEnabledDescription": "开启后，课程生成时将自动合成语音",
    "ttsVoiceConfigHint": "每个 Agent 的音色可在首页「课堂角色配置」中设置",
    "enableASR": "启用语音识别",
    "asrEnabledDescription": "开启后，学生可使用麦克风进行语音输入",
    "ttsProvider": "TTS 提供商",
    "ttsLanguageFilter": "语言筛选",
    "allLanguages": "全部语言",
    "ttsVoice": "音色",
    "ttsSpeed": "语速",
    "ttsBaseUrl": "Base URL",
    "ttsApiKey": "API 密钥",
    "doubaoAppId": "App ID",
    "doubaoAccessKey": "Access Key",
    "asrProvider": "ASR 提供商",
    "asrLanguage": "识别语言",
    "asrBaseUrl": "Base URL",
    "asrApiKey": "API 密钥",
    "enterApiKey": "输入 API Key",
    "enterCustomBaseUrl": "输入自定义 Base URL",
    "browserNativeNote": "浏览器原生 ASR 无需配置，完全免费",
    "providerOpenAITTS": "OpenAI TTS (gpt-4o-mini-tts)",
    "providerAzureTTS": "Azure TTS",
    "providerGLMTTS": "GLM TTS",
    "providerQwenTTS": "Qwen TTS（阿里云百炼）",
    "providerVoxCPMTTS": "VoxCPM2",
    "providerDoubaoTTS": "豆包 TTS 2.0（火山引擎）",
    "providerElevenLabsTTS": "ElevenLabs TTS",
    "providerMiniMaxTTS": "MiniMax TTS",
    "providerLemonadeTTS": "Lemonade TTS（本地）",
    "providerBrowserNativeTTS": "浏览器原生 TTS",
    "voxcpmBackend": "Backend",
    "voxcpmBaseUrlPending": "填写 Base URL 后生成",
    "voxcpmAutoVoiceNoPreview": "自动音色会根据 Agent 人设动态生成，无法单独试听",
    "voxcpmVoicesTitle": "VoxCPM 音色",
    "voxcpmVoicesDescription": "保存在当前浏览器，进入统一音色池后可在 Agent Bar 中使用。",
    "voxcpmAutoVoicePrivacyNote": "自动音色会把 Agent 人设作为音色提示词发送到你配置的 VoxCPM 后端。",
    "voxcpmPromptCount": "Prompt {{count}}",
    "voxcpmCloneCount": "克隆 {{count}}",
    "voxcpmCloneUnsupported": "当前后端不支持克隆",
    "voxcpmVoicePool": "音色池",
    "voxcpmVoiceCount": "{{count}} 条",
    "voxcpmAutoVoice": "自动音色",
    "voxcpmAutoVoiceDescription": "使用 Agent 人设作为音色 prompt",
    "voxcpmUnavailable": "不可用",
    "voxcpmClone": "克隆",
    "voxcpmCloneUnsupportedDetail": "当前后端不支持克隆",
    "voxcpmNoCustomVoices": "暂无自定义音色",
    "voxcpmCloneSaveOnly": "当前后端仅保存",
    "voxcpmVoiceNamePlaceholder": "音色名称",
    "voxcpmPromptPlaceholder": "例如：清晰自然的中文老师声音，语速适中",
    "voxcpmAddVoice": "添加音色",
    "voxcpmCloneVoiceNamePlaceholder": "克隆音色名称",
    "voxcpmUploadReferenceAudio": "上传参考音频",
    "voxcpmRecord": "录制",
    "voxcpmReferenceAudioLimitHint": "参考音频最大 10 MB / 60 秒，保存前会转换为 WAV。",
    "voxcpmReferenceTextPlaceholder": "参考音频对应文本，可选",
    "voxcpmVoiceDescriptionPlaceholder": "音色描述，可选",
    "voxcpmAddClone": "添加克隆",
    "voxcpmRecordingUnsupported": "当前浏览器不支持录音",
    "voxcpmRecordedVoiceName": "录制音色",
    "voxcpmRecordingFailed": "录音转换失败",
    "voxcpmRecordingStartFailed": "无法开始录音",
    "voxcpmBaseUrlRequired": "请先填写 VoxCPM Base URL",
    "voxcpmPreviewFailed": "试听失败",
    "voxcpmVoiceSaved": "已保存 VoxCPM 音色",
    "voxcpmVoiceSaveFailed": "保存音色失败",
    "voxcpmReferenceAudioInvalid": "参考音频无效",
    "voxcpmCloneSaved": "已保存 VoxCPM 克隆音色",
    "voxcpmCloneSaveFailed": "保存克隆音色失败",
    "voxcpmStopPreview": "停止试听",
    "voxcpmPreviewVoice": "试听音色",
    "voxcpmDeleteVoice": "删除音色",
    "qwenCloneVoicesTitle": "Qwen TTS 克隆音色",
    "qwenCloneRefText": "请输入与参考音频完全一致的逐字文本",
    "qwenCloneRefAudioHint": "请使用 1–60 秒的干净人声，推荐 10–20 秒；音频会转换为 24 kHz 单声道 PCM WAV。",
    "qwenCloneSaved": "Qwen 克隆音色已注册并保存",
    "qwenCloneSaveFailed": "Qwen 克隆音色注册失败",
    "qwenCloneUnsupported": "当前浏览器不支持录音，请改为上传音频文件。",
    "qwenCloneSpeedHint": "克隆音色始终以 1× 语速合成。",
    "qwenCloneDeleteWarning": "音色已从本地移除，但服务商端删除失败。",
    "qwenCloneNarrationUnavailable": "指定音色不可用，旁白将改用其他可用音色。",
    "qwenCloneDiscussionUnavailable": "指定音色不可用，讨论将改用其他可用音色。",
    "providerOpenAIWhisper": "OpenAI ASR (gpt-4o-mini-transcribe)",
    "providerBrowserNative": "浏览器原生 ASR",
    "providerQwenASR": "Qwen ASR（阿里云百炼）",
    "providerFunASRASR": "FunASR（本地）",
    "providerLemonadeASR": "Lemonade ASR（本地）",
    "providerAzureASR": "Azure STT",
    "providerUnpdf": "unpdf（内置）",
    "providerMinerU": "MinerU",
    "providerMinerUCloud": "MinerU（云端）",
    "browserNativeTTSNote": "浏览器原生 TTS 无需配置，完全免费，使用系统内置语音",
    "testTTS": "测试 TTS",
    "testASR": "测试 ASR",
    "testSuccess": "测试成功",
    "testFailed": "测试失败",
    "ttsTestText": "TTS 测试文本",
    "ttsTestSuccess": "TTS 测试成功，音频已播放",
    "ttsTestFailed": "TTS 测试失败",
    "asrTestSuccess": "语音识别成功",
    "asrTestFailed": "语音识别失败",
    "asrProcessing": "处理中...",
    "asrResult": "识别结果",
    "asrNotSupported": "浏览器不支持语音识别 API",
    "browserTTSNotSupported": "浏览器不支持语音合成 API",
    "browserTTSNoVoices": "当前浏览器没有可用的 TTS voice",
    "microphoneAccessDenied": "麦克风访问被拒绝",
    "microphoneAccessFailed": "无法访问麦克风",
    "asrResultPlaceholder": "录音后将显示识别结果",
    "useThisProvider": "使用此提供商",
    "fetchVoices": "获取音色列表",
    "fetchingVoices": "获取中...",
    "voicesFetched": "已获取音色",
    "fetchVoicesFailed": "获取音色失败",
    "voiceApiKeyRequired": "需要 API 密钥",
    "voiceBaseUrlRequired": "需要 Base URL",
    "ttsTestTextPlaceholder": "输入要转换的文本",
    "ttsTestTextDefault": "你好，这是一段测试语音。",
    "startRecording": "开始录音",
    "stopRecording": "停止录音",
    "recording": "录音中...",
    "transcribing": "识别中...",
    "transcriptionResult": "识别结果",
    "noTranscriptionResult": "无识别结果",
    "baseUrlOptional": "Base URL（可选）",
    "defaultValue": "默认",
    "voiceMarin": "推荐 - 最佳质量",
    "voiceCedar": "推荐 - 最佳质量",
    "voiceAlloy": "中性、平衡",
    "voiceAsh": "沉稳、专业",
    "voiceBallad": "优雅、抒情",
    "voiceCoral": "温暖、友好",
    "voiceEcho": "男性、清晰",
    "voiceFable": "叙事、生动",
    "voiceNova": "女性、明亮",
    "voiceOnyx": "男性、深沉",
    "voiceSage": "智慧、沉着",
    "voiceShimmer": "女性、柔和",
    "voiceVerse": "自然、流畅",
    "glmVoiceTongtong": "默认音色",
    "glmVoiceChuichui": "锤锤音色",
    "glmVoiceXiaochen": "小陈音色",
    "glmVoiceJam": "动动动物圈jam音色",
    "glmVoiceKazi": "动动动物圈kazi音色",
    "glmVoiceDouji": "动动动物圈douji音色",
    "glmVoiceLuodo": "动动动物圈luodo音色",
    "qwenVoiceCherry": "阳光积极、亲切自然小姐姐",
    "qwenVoiceSerena": "温柔小姐姐",
    "qwenVoiceEthan": "阳光、温暖、活力、朝气",
    "qwenVoiceChelsie": "二次元虚拟女友",
    "qwenVoiceMomo": "撒娇搞怪，逗你开心",
    "qwenVoiceVivian": "拽拽的、可爱的小暴躁",
    "qwenVoiceMoon": "率性帅气",
    "qwenVoiceMaia": "知性与温柔的碰撞",
    "qwenVoiceKai": "耳朵的一场SPA",
    "qwenVoiceNofish": "不会翘舌音的设计师",
    "qwenVoiceBella": "喝酒不打醉拳的小萝莉",
    "qwenVoiceJennifer": "品牌级、电影质感般美语女声",
    "qwenVoiceRyan": "节奏拉满，戏感炸裂，真实与张力共舞",
    "qwenVoiceKaterina": "御姐音色，韵律回味十足",
    "qwenVoiceAiden": "精通厨艺的美语大男孩",
    "qwenVoiceEldricSage": "沉稳睿智的老者，沧桑如松却心明如镜",
    "qwenVoiceMia": "温顺如春水，乖巧如初雪",
    "qwenVoiceMochi": "聪明伶俐的小大人，童真未泯却早慧如禅",
    "qwenVoiceBellona": "声音洪亮，吐字清晰，人物鲜活，听得人热血沸腾",
    "qwenVoiceVincent": "一口独特的沙哑烟嗓，一开口便道尽了千军万马与江湖豪情",
    "qwenVoiceBunny": "\"萌属性\"爆棚的小萝莉",
    "qwenVoiceNeil": "专业新闻主持人",
    "qwenVoiceElias": "专业讲师音色",
    "qwenVoiceArthur": "被岁月和旱烟浸泡过的质朴嗓音",
    "qwenVoiceNini": "糯米糍一样又软又黏的嗓音，那一声声拉长了的\"哥哥\"",
    "qwenVoiceEbona": "她的低语像一把生锈的钥匙，缓慢转动你内心最深处的幽暗角落",
    "qwenVoiceSeren": "温和舒缓的声线，助你更快地进入睡眠",
    "qwenVoicePip": "调皮捣蛋却充满童真的他来了",
    "qwenVoiceStella": "平时是甜到发腻的迷糊少女音，但在喊出\"代表月亮消灭你\"时，瞬间充满不容置疑的爱与正义",
    "qwenVoiceBodega": "热情的西班牙大叔",
    "qwenVoiceSonrisa": "热情开朗的拉美大姐",
    "qwenVoiceAlek": "一开口，是战斗民族的冷，也是毛呢大衣下的暖",
    "qwenVoiceDolce": "慵懒的意大利大叔",
    "qwenVoiceSohee": "温柔开朗，情绪丰富的韩国欧尼",
    "qwenVoiceOnoAnna": "鬼灵精怪的青梅竹马",
    "qwenVoiceLenn": "理性是底色，叛逆藏在细节里——穿西装也听后朋克的德国青年",
    "qwenVoiceEmilien": "浪漫的法国大哥哥",
    "qwenVoiceAndre": "声音磁性，自然舒服、沉稳男生",
    "qwenVoiceRadioGol": "足球诗人Rádio Gol！今天我要用名字为你们解说足球",
    "qwenVoiceJada": "风风火火的沪上阿姐",
    "qwenVoiceDylan": "北京胡同里长大的少年",
    "qwenVoiceLi": "耐心的瑜伽老师",
    "qwenVoiceMarcus": "面宽话短，心实声沉——老陕的味道",
    "qwenVoiceRoy": "诙谐直爽、市井活泼的台湾哥仔形象",
    "qwenVoicePeter": "天津相声，专业捧哏",
    "qwenVoiceSunny": "甜到你心里的川妹子",
    "qwenVoiceEric": "跳脱市井的成都男子",
    "qwenVoiceRocky": "幽默风趣的阿强",
    "qwenVoiceKiki": "甜美的港妹闺蜜",
    "lang_auto": "自动检测",
    "lang_zh": "中文",
    "lang_yue": "粤語",
    "lang_en": "English",
    "lang_ja": "日本語",
    "lang_ko": "한국어",
    "lang_es": "Español",
    "lang_fr": "Français",
    "lang_de": "Deutsch",
    "lang_ru": "Русский",
    "lang_ar": "العربية",
    "lang_pt": "Português",
    "lang_it": "Italiano",
    "lang_af": "Afrikaans",
    "lang_hy": "Հայերեն",
    "lang_az": "Azərbaycan",
    "lang_be": "Беларуская",
    "lang_bs": "Bosanski",
    "lang_bg": "Български",
    "lang_ca": "Català",
    "lang_hr": "Hrvatski",
    "lang_cs": "Čeština",
    "lang_da": "Dansk",
    "lang_nl": "Nederlands",
    "lang_et": "Eesti",
    "lang_fi": "Suomi",
    "lang_gl": "Galego",
    "lang_el": "Ελληνικά",
    "lang_he": "עברית",
    "lang_hi": "हिन्दी",
    "lang_hu": "Magyar",
    "lang_is": "Íslenska",
    "lang_id": "Bahasa Indonesia",
    "lang_kn": "ಕನ್ನಡ",
    "lang_kk": "Қазақша",
    "lang_lv": "Latviešu",
    "lang_lt": "Lietuvių",
    "lang_mk": "Македонски",
    "lang_ms": "Bahasa Melayu",
    "lang_mr": "मराठी",
    "lang_mi": "Te Reo Māori",
    "lang_ne": "नेपाली",
    "lang_no": "Norsk",
    "lang_fa": "فارسی",
    "lang_pl": "Polski",
    "lang_ro": "Română",
    "lang_sr": "Српски",
    "lang_sk": "Slovenčina",
    "lang_sl": "Slovenščina",
    "lang_sw": "Kiswahili",
    "lang_sv": "Svenska",
    "lang_tl": "Tagalog",
    "lang_fil": "Filipino",
    "lang_ta": "தமிழ்",
    "lang_th": "ไทย",
    "lang_tr": "Türkçe",
    "lang_uk": "Українська",
    "lang_ur": "اردو",
    "lang_vi": "Tiếng Việt",
    "lang_cy": "Cymraeg",
    "lang_zh-CN": "中文（简体，中国）",
    "lang_zh-TW": "中文（繁體，台灣）",
    "lang_zh-HK": "粵語（香港）",
    "lang_yue-Hant-HK": "粵語（繁體）",
    "lang_en-US": "English (United States)",
    "lang_en-GB": "English (United Kingdom)",
    "lang_en-AU": "English (Australia)",
    "lang_en-CA": "English (Canada)",
    "lang_en-IN": "English (India)",
    "lang_en-NZ": "English (New Zealand)",
    "lang_en-ZA": "English (South Africa)",
    "lang_ja-JP": "日本語（日本）",
    "lang_ko-KR": "한국어（대한민국）",
    "lang_de-DE": "Deutsch (Deutschland)",
    "lang_fr-FR": "Français (France)",
    "lang_es-ES": "Español (España)",
    "lang_es-MX": "Español (México)",
    "lang_es-AR": "Español (Argentina)",
    "lang_es-CO": "Español (Colombia)",
    "lang_it-IT": "Italiano (Italia)",
    "lang_pt-BR": "Português (Brasil)",
    "lang_pt-PT": "Português (Portugal)",
    "lang_ru-RU": "Русский (Россия)",
    "lang_nl-NL": "Nederlands (Nederland)",
    "lang_pl-PL": "Polski (Polska)",
    "lang_cs-CZ": "Čeština (Česko)",
    "lang_da-DK": "Dansk (Danmark)",
    "lang_fi-FI": "Suomi (Suomi)",
    "lang_sv-SE": "Svenska (Sverige)",
    "lang_no-NO": "Norsk (Norge)",
    "lang_tr-TR": "Türkçe (Türkiye)",
    "lang_el-GR": "Ελληνικά (Ελλάδα)",
    "lang_hu-HU": "Magyar (Magyarország)",
    "lang_ro-RO": "Română (România)",
    "lang_sk-SK": "Slovenčina (Slovensko)",
    "lang_bg-BG": "Български (България)",
    "lang_hr-HR": "Hrvatski (Hrvatska)",
    "lang_ca-ES": "Català (Espanya)",
    "lang_ar-SA": "العربية (السعودية)",
    "lang_ar-EG": "العربية (مصر)",
    "lang_he-IL": "עברית (ישראל)",
    "lang_hi-IN": "हिन्दी (भारत)",
    "lang_th-TH": "ไทย (ประเทศไทย)",
    "lang_vi-VN": "Tiếng Việt (Việt Nam)",
    "lang_id-ID": "Bahasa Indonesia (Indonesia)",
    "lang_ms-MY": "Bahasa Melayu (Malaysia)",
    "lang_fil-PH": "Filipino (Pilipinas)",
    "lang_af-ZA": "Afrikaans (Suid-Afrika)",
    "lang_uk-UA": "Українська (Україна)",
    "pdfSettings": "PDF 解析",
    "documentParsingSettings": "文档解析",
    "supportedFormats": "支持的格式",
    "mineruSelfHostFormatsNote": "解析 PDF 和图片需要 MinerU 服务器安装 mineru[pipeline] 或 mineru[core] 依赖。轻量版 mineru-api 可能仅支持 Office 文档。",
    "pdfParsingSettings": "PDF 解析设置",
    "pdfDescription": "选择 PDF 解析引擎，支持文本提取、图片处理和表格识别",
    "pdfProvider": "PDF 解析器",
    "pdfFeatures": "支持功能",
    "pdfApiKey": "API Key",
    "pdfBaseUrl": "Base URL",
    "mineruDescription": "MinerU 是一个商用 PDF 解析服务，支持高级功能如表格提取、公式识别和布局分析。",
    "mineruApiKeyRequired": "使用前需要在 MinerU 官网申请 API Key。",
    "mineruWarning": "注意",
    "mineruCostWarning": "MinerU 为商用服务，使用可能产生费用。请查看 MinerU 官网了解定价详情。",
    "enterMinerUApiKey": "输入 MinerU API Key",
    "mineruLocalDescription": "MinerU 支持本地部署，提供高级 PDF 解析功能（表格、公式、布局分析）。需要先部署 MinerU 服务。",
    "mineruServerAddress": "本地 MinerU 服务器地址（如：http://localhost:8080）",
    "mineruApiKeyOptional": "仅在服务器启用认证时需要",
    "mineruCloudApiKeyPlaceholder": "输入 MinerU Cloud API Key",
    "optionalApiKey": "可选的 API Key",
    "featureText": "文本提取",
    "featureImages": "图片提取",
    "featureTables": "表格提取",
    "featureFormulas": "公式识别",
    "featureLayoutAnalysis": "布局分析",
    "featureMetadata": "元数据",
    "enableImageGeneration": "启用 AI 图片生成",
    "imageGenerationDisabledHint": "启用后，课程生成时将自动生成配图",
    "imageSettings": "图像生成",
    "imageSection": "文生图",
    "imageProvider": "图像生成提供商",
    "imageModel": "图像生成模型",
    "providerSeedream": "Seedream（字节豆包）",
    "providerOpenAIImage": "OpenAI 图像",
    "providerQwenImage": "Qwen Image（阿里通义）",
    "providerNanoBanana": "Nano Banana（Gemini）",
    "providerMiniMaxImage": "MiniMax 图像",
    "providerGrokImage": "Grok Image（xAI）",
    "providerComfyUIImage": "ComfyUI Image",
    "providerLemonadeImage": "Lemonade 图像（本地）",
    "testImageGeneration": "测试图像生成",
    "testImageConnectivity": "测试连接",
    "imageConnectivitySuccess": "图像服务连接成功",
    "imageConnectivityFailed": "图像服务连接失败",
    "imageTestSuccess": "图像生成测试成功",
    "imageTestFailed": "图像生成测试失败",
    "imageTestPromptPlaceholder": "输入图像描述进行测试",
    "imageTestPromptDefault": "一只可爱的猫咪坐在书桌上",
    "imageGenerating": "正在生成图像...",
    "imageGenerationFailed": "图像生成失败",
    "enableVideoGeneration": "启用 AI 视频生成",
    "videoGenerationDisabledHint": "启用后，课程生成时将自动生成视频",
    "videoSettings": "视频生成",
    "videoSection": "文生视频",
    "videoProvider": "视频生成提供商",
    "videoModel": "视频生成模型",
    "providerSeedance": "Seedance（字节跳动）",
    "providerKling": "可灵（快手）",
    "providerVeo": "Veo（Google）",
    "providerSora": "Sora（OpenAI）",
    "providerMiniMaxVideo": "MiniMax 视频",
    "providerGrokVideo": "Grok Video（xAI）",
    "providerHappyHorse": "HappyHorse（阿里云百炼）",
    "testVideoGeneration": "测试视频生成",
    "testVideoConnectivity": "测试连接",
    "videoConnectivitySuccess": "视频服务连接成功",
    "videoConnectivityFailed": "视频服务连接失败",
    "testingConnection": "正在测试...",
    "videoTestSuccess": "视频生成测试成功",
    "videoTestFailed": "视频生成测试失败",
    "videoTestPromptDefault": "一只可爱的猫咪在书桌上行走",
    "videoGenerating": "正在生成视频（预计1-2分钟）...",
    "videoGenerationWarning": "视频生成通常需要1-2分钟，请耐心等待",
    "mediaRetry": "重试",
    "mediaContentSensitive": "抱歉，该内容触发了安全检查",
    "mediaGenerationDisabled": "已在设置中关闭生成",
    "singleAgent": "单智能体模式",
    "multiAgent": "多智能体模式",
    "selectAgents": "选择智能体",
    "noVisionWarning": "当前模型不支持视觉能力，图片仍可放入幻灯片，但模型无法理解图片内容来优化选择和布局",
    "serverConfigured": "服务端",
    "serverConfiguredNotice": "此提供方由服务端托管，无法在此修改。如需使用自己的凭据，请新增一个提供方。",
    "ttsProviderEnabledLabel": "启用此提供方",
    "ttsProviderEnabledHint": "关闭后，此提供方将不会出现在语音选择器中，也不会被自动分配。",
    "ttsProviderUnavailableHint": "请先配置此提供方再启用。",
    "ttsProviderDisabledByAdmin": "此提供方已被服务端管理员禁用，无法启用。",
    "optionalOverride": "可选，留空则使用服务端配置",
    "setupNeeded": "请先完成配置",
    "modelNotConfigured": "请选择一个模型以开始使用",
    "dangerZone": "危险区域",
    "clearCache": "清空本地缓存",
    "clearCacheDescription": "删除所有本地存储的数据，包括课堂记录、对话历史、音频缓存和应用配置。此操作不可撤销。",
    "clearCacheConfirmTitle": "确定要清空所有缓存吗？",
    "clearCacheConfirmDescription": "此操作将永久删除以下所有数据，且无法恢复：",
    "clearCacheConfirmItems": "课堂和场景数据、对话历史记录、音频和图片缓存、应用设置和偏好",
    "clearCacheConfirmInput": "请输入「确认删除」以继续",
    "clearCacheConfirmPhrase": "确认删除",
    "clearCacheButton": "永久删除所有数据",
    "clearCacheSuccess": "缓存已清空，页面即将刷新",
    "clearCacheFailed": "清空缓存失败，请重试",
    "clearCacheBlockedByOtherTabs": "请关闭其他打开此应用的标签页，然后重试。",
    "persistUnavailable": "更改未被保存：应用无法访问已存储的数据。如果刷新后仍未恢复，请在设置中清除本地缓存。",
    "persistChangesLost": "存储已恢复，但在其不可用期间所做的更改未能保存，已被上次保存的版本覆盖。",
    "webSearchSettings": "网络搜索",
    "webSearchApiKey": "搜索 API Key",
    "webSearchApiKeyPlaceholder": "输入你的搜索 API Key",
    "webSearchApiKeyPlaceholderServer": "已配置服务端密钥，可选填覆盖",
    "webSearchApiKeyHint": "从所选搜索服务商获取 API Key，用于网络搜索",
    "claudeSearchModel": "搜索模型",
    "claudeSearchModelHint": "用于执行网络搜索并总结结果的 Claude 模型。",
    "webSearchApiKeyOptional": "API Key 为可选项。未填写时将通过公开页面抓取获取结果。",
    "searxngServerOnlyNotice": "SearXNG 须由服务端配置。请设置 SEARXNG_BASE_URL 环境变量（或在 server-providers.yml 的 web-search 段中配置）。不接受客户端自行填写实例地址。",
    "baiduSubSources": "百度搜索源",
    "baiduSubSourcesDescription": "选择至少一个百度数据源参与搜索。",
    "baiduSubSourceWeb": "网页搜索",
    "baiduSubSourceWebDescription": "使用百度 AI 搜索获取通用网页结果。",
    "baiduSubSourceBaike": "百度百科",
    "baiduSubSourceBaikeDescription": "使用百度百科获取词条摘要。",
    "baiduSubSourceScholar": "百度学术",
    "baiduSubSourceScholarDescription": "使用百度学术获取论文结果。",
    "viewDocs": "API 文档",
    "webSearchBaseUrl": "Base URL",
    "webSearchServerConfigured": "服务端已配置搜索 API Key",
    "optional": "可选",
    "selectProvider": "选择厂商",
    "customProvider": "自定义",
    "presetPickHint": "选择厂商后将自动填入接口地址与协议，填好密钥再点「拉取模型」即可。不在列表中可用「自定义」。",
    "presetCategory": {
      "tokenPlan": "Token Plan 套餐",
      "aggregator": "聚合 / 网关",
      "thirdParty": "厂商直连",
      "official": "官方"
    },
    "fetchModels": "拉取模型",
    "fetchModelsResult": "已拉取 {total} 个模型，新增 {added} 个",
    "fetchModelsNoEndpoint": "该服务商未提供模型列表接口，请手动「新建模型」",
    "fetchModelsAuthError": "API 密钥无效或已过期",
    "fetchModelsFailed": "拉取模型失败",
    "usage": {
      "title": "用量统计",
      "refresh": "刷新",
      "disclaimer": "用量为系统统计,仅统计经服务端的调用。",
      "totalRequests": "总请求数",
      "totalTokens": "语言模型 Token",
      "dailyTrend": "每日 Token 趋势",
      "tokens": "Token",
      "byModel": "按模型",
      "model": "模型",
      "type": "类型",
      "reqs": "请求",
      "usage": "用量",
      "empty": "暂无用量数据",
      "kindLlm": "语言模型",
      "kindImage": "图像",
      "kindVideo": "视频",
      "kindTts": "语音合成",
      "kindAsr": "语音识别",
      "unitToken": "Token",
      "unitImage": "张",
      "unitSecond": "秒",
      "unitCharacter": "字符"
    },
    "tokenPlan": {
      "nav": "Token Plan",
      "title": "Token Plan 一键配置",
      "desc": "选择你的 Token Plan 服务商并填入密钥，将自动配置所有已适配的模态(语言模型/图像/视频/语音/网络搜索)。",
      "selectPlan": "选择服务商",
      "apiKey": "API 密钥",
      "enable": "启用",
      "updateKey": "更新密钥",
      "modelsCount": "{{n}} 个模型",
      "capabilities": "套餐提供的能力",
      "offeredNote": "套餐提供的模型清单。请在生成界面选择需要使用的模型——是否可用取决于你的套餐档位，不支持的模型会在生成时报错。"
    },
    "skills": {
      "nav": "技能",
      "title": "Skill 设置",
      "description": "查看当前账号已安装的技能，查看详情，或下载为 zip 以便分享和备份。",
      "mySkills": "我的技能",
      "builtinSkills": "内置技能",
      "emptyMySkills": "还没有自己的技能——在对话里让 agent 从历史创建一个。",
      "emptyBuiltinSkills": "暂无内置技能。",
      "listFailed": "技能列表加载失败",
      "retry": "重试",
      "badgeBuiltin": "内置",
      "badgeOwner": "我的技能",
      "badgeConstraints": "含约束",
      "details": "详情",
      "download": "下载",
      "detailFailed": "技能详情加载失败",
      "contentLabel": "正文",
      "builtinDetailNote": "该技能随 OpenMAIC 提供。下载后可导入其他智能体工作台。",
      "upload": "上传",
      "uploading": "正在上传…",
      "uploadFailed": "技能上传失败。请检查文件后重试。",
      "delete": "删除",
      "deleting": "正在删除…",
      "deleteTitle": "删除技能？",
      "deleteConfirm": "这会从你的账号中移除该技能，且无法撤销。",
      "deleteFailed": "技能删除失败，请重试。"
    },
    "ttsBrowserNativeTimelineNotice": "浏览器内置 TTS 不支持编辑器时间轴的音频功能（试听、重新生成、全部配音）。切换到托管 TTS 提供方即可逐句生成和管理音频。",
    "alidocmindAccessKeyId": "AccessKey ID",
    "alidocmindAccessKeySecret": "AccessKey Secret"
  },
  "workspace": {
    "untitledCourse": "未命名课堂",
    "sceneCount": "{{count}} 页",
    "sceneCount_one": "{{count}} 页",
    "sceneCount_other": "{{count}} 页",
    "courseLinkHint": "在右侧打开《{{name}}》",
    "courseLinkMore": "还有 {{count}} 节课堂",
    "courseMention": {
      "title": "为这条消息引用课堂",
      "empty": "没有匹配的课堂",
      "alreadyNamed": "已引用",
      "remove": "移除{{name}}",
      "pillHint": "这条消息引用了「{{name}}」",
      "notAccepted": "服务暂时不可用，请稍后重试。",
      "reference": "引用「{{name}}」",
      "capped": "仅显示前 {{count}} 个，继续输入以缩小范围"
    },
    "heroTitle": "今天想创造点什么？",
    "heroSubtitle": "说出你的想法，把它变成一段可以亲历的学习旅程",
    "newSession": "新建对话",
    "sections": {
      "courses": "课程",
      "sessions": "对话"
    },
    "coursesEmpty": "还没有课程",
    "sessionsEmpty": "还没有对话",
    "loading": "加载中",
    "loadFailed": "加载失败",
    "retry": "重试",
    "untitledSession": "未命名对话",
    "pagePosition": "第 {{index}} / {{total}} 页",
    "exitPro": "退出 Pro",
    "navAria": "工作区导航",
    "homeAria": "返回首页",
    "currentSession": "当前对话",
    "startLearning": "开始学习",
    "time": {
      "justNow": "刚刚",
      "minutesAgo": "{{count}} 分钟前",
      "hoursAgo": "{{count}} 小时前",
      "daysAgo": "{{count}} 天前"
    },
    "sessionStatus": {
      "connecting": "连接中",
      "queued": "排队中",
      "running": "进行中",
      "succeeded": "已就绪",
      "failed": "需处理",
      "cancelled": "已停止"
    },
    "backToWorkspace": "返回工作区",
    "searchPlaceholder": "按名称筛选",
    "searchAria": "在{{section}}中搜索",
    "searchEmpty": "没有匹配的内容",
    "showMore": "展示更多 {{count}}",
    "showLess": "收起",
    "utilitiesAria": "偏好设置与账号",
    "resizeAria": "拖动调整侧栏宽度",
    "chatPaneAria": "对话面板",
    "classroomPaneAria": "课堂",
    "collapseNav": "收起导航",
    "expandNav": "展开导航",
    "expandNavInto": "展开导航 · {{section}}",
    "collapseChat": "收起对话",
    "expandChat": "对话",
    "collapseClassroom": "收起课堂",
    "expandClassroom": "课堂",
    "readOnlyBadge": "只读",
    "noCourseTitle": "还没有打开课堂",
    "noCourseHint": "点对话里的课堂链接打开，或在左侧列表里选一节；对话会一直在这儿",
    "resizeChatAria": "拖动调整对话栏宽度",
    "firstPageLanding": "第一页正在落库…",
    "autoSaving": "自动保存中…",
    "autoSaved": "已保存",
    "collapsedTitle": "两侧面板都收起了",
    "collapsedHint": "点左边的标签，把对话或课堂展开",
    "moreUtilities": "更多",
    "rowMore": "{{name}}的更多操作",
    "folderDeleteHint": "文件夹里的课堂会回到列表顶层，不会被删除。",
    "dropToUnfile": "放到这里移出文件夹",
    "renameInvalid": "名称需为 1–120 个字符",
    "renameForbidden": "这节课不是你创建的，不能重命名",
    "renameGone": "课堂不存在或已被删除",
    "renameSession": "重命名对话",
    "renameSessionAria": "重命名对话“{{name}}”",
    "renameSessionFailed": "重命名失败，请重试",
    "delete": "删除",
    "confirmDelete": "确认删除",
    "deleting": "删除中…",
    "deleteFailed": "删除失败，请重试",
    "tabsAria": "对话与课程",
    "courseTabsAria": "右栏标签页",
    "courseTabClose": "关闭标签页《{{name}}》",
    "courseTabRunning": "生成中",
    "foldersUnavailable": "此版本不支持文件夹"
  },
  "profile": {
    "title": "个人资料",
    "defaultNickname": "同学",
    "chooseAvatar": "选择头像",
    "uploadAvatar": "上传",
    "bioPlaceholder": "介绍一下自己，AI老师会根据你的背景个性化教学...",
    "avatarHint": "你的头像将显示在课堂讨论和对话中",
    "fileTooLarge": "图片过大，请选择小于 5MB 的图片",
    "invalidFileType": "请选择图片文件",
    "editTooltip": "点击编辑个人资料"
  },
  "media": {
    "imageCapability": "图像生成",
    "imageHint": "课件中生成配图",
    "videoCapability": "视频生成",
    "videoHint": "课件中生成视频",
    "ttsCapability": "语音合成",
    "ttsHint": "AI 老师语音讲解",
    "asrCapability": "语音识别",
    "asrHint": "语音输入参与讨论",
    "provider": "服务商",
    "model": "模型",
    "voice": "音色",
    "speed": "语速",
    "language": "语言"
  },
  "accessCode": {
    "title": "请输入访问码",
    "placeholder": "访问码",
    "error": "访问码错误，请重试。"
  },
  "proMode": {
    "attach": "添加材料",
    "mentionCourse": "引用课堂",
    "loadSkill": "加载 skill",
    "skillMenuTitle": "选择课程设计技能",
    "skillsLoading": "正在加载 skill…",
    "noSkillsAvailable": "暂无可用 skill",
    "userSkillsGroup": "我的 Skill",
    "builtinSkillsGroup": "内置 Skill",
    "skillsLoadFailed": "Skill 加载失败，点击重试",
    "retrySkills": "重试",
    "noSkillMatch": "没有匹配“{{query}}”的 Skill",
    "badgeAria": "专业模式",
    "badgeEnter": "专业模式",
    "badgeExit": "返回普通模式",
    "launchPlaceholder": "描述你想创造的学习体验",
    "launchSend": "开始构建"
  },
  "workbench": {
    "tool": {
      "label": {
        "extractMaterial": null,
        "waitMaterials": null
      },
      "error": {
        "materialExtraction": null
      }
    }
  }
}
