{
  "common": {
    "you": "あなた",
    "confirm": "確認",
    "cancel": "キャンセル",
    "loading": "読み込み中...",
    "errorPrefix": "エラー：",
    "loadingClassroom": "教室を読み込み中...",
    "retry": "再試行",
    "close": "閉じる"
  },
  "home": {
    "slogan": "マルチエージェント対話型教室で生成的に学ぶ",
    "greetingWithName": "こんにちは、{{name}}さん"
  },
  "toolbar": {
    "pdfParser": "パーサー",
    "pdfUpload": "PDFをアップロード",
    "removePdf": "ファイルを削除",
    "documentExtractor": "抽出器",
    "courseMaterialUpload": "教材をアップロード",
    "courseMaterialsSelected": "{{n}}件の教材を選択済み",
    "courseMaterialMergeOrder": "教材は下に表示された順序で結合されます。",
    "removeCourseMaterial": "ファイルを削除",
    "webSearchOn": "有効",
    "webSearchOff": "クリックして有効化",
    "webSearchDesc": "生成前にウェブ検索で最新情報を取得します",
    "webSearchProvider": "検索エンジン",
    "webSearchNoProvider": "設定画面で検索APIキーを設定してください",
    "selectProvider": "プロバイダーを選択",
    "configureProvider": "モデルを設定",
    "configureProviderHint": "コースを生成するには、少なくとも1つのモデルプロバイダーを設定してください",
    "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": "Q&Aを終了",
    "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": "3次曲線",
      "solid": "実線",
      "dashed": "破線",
      "dotted": "点線",
      "none": "なし",
      "arrow": "矢印",
      "dot": "点"
    },
    "insert": {
      "toolbar": "挿入ツールバー",
      "textBox": "テキストボックス",
      "line": "線",
      "linePresets": {
        "straight": "直線",
        "dashed": "破線",
        "arrow": "矢印線",
        "dashedArrow": "破線矢印",
        "dottedEnd": "終点ドット線",
        "broken": "折れ線",
        "doubleBroken": "二重折れ線",
        "curve": "曲線",
        "cubic": "3次曲線"
      },
      "table": "表",
      "formula": "数式",
      "chart": "グラフ",
      "chartBar": "棒グラフ",
      "chartLine": "折れ線グラフ",
      "chartPie": "円グラフ",
      "tableDimensions": "{{rows}} x {{columns}} 表",
      "dragToolbar": "挿入ツールを移動",
      "dragToolbarKeyboard": "挿入ツールを移動：Enter または Space を押してから矢印キーで移動",
      "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}}：選択肢は2つ以上必要です",
        "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": "今後さらに機能を追加予定です。"
      },
      "cap": {
        "content": {
          "label": "スライドを再生成",
          "examples": "「要点を3つに」「身近な例を追加」"
        },
        "narration": {
          "label": "ナレーション原稿を再生成",
          "examples": "「もっと口語的に」「編集内容に合わせて」"
        },
        "fixHtml": {
          "examples": "「スタートボタンを押しても何も起きない」「スマホでパネルが重なる」",
          "label": "ページの不具合を修正"
        },
        "elements": {
          "label": "要素を微調整",
          "examples": "「タイトルを青くして上に」「この図を小さく」"
        }
      },
      "newConversation": "新しい会話",
      "sessionHistory": "履歴",
      "sessionUntitled": "無題の会話",
      "sessionDelete": "削除",
      "sessionEmpty": "履歴はありません",
      "reasoning": "思考プロセス",
      "thought": "思考時間",
      "interactive": {
        "boundary": "ページの不具合をピンポイントで修正します。ページ全体の作り直しはしません。シーンの切り替えは左のナビからどうぞ。",
        "emptyTitle": "このページの何を修正しますか？",
        "lead": "このインタラクティブページの不具合（例：押しても反応しないボタン）を教えてください。その箇所だけを修正し、ほかはそのまま残します。",
        "placeholder": "このインタラクティブページの不具合を入力…"
      },
      "thinking": "考え中…",
      "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": "各シーンにディスカッションは1つまで",
      "discussionTerminal": "末尾",
      "discussionTerminalHint": "ディスカッションはシーンの末尾に固定され、各シーンに1つだけです",
      "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": "上限に達しました。1 つ解除して入れ替え · 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": "再適用"
    },
    "readCard": {
      "title": "ページ内容を読み取り",
      "reading": "読み取り中",
      "done": "読み取り済み",
      "failed": "未読み取り"
    },
    "fixHtml": {
      "editsCount": "{{count}} 件の修正",
      "fixed": "修正済み",
      "fixing": "修正中",
      "notFixed": "未修正",
      "title": "インタラクティブページを修正"
    },
    "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": "要素参照 — 次のメッセージと一緒に送る要素を選ぶ",
      "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": "Q&Aが終了しました",
    "softClosing": "話し合いを続ける",
    "thinking": "思考中",
    "yourTurn": "あなたの番です",
    "stopDiscussion": "ディスカッションを終了",
    "autoPlay": "自動再生",
    "autoPlayOff": "自動再生を停止",
    "speed": "速度",
    "previousLine": "Previous line",
    "nextLine": "Next line",
    "lineProgress": "Line {{current}} / {{total}}",
    "voiceInput": "音声入力",
    "voiceInputDisabled": "音声入力無効",
    "textInput": "テキスト入力",
    "stopRecording": "録音を停止",
    "startRecording": "録音を開始"
  },
  "pbl": {
    "emptyProject": "PBLプロジェクトがまだ生成されていません。コース生成から作成してください。",
    "v2": {
      "hero": {
        "title": "プロジェクトベースドラーニング",
        "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": "ファイルが5MBを超えています。分割するか圧縮してください。",
        "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": "ファイルを選択 · 最大5MB · テキスト / 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": "このシナリオでは各幕にいくつかの重要な目標を設定しています。実際のやり取りをもとに振り返ると、今回は {{total}} 個中 {{achieved}} 個を達成しました。",
          "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": "全角・半角どちらもOK。スペースもカウントされます。",
    "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": "PBL",
    "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エンドポイントURL",
    "apiBaseUrlDesc": "APIエンドポイントURLの設定",
    "apiKeyRequired": "APIキーを入力してください",
    "model": "モデル設定",
    "modelDesc": "AIモデルの設定",
    "modelPlaceholder": "モデル名を入力または選択",
    "ttsModel": "TTSモデル",
    "ttsModelDesc": "音声合成モデルの設定",
    "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": "LLM",
    "addProviderDescription": "カスタムモデルプロバイダーを追加して利用可能なAIモデルを拡張",
    "providerNames": {
      "openai": "OpenAI",
      "azure": "Azure OpenAI",
      "anthropic": "Claude",
      "google": "Gemini",
      "bedrock": "Amazon Bedrock",
      "deepseek": "DeepSeek",
      "qwen": "Qwen",
      "kimi": "Kimi",
      "minimax": "MiniMax",
      "glm": "GLM",
      "siliconflow": "SiliconFlow",
      "doubao": "豆包",
      "openrouter": "OpenRouter",
      "grok": "Grok",
      "tencent-hunyuan": "Tencent Hunyuan",
      "xiaomi": "Xiaomi MiMo",
      "lemonade": "Lemonade（ローカル）",
      "ollama": "Ollama（ローカルモデル）",
      "tavily": "Tavily",
      "bocha": "Bocha",
      "brave": "Brave Search",
      "baidu": "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": "ベースURL",
    "azureDeploymentHint": "上に Azure OpenAI エンドポイントを入力し、各 Azure デプロイ名をモデルとして追加してください。",
    "baseUrlRegion": {
      "china": "中国",
      "international": "国際",
      "xiaomiPayg": "従量課金",
      "xiaomiTokenPlanCN": "Token Plan 中国",
      "xiaomiTokenPlanSGP": "Token Plan シンガポール",
      "xiaomiTokenPlanEU": "Token Plan 欧州"
    },
    "requestUrl": "リクエストURL",
    "models": "モデル",
    "comfyuiWorkflows": "ワークフロー",
    "comfyuiRefresh": "更新",
    "comfyuiNoWorkflowsFoundPrefix": "ワークフローのJSONファイルが見つかりません：",
    "comfyuiAddWorkflowPrefix": "追加してください：",
    "comfyuiAddWorkflowSuffix": "ファイルを追加して開始します。",
    "comfyuiFolderHintPrefix": "ワークフローのJSONファイルを",
    "comfyuiFolderHintMiddle": "フォルダに配置してください。ファイル名が表示名になります。例：",
    "comfyuiLoadError": "ワークフローの読み込みに失敗しました: {error}",
    "addModel": "追加",
    "reset": "リセット",
    "fetch": "取得",
    "connectionSuccess": "接続に成功しました",
    "connectionFailed": "接続に失敗しました",
    "capabilities": {
      "vision": "画像認識",
      "tools": "ツール",
      "streaming": "ストリーミング"
    },
    "contextWindow": "コンテキスト",
    "contextShort": "ctx",
    "outputWindow": "出力",
    "addProviderButton": "追加",
    "addProviderDialog": "モデルプロバイダーを追加",
    "providerName": "名前",
    "providerNamePlaceholder": "例：My OpenAI Proxy",
    "providerNameRequired": "プロバイダー名を入力してください",
    "providerApiMode": "APIモード",
    "apiModeOpenAI": "OpenAIプロトコル",
    "apiModeAnthropic": "Claudeプロトコル",
    "apiModeGoogle": "Geminiプロトコル",
    "defaultBaseUrl": "デフォルトのベースURL",
    "providerIcon": "プロバイダーのアイコンURL",
    "requiresApiKey": "APIキーが必要",
    "deleteProvider": "プロバイダーを削除",
    "deleteProviderConfirm": "このプロバイダーを削除してもよろしいですか？",
    "addCustomTTSProvider": "カスタムTTSプロバイダーを追加",
    "addCustomASRProvider": "カスタムASRプロバイダーを追加",
    "addCustomAudioProviderDescription": "OpenAI互換のオーディオプロバイダーを追加",
    "customVoices": "音声リスト",
    "voiceIdPlaceholder": "音声ID（例: alloy）",
    "voiceNamePlaceholder": "表示名",
    "addVoice": "追加",
    "modelNamePlaceholder": "任意",
    "defaultModelHint": "APIリクエストで送信されるモデル名（例: kokoro、tts-1）",
    "noVoicesAdded": "音声がまだ追加されていません。エージェントごとの音声選択のために下で追加してください。",
    "noModelsAdded": "モデルがまだ追加されていません。モデル選択のために下で追加してください。",
    "noModelsWarning": "このプロバイダーを使用するには、まず下でモデルを追加してください。",
    "asrNoTranscription": "文字起こし結果がありません。もう少し大きな声で、長めに話してみてください。",
    "cannotDeleteBuiltIn": "組み込みプロバイダーは削除できません",
    "resetToDefault": "デフォルトに戻す",
    "resetToDefaultDescription": "モデルリストをデフォルト設定に復元します（APIキーとベースURLは保持されます）",
    "resetConfirmDescription": "すべてのカスタムモデルが削除され、組み込みのデフォルトモデルリストに復元されます。APIキーとベースURLは保持されます。",
    "confirmReset": "リセットを確認",
    "resetSuccess": "デフォルト設定に正常にリセットされました",
    "saveSuccess": "設定を保存しました",
    "saveFailed": "設定の保存に失敗しました。もう一度お試しください",
    "cannotDeleteBuiltInModel": "組み込みモデルは削除できません",
    "cannotEditBuiltInModel": "組み込みモデルは編集できません",
    "modelIdRequired": "モデルIDを入力してください",
    "noModelsAvailable": "テスト可能なモデルがありません",
    "providerMetadata": "プロバイダーメタデータ",
    "editModel": "モデルを編集",
    "editModelDescription": "モデルの設定と機能を編集",
    "addNewModel": "新しいモデル",
    "modelsManagementDescription": "このプロバイダーで利用できるモデルと機能を管理します。",
    "addNewModelDescription": "新しいモデル設定を追加",
    "modelId": "モデルID",
    "modelIdPlaceholder": "例：gpt-4o",
    "modelName": "表示名",
    "modelCapabilities": "機能",
    "advancedSettings": "詳細設定",
    "contextWindowLabel": "コンテキストウィンドウ",
    "contextWindowPlaceholder": "例：128000",
    "outputWindowLabel": "最大出力トークン数",
    "outputWindowPlaceholder": "例：4096",
    "testModel": "モデルをテスト",
    "deleteModel": "削除",
    "cancelEdit": "キャンセル",
    "saveModel": "保存",
    "howToUse": "使い方",
    "step1ConfigureProvider": "「モデルプロバイダー」でプロバイダーを選択または追加し、接続設定（APIキー、ベース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": "エージェントごとのボイスはホームページの「教室の役割設定」で設定できます",
    "enableASR": "音声認識を有効にする",
    "asrEnabledDescription": "有効にすると、マイクを使った音声入力が可能になります",
    "ttsProvider": "TTSプロバイダー",
    "ttsLanguageFilter": "言語フィルター",
    "allLanguages": "すべての言語",
    "ttsVoice": "ボイス",
    "ttsSpeed": "速度",
    "ttsBaseUrl": "ベースURL",
    "ttsApiKey": "APIキー",
    "doubaoAppId": "App ID",
    "doubaoAccessKey": "アクセスキー",
    "asrProvider": "ASRプロバイダー",
    "asrLanguage": "認識言語",
    "asrBaseUrl": "ベースURL",
    "asrApiKey": "APIキー",
    "enterApiKey": "APIキーを入力",
    "enterCustomBaseUrl": "カスタムベースURLを入力",
    "browserNativeNote": "ブラウザネイティブASRは設定不要で完全無料です",
    "providerOpenAITTS": "OpenAI TTS (gpt-4o-mini-tts)",
    "providerAzureTTS": "Azure TTS",
    "providerGLMTTS": "GLM TTS",
    "providerQwenTTS": "Qwen TTS（Alibaba Cloud百錬）",
    "providerVoxCPMTTS": "VoxCPM2",
    "providerDoubaoTTS": "Doubao TTS 2.0（火山エンジン）",
    "providerElevenLabsTTS": "ElevenLabs TTS",
    "providerMiniMaxTTS": "MiniMax TTS",
    "providerLemonadeTTS": "Lemonade TTS（ローカル）",
    "providerBrowserNativeTTS": "ブラウザネイティブTTS",
    "voxcpmBackend": "バックエンド",
    "voxcpmBaseUrlPending": "Base URL を入力するとリクエスト URL が生成されます",
    "voxcpmAutoVoiceNoPreview": "自動音色は Agent のコンテキストから生成されるため、単独では試聴できません",
    "voxcpmVoicesTitle": "VoxCPM 音色",
    "voxcpmVoicesDescription": "このブラウザに保存され、Agent Bar の共通音色プールに追加されます。",
    "voxcpmAutoVoicePrivacyNote": "自動音色は Agent の persona を音色プロンプトとして、設定済みの VoxCPM バックエンドに送信します。",
    "voxcpmPromptCount": "Prompt {{count}}",
    "voxcpmCloneCount": "クローン {{count}}",
    "voxcpmCloneUnsupported": "現在のバックエンドはクローンに対応していません",
    "voxcpmVoicePool": "音色プール",
    "voxcpmVoiceCount": "{{count}} 件",
    "voxcpmAutoVoice": "自動音色",
    "voxcpmAutoVoiceDescription": "Agent の persona を音色プロンプトとして使用",
    "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 Cloned Voices",
    "qwenCloneRefText": "Enter the verbatim transcript of the reference audio",
    "qwenCloneRefAudioHint": "Use a clean 1–60 second voice sample. A 10–20 second sample is recommended; audio is converted to 24 kHz mono PCM WAV.",
    "qwenCloneSaved": "Qwen cloned voice registered and saved",
    "qwenCloneSaveFailed": "Failed to register the Qwen cloned voice",
    "qwenCloneUnsupported": "Recording is not supported in this browser; upload an audio file instead.",
    "qwenCloneSpeedHint": "Cloned voices always synthesize at 1× speed.",
    "qwenCloneDeleteWarning": "The voice was removed locally, but provider deletion failed.",
    "qwenCloneNarrationUnavailable": "The assigned voice is unavailable. Narration will use another enabled voice instead.",
    "qwenCloneDiscussionUnavailable": "The assigned voice is unavailable. Discussion will use another enabled voice instead.",
    "providerOpenAIWhisper": "OpenAI ASR (gpt-4o-mini-transcribe)",
    "providerBrowserNative": "ブラウザネイティブASR",
    "providerQwenASR": "Qwen ASR（Alibaba Cloud百錬）",
    "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ボイスがありません",
    "microphoneAccessDenied": "マイクへのアクセスが拒否されました",
    "microphoneAccessFailed": "マイクへのアクセスに失敗しました",
    "asrResultPlaceholder": "録音後に認識結果が表示されます",
    "useThisProvider": "このプロバイダーを使用",
    "fetchVoices": "ボイスリストを取得",
    "fetchingVoices": "取得中...",
    "voicesFetched": "ボイスを取得しました",
    "fetchVoicesFailed": "ボイスの取得に失敗しました",
    "voiceApiKeyRequired": "APIキーが必要です",
    "voiceBaseUrlRequired": "ベースURLが必要です",
    "ttsTestTextPlaceholder": "変換するテキストを入力",
    "ttsTestTextDefault": "こんにちは、これはテスト音声です。",
    "startRecording": "録音を開始",
    "stopRecording": "録音を停止",
    "recording": "録音中...",
    "transcribing": "文字起こし中...",
    "transcriptionResult": "文字起こし結果",
    "noTranscriptionResult": "文字起こし結果がありません",
    "baseUrlOptional": "ベースURL（任意）",
    "defaultValue": "デフォルト",
    "voiceMarin": "おすすめ — 最高品質",
    "voiceCedar": "おすすめ — 最高品質",
    "voiceAlloy": "ニュートラル、バランス型",
    "voiceAsh": "落ち着いた、プロフェッショナル",
    "voiceBallad": "エレガント、叙情的",
    "voiceCoral": "温かみのある、フレンドリー",
    "voiceEcho": "男性、クリア",
    "voiceFable": "ナレーション向き、生き生き",
    "voiceNova": "女性、明るい",
    "voiceOnyx": "男性、低音",
    "voiceSage": "知的、落ち着いた",
    "voiceShimmer": "女性、柔らかい",
    "voiceVerse": "自然、なめらか",
    "glmVoiceTongtong": "デフォルトボイス",
    "glmVoiceChuichui": "Chuichuiボイス",
    "glmVoiceXiaochen": "Xiaochenボイス",
    "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キー",
    "pdfBaseUrl": "ベースURL",
    "mineruDescription": "MinerUは商用PDF解析サービスで、表抽出、数式認識、レイアウト分析などの高度な機能に対応しています。",
    "mineruApiKeyRequired": "使用前にMinerUのウェブサイトでAPIキーを申請する必要があります。",
    "mineruWarning": "注意",
    "mineruCostWarning": "MinerUは商用サービスであり、料金が発生する場合があります。詳細はMinerUのウェブサイトで確認してください。",
    "enterMinerUApiKey": "MinerU APIキーを入力",
    "mineruLocalDescription": "MinerUはローカルデプロイに対応し、高度なPDF解析（表、数式、レイアウト分析）が可能です。事前にMinerUサービスのデプロイが必要です。",
    "mineruServerAddress": "ローカルMinerUサーバーアドレス（例：http://localhost:8080）",
    "mineruApiKeyOptional": "サーバーで認証が有効な場合のみ必要",
    "mineruCloudApiKeyPlaceholder": "MinerU Cloud API キーを入力",
    "optionalApiKey": "APIキー（任意）",
    "featureText": "テキスト抽出",
    "featureImages": "画像抽出",
    "featureTables": "表抽出",
    "featureFormulas": "数式認識",
    "featureLayoutAnalysis": "レイアウト分析",
    "featureMetadata": "メタデータ",
    "enableImageGeneration": "AI画像生成を有効にする",
    "imageGenerationDisabledHint": "有効にすると、コース作成時に画像が自動生成されます",
    "imageSettings": "画像生成",
    "imageSection": "テキストから画像",
    "imageProvider": "画像生成プロバイダー",
    "imageModel": "画像生成モデル",
    "providerSeedream": "Seedream（ByteDance）",
    "providerOpenAIImage": "OpenAI Image",
    "providerQwenImage": "Qwen Image（Alibaba）",
    "providerNanoBanana": "Nano Banana（Gemini）",
    "providerMiniMaxImage": "MiniMax Image",
    "providerGrokImage": "Grok Image（xAI）",
    "providerComfyUIImage": "ComfyUI Image",
    "providerLemonadeImage": "Lemonade Image（ローカル）",
    "testImageGeneration": "画像生成をテスト",
    "testImageConnectivity": "接続テスト",
    "imageConnectivitySuccess": "画像サービスへの接続に成功しました",
    "imageConnectivityFailed": "画像サービスへの接続に失敗しました",
    "imageTestSuccess": "画像生成テストに成功しました",
    "imageTestFailed": "画像生成テストに失敗しました",
    "imageTestPromptPlaceholder": "テスト用の画像の説明を入力",
    "imageTestPromptDefault": "机の上に座っているかわいい猫",
    "imageGenerating": "画像を生成中...",
    "imageGenerationFailed": "画像の生成に失敗しました",
    "enableVideoGeneration": "AI動画生成を有効にする",
    "videoGenerationDisabledHint": "有効にすると、コース作成時に動画が自動生成されます",
    "videoSettings": "動画生成",
    "videoSection": "テキストから動画",
    "videoProvider": "動画生成プロバイダー",
    "videoModel": "動画生成モデル",
    "providerSeedance": "Seedance（ByteDance）",
    "providerKling": "Kling（快手）",
    "providerVeo": "Veo（Google）",
    "providerSora": "Sora（OpenAI）",
    "providerMiniMaxVideo": "MiniMax Video",
    "providerGrokVideo": "Grok Video（xAI）",
    "providerHappyHorse": "HappyHorse（Alibaba Cloud）",
    "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": "続行するには「DELETE」と入力してください",
    "clearCacheConfirmPhrase": "DELETE",
    "clearCacheButton": "すべてのデータを完全に削除",
    "clearCacheSuccess": "キャッシュをクリアしました。まもなくページが更新されます",
    "clearCacheFailed": "キャッシュのクリアに失敗しました。もう一度お試しください",
    "clearCacheBlockedByOtherTabs": "このアプリを開いている他のタブを閉じて、もう一度お試しください。",
    "persistUnavailable": "変更が保存されていません。アプリが保存済みデータにアクセスできません。再読み込みしても解決しない場合は、設定からローカルキャッシュを削除してください。",
    "persistChangesLost": "ストレージは復旧しましたが、利用できなかった間の変更は保存できず、最後に保存された内容に戻りました。",
    "webSearchSettings": "ウェブ検索",
    "webSearchApiKey": "検索APIキー",
    "webSearchApiKeyPlaceholder": "検索APIキーを入力",
    "webSearchApiKeyPlaceholderServer": "サーバーキー設定済み、任意で上書き",
    "webSearchApiKeyHint": "選択した検索プロバイダーからAPIキーを取得してください",
    "claudeSearchModel": "検索モデル",
    "claudeSearchModelHint": "ウェブ検索を実行し、結果を要約する Claude モデル。",
    "webSearchApiKeyOptional": "APIキーは任意です。未設定の場合、公開ページのスクレイピングが使用されます。",
    "searxngServerOnlyNotice": "SearXNG はサーバー側で設定する必要があります。SEARXNG_BASE_URL 環境変数（または server-providers.yml の web-search セクション）を設定してください。クライアントからのインスタンス URL は受け付けません。",
    "baiduSubSources": "Baidu検索ソース",
    "baiduSubSourcesDescription": "少なくとも1つのBaiduソースを選択してください。",
    "baiduSubSourceWeb": "Web検索",
    "baiduSubSourceWebDescription": "Baidu AI Searchの一般Web検索結果。",
    "baiduSubSourceBaike": "Baidu Baike",
    "baiduSubSourceBaikeDescription": "Baidu Baikeの百科事典エントリ。",
    "baiduSubSourceScholar": "Baidu Scholar",
    "baiduSubSourceScholarDescription": "Baidu Scholarの学術論文。",
    "viewDocs": "APIドキュメント",
    "webSearchBaseUrl": "ベースURL",
    "webSearchServerConfigured": "サーバー側で検索APIキーが設定済みです",
    "optional": "任意",
    "selectProvider": "Select Provider",
    "customProvider": "Custom",
    "presetPickHint": "Picking a provider auto-fills its base URL and protocol; enter your key then click \"Fetch Models\". Not listed? Use \"Custom\".",
    "presetCategory": {
      "tokenPlan": "Token Plans",
      "aggregator": "Aggregators",
      "thirdParty": "Vendors",
      "official": "Official"
    },
    "fetchModels": "Fetch Models",
    "fetchModelsResult": "Fetched {total} models, added {added}",
    "fetchModelsNoEndpoint": "This provider has no model list endpoint — add models manually",
    "fetchModelsAuthError": "API key is invalid or expired",
    "fetchModelsFailed": "Failed to fetch models",
    "usage": {
      "title": "Usage",
      "refresh": "Refresh",
      "disclaimer": "Usage is system-tracked; only server-side calls are counted.",
      "totalRequests": "Requests",
      "totalTokens": "LLM Tokens",
      "dailyTrend": "Daily Token Trend",
      "tokens": "Tokens",
      "byModel": "By Model",
      "model": "Model",
      "type": "Type",
      "reqs": "Reqs",
      "usage": "Usage",
      "empty": "No usage data yet",
      "kindLlm": "LLM",
      "kindImage": "Image",
      "kindVideo": "Video",
      "kindTts": "Speech",
      "kindAsr": "ASR",
      "unitToken": "tokens",
      "unitImage": "images",
      "unitSecond": "sec",
      "unitCharacter": "chars"
    },
    "tokenPlan": {
      "nav": "Token Plan",
      "title": "Token Plan Setup",
      "desc": "Pick your token plan provider and enter the key — it auto-configures every adapted modality (LLM/image/video/speech/web search).",
      "selectPlan": "Select Provider",
      "apiKey": "API Key",
      "enable": "Enable",
      "updateKey": "Update key",
      "modelsCount": "{{n}} models",
      "capabilities": "Capabilities offered",
      "offeredNote": "Models offered by this plan. Pick the ones you want on the generation bar — availability depends on your plan tier, and unsupported models will error at generation time."
    },
    "skills": {
      "nav": "スキル",
      "title": "スキル設定",
      "description": "アカウントにインストールされているスキルを閲覧し、詳細を確認して、zip としてダウンロードして共有・バックアップできます。",
      "mySkills": "マイスキル",
      "builtinSkills": "内蔵スキル",
      "emptyMySkills": "まだ自分のスキルがありません——チャットでエージェントに履歴から作成させましょう。",
      "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": "What will you create today?",
    "heroSubtitle": "Share an idea and turn it into a learning journey people can step into",
    "newSession": "New chat",
    "sections": {
      "courses": "Courses",
      "sessions": "Chats"
    },
    "coursesEmpty": "No courses yet",
    "sessionsEmpty": "No chats yet",
    "loading": "Loading",
    "loadFailed": "Couldn't load",
    "retry": "Retry",
    "untitledSession": "Untitled chat",
    "pagePosition": "Page {{index}} of {{total}}",
    "exitPro": "Exit Pro",
    "navAria": "Workspace navigation",
    "homeAria": "Back to home",
    "currentSession": "Current chat",
    "startLearning": "学習を開始",
    "time": {
      "justNow": "Just now",
      "minutesAgo": "{{count}}m ago",
      "hoursAgo": "{{count}}h ago",
      "daysAgo": "{{count}}d ago"
    },
    "sessionStatus": {
      "connecting": "Connecting",
      "queued": "Queued",
      "running": "Running",
      "succeeded": "Ready",
      "failed": "Needs attention",
      "cancelled": "Stopped"
    },
    "backToWorkspace": "Back to workspace",
    "searchPlaceholder": "Filter by name",
    "searchAria": "Search {{section}}",
    "searchEmpty": "No matches",
    "showMore": "Show {{count}} more",
    "showLess": "Show less",
    "utilitiesAria": "Preferences and account",
    "resizeAria": "Drag to resize the sidebar",
    "chatPaneAria": "Chat panel",
    "classroomPaneAria": "Classroom",
    "collapseNav": "Collapse navigation",
    "expandNav": "Expand navigation",
    "expandNavInto": "Expand navigation · {{section}}",
    "collapseChat": "Collapse conversation",
    "expandChat": "Conversation",
    "collapseClassroom": "Collapse classroom",
    "expandClassroom": "Classroom",
    "readOnlyBadge": "Read-only",
    "noCourseTitle": "No course open",
    "noCourseHint": "会話内のコースリンクから開くか、左のリストから選んでください。会話はそのまま残ります",
    "resizeChatAria": "Drag to resize the conversation pane",
    "firstPageLanding": "The first page is landing…",
    "autoSaving": "自動保存中…",
    "autoSaved": "保存済み",
    "collapsedTitle": "Both panes are collapsed",
    "collapsedHint": "Use the tabs on the left to bring the conversation or the classroom back",
    "moreUtilities": "More",
    "rowMore": "{{name}}のその他の操作",
    "folderDeleteHint": "フォルダー内のコースはトップレベルに戻ります。削除はされません。",
    "dropToUnfile": "ここにドロップするとフォルダーから外れます",
    "renameInvalid": "名前は 1〜120 文字で入力してください",
    "renameForbidden": "このコースは自分が作成したものではないため、名前を変更できません",
    "renameGone": "コースが存在しないか、すでに削除されています",
    "renameSession": "チャットの名前を変更",
    "renameSessionAria": "チャット「{{name}}」の名前を変更",
    "renameSessionFailed": "名前の変更に失敗しました。再試行してください",
    "delete": "削除",
    "confirmDelete": "削除を確認",
    "deleting": "削除中…",
    "deleteFailed": "削除できませんでした。もう一度お試しください。",
    "tabsAria": "Chats and courses",
    "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": "Pro モード",
    "badgeEnter": "Pro モード",
    "badgeExit": "通常モードに戻る",
    "launchPlaceholder": "作りたい学習体験を描いてください",
    "launchSend": "構築を開始"
  },
  "workbench": {
    "tool": {
      "label": {
        "extractMaterial": null,
        "waitMaterials": null
      },
      "error": {
        "materialExtraction": null
      }
    }
  }
}
