{
  "itemCatalogEdit": {
    "editTitle": "Edit catalog",
    "createTitle": "New item catalog",
    "nameLabel": "Name *",
    "namePlaceholder": "e.g. The dwarven armorer's shop",
    "descriptionPlaceholder": "What is this catalog / shop for?",
    "aiTitle": "Generate with AI",
    "aiHint": "Describe the shop/loot; the AI suggests the items (review them before saving). Contextualized with your campaign.",
    "aiPlaceholder": "e.g. an alchemist's shop in a port city, exotic items",
    "itemsTitle": "Items",
    "priceLabel": "Price",
    "categoryLabel": "Category",
    "itemNamePlaceholder": "Item",
    "itemPricePlaceholder": "50 gp",
    "itemCategoryPlaceholder": "Weapons",
    "itemDescriptionPlaceholder": "Effect / details",
    "emptyHint": "No items — click \"Add\".",
    "aiPromptRequired": "Describe the catalog to generate.",
    "aiError": "AI generation failed. Try again or rephrase.",
    "nameRequired": "Name is required.",
    "saveError": "Saving failed."
  },
  "itemCatalogList": {
    "title": "Item catalogs",
    "hint": "Shops, loot, treasures… filled in by hand or via AI. Available during sessions when players visit a shop.",
    "newCatalog": "New catalog",
    "empty": "No catalogs yet.",
    "itemCount": "{{n}} item(s)",
    "deleteTitle": "Delete catalog",
    "deleteMessage": "Delete \"{{name}}\"?"
  },
  "itemCatalogView": {
    "empty": "No items — edit the catalog to add some."
  },
  "notebookActionCard": {
    "arc": "Arc",
    "chapter": "Chapter",
    "warnArc": "First create an arc in the campaign so you can attach this element to it.",
    "warnArcChapter": "First create an arc and a chapter in the campaign so you can attach this element to it.",
    "creating": "Creating…",
    "createInCampaign": "Create in campaign",
    "createdOpen": "Created — open",
    "createError": "Creation failed.",
    "typeNpc": "NPC",
    "typeScene": "Scene",
    "typeChapter": "Chapter",
    "typeArc": "Arc",
    "typeTable": "Random table"
  },
  "notebookList": {
    "title": "Adaptation workshops",
    "hint": "Chat with the AI from a source PDF (searching within the document) to adapt its content to your campaign. The source and conversation are kept.",
    "namePlaceholder": "Workshop name (e.g. Adapting module X)",
    "newNotebook": "New workshop",
    "empty": "No workshops yet.",
    "defaultName": "New workshop",
    "deleteTitle": "Delete workshop",
    "deleteMessage": "Delete \"{{name}}\" and its indexed sources?"
  },
  "notebookDetail": {
    "backToList": "Workshops",
    "sources": "Sources",
    "indexing": "Indexing…",
    "addPdf": "Add a PDF",
    "sourcesUsed": "{{selected}}/{{total}} source(s) used by the chat and deep analysis",
    "sourceIncludedTitle": "Source used by the chat — uncheck to exclude it",
    "sourceExcludedTitle": "Source ignored by the chat — check to include it",
    "sourceMeta": "{{pages}} p. · {{chunks}} excerpts",
    "indexingInProgress": "indexing in progress…",
    "indexingFailed": "indexing failed",
    "sourcesEmpty": "Add a source PDF to start chatting with it.",
    "archiveBanner": "Archive from {{label}} — read-only",
    "backToChat": "Back to chat",
    "refBadgeTitle": "The content of these archives is injected as a reference in every question",
    "refBadge": "{{n}} archive(s) referenced",
    "archivesBtnTitle": "Archived conversations (read-only + reference)",
    "archives": "Archives",
    "clearBtnTitle": "Clear the conversation (the current thread is archived, not deleted)",
    "clear": "Clear",
    "archivesEmpty": "No archived conversations yet — \"Clear\" archives the current thread here.",
    "archivesHelp": "Check an archive to use it as a <strong>reference</strong> in the chat; click its name to reread it.",
    "archiveRefOnTitle": "Archive used as a reference — uncheck to remove it",
    "archiveRefOffTitle": "Use this archive as a reference in the chat",
    "roleUser": "You",
    "roleAi": "AI",
    "chatEmpty": "Ask a question about your source, or request an adaptation for your campaign.",
    "chatEmptyNoSource": "<br>(First add an indexed source for grounded answers.)",
    "deepProgress": "Deep analysis of the document… {{current}}/{{total}}",
    "sourcesPagesTitle": "Source pages used to ground this answer",
    "draftPlaceholder": "Request an adaptation, a summary, an NPC inspired by the source…",
    "deepBtnTitle": "Deep analysis: reads the ENTIRE document (slower, exhaustive). Ideal for \"list all the…\"",
    "sendBtnTitle": "Quick answer (targeted search within the document)",
    "uploadError": "Indexing failed. Try again or check the embedding model.",
    "clearTitle": "Clear the conversation",
    "clearMessage": "Start from a blank conversation?",
    "clearDetail": "The current thread is archived (not deleted): it will remain accessible via \"Archives\".",
    "archiveLabel": "{{when}} · {{n}} message(s)"
  }
}
