import { type LocaleCode } from "@agent-native/core/client/i18n"; import { creativeContextMessagesByLocale } from "@agent-native/creative-context/messages"; import zhTW from "./i18n/zh-TW"; const brandKitDetailEnUS = { savedToGenerated: "Saved to Generated.", couldNotSaveCandidate: "Could not save candidate.", addedToReferences: "Added to References.", couldNotAddToReferences: "Could not add asset to References.", removedFromReferences: "Removed from References.", couldNotRemoveFromReferences: "Could not remove asset from References.", processingPreviews: "Processing previews and saving them to the brand kit.", processingBatches: "Processing in {{count}} batches.", uploadProgress_one: "Uploading {{count}} asset...", uploadProgress_other: "Uploading {{count}} assets...", uploadProgress_many: "Uploading {{count}} assets...", uploadProgress_few: "Uploading {{count}} assets...", uploadProgress_two: "Uploading {{count}} assets...", uploadProgress_zero: "Uploading {{count}} assets...", uploadedSomeFailed: "Uploaded {{uploaded}} asset{{uploadedPlural}}; {{failed}} failed.", skippedDuplicates: "Skipped {{count}} duplicate{{plural}}.", uploadedSkipped: "Uploaded {{uploaded}} asset{{uploadedPlural}}; skipped {{skipped}} duplicate{{skippedPlural}}.", uploadedCount_one: "Uploaded {{count}} asset.", uploadedCount_other: "Uploaded {{count}} assets.", uploadedCount_many: "Uploaded {{count}} assets.", uploadedCount_few: "Uploaded {{count}} assets.", uploadedCount_two: "Uploaded {{count}} assets.", uploadedCount_zero: "Uploaded {{count}} assets.", skippedDuplicateAssets_one: "Skipped {{count}} duplicate asset.", skippedDuplicateAssets_other: "Skipped {{count}} duplicate assets.", skippedDuplicateAssets_many: "Skipped {{count}} duplicate assets.", skippedDuplicateAssets_few: "Skipped {{count}} duplicate assets.", skippedDuplicateAssets_two: "Skipped {{count}} duplicate assets.", skippedDuplicateAssets_zero: "Skipped {{count}} duplicate assets.", alreadyInBrandKit: "Already in this brand kit.", noNewAssetsUploaded: "No new assets were uploaded.", uploadFailed: "Upload failed", uploadTakingLonger: "Upload is taking longer than expected.", uploadMayFinish: "The server may still finish saving these assets. We will keep checking this brand kit.", brandKitArchived: "Brand kit archived.", couldNotArchiveBrandKit: "Could not archive brand kit.", privateCopyCreated: "Private brand kit copy created", couldNotDuplicateBrandKit: "Could not duplicate brand kit.", couldNotPrepareHandoff: "Could not prepare handoff.", runNoGeneratedAssets: "This run does not have generated assets to hand off.", generatedAsset: "Generated asset", needsDesignRefinement: "Needs design refinement.", handoffSessionCreated: "Handoff session created.", couldNotCreateHandoff: "Could not create handoff.", loadingBrandKit: "Loading brand kit...", editBrandKit: "Edit brand kit name and description", defaultDescription: "Upload, generate, describe, and organize reusable assets across agents.", upload: "Upload", add: "Add", uploadingCount: "Uploading {{count}}", folder: "Folder", brandKitActions: "Brand kit actions", newFolder: "New folder", duplicating: "Duplicating...", duplicate: "Duplicate", archiveBrandKit: "Archive brand kit", archiveThisBrandKit: "Archive this brand kit?", archiveDescription: "This removes the brand kit from the main Brand Kits list. Its assets and generation history stay stored.", cancel: "Cancel", archiving: "Archiving...", archive: "Archive", dropToUpload: "Drop to upload", assets: "Assets", asset: "Asset", runs: "Runs", settings: "Settings", allAssets: "All assets", unfiled: "Unfiled", searchAssets: "Search assets", clearSearch: "Clear search", allMedia: "All media", images: "Images", videos: "Videos", handoffSessions: "Handoff sessions", handoffSessionsDescription: "Shared context for designers to continue a candidate without the original chat thread.", noRunsYet: "No runs yet", noRunsDescription: "Generate from this brand kit to capture prompt, output, references, and settings.", styleDescription: "Style description", customInstructions: "Custom instructions", customInstructionsPlaceholder: "Preferences the agent should apply whenever it uses this brand kit.", palette: "Palette", refreshBrand: "Refresh brand", analyzeBrand: "Analyze brand", agentUsage: "Agent usage", agentUsageDescription: "Other agents can call Assets over A2A with this brand kit ID.", prompt: "Prompt", handoff: "Handoff", refresh: "Refresh", rerunThis: "Rerun this", model: "Model", aspect: "Aspect", size: "Size", refs: "Refs", grounding: "Grounding", categories: "Categories", output: "Output", noOutputCaptured: "No output captured yet.", providerLabel: "Provider: {{provider}}", references: "References", noneSelected: "None selected", compiledPrompt: "Compiled prompt", noFeedbackYet: "No feedback yet.", continue: "Continue", active: "active", activeAsset: "active {{id}}", generate: "Generate", generateWithChat: "Generate with chat", preset: "Preset", noPreset: "No preset", imageCandidates: "Image candidates", videoCandidate: "Video candidate", videoPromptPlaceholder: "Eight-second product reveal with slow camera push-in", imagePromptPlaceholder: "Blog hero for an article about cold-start latency", variants: "{{count}} variants", logo: "Logo", compositeCanonicalLogo: "Composite canonical logo", compositeCanonicalLogoHint: "Stamps this kit's canonical logo onto every image from this preset. Requires a canonical logo.", presetSkeleton: "Preset skeleton", presetSkeletonHint: "Composite generations onto an uploaded brand background image owned by this preset.", contentMode: "Content mode", contentModeFill: "Fill", contentModeCutout: "Cutout", skeletonImage: "Skeleton image", skeletonImageHint: "Use a brand background image as the reusable plate for this preset.", uploadSkeletonImage: "Upload skeleton image", uploadingSkeletonImage: "Uploading...", chooseSkeletonImage: "Choose from library", noSkeletonImage: "No skeleton image", skeletonImageRequired: "Choose or upload a skeleton image before saving.", skeletonImageUploaded: "Skeleton image uploaded.", couldNotUploadSkeletonImage: "Could not upload skeleton image.", skeletonMask: "Editable area mask", skeletonMaskHint: "Optional for gpt-image-2 cutouts. Transparent pixels mark where the subject may be painted; leave plate content opaque to preserve it.", uploadSkeletonMask: "Upload mask", uploadingSkeletonMask: "Uploading...", chooseSkeletonMask: "Choose mask from library", noSkeletonMask: "No mask", skeletonMaskUploaded: "Skeleton mask uploaded.", couldNotUploadSkeletonMask: "Could not upload skeleton mask.", contactShadow: "Contact shadow", contactShadowHint: "Adds a soft grounding shadow under transparent cutout subjects.", placeLogoInSkeleton: "Place logo in skeleton", placeLogoInSkeletonHint: "Let the skeleton own the canonical logo so it is not stamped twice.", logoPlacement: "Logo placement", upperRight: "Upper right", upperLeft: "Upper left", lowerRight: "Lower right", lowerLeft: "Lower left", skeletonEnabled: "Enabled", skeletonOff: "Off", addReference: "Add reference", referenceBoard: "Reference board", referenceBoardEmptyDescription: 'Add named visual slots like "Steve" so every run can use the right people, products, or style references.', referenceDefaultLabel: "Reference", referenceImageCount: "{{count}}/{{max}} images", referenceSubjectImageCount: "{{count}}/{{max}} subject images", moreImagesCount: "+{{count}}", referenceLabel: "Label", referenceRoleLabel: "Role", referenceRole_subject: "Subject", referenceRole_style: "Style", referenceRole_product: "Product", referenceRole_background: "Background", referenceRole_composition: "Composition", referenceDescription: "Description", referenceDescriptionPlaceholder: "e.g. This is Steve, our usual host. Render him faithfully.", referenceMode: "Reference mode", fixedReference: "Fixed", swappableReference: "Swappable", requiredPerRun: "Required", required: "Required", filledPerGeneration: "Filled per generation", noReferenceImages: "No reference images", chooseReferenceImage: "Choose from library", searchLibraryImages: "Search library images", editReference: "Edit reference", uploadReferenceImage: "Upload image", uploadingReferenceImage: "Uploading...", referenceImageUploaded: "Reference image uploaded.", couldNotUploadReferenceImage: "Could not upload reference image.", removeReference: "Remove reference", removeReferenceImage: "Remove reference image", referenceBoardTotalLimitError: "The reference board may attach at most 8 images total.", referenceBoardSubjectLimitError: "Subject reference entries may attach at most 4 images total.", subjectReferenceModelTip: "Tip: gemini-3-pro-image holds up to 5 people consistent — best for photo references.", openChat: "Open chat", defaultTextPolicy: "Prefer no embedded text. Keep any requested text short and readable.", generationPresetCreated: "Generation preset created.", couldNotCreatePreset: "Could not create preset.", generationPresets: "Generation presets", generationPresetsDescription: "Reusable deliverable rules for social images, heroes, and diagrams.", new: "New", noPresetsYet: "No presets yet.", deleteGenerationPreset: "Delete generation preset?", deleteGenerationPresetDescription: "Existing runs keep their captured prompt and settings. New generations will no longer offer this preset.", generationPresetDeleted: "Generation preset deleted.", couldNotDeletePreset: "Could not delete preset.", delete: "Delete", edit: "Edit", backToLibrary: "Back to library", backToSettings: "Back to settings", newGenerationPreset: "New generation preset", newGenerationPresetDescription: "Save the output format, aspect ratio, and text rules for repeated image work.", editGenerationPreset: "Edit generation preset", editGenerationPresetDescription: "Tune the reusable rules the agent applies when this preset is tagged for image generation.", generationPresetSaved: "Generation preset saved.", couldNotSavePreset: "Could not save preset.", presetUnavailableTitle: "Preset unavailable", presetUnavailableDescription: "This preset may have been deleted, or you may no longer have access to its brand kit.", readOnly: "Read-only", viewerModeTitle: "Viewer access", viewerModeDescription: "You can inspect this preset, but only editors can save changes or delete it.", name: "Name", description: "Description", presetDescriptionPlaceholder: "What this preset is for, where it should be used, or what makes it different.", category: "Category", aspectRatio: "Aspect ratio", imageSize: "Image size", referencePolicy: "Reference policy", collection: "Collection", noCollection: "No collection", sortOrder: "Sort order", promptTemplate: "Prompt template", promptTemplatePlaceholder: "Create a social post visual about {{prompt}}...", textPolicy: "Text policy", showAdvancedOptions: "Show advanced options", hideAdvancedOptions: "Hide advanced options", presetSummary: "Preset summary", saving: "Saving...", saveChanges: "Save changes", create: "Create", video: "Video", previewUnavailable: "Preview unavailable", dismissedCandidate: "Dismissed candidate.", couldNotDismissCandidate: "Could not dismiss candidate.", failedCandidate: "Failed candidate", readyCandidate: "Ready candidate", generatingCandidate: "Generating candidate", liveSlot: "Live slot", candidate: "Candidate", image: "Image", dismiss: "Dismiss", dismissThisCandidate: "Dismiss this candidate?", thisCandidate: "this candidate", dismissCandidateDescription: "This removes {{title}} from the candidate stage. Saved library assets stay untouched.", dismissing: "Dismissing...", candidates: "Candidates", generationQueue: "Generation queue", status: "Status", type: "Type", open: "Open", saveTo: "Save to...", folderLabel: "Folder: {{title}}", newFolderEllipsis: "New folder...", dismissFailed: "Dismiss failed", clearAll: "Clear all", clearing: "Clearing...", couldNotClearCandidates: "Could not clear candidates.", dismissedFailedCandidates_one: "Dismissed {{count}} failed candidate.", dismissedFailedCandidates_other: "Dismissed {{count}} failed candidates.", dismissedFailedCandidates_many: "Dismissed {{count}} failed candidates.", dismissedFailedCandidates_few: "Dismissed {{count}} failed candidates.", dismissedFailedCandidates_two: "Dismissed {{count}} failed candidates.", dismissedFailedCandidates_zero: "Dismissed {{count}} failed candidates.", clearedCandidates_one: "Cleared {{count}} candidate.", clearedCandidates_other: "Cleared {{count}} candidates.", clearedCandidates_many: "Cleared {{count}} candidates.", clearedCandidates_few: "Cleared {{count}} candidates.", clearedCandidates_two: "Cleared {{count}} candidates.", clearedCandidates_zero: "Cleared {{count}} candidates.", dismissFailedCandidatesTitle_one: "Dismiss {{count}} failed candidate?", dismissFailedCandidatesTitle_other: "Dismiss {{count}} failed candidates?", dismissFailedCandidatesTitle_many: "Dismiss {{count}} failed candidates?", dismissFailedCandidatesTitle_few: "Dismiss {{count}} failed candidates?", dismissFailedCandidatesTitle_two: "Dismiss {{count}} failed candidates?", dismissFailedCandidatesTitle_zero: "Dismiss {{count}} failed candidates?", clearCandidatesTitle_one: "Clear {{count}} candidate?", clearCandidatesTitle_other: "Clear {{count}} candidates?", clearCandidatesTitle_many: "Clear {{count}} candidates?", clearCandidatesTitle_few: "Clear {{count}} candidates?", clearCandidatesTitle_two: "Clear {{count}} candidates?", clearCandidatesTitle_zero: "Clear {{count}} candidates?", dismissFailedDescription: "Removes failed live slots from the candidate stage. Ready candidates stay.", clearCandidatesDescription: "Clears the candidate stage and deletes unsaved generated candidates. Saved library assets stay untouched.", candidateActions: "Candidate actions", deletedAsset: "Deleted asset.", couldNotDeleteAsset: "Could not delete asset.", couldNotDeleteSelectedAssets: "Could not delete selected assets.", deletedAssets_one: "Deleted {{count}} asset.", deletedAssets_other: "Deleted {{count}} assets.", deletedAssets_many: "Deleted {{count}} assets.", deletedAssets_few: "Deleted {{count}} assets.", deletedAssets_two: "Deleted {{count}} assets.", deletedAssets_zero: "Deleted {{count}} assets.", addedAssetsToReferences_one: "Added {{count}} asset to References.", addedAssetsToReferences_other: "Added {{count}} assets to References.", addedAssetsToReferences_many: "Added {{count}} assets to References.", addedAssetsToReferences_few: "Added {{count}} assets to References.", addedAssetsToReferences_two: "Added {{count}} assets to References.", addedAssetsToReferences_zero: "Added {{count}} assets to References.", removedAssetsFromReferences_one: "Removed {{count}} asset from References.", removedAssetsFromReferences_other: "Removed {{count}} assets from References.", removedAssetsFromReferences_many: "Removed {{count}} assets from References.", removedAssetsFromReferences_few: "Removed {{count}} assets from References.", removedAssetsFromReferences_two: "Removed {{count}} assets from References.", removedAssetsFromReferences_zero: "Removed {{count}} assets from References.", couldNotAddSelectedToReferences: "Could not add selected assets to References.", couldNotRemoveSelectedFromReferences: "Could not remove selected assets from References.", checkingUpload: "Checking upload", uploading: "Uploading", reference: "Reference", saved: "Saved", save: "Save", addToReferences: "Add to References", removeFromReferences: "Remove from References", close: "Close", generated: "Generated", slot: "slot", noAssetsMatch: "No assets match this view", noAssetsMatchDescription: "Try All assets, a different folder, or a broader search.", addAssets: "Add assets", addAssetsDescription: "Upload source material or generate candidates, then mark only the assets that should guide future generations as references.", deleteAssetsTitle_one: "Delete asset {{count}}?", deleteAssetsTitle_other: "Delete {{count}} assets?", deleteAssetsTitle_many: "Delete {{count}} assets?", deleteAssetsTitle_few: "Delete {{count}} assets?", deleteAssetsTitle_two: "Delete {{count}} assets?", deleteAssetsTitle_zero: "Delete {{count}} assets?", deleteOneDescription: "This permanently removes the asset from the brand kit. To keep it in the library but stop using it as a reference, use Remove from References instead.", deleteManyDescription: "This permanently removes the selected assets from the brand kit. To stop using an asset as a reference but keep it, use Remove from References instead.", selectAllVisibleAssets: "Select all visible assets", deselectAll: "Deselect all", selectAll: "Select all", visibleAssets_one: "{{count}} visible asset", visibleAssets_other: "{{count}} visible assets", visibleAssets_many: "{{count}} visible assets", visibleAssets_few: "{{count}} visible assets", visibleAssets_two: "{{count}} visible assets", visibleAssets_zero: "{{count}} visible assets", referenceCount_one: "{{count}} reference", referenceCount_other: "{{count}} references", referenceCount_many: "{{count}} references", referenceCount_few: "{{count}} references", referenceCount_two: "{{count}} references", referenceCount_zero: "{{count}} references", clear: "Clear", selectAllAssetsBoard: "Select all assets in this board", deletingAssets_one: "Deleting {{count}} asset...", deletingAssets_other: "Deleting {{count}} assets...", deletingAssets_many: "Deleting {{count}} assets...", deletingAssets_few: "Deleting {{count}} assets...", deletingAssets_two: "Deleting {{count}} assets...", deletingAssets_zero: "Deleting {{count}} assets...", selectedCount: "{{count}} selected", boardAssetCount_one: "{{count}} asset", boardAssetCount_other: "{{count}} assets", boardAssetCount_many: "{{count}} assets", boardAssetCount_few: "{{count}} assets", boardAssetCount_two: "{{count}} assets", boardAssetCount_zero: "{{count}} assets", referencesSavedCounts: "{{references}} references · {{saved}} saved", library: "Library", referencesEyebrow: "Assets currently marked for generation reference.", libraryEyebrow: "Saved assets in this filtered view. Mark the ones that should guide future generations.", noReferencesTitle: "No references in this view", noReferencesBody: "Switch back to all assets and mark the keepers as references.", showAll: "Show all", dropAssetsHere: "Drop assets here", dropAssetsBody: "Upload source material, generated exports, logos, products, or style boards.", lanes: "Lanes", cards: "Cards", assetView: "Asset view", viewModeLabel: "{{label}} view", all: "All", assetScope: "Asset scope", noAssetsToShow: "No assets to show.", selectItem: "Select {{title}}", showItem: "Show {{title}}", assetActions: "Asset actions", viewDetails: "View details", moveTo: "Move to", contentOnly: "content only", styleReference: "style reference", fromSource: "from {{source}}", checking: "Checking", couldNotClearCandidate: "Could not clear candidate.", dismissThisSlot: "Dismiss this slot?", deleteCandidate: "Delete candidate?", dismissSlotDescription: "Removes this failed slot from the live candidates panel.", deleteCandidateDescription: "Removes this candidate from the brand kit and clears its slot.", deleting: "Deleting...", generating: "Generating", couldNotCreateFolder: "Could not create folder", newFolderDescription: "Group uploaded and generated assets for a campaign, channel, or reusable collection.", campaignLaunch: "Campaign launch", clearLiveCandidates: "Clear all live candidates?", dismissFailedSlotsTitle_one: "Dismiss {{count}} failed slot?", dismissFailedSlotsTitle_other: "Dismiss {{count}} failed slots?", dismissFailedSlotsTitle_many: "Dismiss {{count}} failed slots?", dismissFailedSlotsTitle_few: "Dismiss {{count}} failed slots?", dismissFailedSlotsTitle_two: "Dismiss {{count}} failed slots?", dismissFailedSlotsTitle_zero: "Dismiss {{count}} failed slots?", dismissFailedSlotsDescription: "Removes every failed slot from the panel. Successful candidates stay.", clearLiveCandidatesDescription: "Clears the live candidates panel and deletes any unsaved candidate rows.", couldNotClearLiveCandidates: "Could not clear live candidates.", liveCandidatesActions: "Live candidates actions", settingsTitle: "Brand Kit Settings", unsavedChangesTitle: "Unsaved changes", unsavedChangesDescription: "You have unsaved changes to this brand kit. Discard them or keep editing?", discardChanges: "Discard changes", keepEditing: "Keep editing", setupGuide: "Setup guide", setupGuideDescription: "Recommendations for the most consistent, on-brand generations from this kit.", setupGuideReferences: "Upload reference assets", setupGuideReferencesHint: "Mark 3-5 strong examples as References so Analyze brand can learn palette and visual traits from real work, not guesses.", setupGuideStyleDescription: "Write a specific style description", setupGuideStyleDescriptionHint: "Name concrete traits (lighting, composition, texture) instead of vague adjectives so every generation stays on-brand.", setupGuideInstructions: "Use custom instructions for hard constraints", setupGuideInstructionsHint: "Put things that must always be true (logo placement, banned colors, legal copy) here so the agent never forgets them.", setupGuidePresets: "Create a preset per recurring format", setupGuidePresetsHint: "Save aspect ratio, model, and skeleton/reference setup as a preset so the same output shape is reused every time.", } satisfies Record; const assetPickerEnUS = { starterAssets: "Starter assets", generatedCandidates_zero: "Generated {{count}} image candidates", generatedCandidates_one: "Generated {{count}} image candidate", generatedCandidates_two: "Generated {{count}} image candidates", generatedCandidates_few: "Generated {{count}} image candidates", generatedCandidates_many: "Generated {{count}} image candidates", generatedCandidates_other: "Generated {{count}} image candidates", failedCandidates_zero: "{{count}} candidates failed.", failedCandidates_one: "{{count}} candidate failed.", failedCandidates_two: "{{count}} candidates failed.", failedCandidates_few: "{{count}} candidates failed.", failedCandidates_many: "{{count}} candidates failed.", failedCandidates_other: "{{count}} candidates failed.", pickCandidate: "Pick the one you want to send back.", noUsableCandidates: "Image generation finished without usable candidates.", generationFailed: "Image generation failed", selectionCopied: "Selection copied", selectionReady: "Selection ready", selectedAsset: "Selected {{title}}", sendBackFailed: "Could not send the selected asset back to chat", mcpImagePicks: "MCP image picks", mcpImagePicksDescription: "Generated and selected images from MCP chat hosts.", prepareLibraryFailed: "Could not prepare an image library", addGenerationKey: "Add a generation key in Settings.", connectGenerationModels: "Connect generation models.", loadingPreset: "Loading preset...", setupNeeded: "Setup needed", preparing: "Preparing...", generatingCandidates: "Generating candidates...", checkingLibraries: "Checking image libraries...", preparingImageLibrary: "Preparing an image library...", loadingRequestedPreset: "Loading the requested preset...", openAssets: "Open Assets", generatePlaceholder: "Generate an image asset", candidateCount: "Candidate count", preparingGeneratedLibrary: "Preparing an image library for generated candidates...", createLibraryForCandidates: "Create an image library to generate new candidates.", createLibrary: "Create library", copied: "Copied", copy: "Copy", copiedHelp: "Copied to your clipboard. Paste it into your agent chat to use it, or just tell your agent which one, for example: use this.", copyHelp: "Copy the text below and paste it into your agent chat, or just tell your agent which one, for example: use this.", showPasteText: "Show paste text", searchMedia: "Search {{media}}s", noMatchingAssets: "No matching {{media}} assets in this library.", noAssetsYet: "No {{media}} assets in this library yet.", openAsset: "Open {{title}}", copyAsset: "Copy {{title}}", copyToClipboard: "Copy to clipboard", fullSizePreview: "Full-size preview of {{title}}", closePreview: "Close preview", previousImage: "Previous image", nextImage: "Next image", } satisfies Record; const auditEnUS = { title: "Audit log", ownerOnlyFallback: "Owner-only fallback", orgWide: "Org-wide", ownerScopedDescription: "No org context detected, so this view is restricted to runs you triggered. Org admins see the full org-wide audit feed.", orgScopedDescription: "Viewing org-wide audit data. This is intended for governance review only - every generation across the workspace is listed below.", exporting: "Exporting...", exportCsv: "Export CSV", dateFrom: "Date from", dateTo: "Date to", ownerEmail: "Owner email", promptSearch: "Prompt search", model: "Model", allModels: "All models", status: "Status", allStatuses: "All statuses", source: "Source", allSources: "All sources", callingApp: "Calling app (A2A)", clearFilters: "Clear filters", when: "When", owner: "Owner", brandKit: "Markenkit", prompt: "Prompt", savedTotal: "Saved / Total", runSummary: "Run {{id}}... · {{time}}", videoBadge: "{{duration}}s · {{resolution}}", byOwner: "by {{email}}", userPrompt: "User prompt", compiledPrompt: "Compiled prompt", failed: "Failed", parentRun: "Parent run (refinement source)", referencesCount: "References ({{count}})", generatedChildrenCount: "Generated children ({{count}})", noChildrenProduced: "No children produced.", openBrandKit: "Open brand kit ->", viaCaller: "via {{caller}}", noRunsMatch: "No runs match these filters", noRunsDescription: "Try widening the date range or clearing filters. Generation runs from the last 90 days are typically a good starting view.", loadFailed: "Could not load audit log", unknownError: "Unknown error. Try refreshing.", adminOnlyTitle: "Audit log is admin-only", adminOnlyDescription: "Only org admins can view the audit log. If you believe you should have access, ask an org owner to upgrade your role.", secondsAgo: "{{count}}s ago", minutesAgo: "{{count}}m ago", hoursAgo: "{{count}}h ago", daysAgo: "{{count}}d ago", } satisfies Record; const enUS = { creativeContext: creativeContextMessagesByLocale["en-US"], root: { commandActions: "Actions", commandSearch: "Search", commandAppearance: "Appearance", toggleTheme: "Toggle theme", }, navigation: { brand: "Assets", create: "Create", library: "Library", brandKits: "Brand Kits", auditLog: "Audit log", settings: "Settings", extensions: "Extensions", openNavigation: "Open navigation", expandSidebar: "Expand sidebar", collapseSidebar: "Collapse sidebar", }, settings: { agentTitle: "Manage agent", agentDescription: "Manage the agent's model, API keys, automations, voice, and other controls.", openAgentSettings: "Manage agent", title: "Settings", description: "Asset generation, storage, and brand kit access.", connections: "Connections", connectionsDescription: "Keep Assets ready to generate, save, and share brand-safe media. Builder is the simplest path; manual keys stay available when you need them.", languageTitle: "Language", languageDescription: "Choose the interface language for this Assets workspace.", languageLabel: "Interface language", setupTitle: "Assets setup", setupDescription: "Two essentials: generation and durable storage.", setupReady: "ready", builderDescriptionReady: "Connected for managed generation.", builderDescriptionManaged: "Managed image generation and storage, no provider keys.", builderDescriptionDisabled: "Disabled for this deployment.", optional: "Optional", reconnect: "Reconnect", generation: "Generation", generationReady: "Ready", generationNeedsSetup: "Needs setup", manualGenerationKeys: "Manual generation keys", manualGenerationDescription: "Add Gemini for video generation, or OpenAI/Gemini as image fallbacks.", storage: "Storage", storageReady: "Originals, thumbnails, videos, and exports have a durable home.", storageNeedsSetup: "Add S3-compatible storage for production assets and exports.", objectStorage: "Object storage", objectStorageDescription: "Use S3, R2, Spaces, Tigris, MinIO, or another compatible provider.", brandKits: "Brand Kits", available: "Available", connect: "Connect", connected: "Connected", connecting: "Connecting", configure: "Configure", manualKeys: "Manual keys", provider: "Provider", chooseProvider: "Choose a provider", saveSettings: "Save settings", saveKey: "Save key", saving: "Saving", noManualOptions: "No manual setup options are available for this item.", builderManaged: "Builder is handling managed image generation.", providerConfigured: "{{providers}} configured.", addGeminiOrOpenAI: "Add Gemini or OpenAI before generating new assets.", addBuilderGeminiOrOpenAI: "Add Builder, Gemini, or OpenAI before generating new assets.", enterValueFirst: "Enter a value first.", saveFailed: "Save failed", }, chat: { emptyState: "Describe the asset you want to make", suggestionBlogHeroes: "Generate 3 blog heroes from this brand kit", suggestionProductVideo: "Make an 8-second product reveal video", suggestionReferenceStyle: "Match the style of my reference assets", chats: "Chats", newChat: "New chat", newAssetsChat: "New Assets chat", renameChat: "Rename chat", pinChat: "Pin chat", unpinChat: "Unpin chat", copyShareLink: "Copy share link", archiveChat: "Archive chat", archiveFailed: "Could not archive chat.", renameFailed: "Could not rename chat.", shareLinkFailed: "Could not create a share link.", shareLinkCopied: "Chat share link copied.", shareLinkReady: "Chat share link ready.", optionsFor: "Chat options for {{title}}", }, create: { imageModel: "Image model", modelBestQuality: "best quality", modelFast: "fast", emptyState: "Ask Assets what to create.", composerPlaceholder: "Describe the asset - attach images or text context with +", heroTitle: "What asset should we make?", heroDescription: "Start with a hero image, product reveal, reference edit, or a direction you want to explore.", starters: { image: "image", video: "video", refine: "refine", }, }, routeTitles: { brandKits: "Brand Kits - Assets", library: "Library - Assets", generationPreset: "Generation preset - Assets", extension: "Extension - Assets", extensions: "Extensions - Assets", team: "Team - Assets", }, team: { title: "Team", createOrgDescription: "Set up a team to share brand kits and generated assets with your colleagues.", }, assetDetail: { loading: "Loading asset...", unavailableTitle: "Asset unavailable", unavailableDescription: "This generated image may have been cleared before it was saved, or the link may point to an asset you no longer have access to.", backToLibrary: "Back to library", library: "Library", brandKit: "Brand Kit", videoAsset: "Video asset", asset: "Asset", contentOnly: "content only", styleReference: "style reference", skeletonPlate: "skeleton plate", video: "Video", dimensions: "Dimensions", folder: "Folder", unfiled: "Unfiled", description: "Description", noDescription: "No description stored", prompt: "Prompt", noPrompt: "No prompt stored", continueRefining: "Continue refining this asset.", refineInstruction: "Ask what should change, then refine this active image and show the new preview.", makeVideoVariation: "Make video variation", makeVariations: "Make variations", handoff: "Handoff", download: "Download", downloadFailed: "Could not download asset.", copyUrl: "Copy URL", delete: "Delete", deleteTitle: "Delete asset?", deleteDescription: "This removes the asset from the library. Existing exports that already use this URL may stop rendering.", cancel: "Cancel", copiedPrompt: "Copied prompt", copiedUrl: "Copied URL", copyFailed: "Could not copy to clipboard.", previewUnavailable: "Preview unavailable", }, assetPicker: assetPickerEnUS, audit: auditEnUS, brandKitDetail: brandKitDetailEnUS, brandKits: { title: "Brand Kits", description: "Organize references, generated assets, folders, and reusable style guidance.", yourBrandKits: "Your brand kits", yourBrandKitsDescription: "Brand references, product imagery, videos, diagrams, and generated candidates that other agents can reuse", searchPlaceholder: "Search brand kits", newBrandKit: "New Brand Kit", newBrandKitLower: "New brand kit", createAsset: "Create asset", emptyTitle: "No brand kits yet", emptyDescription: "Start with a default style brand kit or create your own references and style guidance.", presetCreateFailed: "Could not create preset brand kit.", duplicateCreated: "Private brand kit copy created", duplicateFailed: "Could not duplicate brand kit.", createDialogTitle: "New brand kit", createDialogDescription: "Start from a built-in style preset or create a blank brand kit for your own references.", startFromPreset: "Start from a style preset", startFromPresetDescription: "Create an editable brand kit with built-in generation guidance.", titlePlaceholder: "Engineering blog heroes", descriptionPlaceholder: "Dark editorial illustrations, product UI fragments, restrained palette.", instructionsPlaceholder: "Always keep product UI legible, avoid literal text unless requested, prefer quiet editorial compositions.", editDialogTitle: "Edit brand kit", updated: "Brand kit updated", updateFailed: "Failed to update brand kit", namePlaceholder: "Brand kit name", editDescriptionPlaceholder: "Describe the visual direction or contents of this brand kit.", noDescriptionYet: "No description yet", instructions: "Instructions", refsCount: "{{count}} refs", assetsCount: "{{count}} assets", videosCount: "{{count}} videos", }, library: { addedToReferences: "Added to References.", addedAssetsToReferences: "Added {{count}} assets to References.", add: "Add", addAssets: "Add assets", addAssetsDescription: "Upload source material or generate candidates, then mark only the assets that should guide future generations as references.", addToReferences: "Add to References", addGenerationKey: "Add a generation key in Settings.", allAssets: "All assets", allAssetsDescription: "Every accessible kit", alreadyInThisBrandKit: "Already in this brand kit.", assetCount: "{{count}} assets", asset: "Asset", assetActions: "Asset actions", assetScope: "Asset scope", assetView: "Asset view", assetViewMode: "{{mode}} view", assetsTab: "Assets", archive: "Archive", archiveBrandKit: "Archive brand kit", archiveKitTitle: "Archive this brand kit?", archiveKitDescription: "This removes the brand kit from the Library list. Its assets and generation history stay stored.", archiving: "Archiving...", brandKitArchived: "Brand kit archived.", privateBrandKitCopyCreated: "Private brand kit copy created", cancel: "Cancel", cards: "Cards", candidates: "Candidates", candidateActions: "Candidate actions", candidateWithNumber: "Candidate {{number}}", variantWithNumber: "Variant {{number}}", checkingImageLibraries: "Checking image libraries...", checking: "Checking", checkingUpload: "Checking upload", clearAll: "Clear all", clearCandidates: "Clear candidates", clearCandidatesTitle: "Clear {{count}} candidates?", clearCandidatesDescription: "Clears the live stage and deletes unsaved draft candidates.", clearGeneratedCandidatesTitle: "Clear generated candidates?", clearGeneratedCandidatesDescription: "This removes every unsaved candidate from the thread and deletes the generated asset rows behind them. Saved library assets are not touched.", clearSearch: "Clear search", clear: "Clear", clearing: "Clearing...", close: "Close", closePreview: "Close preview", copied: "Copied", couldNotAddToReferences: "Could not add asset to References.", couldNotDismissCandidate: "Could not dismiss candidate.", couldNotCreateFolder: "Could not create folder", couldNotClearCandidates: "Could not clear candidates.", couldNotAddSelectedToReferences: "Could not add selected assets to References.", couldNotRemoveSelectedFromReferences: "Could not remove selected assets from References.", couldNotPrepareImageLibrary: "Could not prepare an image library", couldNotPrepareHandoff: "Could not prepare handoff.", couldNotDeleteAsset: "Could not delete asset.", couldNotDeleteSelectedAssets: "Could not delete selected assets.", couldNotSaveCandidate: "Could not save candidate.", couldNotSaveDraft: "Could not save draft.", copiedPasteInstruction: "Copied to your clipboard - paste it into your agent chat to use it", copy: "Copy", copyPasteInstruction: "Copy the text below and paste it into your agent chat", copyToClipboard: "Copy to clipboard", copyAsset: "Copy {{title}}", create: "Create", createBlankKit: "Create blank kit", createBrandKit: "Create a brand kit", createLibrary: "Create library", createImageLibraryToGenerate: "Create an image library to generate new candidates.", createPane: "Create", details: "Details", dismiss: "Dismiss", dismissedCandidate: "Dismissed candidate.", dismissCandidateTitle: "Dismiss this candidate?", dismissCandidateDescription: "This removes {{title}} from the candidate stage. Saved library assets stay untouched.", dismissFailed: "Dismiss failed", dismissFailedSlotsTitle: "Dismiss {{count}} failed slots?", dismissFailedSlotsDescription: "Removes every failed slot from the panel. Successful candidates stay.", dismissFailedWithCount: "Dismiss failed ({{count}})", dismissing: "Dismissing...", draft: "Draft", dropAssetsHere: "Drop assets here", dropAssetsHereBody: "Upload source material, generated exports, logos, products, or style boards.", duplicate: "Duplicate", duplicating: "Duplicating...", defaultKitDescription: "Upload, generate, describe, and organize reusable assets across agents.", defaultTextPolicy: "Prefer no embedded text. Keep any requested text short and readable.", buildYourFirstKit: "Build your first kit", buildYourFirstKitDescription: "Start from a reusable style preset or create an empty library for your own references.", deletedAsset: "Deleted asset.", deletedAssets: "Deleted {{count}} assets.", deleteAssetTitle: "Delete asset?", deleteAssetsTitle: "Delete {{count}} assets?", deleteCandidate: "Delete candidate", deleteAssetDescription: "This permanently removes the asset from the brand kit. To keep it in the library but stop using it as a reference, use Remove from References instead.", deleteAssetsDescription: "This permanently removes the selected assets from the brand kit. To stop using an asset as a reference but keep it, use Remove from References instead.", deselectAll: "Deselect all", deletingAssets: "Deleting {{count}} assets...", editBrandKit: "Edit brand kit name and description", failed: "Failed", failedCount: "{{count}} failed", failedCandidate: "Failed candidate", folderLabel: "Folder: {{title}}", folderNamePlaceholder: "Campaign launch", fullSizePreview: "Full-size preview of {{title}}", generated: "Generated", generatedAsset: "Generated asset", generatedCandidatesTitle: "Generated candidates", generating: "Generating", generatingCount: "{{count}} generating", generatingCandidate: "Generating candidate", generatingCandidates: "Generating candidates...", generate: "Generate", generateImagePlaceholder: "Generate an image asset", image: "Image", kitActions: "Brand kit actions", library: "Library", libraryEyebrow: "Saved assets in this filtered view. Mark the ones that should guide future generations.", lanes: "Lanes", live: "Live", liveSlot: "Live slot", loading: "Loading", loadingBrandKit: "Loading brand kit...", loadingPreset: "Loading preset...", loadingRequestedPreset: "Loading the requested preset...", mcpImagePicks: "MCP image picks", mcpImagePicksDescription: "Generated and selected images from MCP chat hosts.", moveTo: "Move to", newFolder: "New folder", newFolderDescription: "Group uploaded and generated assets for a campaign, channel, or reusable collection.", newFolderEllipsis: "New folder...", newKit: "New kit", nextImage: "Next image", name: "Name", noAssetsInLibrary: "No {{mediaLabel}} assets in this library yet.", noKitsMatch: "No kits match your search.", noMatchingAssets: "No matching assets across your kits.", noMatchingLibraryAssets: "No matching {{mediaLabel}} assets in this library.", drafts: "Drafts", allLibraries: "All libraries", noDrafts: "No drafts yet.", noMatchingDrafts: "No matching drafts.", recentDrafts: "Recent Drafts", viewAllDrafts: "View all drafts", draftAsset: "Draft asset", noReusableAssets: "No reusable assets yet. Select a kit to upload references or generate assets.", noNewAssetsUploaded: "No new assets were uploaded.", noAssetsToShow: "No assets to show.", noAssetsMatchView: "No assets match this view", noAssetsMatchViewBody: "Try All assets, a different folder, or a broader search.", noBrandKit: "No brand kit", noReferencesInView: "No references in this view", noReferencesInViewBody: "Switch back to all assets and mark the keepers as references.", open: "Open", openAssets: "Open Assets", openChat: "Open chat", openDetails: "Open details", preparing: "Preparing...", previousImage: "Previous image", preparingImageLibrary: "Preparing an image library...", preparingImageLibraryCandidates: "Preparing an image library for generated candidates...", primaryKitActions: "Primary kit actions", promptTemplatePlaceholder: "Create a social post visual about {{prompt}}...", ready: "Ready", readyCount: "{{count}} ready", readyCandidate: "Ready candidate", readyToSave: "Ready to save", references: "References", referencesEyebrow: "Assets currently marked for generation reference.", referencesCount: "{{count}} references", referencesAndSavedCount: "{{referenceCount}} references - {{savedCount}} saved", referenceCount: "{{count}} refs", reference: "Reference", refine: "Refine", rendering: "Rendering", removeFromReferences: "Remove from References", removedAssetsFromReferences: "Removed {{count}} assets from References.", runHasNoGeneratedAssets: "This run does not have generated assets to hand off.", runs: "Runs", saveTo: "Save to...", save: "Save", saved: "Saved", savedGeneratedAsset: "Saved generated asset.", savedToLibrary: "Saved to Library.", searchAssets: "Search assets", searchKits: "Search kits", searchMedia: "Search {{mediaLabel}}s", selectedAssetSendFailed: "Could not send the selected asset back to chat", selectAll: "Select all", selectAllVisibleAssets: "Select all visible assets", selectAllAssetsInBoard: "Select all assets in this board", selectedCount: "{{count}} selected", selectAsset: "Select {{title}}", selectionCopied: "Selection copied", selectionReady: "Selection ready", settings: "Settings", setupNeeded: "Setup needed", showCandidate: "Show {{title}}", showAll: "Show all", showPasteText: "Show paste text", shownCount: "{{count}} shown", skippedDuplicateAssets: "Skipped {{count}} duplicate assets.", skippedDuplicates: "Skipped {{count}} duplicates.", starterAssets: "Starter assets", stillRendering: "Still rendering", generationFailed: "Generation failed", connectGenerationModels: "Connect generation models.", tabsAll: "All", tellAgentUseThis: 'Or tell your agent which one, for example "use this".', thisCandidate: "this candidate", upload: "Upload", uploadFailed: "Upload failed", uploadedAndSkippedDuplicates: "Uploaded {{uploadedCount}} assets; skipped {{skippedCount}} duplicates.", uploadedAssets: "Uploaded {{count}} assets.", uploadedWithFailures: "Uploaded {{uploadedCount}} assets; {{failedCount}} failed.", uploadTakingLonger: "Upload is taking longer than expected.", uploadTakingLongerDescription: "The server may still finish saving these assets. We will keep checking this brand kit.", uploadingCount: "Uploading {{count}}", uploading: "Uploading", unfiled: "Unfiled", useCandidate: "Use candidate", video: "Video", visibleAssetsCount: "{{count}} visible assets", viewDetails: "View details", }, }; type Messages = typeof enUS; type PartialMessages = { [K in keyof Messages]?: Partial & { starters?: Partial; }; }; // TODO(l10n): translate after QA. const referenceBoardL10nTodo = { addReference: "Add reference", referenceBoard: "Reference board", referenceBoardEmptyDescription: 'Add named visual slots like "Steve" so every run can use the right people, products, or style references.', referenceDefaultLabel: "Reference", referenceImageCount: "{{count}}/{{max}} images", referenceSubjectImageCount: "{{count}}/{{max}} subject images", moreImagesCount: "+{{count}}", referenceLabel: "Label", referenceRoleLabel: "Role", referenceRole_subject: "Subject", referenceRole_style: "Style", referenceRole_product: "Product", referenceRole_background: "Background", referenceRole_composition: "Composition", referenceDescription: "Description", referenceDescriptionPlaceholder: "e.g. This is Steve, our usual host. Render him faithfully.", referenceMode: "Reference mode", fixedReference: "Fixed", swappableReference: "Swappable", requiredPerRun: "Required", required: "Required", filledPerGeneration: "Filled per generation", noReferenceImages: "No reference images", chooseReferenceImage: "Choose from library", searchLibraryImages: "Search library images", editReference: "Edit reference", uploadReferenceImage: "Upload image", uploadingReferenceImage: "Uploading...", referenceImageUploaded: "Reference image uploaded.", couldNotUploadReferenceImage: "Could not upload reference image.", removeReference: "Remove reference", removeReferenceImage: "Remove reference image", referenceBoardTotalLimitError: "The reference board may attach at most 8 images total.", referenceBoardSubjectLimitError: "Subject reference entries may attach at most 4 images total.", subjectReferenceModelTip: "Tip: gemini-3-pro-image holds up to 5 people consistent — best for photo references.", } satisfies Partial; const brandKitDetailArSA = { addAssetsDescription: "قم بتحميل المواد المصدرية أو قم بإنشاء مرشحين، ثم حدد فقط الأصول التي يجب أن توجه الأجيال القادمة كمراجع.", addAssets: "أضف الأصول", addToReferences: "أضف إلى المراجع", addedToReferences: "تمت إضافتها إلى المراجع.", agentUsageDescription: "يمكن للوكلاء الآخرين الاتصال بـ Assets عبر A2A باستخدام معرف مجموعة العلامة التجارية هذا.", agentUsage: "استخدام الوكيل", allAssets: "جميع الأصول", allMedia: "جميع وسائل الإعلام", alreadyInBrandKit: "بالفعل في هذه المجموعة العلامة التجارية.", analyzeBrand: "تحليل العلامة التجارية", archiveBrandKit: "أرشيف مجموعة العلامات التجارية", archiveDescription: "يؤدي هذا إلى إزالة مجموعة أدوات العلامة التجارية من قائمة مجموعات العلامات التجارية الرئيسية. تبقى أصولها وتاريخ جيلها مخزنة.", archiveThisBrandKit: "أرشفة مجموعة العلامة التجارية هذه؟", archiving: "أرشفة...", aspectRatio: "نسبة الارتفاع", assetActions: "إجراءات الأصول", assetScope: "نطاق الأصول", assetView: "عرض الأصول", brandKitActions: "إجراءات مجموعة العلامة التجارية", brandKitArchived: "تم أرشفة مجموعة العلامة التجارية.", campaignLaunch: "إطلاق الحملة", candidateActions: "تصرفات المرشح", checkingUpload: "التحقق من التحميل", clearAll: "مسح الكل", clearCandidatesDescription: "مسح مرحلة المرشح وحذف المرشحين الذين تم إنشاؤهم غير المحفوظة. أصول المكتبة المحفوظة تبقى دون تغيير.", clearLiveCandidatesDescription: "مسح لوحة المرشحين المباشرين وحذف أي صفوف مرشحة غير محفوظة.", clearLiveCandidates: "هل تريد مسح كافة المرشحين المباشرين؟", clearSearch: "مسح البحث", clearing: "المقاصة...", compiledPrompt: "موجه المترجمة", logo: "شعار", compositeCanonicalLogo: "الشعار الأساسي المركب", compositeCanonicalLogoHint: "يضيف الشعار الأساسي لهذه المجموعة إلى كل صورة تُنشأ بهذا الإعداد المسبق. يتطلب وجود شعار أساسي.", presetSkeleton: "هيكل الإعداد المسبق", presetSkeletonHint: "يركب الصور المولدة فوق صورة خلفية علامة تجارية مرفوعة يملكها هذا الإعداد.", contentMode: "وضع المحتوى", contentModeFill: "ملء", contentModeCutout: "قص", skeletonImage: "صورة الهيكل", skeletonImageHint: "استخدم صورة خلفية العلامة التجارية كلوحة قابلة لإعادة الاستخدام لهذا الإعداد.", uploadSkeletonImage: "تحميل صورة الهيكل", uploadingSkeletonImage: "جار التحميل...", chooseSkeletonImage: "اختر من المكتبة", noSkeletonImage: "لا توجد صورة هيكل", skeletonImageRequired: "اختر أو حمّل صورة هيكل قبل الحفظ.", skeletonImageUploaded: "تم تحميل صورة الهيكل.", couldNotUploadSkeletonImage: "تعذر تحميل صورة الهيكل.", skeletonMask: "قناع المنطقة القابلة للتحرير", skeletonMaskHint: "اختياري لقصاصات gpt-image-2. تحدد البكسلات الشفافة موضع رسم العنصر؛ اترك محتوى اللوحة معتما للحفاظ عليه.", uploadSkeletonMask: "تحميل القناع", uploadingSkeletonMask: "جار التحميل...", chooseSkeletonMask: "اختر قناعا من المكتبة", noSkeletonMask: "لا يوجد قناع", skeletonMaskUploaded: "تم تحميل قناع الهيكل.", couldNotUploadSkeletonMask: "تعذر تحميل قناع الهيكل.", contactShadow: "ظل التلامس", contactShadowHint: "يضيف ظلا ناعما تحت العناصر المقصوصة الشفافة لتثبيتها بصريا.", placeLogoInSkeleton: "ضع الشعار في الهيكل", placeLogoInSkeletonHint: "اجعل الهيكل يملك الشعار الأساسي حتى لا يتم ختمه مرتين.", logoPlacement: "موضع الشعار", upperRight: "أعلى اليمين", upperLeft: "أعلى اليسار", lowerRight: "أسفل اليمين", lowerLeft: "أسفل اليسار", skeletonEnabled: "مفعل", skeletonOff: "متوقف", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "لا يمكن إضافة الأصول المحددة إلى المراجع.", couldNotAddToReferences: "لا يمكن إضافة الأصل إلى المراجع.", couldNotArchiveBrandKit: "تعذر أرشفة مجموعة العلامة التجارية.", couldNotClearCandidates: "لا يمكن مسح المرشحين.", couldNotClearCandidate: "لا يمكن مسح المرشح.", couldNotClearLiveCandidates: "لا يمكن مسح المرشحين الحية.", couldNotCreateFolder: "لا يمكن إنشاء المجلد", couldNotCreateHandoff: "تعذر إنشاء عملية التسليم.", couldNotCreatePreset: "لا يمكن إنشاء الإعداد المسبق.", couldNotDeleteAsset: "لا يمكن حذف الأصل.", couldNotDeletePreset: "لا يمكن حذف الإعداد المسبق.", couldNotDeleteSelectedAssets: "لا يمكن حذف الأصول المحددة.", couldNotDismissCandidate: "لا يمكن استبعاد المرشح.", couldNotDuplicateBrandKit: "لا يمكن تكرار مجموعة العلامة التجارية.", couldNotPrepareHandoff: "لا يمكن تحضير عملية التسليم.", couldNotRemoveFromReferences: "لا يمكن إزالة الأصل من المراجع.", couldNotRemoveSelectedFromReferences: "لا يمكن إزالة الأصول المحددة من المراجع.", couldNotSaveCandidate: "لا يمكن حفظ المرشح.", customInstructionsPlaceholder: "التفضيلات التي يجب على الوكيل تطبيقها عندما يستخدم مجموعة العلامة التجارية هذه.", customInstructions: "تعليمات مخصصة", defaultDescription: "قم بتحميل الأصول القابلة لإعادة الاستخدام وإنشائها ووصفها وتنظيمها عبر الوكلاء.", defaultTextPolicy: "أفضّل عدم وجود نص مضمن. اجعل أي نص مطلوب قصيرًا وسهل القراءة.", deleteCandidateDescription: "إزالة هذا المرشح من مجموعة العلامات التجارية ومسح مكانه.", deleteCandidate: "هل تريد حذف المرشح؟", deleteGenerationPresetDescription: "تحافظ عمليات التشغيل الحالية على المطالبات والإعدادات التي تم التقاطها. لن تقدم الأجيال الجديدة هذا الإعداد المسبق بعد الآن.", deleteGenerationPreset: "هل تريد حذف الإعداد المسبق للجيل؟", deleteManyDescription: 'يؤدي هذا إلى إزالة الأصول المحددة من مجموعة العلامة التجارية بشكل دائم. للتوقف عن استخدام أحد الأصول كمرجع مع الاحتفاظ به، استخدم "إزالة من المراجع" بدلاً من ذلك.', deleteOneDescription: "يؤدي هذا إلى إزالة الأصل نهائيًا من مجموعة العلامة التجارية. للاحتفاظ به في المكتبة مع التوقف عن استخدامه كمرجع، استخدم الإزالة من المراجع بدلاً من ذلك.", deletedAsset: "الأصول المحذوفة.", deleting: "جارٍ الحذف...", deselectAll: "قم بإلغاء تحديد الكل", dismissFailedDescription: "إزالة الفتحات المباشرة الفاشلة من مرحلة المرشح. يبقى المرشحون الجاهزون.", dismissFailedSlotsDescription: "يزيل كل فتحة فاشلة من اللوحة. يبقى المرشحون الناجحون.", dismissFailed: "فشل الرفض", dismissSlotDescription: "إزالة هذه الفتحة الفاشلة من لوحة المرشحين المباشرين.", dismissThisCandidate: "هل تريد استبعاد هذا المرشح؟", dismissThisSlot: "هل تريد إزالة هذه الفتحة؟", dismissedCandidate: "مرشح مرفوض.", dismissing: "جارٍ الرفض...", dropAssetsBody: "قم بتحميل المواد المصدرية أو الصادرات التي تم إنشاؤها أو الشعارات أو المنتجات أو لوحات الأنماط.", dropAssetsHere: "إسقاط الأصول هنا", dropToUpload: "أسقط للتحميل", duplicating: "تكرار...", editBrandKit: "تحرير اسم مجموعة العلامة التجارية ووصفها", backToLibrary: "العودة إلى المكتبة", backToSettings: "العودة إلى الإعدادات", editGenerationPreset: "تحرير الإعداد المسبق للتوليد", editGenerationPresetDescription: "اضبط القواعد القابلة لإعادة الاستخدام التي يطبقها الوكيل عند وسم هذا الإعداد المسبق لإنشاء الصور.", failedCandidate: "مرشح فاشل", generateWithChat: "إنشاء مع الدردشة", generatedAsset: "الأصول التي تم إنشاؤها", generatingCandidate: "توليد المرشح", generationPresetCreated: "تم إنشاء الإعداد المسبق للجيل.", generationPresetDeleted: "تم حذف الإعداد المسبق للجيل.", generationPresetSaved: "تم حفظ الإعداد المسبق للتوليد.", couldNotSavePreset: "تعذر حفظ الإعداد المسبق.", presetUnavailableTitle: "الإعداد المسبق غير متاح", presetUnavailableDescription: "ربما تم حذف هذا الإعداد المسبق، أو لم يعد لديك وصول إلى مجموعة علامته التجارية.", readOnly: "للقراءة فقط", viewerModeTitle: "وصول المشاهد", viewerModeDescription: "يمكنك فحص هذا الإعداد المسبق، لكن يمكن للمحررين فقط حفظ التغييرات أو حذفه.", presetDescriptionPlaceholder: "الغرض من هذا الإعداد المسبق، وأين يجب استخدامه، أو ما الذي يجعله مختلفًا.", imageSize: "حجم الصورة", referencePolicy: "سياسة المراجع", noCollection: "لا توجد مجموعة", sortOrder: "ترتيب الفرز", showAdvancedOptions: "إظهار الخيارات المتقدمة", hideAdvancedOptions: "إخفاء الخيارات المتقدمة", presetSummary: "ملخص الإعداد المسبق", saving: "جارٍ الحفظ...", saveChanges: "حفظ التغييرات", generationPresetsDescription: "قواعد قابلة لإعادة الاستخدام للصور الاجتماعية والأبطال والرسوم البيانية.", generationPresets: "إعدادات الجيل المسبقة", generationQueue: "قائمة انتظار الجيل", handoffSessionCreated: "تم إنشاء جلسة Handoff.", handoffSessionsDescription: "سياق مشترك للمصممين لمواصلة المرشح بدون سلسلة الدردشة الأصلية.", handoffSessions: "جلسات التسليم", imageCandidates: "صورة المرشحين", imagePromptPlaceholder: "بطل المدونة لمقالة حول زمن الوصول للبداية الباردة", libraryEyebrow: "الأصول المحفوظة في طريقة العرض التي تمت تصفيتها. ضع علامة على الأشخاص الذين يجب أن يرشدوا الأجيال القادمة.", liveCandidatesActions: "إجراءات المرشحين الحية", liveSlot: "فتحة حية", loadingBrandKit: "جارٍ تحميل مجموعة العلامات التجارية...", moveTo: "انتقل الى", needsDesignRefinement: "يحتاج إلى تحسين التصميم.", newFolderDescription: "قم بتجميع الأصول التي تم تحميلها وإنشاؤها لحملة أو قناة أو مجموعة قابلة لإعادة الاستخدام.", newFolderEllipsis: "مجلد جديد...", newFolder: "مجلد جديد", newGenerationPresetDescription: "احفظ تنسيق الإخراج ونسبة العرض إلى الارتفاع وقواعد النص للعمل المتكرر للصور.", newGenerationPreset: "الجيل الجديد مسبقا", noAssetsMatchDescription: "جرّب جميع الأصول أو مجلدًا مختلفًا أو بحثًا أوسع.", noAssetsMatch: "لا توجد أصول تطابق طريقة العرض هذه", noAssetsToShow: "لا توجد أصول لعرضها.", noFeedbackYet: "لا توجد تعليقات حتى الآن.", noNewAssetsUploaded: "لم يتم تحميل أي أصول جديدة.", noOutputCaptured: "لم يتم التقاط أي إخراج حتى الآن.", noPresetsYet: "لا توجد إعدادات مسبقة حتى الآن.", noPreset: "لا يوجد إعداد مسبق", noReferencesBody: "قم بالتبديل مرة أخرى إلى جميع الأصول وقم بوضع علامة على المحافظين كمراجع.", noReferencesTitle: "لا توجد مراجع في هذا الرأي", noRunsDescription: "أنشئ من مجموعة العلامة التجارية هذه لالتقاط المطالبة والإخراج والمراجع والإعدادات.", noRunsYet: "لا يوجد أشواط حتى الآن", noneSelected: "لم يتم تحديد أي شيء", openChat: "افتح الدردشة", previewUnavailable: "المعاينة غير متاحة", privateCopyCreated: "تم إنشاء نسخة مجموعة العلامة التجارية الخاصة", processingPreviews: "معالجة المعاينات وحفظها في مجموعة العلامة التجارية.", promptTemplate: "قالب سريع", readyCandidate: "مرشح جاهز", referencesEyebrow: "تم وضع علامة Assets حاليًا كمرجع للجيل.", refreshBrand: "تحديث العلامة التجارية", removeFromReferences: "إزالة من المراجع", removedFromReferences: "تمت الإزالة من المراجع.", rerunThis: "أعد تشغيل هذا", runNoGeneratedAssets: "لا يحتوي هذا التشغيل على أصول تم إنشاؤها لتسليمها.", saveTo: "حفظ إلى...", savedToGenerated: "تم الحفظ في الإنشاء.", searchAssets: "بحث الأصول", selectAllAssetsBoard: "حدد جميع الأصول في هذا المنتدى", selectAllVisibleAssets: "حدد جميع الأصول المرئية", selectAll: "حدد الكل", showAll: "إظهار الكل", styleDescription: "وصف النمط", textPolicy: "سياسة النص", uploadFailed: "فشل التحميل", uploadMayFinish: "ربما يستمر الخادم في إنهاء حفظ هذه الأصول. سنستمر في التحقق من مجموعة العلامات التجارية هذه.", uploadTakingLonger: "يستغرق التحميل وقتًا أطول من المتوقع.", videoCandidate: "مرشح الفيديو", videoPromptPlaceholder: "يتم الكشف عن المنتج خلال ثماني ثوانٍ مع دفع بطيء للكاميرا", viewDetails: "عرض التفاصيل", settingsTitle: "إعدادات مجموعة العلامة التجارية", unsavedChangesTitle: "تغييرات غير محفوظة", unsavedChangesDescription: "لديك تغييرات غير محفوظة على مجموعة العلامة التجارية هذه. هل تريد التراجع عنها أم متابعة التحرير؟", discardChanges: "التراجع عن التغييرات", keepEditing: "متابعة التحرير", setupGuide: "دليل الإعداد", setupGuideDescription: "توصيات للحصول على أكثر النتائج اتساقًا وتوافقًا مع العلامة التجارية من هذه المجموعة.", setupGuideReferences: "تحميل أصول مرجعية", setupGuideReferencesHint: "حدد 3-5 أمثلة قوية كمراجع حتى يتمكن تحليل العلامة التجارية من تعلم لوحة الألوان والسمات المرئية من عمل حقيقي، وليس تخمينات.", setupGuideStyleDescription: "اكتب وصفًا محددًا للأسلوب", setupGuideStyleDescriptionHint: "حدد سمات ملموسة (الإضاءة، التكوين، الملمس) بدلاً من صفات غامضة حتى يبقى كل إنتاج متوافقًا مع العلامة التجارية.", setupGuideInstructions: "استخدم تعليمات مخصصة للقيود الصارمة", setupGuideInstructionsHint: "ضع هنا الأشياء التي يجب أن تكون صحيحة دائمًا (موضع الشعار، الألوان المحظورة، النص القانوني) حتى لا ينساها الوكيل أبدًا.", setupGuidePresets: "أنشئ إعدادًا مسبقًا لكل تنسيق متكرر", setupGuidePresetsHint: "احفظ نسبة العرض إلى الارتفاع والنموذج وإعداد الهيكل/المرجع كإعداد مسبق بحيث يُعاد استخدام نفس شكل الناتج في كل مرة.", } satisfies Partial; const brandKitDetailDeDE = { addAssetsDescription: "Laden Sie Quellmaterial hoch oder generieren Sie Kandidaten und markieren Sie dann nur die Assets, die künftigen Generationen als Referenz dienen sollen.", addAssets: "Assets hinzufügen", addToReferences: "Zu Referenzen hinzufügen", addedToReferences: "Zu den Referenzen hinzugefügt.", agentUsageDescription: "Andere Agenten können mit dieser Marken-Kit-ID Assets über A2A anrufen.", agentUsage: "Agentennutzung", allAssets: "Alle Vermögenswerte", allMedia: "Alle Medien", alreadyInBrandKit: "Bereits in diesem Markenkit.", analyzeBrand: "Marke analysieren", archiveBrandKit: "Archivmarken-Kit", archiveDescription: "Dadurch wird das Markenkit aus der Hauptliste der Markenkits entfernt. Die Vermögenswerte und der Generationsverlauf bleiben gespeichert.", archiveThisBrandKit: "Dieses Markenkit archivieren?", archiving: "Archivierung...", aspectRatio: "Seitenverhältnis", assetActions: "Asset-Aktionen", assetScope: "Asset-Bereich", assetView: "Asset-Ansicht", brandKitActions: "Markenkit-Aktionen", brandKitArchived: "Markenkit archiviert.", campaignLaunch: "Kampagnenstart", candidateActions: "Kandidatenaktionen", checkingUpload: "Upload wird überprüft", clearAll: "Alles löschen", clearCandidatesDescription: "Löscht die Kandidatenphase und löscht nicht gespeicherte generierte Kandidaten. Gespeicherte Bibliotheksbestände bleiben davon unberührt.", clearLiveCandidatesDescription: "Löscht den Bereich „Live-Kandidaten“ und löscht alle nicht gespeicherten Kandidatenzeilen.", clearLiveCandidates: "Alle aktiven Kandidaten löschen?", clearSearch: "Suche löschen", clearing: "Löschen...", compiledPrompt: "Kompilierte Eingabeaufforderung", logo: "Logo", compositeCanonicalLogo: "Zusammengesetztes kanonisches Logo", compositeCanonicalLogoHint: "Fügt das kanonische Logo dieses Kits jedem mit dieser Vorlage erstellten Bild hinzu. Erfordert ein kanonisches Logo.", presetSkeleton: "Preset-Skelett", presetSkeletonHint: "Setzt Generierungen auf ein hochgeladenes Marken-Hintergrundbild dieses Presets.", contentMode: "Inhaltsmodus", contentModeFill: "Füllen", contentModeCutout: "Freisteller", skeletonImage: "Skelettbild", skeletonImageHint: "Verwende ein Marken-Hintergrundbild als wiederverwendbare Vorlage für dieses Preset.", uploadSkeletonImage: "Skelettbild hochladen", uploadingSkeletonImage: "Wird hochgeladen...", chooseSkeletonImage: "Aus Bibliothek wählen", noSkeletonImage: "Kein Skelettbild", skeletonImageRequired: "Wähle oder lade vor dem Speichern ein Skelettbild hoch.", skeletonImageUploaded: "Skelettbild hochgeladen.", couldNotUploadSkeletonImage: "Skelettbild konnte nicht hochgeladen werden.", skeletonMask: "Maske für bearbeitbaren Bereich", skeletonMaskHint: "Optional für gpt-image-2-Freisteller. Transparente Pixel markieren, wo das Motiv gemalt werden darf; lasse Platteninhalt deckend, um ihn zu erhalten.", uploadSkeletonMask: "Maske hochladen", uploadingSkeletonMask: "Wird hochgeladen...", chooseSkeletonMask: "Maske aus Bibliothek wählen", noSkeletonMask: "Keine Maske", skeletonMaskUploaded: "Skelettmaske hochgeladen.", couldNotUploadSkeletonMask: "Skelettmaske konnte nicht hochgeladen werden.", contactShadow: "Kontaktschatten", contactShadowHint: "Fügt unter transparenten Freistellern einen weichen Erdungsschatten hinzu.", placeLogoInSkeleton: "Logo im Skelett platzieren", placeLogoInSkeletonHint: "Das Skelett verwaltet das kanonische Logo, damit es nicht doppelt gestempelt wird.", logoPlacement: "Logo-Position", upperRight: "Oben rechts", upperLeft: "Oben links", lowerRight: "Unten rechts", lowerLeft: "Unten links", skeletonEnabled: "Aktiviert", skeletonOff: "Aus", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "Ausgewählte Assets konnten nicht zu Referenzen hinzugefügt werden.", couldNotAddToReferences: "Asset konnte nicht zu Referenzen hinzugefügt werden.", couldNotArchiveBrandKit: "Markenkit konnte nicht archiviert werden.", couldNotClearCandidates: "Kandidaten konnten nicht gelöscht werden.", couldNotClearCandidate: "Der Kandidat konnte nicht gelöscht werden.", couldNotClearLiveCandidates: "Live-Kandidaten konnten nicht gelöscht werden.", couldNotCreateFolder: "Ordner konnte nicht erstellt werden", couldNotCreateHandoff: "Übergabe konnte nicht erstellt werden.", couldNotCreatePreset: "Voreinstellung konnte nicht erstellt werden.", couldNotDeleteAsset: "Asset konnte nicht gelöscht werden.", couldNotDeletePreset: "Voreinstellung konnte nicht gelöscht werden.", couldNotDeleteSelectedAssets: "Die ausgewählten Assets konnten nicht gelöscht werden.", couldNotDismissCandidate: "Der Kandidat konnte nicht entlassen werden.", couldNotDuplicateBrandKit: "Das Markenkit konnte nicht dupliziert werden.", couldNotPrepareHandoff: "Übergabe konnte nicht vorbereitet werden.", couldNotRemoveFromReferences: "Das Asset konnte nicht aus den Referenzen entfernt werden.", couldNotRemoveSelectedFromReferences: "Die ausgewählten Assets konnten nicht aus den Referenzen entfernt werden.", couldNotSaveCandidate: "Der Kandidat konnte nicht gespeichert werden.", customInstructionsPlaceholder: "Präferenzen, die der Agent anwenden sollte, wenn er dieses Markenkit verwendet.", customInstructions: "Benutzerdefinierte Anweisungen", defaultDescription: "Laden Sie wiederverwendbare Assets agentenübergreifend hoch, generieren, beschreiben und organisieren Sie sie.", defaultTextPolicy: "Bevorzugen Sie keinen eingebetteten Text. Halten Sie den gewünschten Text kurz und lesbar.", deleteCandidateDescription: "Entfernt diesen Kandidaten aus dem Markenkit und räumt seinen Platz frei.", deleteCandidate: "Kandidat löschen?", deleteGenerationPresetDescription: "Bestehende Läufe behalten ihre erfassten Eingabeaufforderungen und Einstellungen. Neue Generationen werden diese Voreinstellung nicht mehr anbieten.", deleteGenerationPreset: "Generationsvoreinstellung löschen?", deleteManyDescription: "Dadurch werden die ausgewählten Assets dauerhaft aus dem Markenkit entfernt. Um ein Asset nicht mehr als Referenz zu verwenden, es aber beizubehalten, verwenden Sie stattdessen „Aus Referenzen entfernen“.", deleteOneDescription: "Dadurch wird das Asset dauerhaft aus dem Markenkit entfernt. Um es in der Bibliothek zu behalten, es aber nicht mehr als Referenz zu verwenden, verwenden Sie stattdessen „Aus Referenzen entfernen“.", deletedAsset: "Gelöschtes Asset.", deleting: "Löschen...", deselectAll: "Alle abwählen", dismissFailedDescription: "Entfernt fehlgeschlagene Live-Slots aus der Kandidatenphase. Bereite Kandidaten bleiben.", dismissFailedSlotsDescription: "Entfernt jeden fehlerhaften Steckplatz aus dem Panel. Erfolgreiche Kandidaten bleiben.", dismissFailed: "Entlassung fehlgeschlagen", dismissSlotDescription: "Entfernt diesen fehlgeschlagenen Slot aus dem Live-Kandidaten-Panel.", dismissThisCandidate: "Diesen Kandidaten abweisen?", dismissThisSlot: "Diesen Slot verwerfen?", dismissedCandidate: "Kandidat entlassen.", dismissing: "Entlassen...", dropAssetsBody: "Laden Sie Quellmaterial, generierte Exporte, Logos, Produkte oder Styleboards hoch.", dropAssetsHere: "Legen Sie Vermögenswerte hier ab", dropToUpload: "Zum Hochladen ablegen", duplicating: "Duplizieren...", editBrandKit: "Bearbeiten Sie den Namen und die Beschreibung des Marken-Kits", backToLibrary: "Zur Bibliothek", backToSettings: "Zurück zu den Einstellungen", editGenerationPreset: "Generationsvoreinstellung bearbeiten", editGenerationPresetDescription: "Passen Sie die wiederverwendbaren Regeln an, die der Agent anwendet, wenn diese Voreinstellung für die Bildgenerierung markiert ist.", failedCandidate: "Kandidat gescheitert", generateWithChat: "Mit Chat generieren", generatedAsset: "Generiertes Asset", generatingCandidate: "Kandidaten generieren", generationPresetCreated: "Generationsvoreinstellung erstellt.", generationPresetDeleted: "Generationsvoreinstellung gelöscht.", generationPresetSaved: "Generationsvoreinstellung gespeichert.", couldNotSavePreset: "Voreinstellung konnte nicht gespeichert werden.", presetUnavailableTitle: "Voreinstellung nicht verfügbar", presetUnavailableDescription: "Diese Voreinstellung wurde möglicherweise gelöscht, oder Sie haben keinen Zugriff mehr auf das zugehörige Marken-Kit.", readOnly: "Schreibgeschützt", viewerModeTitle: "Betrachterzugriff", viewerModeDescription: "Sie können diese Voreinstellung ansehen, aber nur Bearbeiter können Änderungen speichern oder sie löschen.", presetDescriptionPlaceholder: "Wofür diese Voreinstellung gedacht ist, wo sie verwendet werden soll oder wodurch sie sich unterscheidet.", imageSize: "Bildgröße", referencePolicy: "Referenzrichtlinie", noCollection: "Keine Sammlung", sortOrder: "Sortierreihenfolge", showAdvancedOptions: "Erweiterte Optionen anzeigen", hideAdvancedOptions: "Erweiterte Optionen ausblenden", presetSummary: "Voreinstellungsübersicht", saving: "Wird gespeichert...", saveChanges: "Änderungen speichern", generationPresetsDescription: "Wiederverwendbare Lieferregeln für soziale Bilder, Helden und Diagramme.", generationPresets: "Generationsvoreinstellungen", generationQueue: "Generierungswarteschlange", handoffSessionCreated: "Übergabesitzung erstellt.", handoffSessionsDescription: "Gemeinsamer Kontext für Designer, um einen Kandidaten ohne den ursprünglichen Chat-Thread fortzusetzen.", handoffSessions: "Übergabesitzungen", imageCandidates: "Bildkandidaten", imagePromptPlaceholder: "Blog-Held für einen Artikel über Kaltstartlatenz", libraryEyebrow: "Gespeicherte Assets in dieser gefilterten Ansicht. Markieren Sie diejenigen, die zukünftige Generationen leiten sollen.", liveCandidatesActions: "Live-Aktionen der Kandidaten", liveSlot: "Live-Slot", loadingBrandKit: "Markenkit wird geladen...", moveTo: "Bewegen Sie sich nach", needsDesignRefinement: "Designverfeinerung erforderlich.", newFolderDescription: "Gruppieren Sie hochgeladene und generierte Assets für eine Kampagne, einen Kanal oder eine wiederverwendbare Sammlung.", newFolderEllipsis: "Neuer Ordner...", newFolder: "Neuer Ordner", newGenerationPresetDescription: "Speichern Sie das Ausgabeformat, das Seitenverhältnis und die Textregeln für wiederholte Bildbearbeitung.", newGenerationPreset: "Voreinstellung der neuen Generation", noAssetsMatchDescription: "Probieren Sie „Alle Assets“, einen anderen Ordner oder eine umfassendere Suche aus.", noAssetsMatch: "Keine Assets stimmen mit dieser Ansicht überein", noAssetsToShow: "Keine Vermögenswerte zum Anzeigen.", noFeedbackYet: "Noch keine Rückmeldung.", noNewAssetsUploaded: "Es wurden keine neuen Assets hochgeladen.", noOutputCaptured: "Noch keine Ausgabe erfasst.", noPresetsYet: "Noch keine Voreinstellungen.", noPreset: "Keine Voreinstellung", noReferencesBody: "Wechseln Sie zurück zu allen Assets und markieren Sie die Bewahrer als Referenzen.", noReferencesTitle: "Keine Referenzen in dieser Ansicht", noRunsDescription: "Generieren Sie aus diesem Markenkit, um Eingabeaufforderungen, Ausgaben, Referenzen und Einstellungen zu erfassen.", noRunsYet: "Noch keine Läufe", noneSelected: "Keine ausgewählt", openChat: "Chat öffnen", previewUnavailable: "Vorschau nicht verfügbar", privateCopyCreated: "Eigenmarken-Kit-Kopie erstellt", processingPreviews: "Vorschauen verarbeiten und im Markenkit speichern.", promptTemplate: "Prompt-Vorlage", readyCandidate: "Bereiter Kandidat", referencesEyebrow: "Assets ist derzeit als Generierungsreferenz markiert.", refreshBrand: "Marke auffrischen", removeFromReferences: "Aus Referenzen entfernen", removedFromReferences: "Aus Referenzen entfernt.", rerunThis: "Führen Sie dies erneut aus", runNoGeneratedAssets: "Für diesen Lauf sind keine generierten Assets zur Übergabe vorhanden.", saveTo: "Speichern unter...", savedToGenerated: "Gespeichert unter „Generiert“.", searchAssets: "Suchen Sie nach Assets", selectAllAssetsBoard: "Wählen Sie alle Assets in diesem Board aus", selectAllVisibleAssets: "Wählen Sie alle sichtbaren Assets aus", selectAll: "Alles auswählen", showAll: "Alle anzeigen", styleDescription: "Stilbeschreibung", textPolicy: "Textrichtlinie", uploadFailed: "Der Upload ist fehlgeschlagen", uploadMayFinish: "Der Server kann die Speicherung dieser Assets möglicherweise noch abschließen. Wir werden dieses Markenkit weiterhin überprüfen.", uploadTakingLonger: "Das Hochladen dauert länger als erwartet.", videoCandidate: "Videokandidat", videoPromptPlaceholder: "Acht Sekunden lange Produktpräsentation mit langsamem Einfahren der Kamera", viewDetails: "Details anzeigen", settingsTitle: "Brand-Kit-Einstellungen", unsavedChangesTitle: "Ungespeicherte Änderungen", unsavedChangesDescription: "Sie haben ungespeicherte Änderungen an diesem Brand Kit. Verwerfen oder weiter bearbeiten?", discardChanges: "Änderungen verwerfen", keepEditing: "Weiter bearbeiten", setupGuide: "Einrichtungsleitfaden", setupGuideDescription: "Empfehlungen für die konsistentesten, markenkonformen Generierungen aus diesem Kit.", setupGuideReferences: "Referenz-Assets hochladen", setupGuideReferencesHint: "Markieren Sie 3-5 starke Beispiele als Referenzen, damit die Markenanalyse Palette und visuelle Merkmale aus echter Arbeit lernen kann, nicht aus Vermutungen.", setupGuideStyleDescription: "Eine konkrete Stilbeschreibung schreiben", setupGuideStyleDescriptionHint: "Benennen Sie konkrete Merkmale (Beleuchtung, Komposition, Textur) statt vager Adjektive, damit jede Generierung markenkonform bleibt.", setupGuideInstructions: "Benutzerdefinierte Anweisungen für feste Vorgaben verwenden", setupGuideInstructionsHint: "Legen Sie hier Dinge fest, die immer gelten müssen (Logoplatzierung, verbotene Farben, rechtliche Texte), damit der Agent sie nie vergisst.", setupGuidePresets: "Für jedes wiederkehrende Format eine Voreinstellung erstellen", setupGuidePresetsHint: "Speichern Sie Seitenverhältnis, Modell und Skelett-/Referenz-Setup als Voreinstellung, damit dieselbe Ausgabeform jedes Mal wiederverwendet wird.", } satisfies Partial; const brandKitDetailEsES = { addAssetsDescription: "Cargue material fuente o genere candidatos, luego marque solo los activos que deberían guiar a las generaciones futuras como referencias.", addAssets: "Agregar activos", addToReferences: "Agregar a referencias", addedToReferences: "Agregado a Referencias.", agentUsageDescription: "Otros agentes pueden llamar a Assets a través de A2A con este ID de kit de marca.", agentUsage: "Uso del agente", allAssets: "Todos los activos", allMedia: "Todos los medios", alreadyInBrandKit: "Ya en este kit de marca.", analyzeBrand: "Analizar marca", archiveBrandKit: "Kit de marca de archivo", archiveDescription: "Esto elimina el kit de marca de la lista principal de kits de marca. Sus activos y su historial de generación permanecen almacenados.", archiveThisBrandKit: "¿Archivar este kit de marca?", archiving: "Archivando...", aspectRatio: "relación de aspecto", assetActions: "Acciones de activos", assetScope: "Alcance del activo", assetView: "Vista de activos", brandKitActions: "Acciones del kit de marca", brandKitArchived: "Kit de marca archivado.", campaignLaunch: "Lanzamiento de campaña", candidateActions: "Acciones candidatas", checkingUpload: "Comprobando carga", clearAll: "Borrar todo", clearCandidatesDescription: "Borra la etapa de candidatos y elimina los candidatos generados no guardados. Los activos de la biblioteca guardados permanecen intactos.", clearLiveCandidatesDescription: "Borra el panel de candidatos activos y elimina las filas de candidatos no guardadas.", clearLiveCandidates: "¿Borrar todos los candidatos activos?", clearSearch: "Borrar búsqueda", clearing: "Limpiando...", compiledPrompt: "Aviso compilado", logo: "Logotipo", compositeCanonicalLogo: "Logotipo canónico compuesto", compositeCanonicalLogoHint: "Añade el logotipo canónico de este kit a cada imagen creada con este ajuste. Requiere un logotipo canónico.", presetSkeleton: "Esqueleto del ajuste", presetSkeletonHint: "Compone las generaciones sobre una imagen de fondo de marca subida para este ajuste.", contentMode: "Modo de contenido", contentModeFill: "Rellenar", contentModeCutout: "Recorte", skeletonImage: "Imagen del esqueleto", skeletonImageHint: "Usa una imagen de fondo de marca como placa reutilizable para este ajuste.", uploadSkeletonImage: "Subir imagen del esqueleto", uploadingSkeletonImage: "Subiendo...", chooseSkeletonImage: "Elegir de la biblioteca", noSkeletonImage: "Sin imagen de esqueleto", skeletonImageRequired: "Elige o sube una imagen de esqueleto antes de guardar.", skeletonImageUploaded: "Imagen del esqueleto subida.", couldNotUploadSkeletonImage: "No se pudo subir la imagen del esqueleto.", skeletonMask: "Máscara de área editable", skeletonMaskHint: "Opcional para recortes con gpt-image-2. Los píxeles transparentes marcan dónde se puede pintar el sujeto; deja opaco el contenido de la placa para conservarlo.", uploadSkeletonMask: "Subir máscara", uploadingSkeletonMask: "Subiendo...", chooseSkeletonMask: "Elegir máscara de la biblioteca", noSkeletonMask: "Sin máscara", skeletonMaskUploaded: "Máscara del esqueleto subida.", couldNotUploadSkeletonMask: "No se pudo subir la máscara del esqueleto.", contactShadow: "Sombra de contacto", contactShadowHint: "Añade una sombra suave bajo los sujetos recortados transparentes.", placeLogoInSkeleton: "Colocar logotipo en el esqueleto", placeLogoInSkeletonHint: "Permite que el esqueleto controle el logotipo canónico para no estamparlo dos veces.", logoPlacement: "Ubicación del logotipo", upperRight: "Superior derecha", upperLeft: "Superior izquierda", lowerRight: "Inferior derecha", lowerLeft: "Inferior izquierda", skeletonEnabled: "Activado", skeletonOff: "Desactivado", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "No se pudieron agregar los recursos seleccionados a las Referencias.", couldNotAddToReferences: "No se pudo agregar activo a Referencias.", couldNotArchiveBrandKit: "No se pudo archivar el kit de marca.", couldNotClearCandidates: "No se pudieron borrar los candidatos.", couldNotClearCandidate: "No se pudo aprobar el candidato.", couldNotClearLiveCandidates: "No se pudieron eliminar los candidatos activos.", couldNotCreateFolder: "No se pudo crear la carpeta", couldNotCreateHandoff: "No se pudo crear el traspaso.", couldNotCreatePreset: "No se pudo crear un ajuste preestablecido.", couldNotDeleteAsset: "No se pudo eliminar el activo.", couldNotDeletePreset: "No se pudo eliminar el ajuste preestablecido.", couldNotDeleteSelectedAssets: "No se pudieron eliminar los recursos seleccionados.", couldNotDismissCandidate: "No se pudo despedir al candidato.", couldNotDuplicateBrandKit: "No se pudo duplicar el kit de marca.", couldNotPrepareHandoff: "No se pudo preparar el traspaso.", couldNotRemoveFromReferences: "No se pudo eliminar el recurso de Referencias.", couldNotRemoveSelectedFromReferences: "No se pudieron eliminar los recursos seleccionados de Referencias.", couldNotSaveCandidate: "No se pudo guardar al candidato.", customInstructionsPlaceholder: "Preferencias que el agente debe aplicar siempre que utilice este kit de marca.", customInstructions: "Instrucciones personalizadas", defaultDescription: "Cargue, genere, describa y organice activos reutilizables entre agentes.", defaultTextPolicy: "Prefiero que no haya texto incrustado. Mantenga cualquier texto solicitado breve y legible.", deleteCandidateDescription: "Elimina este candidato del kit de marca y limpia su espacio.", deleteCandidate: "¿Eliminar candidato?", deleteGenerationPresetDescription: "Las ejecuciones existentes mantienen sus mensajes y configuraciones capturados. Las nuevas generaciones ya no ofrecerán este preset.", deleteGenerationPreset: "¿Eliminar preajuste de generación?", deleteManyDescription: "Esto elimina permanentemente los activos seleccionados del kit de marca. Para dejar de usar un activo como referencia pero conservarlo, use Eliminar de referencias en su lugar.", deleteOneDescription: "Esto elimina permanentemente el activo del kit de marca. Para mantenerlo en la biblioteca pero dejar de usarlo como referencia, use Eliminar de referencias en su lugar.", deletedAsset: "Activo eliminado.", deleting: "Eliminando...", deselectAll: "Deseleccionar todo", dismissFailedDescription: "Elimina los espacios en vivo fallidos de la etapa de candidatos. Los candidatos listos se quedan.", dismissFailedSlotsDescription: "Elimina todas las ranuras fallidas del panel. Los candidatos seleccionados se quedan.", dismissFailed: "Descartar falló", dismissSlotDescription: "Elimina este espacio fallido del panel de candidatos en vivo.", dismissThisCandidate: "¿Desestimar a este candidato?", dismissThisSlot: "¿Descartar este espacio?", dismissedCandidate: "Candidato destituido.", dismissing: "Descartando...", dropAssetsBody: "Cargue material fuente, exportaciones generadas, logotipos, productos o tableros de estilo.", dropAssetsHere: "Suelta recursos aquí", dropToUpload: "Soltar para subir", duplicating: "Duplicando...", editBrandKit: "Editar el nombre y la descripción del kit de marca", backToLibrary: "Volver a la biblioteca", backToSettings: "Volver a ajustes", editGenerationPreset: "Editar preajuste de generación", editGenerationPresetDescription: "Ajusta las reglas reutilizables que aplica el agente cuando este preajuste se etiqueta para generar imágenes.", failedCandidate: "candidato fallido", generateWithChat: "Generar con chat", generatedAsset: "Activo generado", generatingCandidate: "Generando candidato", generationPresetCreated: "Preajuste de generación creado.", generationPresetDeleted: "Preajuste de generación eliminado.", generationPresetSaved: "Preajuste de generación guardado.", couldNotSavePreset: "No se pudo guardar el preajuste.", presetUnavailableTitle: "Preajuste no disponible", presetUnavailableDescription: "Es posible que este preajuste se haya eliminado o que ya no tengas acceso a su kit de marca.", readOnly: "Solo lectura", viewerModeTitle: "Acceso de lector", viewerModeDescription: "Puedes revisar este preajuste, pero solo los editores pueden guardar cambios o eliminarlo.", presetDescriptionPlaceholder: "Para qué sirve este preajuste, dónde debe usarse o qué lo hace diferente.", imageSize: "Tamaño de imagen", referencePolicy: "Política de referencia", noCollection: "Sin colección", sortOrder: "Orden", showAdvancedOptions: "Mostrar opciones avanzadas", hideAdvancedOptions: "Ocultar opciones avanzadas", presetSummary: "Resumen del preajuste", saving: "Guardando...", saveChanges: "Guardar cambios", generationPresetsDescription: "Reglas entregables reutilizables para imágenes sociales, héroes y diagramas.", generationPresets: "Preajustes de generación", generationQueue: "Cola de generación", handoffSessionCreated: "Sesión de transferencia creada.", handoffSessionsDescription: "Contexto compartido para que los diseñadores continúen con un candidato sin el hilo de chat original.", handoffSessions: "Sesiones de transferencia", imageCandidates: "Candidatos de imagen", imagePromptPlaceholder: "Héroe del blog por un artículo sobre la latencia de arranque en frío", libraryEyebrow: "Activos guardados en esta vista filtrada. Marque aquellos que deberían guiar a las generaciones futuras.", liveCandidatesActions: "Acciones de candidatos en vivo", liveSlot: "tragamonedas en vivo", loadingBrandKit: "Cargando kit de marca...", moveTo: "Mover a", needsDesignRefinement: "Necesita refinamiento del diseño.", newFolderDescription: "Agrupe recursos cargados y generados para una campaña, canal o colección reutilizable.", newFolderEllipsis: "Nueva carpeta...", newFolder: "Nueva carpeta", newGenerationPresetDescription: "Guarde el formato de salida, la relación de aspecto y las reglas de texto para trabajos de imágenes repetidos.", newGenerationPreset: "Preajuste de nueva generación", noAssetsMatchDescription: "Pruebe Todos los recursos, una carpeta diferente o una búsqueda más amplia.", noAssetsMatch: "Ningún recurso coincide con esta vista", noAssetsToShow: "No hay activos para mostrar.", noFeedbackYet: "Aún no hay comentarios.", noNewAssetsUploaded: "No se cargaron nuevos activos.", noOutputCaptured: "Aún no se ha capturado ningún resultado.", noPresetsYet: "Aún no hay ajustes preestablecidos.", noPreset: "Sin preajuste", noReferencesBody: "Vuelva a todos los activos y marque a los guardianes como referencias.", noReferencesTitle: "No hay referencias en esta vista.", noRunsDescription: "Genere a partir de este kit de marca para capturar indicaciones, resultados, referencias y configuraciones.", noRunsYet: "Aún no hay carreras", noneSelected: "Ninguno seleccionado", openChat: "abrir chat", previewUnavailable: "Vista previa no disponible", privateCopyCreated: "Copia del kit de marca privada creada", processingPreviews: "Procesar vistas previas y guardarlas en el kit de marca.", promptTemplate: "plantilla de aviso", readyCandidate: "Candidato listo", referencesEyebrow: "Assets actualmente marcado como referencia de generación.", refreshBrand: "Actualizar marca", removeFromReferences: "Eliminar de referencias", removedFromReferences: "Eliminado de Referencias.", rerunThis: "Vuelva a ejecutar esto", runNoGeneratedAssets: "Esta ejecución no ha generado activos para entregar.", saveTo: "Guardar en...", savedToGenerated: "Guardado en Generado.", searchAssets: "Buscar activos", selectAllAssetsBoard: "Seleccionar todos los activos en este tablero", selectAllVisibleAssets: "Seleccionar todos los activos visibles", selectAll: "Seleccionar todo", showAll: "Mostrar todo", styleDescription: "Descripción del estilo", textPolicy: "Política de texto", uploadFailed: "Error al subir", uploadMayFinish: "Es posible que el servidor aún termine de guardar estos recursos. Seguiremos revisando este kit de marca.", uploadTakingLonger: "La carga está tardando más de lo esperado.", videoCandidate: "Candidato de vídeo", videoPromptPlaceholder: "Revelación de producto de ocho segundos con cámara lenta", viewDetails: "Ver detalles", settingsTitle: "Configuración del kit de marca", unsavedChangesTitle: "Cambios sin guardar", unsavedChangesDescription: "Tienes cambios sin guardar en este kit de marca. ¿Descartarlos o seguir editando?", discardChanges: "Descartar cambios", keepEditing: "Seguir editando", setupGuide: "Guía de configuración", setupGuideDescription: "Recomendaciones para obtener las generaciones más coherentes y fieles a la marca a partir de este kit.", setupGuideReferences: "Subir activos de referencia", setupGuideReferencesHint: "Marca de 3 a 5 ejemplos sólidos como Referencias para que Analizar marca pueda aprender la paleta y los rasgos visuales de trabajo real, no de suposiciones.", setupGuideStyleDescription: "Escribe una descripción de estilo específica", setupGuideStyleDescriptionHint: "Indica rasgos concretos (iluminación, composición, textura) en lugar de adjetivos vagos para que cada generación se mantenga fiel a la marca.", setupGuideInstructions: "Usa instrucciones personalizadas para restricciones estrictas", setupGuideInstructionsHint: "Pon aquí lo que siempre debe cumplirse (ubicación del logotipo, colores prohibidos, textos legales) para que el agente nunca lo olvide.", setupGuidePresets: "Crea un preajuste por cada formato recurrente", setupGuidePresetsHint: "Guarda la relación de aspecto, el modelo y la configuración de esqueleto/referencia como un preajuste para reutilizar la misma forma de salida cada vez.", } satisfies Partial; const brandKitDetailFrFR = { addAssetsDescription: "Téléchargez le matériel source ou générez des candidats, puis marquez uniquement les atouts qui devraient guider les générations futures comme références.", addAssets: "Ajouter des éléments", addToReferences: "Ajouter aux références", addedToReferences: "Ajouté aux références.", agentUsageDescription: "D'autres agents peuvent appeler Assets via A2A avec cet ID de kit de marque.", agentUsage: "Utilisation des agents", allAssets: "Tous les actifs", allMedia: "Tous les médias", alreadyInBrandKit: "Déjà dans ce kit de marque.", analyzeBrand: "Analyser la marque", archiveBrandKit: "Kit de marque d'archives", archiveDescription: "Cela supprime le kit de marque de la liste principale des kits de marque. Ses actifs et son historique de génération restent stockés.", archiveThisBrandKit: "Archiver ce kit de marque ?", archiving: "Archivage...", aspectRatio: "Rapport hauteur/largeur", assetActions: "Actions sur les actifs", assetScope: "Portée de l'actif", assetView: "Vue des actifs", brandKitActions: "Actions du kit de marque", brandKitArchived: "Kit de marque archivé.", campaignLaunch: "Lancement de la campagne", candidateActions: "Actions des candidats", checkingUpload: "Vérification du téléchargement", clearAll: "Tout effacer", clearCandidatesDescription: "Efface l'étape de candidature et supprime les candidats générés non enregistrés. Les ressources de bibliothèque enregistrées restent intactes.", clearLiveCandidatesDescription: "Efface le panneau des candidats en direct et supprime toutes les lignes de candidats non enregistrées.", clearLiveCandidates: "Effacer tous les candidats actifs ?", clearSearch: "Effacer la recherche", clearing: "Dégagement...", compiledPrompt: "Invite compilée", logo: "Logo", compositeCanonicalLogo: "Logo canonique composite", compositeCanonicalLogoHint: "Ajoute le logo canonique de ce kit à chaque image créée avec ce préréglage. Nécessite un logo canonique.", presetSkeleton: "Squelette du préréglage", presetSkeletonHint: "Compose les générations sur une image d'arrière-plan de marque téléversée pour ce préréglage.", contentMode: "Mode de contenu", contentModeFill: "Remplir", contentModeCutout: "Découpe", skeletonImage: "Image du squelette", skeletonImageHint: "Utilise une image d'arrière-plan de marque comme plaque réutilisable pour ce préréglage.", uploadSkeletonImage: "Téléverser l'image du squelette", uploadingSkeletonImage: "Téléversement...", chooseSkeletonImage: "Choisir dans la bibliothèque", noSkeletonImage: "Aucune image de squelette", skeletonImageRequired: "Choisis ou téléverse une image de squelette avant d'enregistrer.", skeletonImageUploaded: "Image du squelette téléversée.", couldNotUploadSkeletonImage: "Impossible de téléverser l'image du squelette.", skeletonMask: "Masque de zone modifiable", skeletonMaskHint: "Facultatif pour les découpes gpt-image-2. Les pixels transparents indiquent où le sujet peut être peint ; laisse le contenu de la plaque opaque pour le préserver.", uploadSkeletonMask: "Téléverser le masque", uploadingSkeletonMask: "Téléversement...", chooseSkeletonMask: "Choisir un masque dans la bibliothèque", noSkeletonMask: "Aucun masque", skeletonMaskUploaded: "Masque du squelette téléversé.", couldNotUploadSkeletonMask: "Impossible de téléverser le masque du squelette.", contactShadow: "Ombre de contact", contactShadowHint: "Ajoute une ombre douce sous les sujets détourés transparents.", placeLogoInSkeleton: "Placer le logo dans le squelette", placeLogoInSkeletonHint: "Laisse le squelette gérer le logo canonique afin qu'il ne soit pas appliqué deux fois.", logoPlacement: "Position du logo", upperRight: "En haut à droite", upperLeft: "En haut à gauche", lowerRight: "En bas à droite", lowerLeft: "En bas à gauche", skeletonEnabled: "Activé", skeletonOff: "Désactivé", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "Impossible d'ajouter les éléments sélectionnés aux références.", couldNotAddToReferences: "Impossible d'ajouter un élément aux références.", couldNotArchiveBrandKit: "Impossible d'archiver le kit de marque.", couldNotClearCandidates: "Impossible d'effacer les candidats.", couldNotClearCandidate: "Impossible d'effacer le candidat.", couldNotClearLiveCandidates: "Impossible d'effacer les candidats en direct.", couldNotCreateFolder: "Impossible de créer le dossier", couldNotCreateHandoff: "Impossible de créer un transfert.", couldNotCreatePreset: "Impossible de créer un préréglage.", couldNotDeleteAsset: "Impossible de supprimer l'élément.", couldNotDeletePreset: "Impossible de supprimer le préréglage.", couldNotDeleteSelectedAssets: "Impossible de supprimer les éléments sélectionnés.", couldNotDismissCandidate: "Impossible de renvoyer le candidat.", couldNotDuplicateBrandKit: "Impossible de dupliquer le kit de marque.", couldNotPrepareHandoff: "Impossible de préparer le transfert.", couldNotRemoveFromReferences: "Impossible de supprimer l'élément des références.", couldNotRemoveSelectedFromReferences: "Impossible de supprimer les éléments sélectionnés des références.", couldNotSaveCandidate: "Impossible d'enregistrer le candidat.", customInstructionsPlaceholder: "Préférences que l'agent doit appliquer chaque fois qu'il utilise ce kit de marque.", customInstructions: "Instructions personnalisées", defaultDescription: "Téléchargez, générez, décrivez et organisez des actifs réutilisables entre les agents.", defaultTextPolicy: "Ne préférez pas de texte intégré. Gardez tout texte demandé court et lisible.", deleteCandidateDescription: "Supprime ce candidat du kit de marque et libère son emplacement.", deleteCandidate: "Supprimer un candidat ?", deleteGenerationPresetDescription: "Les exécutions existantes conservent leur invite et leurs paramètres capturés. Les nouvelles générations ne proposeront plus ce preset.", deleteGenerationPreset: "Supprimer le préréglage de génération ?", deleteManyDescription: "Cela supprime définitivement les éléments sélectionnés du kit de marque. Pour cesser d’utiliser un actif comme référence mais le conserver, utilisez plutôt Remove from References.", deleteOneDescription: "Cela supprime définitivement l’actif du kit de marque. Pour le conserver dans la bibliothèque mais cesser de l’utiliser comme référence, utilisez plutôt Remove from References.", deletedAsset: "Actif supprimé.", deleting: "Suppression...", deselectAll: "Tout désélectionner", dismissFailedDescription: "Supprime les créneaux live ayant échoué de l'étape candidat. Les candidats prêts restent.", dismissFailedSlotsDescription: "Supprime chaque emplacement défaillant du panneau. Les candidats retenus restent.", dismissFailed: "Échec du rejet", dismissSlotDescription: "Supprime cet emplacement ayant échoué du panneau des candidats en direct.", dismissThisCandidate: "Écarter ce candidat ?", dismissThisSlot: "Supprimer cet emplacement ?", dismissedCandidate: "Candidat licencié.", dismissing: "Rejeter...", dropAssetsBody: "Téléchargez le matériel source, les exportations générées, les logos, les produits ou les tableaux de style.", dropAssetsHere: "Déposez les éléments ici", dropToUpload: "Déposer pour télécharger", duplicating: "Duplication...", editBrandKit: "Modifier le nom et la description du kit de marque", backToLibrary: "Retour à la bibliothèque", backToSettings: "Retour aux paramètres", editGenerationPreset: "Modifier le préréglage de génération", editGenerationPresetDescription: "Ajustez les règles réutilisables que l'agent applique lorsque ce préréglage est marqué pour la génération d'images.", failedCandidate: "Candidat échoué", generateWithChat: "Générer avec le chat", generatedAsset: "Actif généré", generatingCandidate: "Générer un candidat", generationPresetCreated: "Préréglage de génération créé.", generationPresetDeleted: "Préréglage de génération supprimé.", generationPresetSaved: "Préréglage de génération enregistré.", couldNotSavePreset: "Impossible d'enregistrer le préréglage.", presetUnavailableTitle: "Préréglage indisponible", presetUnavailableDescription: "Ce préréglage a peut-être été supprimé, ou vous n'avez peut-être plus accès à son kit de marque.", readOnly: "Lecture seule", viewerModeTitle: "Accès lecteur", viewerModeDescription: "Vous pouvez consulter ce préréglage, mais seuls les éditeurs peuvent enregistrer des modifications ou le supprimer.", presetDescriptionPlaceholder: "À quoi sert ce préréglage, où l'utiliser ou ce qui le rend différent.", imageSize: "Taille de l'image", referencePolicy: "Politique de référence", noCollection: "Aucune collection", sortOrder: "Ordre de tri", showAdvancedOptions: "Afficher les options avancées", hideAdvancedOptions: "Masquer les options avancées", presetSummary: "Résumé du préréglage", saving: "Enregistrement...", saveChanges: "Enregistrer les modifications", generationPresetsDescription: "Règles livrables réutilisables pour les images sociales, les héros et les diagrammes.", generationPresets: "Préréglages de génération", generationQueue: "File d'attente de génération", handoffSessionCreated: "Session de transfert créée.", handoffSessionsDescription: "Contexte partagé permettant aux concepteurs de poursuivre un candidat sans le fil de discussion d'origine.", handoffSessions: "Sessions de transfert", imageCandidates: "Candidats aux images", imagePromptPlaceholder: "Héros du blog pour un article sur la latence de démarrage à froid", libraryEyebrow: "Actifs enregistrés dans cette vue filtrée. Marquez ceux qui devraient guider les générations futures.", liveCandidatesActions: "Actions des candidats en direct", liveSlot: "Machine à sous en direct", loadingBrandKit: "Chargement du kit de marque...", moveTo: "Déplacer vers", needsDesignRefinement: "A besoin d'un raffinement de conception.", newFolderDescription: "Regroupez les ressources téléchargées et générées pour une campagne, un canal ou une collection réutilisable.", newFolderEllipsis: "Nouveau dossier...", newFolder: "Nouveau dossier", newGenerationPresetDescription: "Enregistrez le format de sortie, le rapport hauteur/largeur et les règles de texte pour le travail d'image répété.", newGenerationPreset: "Préréglage nouvelle génération", noAssetsMatchDescription: "Essayez Tous les éléments, un autre dossier ou une recherche plus large.", noAssetsMatch: "Aucun actif ne correspond à cette vue", noAssetsToShow: "Aucun atout à montrer.", noFeedbackYet: "Aucun retour pour l'instant.", noNewAssetsUploaded: "Aucune nouvelle ressource n'a été téléchargée.", noOutputCaptured: "Aucune sortie capturée pour l'instant.", noPresetsYet: "Pas encore de préréglages.", noPreset: "Aucun préréglage", noReferencesBody: "Revenez à tous les actifs et marquez les gardiens comme références.", noReferencesTitle: "Aucune référence dans cette vue", noRunsDescription: "Générez à partir de ce kit de marque pour capturer les invites, les résultats, les références et les paramètres.", noRunsYet: "Aucune course pour l'instant", noneSelected: "Aucun sélectionné", openChat: "Ouvrir le chat", previewUnavailable: "Aperçu indisponible", privateCopyCreated: "Copie du kit de marque privée créée", processingPreviews: "Traiter les aperçus et les enregistrer dans le kit de marque.", promptTemplate: "Modèle d'invite", readyCandidate: "Candidat prêt", referencesEyebrow: "Assets actuellement marqué pour référence de génération.", refreshBrand: "Actualiser la marque", removeFromReferences: "Supprimer des références", removedFromReferences: "Supprimé des références.", rerunThis: "Réexécutez ceci", runNoGeneratedAssets: "Cette exécution n'a pas généré d'actifs à transférer.", saveTo: "Enregistrer dans...", savedToGenerated: "Enregistré dans Généré.", searchAssets: "Rechercher des ressources", selectAllAssetsBoard: "Sélectionnez tous les actifs de ce tableau", selectAllVisibleAssets: "Sélectionnez tous les éléments visibles", selectAll: "Tout sélectionner", showAll: "Afficher tout", styleDescription: "Description du style", textPolicy: "Politique de texte", uploadFailed: "Échec du téléchargement", uploadMayFinish: "Le serveur peut encore terminer la sauvegarde de ces actifs. Nous continuerons à vérifier ce kit de marque.", uploadTakingLonger: "Le téléchargement prend plus de temps que prévu.", videoCandidate: "Candidat vidéo", videoPromptPlaceholder: "Révélation du produit en huit secondes avec introduction lente de la caméra", viewDetails: "Afficher les détails", settingsTitle: "Paramètres du kit de marque", unsavedChangesTitle: "Modifications non enregistrées", unsavedChangesDescription: "Vous avez des modifications non enregistrées sur ce kit de marque. Les abandonner ou continuer à modifier ?", discardChanges: "Abandonner les modifications", keepEditing: "Continuer à modifier", setupGuide: "Guide de configuration", setupGuideDescription: "Recommandations pour obtenir les générations les plus cohérentes et fidèles à la marque à partir de ce kit.", setupGuideReferences: "Importer des ressources de référence", setupGuideReferencesHint: "Marquez 3 à 5 exemples solides comme références afin qu'Analyser la marque puisse apprendre la palette et les traits visuels à partir d'un travail réel, pas de suppositions.", setupGuideStyleDescription: "Rédigez une description de style précise", setupGuideStyleDescriptionHint: "Nommez des traits concrets (éclairage, composition, texture) plutôt que des adjectifs vagues afin que chaque génération reste fidèle à la marque.", setupGuideInstructions: "Utilisez des instructions personnalisées pour les contraintes strictes", setupGuideInstructionsHint: "Placez ici les éléments qui doivent toujours être respectés (emplacement du logo, couleurs interdites, mentions légales) pour que l'agent ne les oublie jamais.", setupGuidePresets: "Créez un préréglage par format récurrent", setupGuidePresetsHint: "Enregistrez le format d'image, le modèle et la configuration squelette/référence comme préréglage afin de réutiliser la même forme de sortie à chaque fois.", } satisfies Partial; const brandKitDetailHiIN = { addAssetsDescription: "स्रोत सामग्री अपलोड करें या उम्मीदवार तैयार करें, फिर केवल उन संपत्तियों को चिह्नित करें जो भविष्य की पीढ़ियों को संदर्भ के रूप में मार्गदर्शन करें।", addAssets: "संपत्तियां जोड़ें", addToReferences: "सन्दर्भों में जोड़ें", addedToReferences: "सन्दर्भों में जोड़ा गया.", agentUsageDescription: "अन्य एजेंट इस ब्रांड किट आईडी के साथ A2A पर Assets पर कॉल कर सकते हैं।", agentUsage: "एजेंट का उपयोग", allAssets: "सारी संपत्ति", allMedia: "सभी मीडिया", alreadyInBrandKit: "इस ब्रांड किट में पहले से ही है।", analyzeBrand: "ब्रांड का विश्लेषण करें", archiveBrandKit: "पुरालेख ब्रांड किट", archiveDescription: "यह ब्रांड किट को मुख्य ब्रांड किट सूची से हटा देता है। इसकी संपत्ति और पीढ़ी का इतिहास संग्रहीत रहता है।", archiveThisBrandKit: "इस ब्रांड किट को संग्रहीत करें?", archiving: "संग्रहित किया जा रहा है...", aspectRatio: "पहलू अनुपात", assetActions: "परिसंपत्ति क्रियाएं", assetScope: "संपत्ति का दायरा", assetView: "संपत्ति दृश्य", brandKitActions: "ब्रांड किट क्रियाएँ", brandKitArchived: "ब्रांड किट संग्रहीत.", campaignLaunch: "अभियान का शुभारंभ", candidateActions: "उम्मीदवार की हरकतें", checkingUpload: "अपलोड की जाँच की जा रही है", clearAll: "सभी साफ करें", clearCandidatesDescription: "उम्मीदवार चरण को साफ़ करता है और सहेजे न गए जेनरेट किए गए उम्मीदवारों को हटा देता है। सहेजी गई पुस्तकालय संपत्तियाँ अछूती रहती हैं।", clearLiveCandidatesDescription: "लाइव उम्मीदवारों के पैनल को साफ़ करता है और किसी भी सहेजी न गई उम्मीदवार पंक्तियों को हटा देता है।", clearLiveCandidates: "सभी जीवित उम्मीदवारों को साफ़ करें?", clearSearch: "स्पष्ट खोज", clearing: "समाशोधन...", compiledPrompt: "शीघ्र संकलित", logo: "लोगो", compositeCanonicalLogo: "समग्र विहित लोगो", compositeCanonicalLogoHint: "इस प्रीसेट से बनी हर छवि पर इस किट का विहित लोगो जोड़ता है। इसके लिए विहित लोगो आवश्यक है।", presetSkeleton: "प्रीसेट स्केलेटन", presetSkeletonHint: "जेनरेशन को इस प्रीसेट की अपलोड की गई ब्रांड पृष्ठभूमि छवि पर कंपोज़ करें.", contentMode: "सामग्री मोड", contentModeFill: "भरें", contentModeCutout: "कटआउट", skeletonImage: "स्केलेटन छवि", skeletonImageHint: "इस प्रीसेट के लिए पुन: उपयोग योग्य प्लेट के रूप में ब्रांड पृष्ठभूमि छवि का उपयोग करें.", uploadSkeletonImage: "स्केलेटन छवि अपलोड करें", uploadingSkeletonImage: "अपलोड हो रहा है...", chooseSkeletonImage: "लाइब्रेरी से चुनें", noSkeletonImage: "कोई स्केलेटन छवि नहीं", skeletonImageRequired: "सहेजने से पहले स्केलेटन छवि चुनें या अपलोड करें.", skeletonImageUploaded: "स्केलेटन छवि अपलोड हो गई.", couldNotUploadSkeletonImage: "स्केलेटन छवि अपलोड नहीं हो सकी.", skeletonMask: "संपादन योग्य क्षेत्र मास्क", skeletonMaskHint: "gpt-image-2 कटआउट के लिए वैकल्पिक. पारदर्शी पिक्सेल बताते हैं कि विषय कहाँ पेंट किया जा सकता है; प्लेट सामग्री बचाने के लिए उसे अपारदर्शी रखें.", uploadSkeletonMask: "मास्क अपलोड करें", uploadingSkeletonMask: "अपलोड हो रहा है...", chooseSkeletonMask: "लाइब्रेरी से मास्क चुनें", noSkeletonMask: "कोई मास्क नहीं", skeletonMaskUploaded: "स्केलेटन मास्क अपलोड हो गया.", couldNotUploadSkeletonMask: "स्केलेटन मास्क अपलोड नहीं हो सका.", contactShadow: "संपर्क छाया", contactShadowHint: "पारदर्शी कटआउट विषयों के नीचे मुलायम आधार छाया जोड़ता है.", placeLogoInSkeleton: "लोगो को स्केलेटन में रखें", placeLogoInSkeletonHint: "स्केलेटन को विहित लोगो संभालने दें ताकि वह दो बार न लगे.", logoPlacement: "लोगो स्थान", upperRight: "ऊपर दाएं", upperLeft: "ऊपर बाएं", lowerRight: "नीचे दाएं", lowerLeft: "नीचे बाएं", skeletonEnabled: "सक्षम", skeletonOff: "बंद", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "चयनित परिसंपत्तियों को संदर्भों में नहीं जोड़ा जा सका.", couldNotAddToReferences: "संदर्भों में संपत्ति नहीं जोड़ी जा सकी.", couldNotArchiveBrandKit: "ब्रांड किट संग्रहित नहीं किया जा सका.", couldNotClearCandidates: "उम्मीदवारों को साफ़ नहीं किया जा सका.", couldNotClearCandidate: "उम्मीदवार साफ़ नहीं हो सका.", couldNotClearLiveCandidates: "जीवित अभ्यर्थियों को साफ़ नहीं किया जा सका.", couldNotCreateFolder: "फ़ोल्डर नहीं बनाया जा सका", couldNotCreateHandoff: "हैंडऑफ़ नहीं बनाया जा सका.", couldNotCreatePreset: "प्रीसेट नहीं बनाया जा सका.", couldNotDeleteAsset: "संपत्ति को हटाया नहीं जा सका.", couldNotDeletePreset: "प्रीसेट हटाया नहीं जा सका.", couldNotDeleteSelectedAssets: "चयनित संपत्तियों को हटाया नहीं जा सका.", couldNotDismissCandidate: "उम्मीदवार को बर्खास्त नहीं किया जा सका.", couldNotDuplicateBrandKit: "ब्रांड किट की नकल नहीं बनाई जा सकी.", couldNotPrepareHandoff: "हैंडऑफ़ तैयार नहीं हो सका.", couldNotRemoveFromReferences: "संदर्भों से परिसंपत्ति को हटाया नहीं जा सका.", couldNotRemoveSelectedFromReferences: "संदर्भों से चयनित संपत्तियों को हटाया नहीं जा सका.", couldNotSaveCandidate: "उम्मीदवार को बचाया नहीं जा सका.", customInstructionsPlaceholder: "जब भी एजेंट इस ब्रांड किट का उपयोग करता है तो उसे प्राथमिकताएँ लागू करनी चाहिए।", customInstructions: "कस्टम निर्देश", defaultDescription: "एजेंटों के बीच पुन: प्रयोज्य संपत्तियों को अपलोड करें, उत्पन्न करें, वर्णन करें और व्यवस्थित करें।", defaultTextPolicy: "किसी एम्बेडेड टेक्स्ट को प्राथमिकता न दें. किसी भी अनुरोधित पाठ को संक्षिप्त और पठनीय रखें।", deleteCandidateDescription: "इस उम्मीदवार को ब्रांड किट से हटाता है और इसका स्लॉट साफ़ करता है।", deleteCandidate: "उम्मीदवार हटाएं?", deleteGenerationPresetDescription: "मौजूदा रन अपने कैप्चर किए गए प्रॉम्प्ट और सेटिंग्स को बनाए रखते हैं। नई पीढ़ियाँ अब इस प्रीसेट की पेशकश नहीं करेंगी।", deleteGenerationPreset: "जनरेशन प्रीसेट हटाएं?", deleteManyDescription: "यह ब्रांड किट से चयनित संपत्तियों को स्थायी रूप से हटा देता है। किसी परिसंपत्ति को संदर्भ के रूप में उपयोग करना बंद करने लेकिन उसे बनाए रखने के लिए, इसके बजाय संदर्भ से निकालें का उपयोग करें।", deleteOneDescription: "यह ब्रांड किट से संपत्ति को स्थायी रूप से हटा देता है। इसे लाइब्रेरी में रखने के लिए लेकिन संदर्भ के रूप में उपयोग करना बंद करने के लिए, इसके बजाय संदर्भ से निकालें का उपयोग करें।", deletedAsset: "हटाई गई संपत्ति.", deleting: "हटाया जा रहा है...", deselectAll: "सभी का चयन रद्द करें", dismissFailedDescription: "उम्मीदवार चरण से विफल लाइव स्लॉट हटा देता है। तैयार उम्मीदवार रहें.", dismissFailedSlotsDescription: "पैनल से प्रत्येक विफल स्लॉट को हटा देता है। सफल उम्मीदवार रुके रहते हैं.", dismissFailed: "ख़ारिज करना विफल रहा", dismissSlotDescription: "इस असफल स्लॉट को लाइव उम्मीदवारों के पैनल से हटा देता है।", dismissThisCandidate: "इस उम्मीदवार को बर्खास्त करें?", dismissThisSlot: "इस स्लॉट को ख़ारिज करें?", dismissedCandidate: "बर्खास्त उम्मीदवार.", dismissing: "ख़ारिज किया जा रहा है...", dropAssetsBody: "स्रोत सामग्री, उत्पन्न निर्यात, लोगो, उत्पाद या स्टाइल बोर्ड अपलोड करें।", dropAssetsHere: "संपत्ति यहां गिराएं", dropToUpload: "अपलोड करने के लिए छोड़ें", duplicating: "नकल हो रही है...", editBrandKit: "ब्रांड किट का नाम और विवरण संपादित करें", backToLibrary: "लाइब्रेरी पर वापस जाएं", backToSettings: "सेटिंग्स पर वापस जाएं", editGenerationPreset: "जनरेशन प्रीसेट संपादित करें", editGenerationPresetDescription: "इस प्रीसेट को छवि जनरेशन के लिए टैग किए जाने पर एजेंट द्वारा लागू किए जाने वाले पुन: प्रयोज्य नियमों को समायोजित करें.", failedCandidate: "असफल उम्मीदवार", generateWithChat: "चैट के साथ उत्पन्न करें", generatedAsset: "उत्पन्न संपत्ति", generatingCandidate: "उम्मीदवार तैयार करना", generationPresetCreated: "जनरेशन प्रीसेट बनाया गया.", generationPresetDeleted: "जनरेशन प्रीसेट हटा दिया गया.", generationPresetSaved: "जनरेशन प्रीसेट सहेजा गया.", couldNotSavePreset: "प्रीसेट सहेजा नहीं जा सका.", presetUnavailableTitle: "प्रीसेट उपलब्ध नहीं है", presetUnavailableDescription: "यह प्रीसेट हटाया गया हो सकता है, या अब आपके पास इसके ब्रांड किट तक पहुंच नहीं हो सकती.", readOnly: "केवल पढ़ने योग्य", viewerModeTitle: "दर्शक पहुंच", viewerModeDescription: "आप इस प्रीसेट को देख सकते हैं, लेकिन केवल संपादक बदलाव सहेज सकते हैं या इसे हटा सकते हैं.", presetDescriptionPlaceholder: "यह प्रीसेट किस लिए है, इसे कहां उपयोग करना चाहिए, या यह किस तरह अलग है.", imageSize: "छवि आकार", referencePolicy: "संदर्भ नीति", noCollection: "कोई संग्रह नहीं", sortOrder: "क्रम क्रम", showAdvancedOptions: "उन्नत विकल्प दिखाएं", hideAdvancedOptions: "उन्नत विकल्प छिपाएं", presetSummary: "प्रीसेट सारांश", saving: "सहेजा जा रहा है...", saveChanges: "बदलाव सहेजें", generationPresetsDescription: "सामाजिक छवियों, नायकों और आरेखों के लिए पुन: प्रयोज्य वितरण योग्य नियम।", generationPresets: "जनरेशन प्रीसेट", generationQueue: "पीढ़ी कतार", handoffSessionCreated: "हैंडऑफ़ सत्र बनाया गया.", handoffSessionsDescription: "मूल चैट थ्रेड के बिना किसी उम्मीदवार को जारी रखने के लिए डिजाइनरों के लिए साझा संदर्भ।", handoffSessions: "हैंडऑफ़ सत्र", imageCandidates: "छवि उम्मीदवार", imagePromptPlaceholder: "कोल्ड-स्टार्ट विलंबता के बारे में एक लेख के लिए ब्लॉग हीरो", libraryEyebrow: "इस फ़िल्टर किए गए दृश्य में संपत्तियाँ सहेजी गईं। उन्हें चिन्हित करें जो भावी पीढ़ियों का मार्गदर्शन करें।", liveCandidatesActions: "लाइव उम्मीदवारों के कार्य", liveSlot: "लाइव स्लॉट", loadingBrandKit: "ब्रांड किट लोड हो रहा है...", moveTo: "की ओर बढ़ें", needsDesignRefinement: "डिज़ाइन परिशोधन की आवश्यकता है.", newFolderDescription: "किसी अभियान, चैनल या पुन: प्रयोज्य संग्रह के लिए समूह अपलोड और जेनरेट की गई संपत्तियां।", newFolderEllipsis: "नया फ़ोल्डर...", newFolder: "नया फ़ोल्डर", newGenerationPresetDescription: "बार-बार छवि कार्य के लिए आउटपुट स्वरूप, पहलू अनुपात और पाठ नियमों को सहेजें।", newGenerationPreset: "नई पीढ़ी पूर्व निर्धारित", noAssetsMatchDescription: "सभी संपत्तियाँ, एक अलग फ़ोल्डर, या एक विस्तृत खोज आज़माएँ।", noAssetsMatch: "कोई भी संपत्ति इस दृश्य से मेल नहीं खाती", noAssetsToShow: "दिखाने के लिए कोई संपत्ति नहीं.", noFeedbackYet: "अभी तक कोई प्रतिक्रिया नहीं।", noNewAssetsUploaded: "कोई नई संपत्ति अपलोड नहीं की गई.", noOutputCaptured: "अभी तक कोई आउटपुट कैप्चर नहीं किया गया.", noPresetsYet: "अभी तक कोई प्रीसेट नहीं.", noPreset: "कोई पूर्व निर्धारित नहीं", noReferencesBody: "सभी परिसंपत्तियों पर वापस जाएँ और रखवालों को संदर्भ के रूप में चिह्नित करें।", noReferencesTitle: "इस दृश्य में कोई संदर्भ नहीं", noRunsDescription: "प्रॉम्प्ट, आउटपुट, संदर्भ और सेटिंग्स कैप्चर करने के लिए इस ब्रांड किट से जेनरेट करें।", noRunsYet: "अभी तक कोई रन नहीं", noneSelected: "कोई भी चयनित नहीं", openChat: "चैट खोलें", previewUnavailable: "पूर्वावलोकन अनुपलब्ध", privateCopyCreated: "निजी ब्रांड किट की प्रतिलिपि बनाई गई", processingPreviews: "पूर्वावलोकन संसाधित करना और उन्हें ब्रांड किट में सहेजना।", promptTemplate: "शीघ्र टेम्पलेट", readyCandidate: "तैयार उम्मीदवार", referencesEyebrow: "Assets वर्तमान में पीढ़ी संदर्भ के लिए चिह्नित है।", refreshBrand: "ब्रांड ताज़ा करें", removeFromReferences: "सन्दर्भों से हटाएँ", removedFromReferences: "सन्दर्भों से हटा दिया गया.", rerunThis: "इसे पुनः चलाएँ", runNoGeneratedAssets: "इस रन के पास सौंपने के लिए उत्पन्न संपत्ति नहीं है।", saveTo: "इसमें सहेजें...", savedToGenerated: "जनरेट करने के लिए सहेजा गया.", searchAssets: "संपत्ति खोजें", selectAllAssetsBoard: "इस बोर्ड में सभी संपत्तियों का चयन करें", selectAllVisibleAssets: "सभी दृश्यमान परिसंपत्तियों का चयन करें", selectAll: "सभी का चयन करें", showAll: "सब दिखाओ", styleDescription: "शैली विवरण", textPolicy: "पाठ नीति", uploadFailed: "अपलोड विफल रहा", uploadMayFinish: "सर्वर अभी भी इन परिसंपत्तियों को सहेजना समाप्त कर सकता है। हम इस ब्रांड किट की जाँच करते रहेंगे।", uploadTakingLonger: "अपलोड में अपेक्षा से अधिक समय लग रहा है.", videoCandidate: "वीडियो उम्मीदवार", videoPromptPlaceholder: "धीमे कैमरा पुश-इन के साथ आठ सेकंड का उत्पाद प्रकट होता है", viewDetails: "विवरण देखें", settingsTitle: "ब्रांड किट सेटिंग्स", unsavedChangesTitle: "असहेजे गए परिवर्तन", unsavedChangesDescription: "इस ब्रांड किट में आपके असहेजे गए परिवर्तन हैं। इन्हें छोड़ें या संपादन जारी रखें?", discardChanges: "परिवर्तन छोड़ें", keepEditing: "संपादन जारी रखें", setupGuide: "सेटअप गाइड", setupGuideDescription: "इस किट से सबसे सुसंगत, ब्रांड के अनुरूप जनरेशन पाने के लिए सिफारिशें।", setupGuideReferences: "संदर्भ एसेट अपलोड करें", setupGuideReferencesHint: "3-5 मजबूत उदाहरणों को संदर्भ के रूप में चिह्नित करें ताकि ब्रांड विश्लेषण वास्तविक कार्य से पैलेट और दृश्य विशेषताएँ सीख सके, अनुमानों से नहीं।", setupGuideStyleDescription: "एक विशिष्ट शैली विवरण लिखें", setupGuideStyleDescriptionHint: "अस्पष्ट विशेषणों के बजाय ठोस विशेषताएँ (प्रकाश व्यवस्था, संरचना, बनावट) नाम दें ताकि हर जनरेशन ब्रांड के अनुरूप बनी रहे।", setupGuideInstructions: "कठोर बाधाओं के लिए कस्टम निर्देशों का उपयोग करें", setupGuideInstructionsHint: "जो चीज़ें हमेशा सत्य होनी चाहिए (लोगो प्लेसमेंट, प्रतिबंधित रंग, कानूनी टेक्स्ट) उन्हें यहाँ रखें ताकि एजेंट उन्हें कभी न भूले।", setupGuidePresets: "प्रत्येक बार-बार आने वाले फ़ॉर्मेट के लिए एक प्रीसेट बनाएं", setupGuidePresetsHint: "पहलू अनुपात, मॉडल और स्केलेटन/संदर्भ सेटअप को प्रीसेट के रूप में सहेजें ताकि हर बार वही आउटपुट आकार पुन: उपयोग हो सके।", } satisfies Partial; const brandKitDetailJaJP = { addAssetsDescription: "ソース素材をアップロードするか候補を生成し、将来の世代を導く必要がある資産のみを参照としてマークします。", addAssets: "アセットの追加", addToReferences: "参考文献に追加", addedToReferences: "参考文献に追加されました。", agentUsageDescription: "他のエージェントは、このブランド キット ID を使用して A2A 経由で Assets を呼び出すことができます。", agentUsage: "エージェントの使用状況", allAssets: "すべての資産", allMedia: "すべてのメディア", alreadyInBrandKit: "すでにこのブランドのキットに含まれています。", analyzeBrand: "ブランドを分析する", archiveBrandKit: "アーカイブブランドキット", archiveDescription: "これにより、メインのブランド キット リストからブランド キットが削除されます。その資産と生成履歴は保存されたままになります。", archiveThisBrandKit: "このブランドのキットをアーカイブしますか?", archiving: "アーカイブ中...", aspectRatio: "アスペクト比", assetActions: "アセットアクション", assetScope: "資産範囲", assetView: "アセットビュー", brandKitActions: "ブランドキットのアクション", brandKitArchived: "ブランドキットがアーカイブされました。", campaignLaunch: "キャンペーン開始", candidateActions: "候補アクション", checkingUpload: "アップロードを確認しています", clearAll: "すべてクリア", clearCandidatesDescription: "候補ステージをクリアし、保存されていない生成された候補を削除します。保存されたライブラリアセットはそのまま残ります。", clearLiveCandidatesDescription: "ライブ候補パネルをクリアし、未保存の候補行を削除します。", clearLiveCandidates: "生きている候補者をすべてクリアしますか?", clearSearch: "検索をクリア", clearing: "クリア中...", compiledPrompt: "コンパイルされたプロンプト", logo: "ロゴ", compositeCanonicalLogo: "複合正規ロゴ", compositeCanonicalLogoHint: "このプリセットで生成する各画像に、このキットの正規ロゴを合成します。正規ロゴの設定が必要です。", presetSkeleton: "プリセットスケルトン", presetSkeletonHint: "このプリセットが持つアップロード済みブランド背景画像に生成画像を合成します。", contentMode: "コンテンツモード", contentModeFill: "塗りつぶし", contentModeCutout: "切り抜き", skeletonImage: "スケルトン画像", skeletonImageHint: "このプリセットの再利用可能なプレートとしてブランド背景画像を使用します。", uploadSkeletonImage: "スケルトン画像をアップロード", uploadingSkeletonImage: "アップロード中...", chooseSkeletonImage: "ライブラリから選択", noSkeletonImage: "スケルトン画像なし", skeletonImageRequired: "保存する前にスケルトン画像を選択またはアップロードしてください。", skeletonImageUploaded: "スケルトン画像をアップロードしました。", couldNotUploadSkeletonImage: "スケルトン画像をアップロードできませんでした。", skeletonMask: "編集可能領域マスク", skeletonMaskHint: "gpt-image-2 の切り抜きで任意に使用します。透明ピクセルが被写体を描画できる場所を示します。保持したいプレート内容は不透明のままにしてください。", uploadSkeletonMask: "マスクをアップロード", uploadingSkeletonMask: "アップロード中...", chooseSkeletonMask: "ライブラリからマスクを選択", noSkeletonMask: "マスクなし", skeletonMaskUploaded: "スケルトンマスクをアップロードしました。", couldNotUploadSkeletonMask: "スケルトンマスクをアップロードできませんでした。", contactShadow: "接地影", contactShadowHint: "透明な切り抜き被写体の下に柔らかな接地影を追加します。", placeLogoInSkeleton: "ロゴをスケルトンに配置", placeLogoInSkeletonHint: "スケルトン側で正規ロゴを管理し、二重に合成されないようにします。", logoPlacement: "ロゴ位置", upperRight: "右上", upperLeft: "左上", lowerRight: "右下", lowerLeft: "左下", skeletonEnabled: "有効", skeletonOff: "オフ", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "選択したアセットを参照に追加できませんでした。", couldNotAddToReferences: "アセットを参照に追加できませんでした。", couldNotArchiveBrandKit: "ブランド キットをアーカイブできませんでした。", couldNotClearCandidates: "候補者をクリアできませんでした。", couldNotClearCandidate: "候補をクリアできませんでした。", couldNotClearLiveCandidates: "ライブ候補をクリアできませんでした。", couldNotCreateFolder: "フォルダーを作成できませんでした", couldNotCreateHandoff: "ハンドオフを作成できませんでした。", couldNotCreatePreset: "プリセットを作成できませんでした。", couldNotDeleteAsset: "アセットを削除できませんでした。", couldNotDeletePreset: "プリセットを削除できませんでした。", couldNotDeleteSelectedAssets: "選択したアセットを削除できませんでした。", couldNotDismissCandidate: "候補者を解雇できませんでした。", couldNotDuplicateBrandKit: "ブランドキットを複製できませんでした。", couldNotPrepareHandoff: "ハンドオフを準備できませんでした。", couldNotRemoveFromReferences: "参照からアセットを削除できませんでした。", couldNotRemoveSelectedFromReferences: "選択したアセットを参照から削除できませんでした。", couldNotSaveCandidate: "候補を保存できませんでした。", customInstructionsPlaceholder: "エージェントがこのブランドのキットを使用するときは常に、設定を適用する必要があります。", customInstructions: "カスタム命令", defaultDescription: "エージェント全体で再利用可能なアセットをアップロード、生成、説明、整理します。", defaultTextPolicy: "埋め込みテキストは使用しないことをお勧めします。要求されたテキストは短くて読みやすいものにしてください。", deleteCandidateDescription: "この候補をブランド キットから削除し、スロットをクリアします。", deleteCandidate: "候補者を削除しますか?", deleteGenerationPresetDescription: "既存の実行では、キャプチャされたプロンプトと設定が保持されます。新しい世代では、このプリセットは提供されなくなります。", deleteGenerationPreset: "世代プリセットを削除しますか?", deleteManyDescription: "これにより、選択したアセットがブランド キットから永久に削除されます。アセットを参照として使用するのをやめて保持するには、代わりに「参照から削除」を使用します。", deleteOneDescription: "これにより、ブランド キットからアセットが永久に削除されます。ライブラリに保持しつつ参照としての使用を停止するには、代わりに「参照から削除」を使用します。", deletedAsset: "削除されたアセット。", deleting: "削除中...", deselectAll: "すべての選択を解除します", dismissFailedDescription: "失敗したライブ スロットを候補ステージから削除します。準備ができている候補者は留まります。", dismissFailedSlotsDescription: "障害が発生したすべてのスロットをパネルから削除します。合格者はそのまま残ります。", dismissFailed: "破棄に失敗しました", dismissSlotDescription: "この失敗したスロットをライブ候補パネルから削除します。", dismissThisCandidate: "この候補者を却下しますか?", dismissThisSlot: "このスロットを無視しますか?", dismissedCandidate: "落選された候補者。", dismissing: "却下中...", dropAssetsBody: "ソース素材、生成されたエクスポート、ロゴ、製品、またはスタイルボードをアップロードします。", dropAssetsHere: "ここにアセットをドロップします", dropToUpload: "ドロップしてアップロード", duplicating: "複製中...", editBrandKit: "ブランド キットの名前と説明を編集する", backToLibrary: "ライブラリに戻る", backToSettings: "設定に戻る", editGenerationPreset: "生成プリセットを編集", editGenerationPresetDescription: "このプリセットが画像生成用にタグ付けされたときにエージェントが適用する再利用可能なルールを調整します。", failedCandidate: "落選した候補者", generateWithChat: "チャットで生成", generatedAsset: "生成されたアセット", generatingCandidate: "候補の生成", generationPresetCreated: "生成プリセットが作成されました。", generationPresetDeleted: "世代プリセットが削除されました。", generationPresetSaved: "生成プリセットが保存されました。", couldNotSavePreset: "プリセットを保存できませんでした。", presetUnavailableTitle: "プリセットを利用できません", presetUnavailableDescription: "このプリセットは削除されたか、関連するブランドキットへのアクセス権がなくなった可能性があります。", readOnly: "読み取り専用", viewerModeTitle: "閲覧者アクセス", viewerModeDescription: "このプリセットは確認できますが、変更の保存や削除ができるのは編集者だけです。", presetDescriptionPlaceholder: "このプリセットの用途、使用場所、または他との違い。", imageSize: "画像サイズ", referencePolicy: "参照ポリシー", noCollection: "コレクションなし", sortOrder: "並び順", showAdvancedOptions: "詳細オプションを表示", hideAdvancedOptions: "詳細オプションを隠す", presetSummary: "プリセット概要", saving: "保存中...", saveChanges: "変更を保存", generationPresetsDescription: "ソーシャル イメージ、ヒーロー、図の再利用可能な成果物ルール。", generationPresets: "生成プリセット", generationQueue: "生成キュー", handoffSessionCreated: "ハンドオフセッションが作成されました。", handoffSessionsDescription: "デザイナーが元のチャット スレッドなしで候補者を続行するための共有コンテキスト。", handoffSessions: "ハンドオフセッション", imageCandidates: "画像候補", imagePromptPlaceholder: "コールド スタートの遅延に関する記事のブログ ヒーロー", libraryEyebrow: "このフィルタリングされたビューに保存されたアセット。将来の世代を導くべきものにマークを付けてください。", liveCandidatesActions: "候補者のライブアクション", liveSlot: "ライブスロット", loadingBrandKit: "ブランドキットを読み込み中...", moveTo: "に移動します", needsDesignRefinement: "デザインの改良が必要です。", newFolderDescription: "キャンペーン、チャネル、または再利用可能なコレクション用にアップロードおよび生成されたアセットをグループ化します。", newFolderEllipsis: "新しいフォルダ...", newFolder: "新しいフォルダー", newGenerationPresetDescription: "出力形式、アスペクト比、およびテキスト ルールを保存して、繰り返し画像作業を行うことができます。", newGenerationPreset: "新世代プリセット", noAssetsMatchDescription: "すべてのアセット、別のフォルダー、またはより広範囲の検索を試してください。", noAssetsMatch: "このビューに一致するアセットはありません", noAssetsToShow: "表示するアセットがありません。", noFeedbackYet: "まだフィードバックはありません。", noNewAssetsUploaded: "新しいアセットはアップロードされませんでした。", noOutputCaptured: "まだ出力はキャプチャされていません。", noPresetsYet: "まだプリセットはありません。", noPreset: "プリセットなし", noReferencesBody: "すべてのアセットに戻り、キーパーを参照としてマークします。", noReferencesTitle: "このビューには参照がありません", noRunsDescription: "このブランドのキットから生成して、プロンプト、出力、参照、設定をキャプチャします。", noRunsYet: "まだ実行はありません", noneSelected: "何も選択されていません", openChat: "オープンチャット", previewUnavailable: "プレビューは利用できません", privateCopyCreated: "プライベートブランドキットコピー作成", processingPreviews: "プレビューを処理してブランド キットに保存します。", promptTemplate: "プロンプトテンプレート", readyCandidate: "準備ができた候補者", referencesEyebrow: "Assets は現在、世代参照用にマークされています。", refreshBrand: "リフレッシュブランド", removeFromReferences: "参照から削除", removedFromReferences: "参考文献から削除されました。", rerunThis: "これを再実行します", runNoGeneratedAssets: "この実行には、引き渡す生成されたアセットがありません。", saveTo: "保存先...", savedToGenerated: "生成済みに保存されました。", searchAssets: "アセットの検索", selectAllAssetsBoard: "このボード内のすべてのアセットを選択します", selectAllVisibleAssets: "表示されているすべてのアセットを選択します", selectAll: "すべて選択", showAll: "すべて表示", styleDescription: "スタイルの説明", textPolicy: "テキストポリシー", uploadFailed: "アップロードに失敗しました", uploadMayFinish: "サーバーはこれらのアセットの保存をまだ完了している可能性があります。今後もこのブランドのキットをチェックしていきます。", uploadTakingLonger: "アップロードに予想より時間がかかっています。", videoCandidate: "動画候補", videoPromptPlaceholder: "ゆっくりとしたカメラの押し込みによる 8 秒間の製品表示", viewDetails: "詳細を見る", settingsTitle: "ブランドキット設定", unsavedChangesTitle: "未保存の変更", unsavedChangesDescription: "このブランドキットには未保存の変更があります。破棄しますか、それとも編集を続けますか?", discardChanges: "変更を破棄", keepEditing: "編集を続ける", setupGuide: "セットアップガイド", setupGuideDescription: "このキットから最も一貫性のある、ブランドに沿った生成を得るための推奨事項です。", setupGuideReferences: "参照アセットをアップロード", setupGuideReferencesHint: "強力な例を3〜5点「参照」としてマークすると、ブランド分析が推測ではなく実際の作品からパレットと視覚的特徴を学習できます。", setupGuideStyleDescription: "具体的なスタイル説明を書く", setupGuideStyleDescriptionHint: "曖昧な形容詞ではなく、具体的な特徴(照明、構図、質感)を指定して、すべての生成がブランドに沿うようにします。", setupGuideInstructions: "厳格な制約にはカスタム指示を使用する", setupGuideInstructionsHint: "常に守るべき事項(ロゴの配置、禁止色、法的表記)をここに記載し、エージェントが忘れないようにします。", setupGuidePresets: "繰り返し使う形式ごとにプリセットを作成", setupGuidePresetsHint: "アスペクト比、モデル、スケルトン/参照設定をプリセットとして保存し、毎回同じ出力形式を再利用できるようにします。", } satisfies Partial; const brandKitDetailKoKR = { addAssetsDescription: "원본 자료를 업로드하거나 후보를 생성한 후, 미래 세대를 이끌어야 할 자산만 참고 자료로 표시하세요.", addAssets: "자산 추가", addToReferences: "참고자료에 추가", addedToReferences: "참고자료에 추가되었습니다.", agentUsageDescription: "다른 상담원은 이 브랜드 키트 ID를 사용하여 A2A를 통해 Assets에 전화할 수 있습니다.", agentUsage: "에이전트 사용량", allAssets: "모든 자산", allMedia: "모든 미디어", alreadyInBrandKit: "이미 이 브랜드 키트에 있습니다.", analyzeBrand: "브랜드 분석", archiveBrandKit: "아카이브 브랜드 키트", archiveDescription: "이렇게 하면 기본 브랜드 키트 목록에서 브랜드 키트가 제거됩니다. 해당 자산과 생성 기록은 계속 저장됩니다.", archiveThisBrandKit: "이 브랜드 키트를 보관하시겠습니까?", archiving: "보관 중...", aspectRatio: "종횡비", assetActions: "자산 작업", assetScope: "자산 범위", assetView: "자산 보기", brandKitActions: "브랜드 키트 작업", brandKitArchived: "브랜드 키트가 보관되었습니다.", campaignLaunch: "캠페인 시작", candidateActions: "후보자의 행동", checkingUpload: "업로드 확인 중", clearAll: "모두 지우기", clearCandidatesDescription: "후보 단계를 지우고 저장되지 않은 생성 후보를 삭제합니다. 저장된 라이브러리 자산은 그대로 유지됩니다.", clearLiveCandidatesDescription: "실시간 후보 패널을 지우고 저장되지 않은 후보 행을 삭제합니다.", clearLiveCandidates: "실시간 후보를 모두 삭제하시겠습니까?", clearSearch: "검색 지우기", clearing: "지우는 중...", compiledPrompt: "컴파일된 프롬프트", logo: "로고", compositeCanonicalLogo: "복합 표준 로고", compositeCanonicalLogoHint: "이 프리셋으로 생성되는 모든 이미지에 이 키트의 표준 로고를 합성합니다. 표준 로고가 필요합니다.", presetSkeleton: "프리셋 스켈레톤", presetSkeletonHint: "이 프리셋이 소유한 업로드된 브랜드 배경 이미지 위에 생성 결과를 합성합니다.", contentMode: "콘텐츠 모드", contentModeFill: "채우기", contentModeCutout: "컷아웃", skeletonImage: "스켈레톤 이미지", skeletonImageHint: "이 프리셋의 재사용 가능한 판으로 브랜드 배경 이미지를 사용합니다.", uploadSkeletonImage: "스켈레톤 이미지 업로드", uploadingSkeletonImage: "업로드 중...", chooseSkeletonImage: "라이브러리에서 선택", noSkeletonImage: "스켈레톤 이미지 없음", skeletonImageRequired: "저장하기 전에 스켈레톤 이미지를 선택하거나 업로드하세요.", skeletonImageUploaded: "스켈레톤 이미지가 업로드되었습니다.", couldNotUploadSkeletonImage: "스켈레톤 이미지를 업로드할 수 없습니다.", skeletonMask: "편집 가능 영역 마스크", skeletonMaskHint: "gpt-image-2 컷아웃에 선택적으로 사용합니다. 투명 픽셀은 피사체를 그릴 수 있는 위치를 표시하고, 보존할 판 내용은 불투명하게 둡니다.", uploadSkeletonMask: "마스크 업로드", uploadingSkeletonMask: "업로드 중...", chooseSkeletonMask: "라이브러리에서 마스크 선택", noSkeletonMask: "마스크 없음", skeletonMaskUploaded: "스켈레톤 마스크가 업로드되었습니다.", couldNotUploadSkeletonMask: "스켈레톤 마스크를 업로드할 수 없습니다.", contactShadow: "접지 그림자", contactShadowHint: "투명 컷아웃 피사체 아래에 부드러운 접지 그림자를 추가합니다.", placeLogoInSkeleton: "스켈레톤에 로고 배치", placeLogoInSkeletonHint: "스켈레톤이 표준 로고를 소유하게 하여 두 번 찍히지 않게 합니다.", logoPlacement: "로고 위치", upperRight: "오른쪽 위", upperLeft: "왼쪽 위", lowerRight: "오른쪽 아래", lowerLeft: "왼쪽 아래", skeletonEnabled: "활성화됨", skeletonOff: "꺼짐", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "선택한 자산을 참조에 추가할 수 없습니다.", couldNotAddToReferences: "참조에 자산을 추가할 수 없습니다.", couldNotArchiveBrandKit: "브랜드 키트를 보관할 수 없습니다.", couldNotClearCandidates: "후보자를 삭제할 수 없습니다.", couldNotClearCandidate: "후보자를 삭제할 수 없습니다.", couldNotClearLiveCandidates: "실시간 후보를 삭제할 수 없습니다.", couldNotCreateFolder: "폴더를 생성할 수 없습니다.", couldNotCreateHandoff: "핸드오프를 생성할 수 없습니다.", couldNotCreatePreset: "사전 설정을 만들 수 없습니다.", couldNotDeleteAsset: "자산을 삭제할 수 없습니다.", couldNotDeletePreset: "사전 설정을 삭제할 수 없습니다.", couldNotDeleteSelectedAssets: "선택한 자산을 삭제할 수 없습니다.", couldNotDismissCandidate: "후보자를 해고할 수 없습니다.", couldNotDuplicateBrandKit: "브랜드 키트를 복제할 수 없습니다.", couldNotPrepareHandoff: "핸드오프를 준비할 수 없습니다.", couldNotRemoveFromReferences: "참조에서 자산을 제거할 수 없습니다.", couldNotRemoveSelectedFromReferences: "참조에서 선택한 자산을 제거할 수 없습니다.", couldNotSaveCandidate: "후보자를 저장할 수 없습니다.", customInstructionsPlaceholder: "상담사가 이 브랜드 키트를 사용할 때마다 적용해야 하는 기본 설정입니다.", customInstructions: "맞춤 지침", defaultDescription: "에이전트 전체에서 재사용 가능한 자산을 업로드, 생성, 설명 및 구성합니다.", defaultTextPolicy: "포함된 텍스트가 없는 것을 선호합니다. 요청된 텍스트는 짧고 읽기 쉽게 유지하세요.", deleteCandidateDescription: "브랜드 키트에서 이 후보를 제거하고 해당 슬롯을 지웁니다.", deleteCandidate: "후보자를 삭제하시겠습니까?", deleteGenerationPresetDescription: "기존 실행은 캡처된 프롬프트와 설정을 유지합니다. 새로운 세대에서는 더 이상 이 사전 설정을 제공하지 않습니다.", deleteGenerationPreset: "생성 사전 설정을 삭제하시겠습니까?", deleteManyDescription: "이렇게 하면 브랜드 키트에서 선택한 자산이 영구적으로 제거됩니다. 자산을 참조로 사용하는 것을 중단하고 유지하려면 대신 참조에서 제거를 사용하십시오.", deleteOneDescription: "이렇게 하면 브랜드 키트에서 자산이 영구적으로 제거됩니다. 라이브러리에 보관하되 참조로 사용하는 것을 중단하려면 대신 참조에서 제거를 사용하세요.", deletedAsset: "삭제된 자산입니다.", deleting: "삭제 중...", deselectAll: "모두 선택 취소", dismissFailedDescription: "후보 단계에서 실패한 라이브 슬롯을 제거합니다. 준비된 후보자는 남습니다.", dismissFailedSlotsDescription: "패널에서 실패한 모든 슬롯을 제거합니다. 합격한 후보자는 남습니다.", dismissFailed: "닫기 실패", dismissSlotDescription: "라이브 후보 패널에서 실패한 슬롯을 제거합니다.", dismissThisCandidate: "이 후보자를 기각하시겠습니까?", dismissThisSlot: "이 슬롯을 닫으시겠습니까?", dismissedCandidate: "기각된 후보자.", dismissing: "닫는 중...", dropAssetsBody: "소스 자료, 생성된 내보내기, 로고, 제품 또는 스타일 보드를 업로드합니다.", dropAssetsHere: "여기에 애셋을 드롭하세요.", dropToUpload: "업로드하려면 드롭하세요.", duplicating: "복제 중...", editBrandKit: "브랜드 키트 이름 및 설명 수정", backToLibrary: "라이브러리로 돌아가기", backToSettings: "설정으로 돌아가기", editGenerationPreset: "생성 사전 설정 편집", editGenerationPresetDescription: "이 사전 설정이 이미지 생성에 태그될 때 에이전트가 적용하는 재사용 가능한 규칙을 조정합니다.", failedCandidate: "불합격자", generateWithChat: "채팅으로 생성", generatedAsset: "생성된 자산", generatingCandidate: "후보생성", generationPresetCreated: "생성 사전 설정이 생성되었습니다.", generationPresetDeleted: "생성 사전 설정이 삭제되었습니다.", generationPresetSaved: "생성 사전 설정이 저장되었습니다.", couldNotSavePreset: "사전 설정을 저장할 수 없습니다.", presetUnavailableTitle: "사전 설정을 사용할 수 없음", presetUnavailableDescription: "이 사전 설정이 삭제되었거나 해당 브랜드 키트에 더 이상 접근할 수 없을 수 있습니다.", readOnly: "읽기 전용", viewerModeTitle: "보기 권한", viewerModeDescription: "이 사전 설정을 확인할 수 있지만, 변경 사항 저장 또는 삭제는 편집자만 할 수 있습니다.", presetDescriptionPlaceholder: "이 사전 설정의 용도, 사용 위치 또는 다른 점을 설명하세요.", imageSize: "이미지 크기", referencePolicy: "참조 정책", noCollection: "컬렉션 없음", sortOrder: "정렬 순서", showAdvancedOptions: "고급 옵션 표시", hideAdvancedOptions: "고급 옵션 숨기기", presetSummary: "사전 설정 요약", saving: "저장 중...", saveChanges: "변경 사항 저장", generationPresetsDescription: "소셜 이미지, 영웅 및 다이어그램에 대한 재사용 가능한 결과물 규칙입니다.", generationPresets: "생성 사전 설정", generationQueue: "생성 대기열", handoffSessionCreated: "핸드오프 세션이 생성되었습니다.", handoffSessionsDescription: "디자이너가 원래 채팅 스레드 없이 후보를 계속할 수 있는 공유 컨텍스트입니다.", handoffSessions: "핸드오프 세션", imageCandidates: "이미지 후보", imagePromptPlaceholder: "콜드 스타트 대기 시간에 대한 기사의 블로그 히어로", libraryEyebrow: "이 필터링된 보기에 저장된 자산입니다. 미래 세대를 인도해야 할 사람들을 표시하십시오.", liveCandidatesActions: "실시간 후보자 활동", liveSlot: "라이브 슬롯", loadingBrandKit: "브랜드 키트 로드 중...", moveTo: "다음으로 이동", needsDesignRefinement: "디자인 개선이 필요합니다.", newFolderDescription: "캠페인, 채널 또는 재사용 가능한 컬렉션에 대해 업로드 및 생성된 자산을 그룹화합니다.", newFolderEllipsis: "새 폴더...", newFolder: "새 폴더", newGenerationPresetDescription: "반복되는 이미지 작업을 위해 출력 형식, 화면비, 텍스트 규칙을 저장하세요.", newGenerationPreset: "차세대 프리셋", noAssetsMatchDescription: "모든 자산, 다른 폴더 또는 더 광범위한 검색을 시도해 보세요.", noAssetsMatch: "이 보기와 일치하는 자산이 없습니다.", noAssetsToShow: "표시할 애셋이 없습니다.", noFeedbackYet: "아직 피드백이 없습니다.", noNewAssetsUploaded: "새 자산이 업로드되지 않았습니다.", noOutputCaptured: "아직 캡처된 출력이 없습니다.", noPresetsYet: "아직 사전 설정이 없습니다.", noPreset: "사전 설정 없음", noReferencesBody: "모든 자산으로 다시 전환하고 키퍼를 참조로 표시합니다.", noReferencesTitle: "이 보기에는 참조가 없습니다.", noRunsDescription: "이 브랜드 키트에서 생성하여 프롬프트, 출력, 참조 및 설정을 캡처합니다.", noRunsYet: "아직 실행 없음", noneSelected: "선택한 항목 없음", openChat: "오픈채팅", previewUnavailable: "미리보기를 사용할 수 없습니다.", privateCopyCreated: "프라이빗 브랜드 키트 사본이 생성되었습니다.", processingPreviews: "미리보기를 처리하고 브랜드 키트에 저장합니다.", promptTemplate: "프롬프트 템플릿", readyCandidate: "준비된 후보자", referencesEyebrow: "Assets는 현재 세대 참조용으로 표시되어 있습니다.", refreshBrand: "브랜드 새로 고침", removeFromReferences: "참조에서 제거", removedFromReferences: "참조에서 제거되었습니다.", rerunThis: "이것을 다시 실행하십시오", runNoGeneratedAssets: "이 실행에는 전달할 자산이 생성되지 않았습니다.", saveTo: "다음에 저장...", savedToGenerated: "생성됨에 저장되었습니다.", searchAssets: "자산 검색", selectAllAssetsBoard: "이 보드의 모든 자산을 선택하세요.", selectAllVisibleAssets: "표시되는 자산을 모두 선택하세요.", selectAll: "모두 선택", showAll: "모두 표시", styleDescription: "스타일 설명", textPolicy: "텍스트 정책", uploadFailed: "업로드 실패", uploadMayFinish: "서버는 여전히 이러한 자산 저장을 완료할 수 있습니다. 우리는 이 브랜드 키트를 계속해서 확인할 것입니다.", uploadTakingLonger: "업로드가 예상보다 오래 걸립니다.", videoCandidate: "영상후보", videoPromptPlaceholder: "느린 카메라 푸시인으로 8초 동안 제품 공개", viewDetails: "세부정보 보기", settingsTitle: "브랜드 키트 설정", unsavedChangesTitle: "저장되지 않은 변경 사항", unsavedChangesDescription: "이 브랜드 키트에 저장되지 않은 변경 사항이 있습니다. 취소하시겠습니까, 아니면 계속 편집하시겠습니까?", discardChanges: "변경 사항 취소", keepEditing: "계속 편집", setupGuide: "설정 가이드", setupGuideDescription: "이 키트에서 가장 일관되고 브랜드에 맞는 생성을 얻기 위한 권장 사항입니다.", setupGuideReferences: "참조 자산 업로드", setupGuideReferencesHint: "강력한 예시 3~5개를 참조로 표시하면 브랜드 분석이 추측이 아닌 실제 작업에서 팔레트와 시각적 특성을 학습할 수 있습니다.", setupGuideStyleDescription: "구체적인 스타일 설명 작성", setupGuideStyleDescriptionHint: "모호한 형용사 대신 구체적인 특성(조명, 구도, 질감)을 명시하여 모든 생성이 브랜드에 맞게 유지되도록 하세요.", setupGuideInstructions: "엄격한 제약 조건에는 사용자 지정 지침을 사용하세요", setupGuideInstructionsHint: "항상 지켜야 하는 사항(로고 배치, 금지 색상, 법적 문구)을 여기에 입력하면 에이전트가 이를 잊지 않습니다.", setupGuidePresets: "반복되는 형식마다 프리셋을 만드세요", setupGuidePresetsHint: "가로세로 비율, 모델, 스켈레톤/참조 설정을 프리셋으로 저장하여 매번 동일한 출력 형태를 재사용하세요.", } satisfies Partial; const brandKitDetailPtBR = { addAssetsDescription: "Carregue o material de origem ou gere candidatos e marque apenas os ativos que devem orientar as gerações futuras como referências.", addAssets: "Adicionar recursos", addToReferences: "Adicionar às referências", addedToReferences: "Adicionado às referências.", agentUsageDescription: "Outros agentes podem ligar para Assets através de A2A com este ID de kit de marca.", agentUsage: "Uso do agente", allAssets: "Todos os ativos", allMedia: "Todas as mídias", alreadyInBrandKit: "Já neste kit da marca.", analyzeBrand: "Analisar marca", archiveBrandKit: "Kit de marca de arquivo", archiveDescription: "Isso remove o kit de marca da lista principal de kits de marca. Seus ativos e histórico de geração permanecem armazenados.", archiveThisBrandKit: "Arquivar este kit da marca?", archiving: "Arquivando...", aspectRatio: "Proporção de aspecto", assetActions: "Ações de ativos", assetScope: "Escopo do ativo", assetView: "Visualização de ativos", brandKitActions: "Ações do kit da marca", brandKitArchived: "Kit da marca arquivado.", campaignLaunch: "Lançamento da campanha", candidateActions: "Ações do candidato", checkingUpload: "Verificando upload", clearAll: "Limpar tudo", clearCandidatesDescription: "Limpa o estágio candidato e exclui candidatos gerados não salvos. Os ativos da biblioteca salvos permanecem intactos.", clearLiveCandidatesDescription: "Limpa o painel de candidatos ativos e exclui todas as linhas de candidatos não salvas.", clearLiveCandidates: "Limpar todos os candidatos ativos?", clearSearch: "Limpar pesquisa", clearing: "Limpando...", compiledPrompt: "Prompt compilado", logo: "Logotipo", compositeCanonicalLogo: "Logotipo canônico composto", compositeCanonicalLogoHint: "Adiciona o logotipo canônico deste kit a cada imagem criada com esta predefinição. Requer um logotipo canônico.", presetSkeleton: "Esqueleto da predefinição", presetSkeletonHint: "Compõe gerações sobre uma imagem de fundo de marca carregada para esta predefinição.", contentMode: "Modo de conteúdo", contentModeFill: "Preencher", contentModeCutout: "Recorte", skeletonImage: "Imagem do esqueleto", skeletonImageHint: "Use uma imagem de fundo de marca como placa reutilizável para esta predefinição.", uploadSkeletonImage: "Carregar imagem do esqueleto", uploadingSkeletonImage: "Carregando...", chooseSkeletonImage: "Escolher da biblioteca", noSkeletonImage: "Sem imagem de esqueleto", skeletonImageRequired: "Escolha ou carregue uma imagem de esqueleto antes de salvar.", skeletonImageUploaded: "Imagem do esqueleto carregada.", couldNotUploadSkeletonImage: "Não foi possível carregar a imagem do esqueleto.", skeletonMask: "Máscara da área editável", skeletonMaskHint: "Opcional para recortes com gpt-image-2. Pixels transparentes marcam onde o assunto pode ser pintado; mantenha o conteúdo da placa opaco para preservá-lo.", uploadSkeletonMask: "Carregar máscara", uploadingSkeletonMask: "Carregando...", chooseSkeletonMask: "Escolher máscara da biblioteca", noSkeletonMask: "Sem máscara", skeletonMaskUploaded: "Máscara do esqueleto carregada.", couldNotUploadSkeletonMask: "Não foi possível carregar a máscara do esqueleto.", contactShadow: "Sombra de contato", contactShadowHint: "Adiciona uma sombra suave sob sujeitos recortados transparentes.", placeLogoInSkeleton: "Colocar logotipo no esqueleto", placeLogoInSkeletonHint: "Permite que o esqueleto controle o logotipo canônico para não aplicá-lo duas vezes.", logoPlacement: "Posição do logotipo", upperRight: "Superior direita", upperLeft: "Superior esquerda", lowerRight: "Inferior direita", lowerLeft: "Inferior esquerda", skeletonEnabled: "Ativado", skeletonOff: "Desativado", ...referenceBoardL10nTodo, couldNotAddSelectedToReferences: "Não foi possível adicionar os ativos selecionados às referências.", couldNotAddToReferences: "Não foi possível adicionar recurso às referências.", couldNotArchiveBrandKit: "Não foi possível arquivar o kit da marca.", couldNotClearCandidates: "Não foi possível limpar os candidatos.", couldNotClearCandidate: "Não foi possível limpar o candidato.", couldNotClearLiveCandidates: "Não foi possível limpar candidatos ativos.", couldNotCreateFolder: "Não foi possível criar a pasta", couldNotCreateHandoff: "Não foi possível criar a transferência.", couldNotCreatePreset: "Não foi possível criar a predefinição.", couldNotDeleteAsset: "Não foi possível excluir o recurso.", couldNotDeletePreset: "Não foi possível excluir a predefinição.", couldNotDeleteSelectedAssets: "Não foi possível excluir os recursos selecionados.", couldNotDismissCandidate: "Não foi possível demitir o candidato.", couldNotDuplicateBrandKit: "Não foi possível duplicar o kit da marca.", couldNotPrepareHandoff: "Não foi possível preparar a transferência.", couldNotRemoveFromReferences: "Não foi possível remover o recurso das referências.", couldNotRemoveSelectedFromReferences: "Não foi possível remover os ativos selecionados das Referências.", couldNotSaveCandidate: "Não foi possível salvar o candidato.", customInstructionsPlaceholder: "Preferências que o agente deve aplicar sempre que utilizar este kit da marca.", customInstructions: "Instruções personalizadas", defaultDescription: "Carregue, gere, descreva e organize ativos reutilizáveis ​​entre agentes.", defaultTextPolicy: "Prefira nenhum texto incorporado. Mantenha qualquer texto solicitado curto e legível.", deleteCandidateDescription: "Remove esse candidato do kit da marca e libera seu espaço.", deleteCandidate: "Excluir candidato?", deleteGenerationPresetDescription: "As execuções existentes mantêm seus prompts e configurações capturados. As novas gerações não oferecerão mais esta predefinição.", deleteGenerationPreset: "Excluir predefinição de geração?", deleteManyDescription: "Isso remove permanentemente os ativos selecionados do kit da marca. Para parar de usar um ativo como referência, mas mantê-lo, use Remover das referências.", deleteOneDescription: "Isso remove permanentemente o ativo do kit da marca. Para mantê-lo na biblioteca, mas parar de usá-lo como referência, use Remover das referências.", deletedAsset: "Ativo excluído.", deleting: "Excluindo...", deselectAll: "Desmarcar tudo", dismissFailedDescription: "Remove slots ativos com falha do estágio candidato. Candidatos prontos ficam.", dismissFailedSlotsDescription: "Remove todos os slots com falha do painel. Os candidatos aprovados ficam.", dismissFailed: "Falha ao dispensar", dismissSlotDescription: "Remove esse slot com falha do painel de candidatos ativos.", dismissThisCandidate: "Demitir este candidato?", dismissThisSlot: "Dispensar esta vaga?", dismissedCandidate: "Candidato demitido.", dismissing: "Dispensando...", dropAssetsBody: "Carregue material de origem, exportações geradas, logotipos, produtos ou painéis de estilo.", dropAssetsHere: "Solte os recursos aqui", dropToUpload: "Solte para fazer upload", duplicating: "Duplicando...", editBrandKit: "Editar o nome e a descrição do kit da marca", backToLibrary: "Voltar para a biblioteca", backToSettings: "Voltar para configurações", editGenerationPreset: "Editar predefinição de geração", editGenerationPresetDescription: "Ajuste as regras reutilizáveis que o agente aplica quando esta predefinição é marcada para geração de imagens.", failedCandidate: "Candidato reprovado", generateWithChat: "Gerar com bate-papo", generatedAsset: "Ativo gerado", generatingCandidate: "Gerando candidato", generationPresetCreated: "Predefinição de geração criada.", generationPresetDeleted: "Predefinição de geração excluída.", generationPresetSaved: "Predefinição de geração salva.", couldNotSavePreset: "Não foi possível salvar a predefinição.", presetUnavailableTitle: "Predefinição indisponível", presetUnavailableDescription: "Esta predefinição pode ter sido excluída, ou você pode não ter mais acesso ao kit da marca.", readOnly: "Somente leitura", viewerModeTitle: "Acesso de visualizador", viewerModeDescription: "Você pode inspecionar esta predefinição, mas somente editores podem salvar alterações ou excluí-la.", presetDescriptionPlaceholder: "Para que serve esta predefinição, onde ela deve ser usada ou o que a torna diferente.", imageSize: "Tamanho da imagem", referencePolicy: "Política de referência", noCollection: "Sem coleção", sortOrder: "Ordem de classificação", showAdvancedOptions: "Mostrar opções avançadas", hideAdvancedOptions: "Ocultar opções avançadas", presetSummary: "Resumo da predefinição", saving: "Salvando...", saveChanges: "Salvar alterações", generationPresetsDescription: "Regras de entrega reutilizáveis ​​para imagens sociais, heróis e diagramas.", generationPresets: "Predefinições de geração", generationQueue: "Fila de geração", handoffSessionCreated: "Sessão de transferência criada.", handoffSessionsDescription: "Contexto compartilhado para designers continuarem um candidato sem o tópico de bate-papo original.", handoffSessions: "Sessões de transferência", imageCandidates: "Candidatos de imagem", imagePromptPlaceholder: "Herói do blog com um artigo sobre latência de inicialização a frio", libraryEyebrow: "Ativos salvos nesta visualização filtrada. Marque aqueles que devem orientar as gerações futuras.", liveCandidatesActions: "Ações de candidatos ao vivo", liveSlot: "Slot ao vivo", loadingBrandKit: "Carregando kit da marca...", moveTo: "Mover para", needsDesignRefinement: "Precisa de refinamento de design.", newFolderDescription: "Agrupe ativos carregados e gerados para uma campanha, canal ou coleção reutilizável.", newFolderEllipsis: "Nova pasta...", newFolder: "Nova pasta", newGenerationPresetDescription: "Salve o formato de saída, a proporção e as regras de texto para trabalhos repetidos de imagens.", newGenerationPreset: "Predefinição de nova geração", noAssetsMatchDescription: "Experimente Todos os ativos, uma pasta diferente ou uma pesquisa mais ampla.", noAssetsMatch: "Nenhum recurso corresponde a esta visualização", noAssetsToShow: "Nenhum recurso para mostrar.", noFeedbackYet: "Nenhum feedback ainda.", noNewAssetsUploaded: "Nenhum novo ativo foi carregado.", noOutputCaptured: "Nenhuma saída capturada ainda.", noPresetsYet: "Ainda não há predefinições.", noPreset: "Sem predefinição", noReferencesBody: "Volte para todos os ativos e marque os detentores como referências.", noReferencesTitle: "Nenhuma referência nesta visualização", noRunsDescription: "Gere a partir deste kit de marca para capturar prompt, saída, referências e configurações.", noRunsYet: "Ainda não há corridas", noneSelected: "Nenhum selecionado", openChat: "Abrir bate-papo", previewUnavailable: "Visualização indisponível", privateCopyCreated: "Cópia do kit de marca privada criada", processingPreviews: "Processando visualizações e salvando-as no kit da marca.", promptTemplate: "Modelo de prompt", readyCandidate: "Candidato pronto", referencesEyebrow: "Assets atualmente marcado para referência de geração.", refreshBrand: "Atualizar marca", removeFromReferences: "Remover das referências", removedFromReferences: "Removido das referências.", rerunThis: "Execute isso novamente", runNoGeneratedAssets: "Esta execução não gerou ativos para entrega.", saveTo: "Salvar em...", savedToGenerated: "Salvo em Gerado.", searchAssets: "Pesquisar ativos", selectAllAssetsBoard: "Selecione todos os ativos neste quadro", selectAllVisibleAssets: "Selecione todos os ativos visíveis", selectAll: "Selecionar tudo", showAll: "Mostrar tudo", styleDescription: "Descrição do estilo", textPolicy: "Política de texto", uploadFailed: "Falha no upload", uploadMayFinish: "O servidor ainda pode terminar de salvar esses ativos. Continuaremos verificando este kit da marca.", uploadTakingLonger: "O upload está demorando mais que o esperado.", videoCandidate: "Candidato de vídeo", videoPromptPlaceholder: "Revelação do produto em oito segundos com câmera lenta", viewDetails: "Ver detalhes", settingsTitle: "Configurações do kit de marca", unsavedChangesTitle: "Alterações não salvas", unsavedChangesDescription: "Você tem alterações não salvas neste kit de marca. Descartá-las ou continuar editando?", discardChanges: "Descartar alterações", keepEditing: "Continuar editando", setupGuide: "Guia de configuração", setupGuideDescription: "Recomendações para obter as gerações mais consistentes e fiéis à marca a partir deste kit.", setupGuideReferences: "Enviar ativos de referência", setupGuideReferencesHint: "Marque de 3 a 5 exemplos fortes como Referências para que a análise de marca aprenda a paleta e os traços visuais a partir de trabalho real, não de suposições.", setupGuideStyleDescription: "Escreva uma descrição de estilo específica", setupGuideStyleDescriptionHint: "Indique traços concretos (iluminação, composição, textura) em vez de adjetivos vagos para que cada geração permaneça fiel à marca.", setupGuideInstructions: "Use instruções personalizadas para restrições rígidas", setupGuideInstructionsHint: "Coloque aqui o que deve sempre ser verdade (posicionamento do logotipo, cores proibidas, textos legais) para que o agente nunca esqueça.", setupGuidePresets: "Crie uma predefinição para cada formato recorrente", setupGuidePresetsHint: "Salve a proporção, o modelo e a configuração de esqueleto/referência como predefinição para reutilizar a mesma forma de saída sempre.", } satisfies Partial; const assetDetailDeDE = { loading: "Asset wird geladen...", unavailableTitle: "Asset nicht verfügbar", unavailableDescription: "Dieses generierte Bild wurde möglicherweise entfernt, bevor es gespeichert wurde, oder der Link verweist auf ein Asset, auf das du keinen Zugriff mehr hast.", backToLibrary: "Zurück zur Bibliothek", brandKit: "Markenkit", videoAsset: "Video-Asset", noDescription: "Keine Beschreibung gespeichert", noPrompt: "Kein Prompt gespeichert", continueRefining: "Dieses Asset weiter verfeinern.", refineInstruction: "Frage, was geändert werden soll, verfeinere dann dieses aktive Bild und zeige die neue Vorschau.", makeVideoVariation: "Videovariante erstellen", makeVariations: "Varianten erstellen", copyUrl: "URL kopieren", deleteTitle: "Asset löschen?", deleteDescription: "Dadurch wird das Asset aus der Bibliothek entfernt. Vorhandene Exporte, die diese URL bereits verwenden, werden möglicherweise nicht mehr gerendert.", copiedPrompt: "Prompt kopiert", copiedUrl: "URL kopiert", copyFailed: "Konnte nicht in die Zwischenablage kopieren.", previewUnavailable: "Vorschau nicht verfügbar", downloadFailed: "Asset konnte nicht heruntergeladen werden.", } satisfies Partial; const assetPickerDeDE = { starterAssets: "Start-Assets", pickCandidate: "Wähle das Bild aus, das zurückgesendet werden soll.", noUsableCandidates: "Die Bildgenerierung wurde ohne nutzbare Kandidaten abgeschlossen.", generationFailed: "Bildgenerierung fehlgeschlagen", selectionCopied: "Auswahl kopiert", selectionReady: "Auswahl bereit", sendBackFailed: "Das ausgewählte Asset konnte nicht an den Chat zurückgesendet werden", mcpImagePicks: "MCP-Bildauswahl", mcpImagePicksDescription: "Generierte und ausgewählte Bilder aus MCP-Chat-Hosts.", prepareLibraryFailed: "Bildbibliothek konnte nicht vorbereitet werden", addGenerationKey: "Füge in den Einstellungen einen Generierungsschlüssel hinzu.", connectGenerationModels: "Generierungsmodelle verbinden.", loadingPreset: "Preset wird geladen...", setupNeeded: "Einrichtung erforderlich", preparing: "Vorbereitung...", generatingCandidates: "Kandidaten werden generiert...", checkingLibraries: "Bildbibliotheken werden geprüft...", preparingImageLibrary: "Bildbibliothek wird vorbereitet...", loadingRequestedPreset: "Angefordertes Preset wird geladen...", openAssets: "Assets öffnen", generatePlaceholder: "Bild-Asset generieren", candidateCount: "Kandidatenanzahl", preparingGeneratedLibrary: "Bildbibliothek für generierte Kandidaten wird vorbereitet...", createLibraryForCandidates: "Erstelle eine Bildbibliothek, um neue Kandidaten zu generieren.", createLibrary: "Bibliothek erstellen", copiedHelp: "In die Zwischenablage kopiert. Füge es in deinen Agent-Chat ein oder sage dem Agenten einfach, welches Bild er verwenden soll, zum Beispiel: Dieses verwenden.", copyHelp: "Kopiere den Text unten und füge ihn in deinen Agent-Chat ein oder sage dem Agenten einfach, welches Bild er verwenden soll, zum Beispiel: Dieses verwenden.", showPasteText: "Einfügetext anzeigen", copyToClipboard: "In die Zwischenablage kopieren", fullSizePreview: "Vorschau von {{title}} in voller Größe", closePreview: "Vorschau schließen", previousImage: "Vorheriges Bild", nextImage: "Nächstes Bild", } satisfies Partial; const brandKitsDeDE = { title: "Marken-Kits", description: "Organisiere Referenzen, generierte Assets, Ordner und wiederverwendbare Stilvorgaben.", yourBrandKits: "Deine Brand Kits", yourBrandKitsDescription: "Markenreferenzen, Produktbilder, Videos, Diagramme und generierte Kandidaten, die andere Agenten wiederverwenden können", searchPlaceholder: "Brand Kits suchen", newBrandKit: "Neues Brand Kit", newBrandKitLower: "Neues Brand Kit", createAsset: "Asset erstellen", emptyTitle: "Noch keine Brand Kits", emptyDescription: "Beginne mit einem Standard-Stil-Brand-Kit oder erstelle eigene Referenzen und Stilvorgaben.", presetCreateFailed: "Preset-Brand-Kit konnte nicht erstellt werden.", duplicateCreated: "Private Brand-Kit-Kopie erstellt", duplicateFailed: "Brand Kit konnte nicht dupliziert werden.", createDialogTitle: "Neues Brand Kit", createDialogDescription: "Starte mit einem integrierten Stil-Preset oder erstelle ein leeres Brand Kit für eigene Referenzen.", startFromPreset: "Mit einem Stil-Preset starten", startFromPresetDescription: "Erstelle ein bearbeitbares Brand Kit mit integrierten Generierungsvorgaben.", titlePlaceholder: "Engineering-Blog-Heroes", descriptionPlaceholder: "Dunkle redaktionelle Illustrationen, Produkt-UI-Fragmente, zurückhaltende Farbpalette.", instructionsPlaceholder: "Produkt-UI immer lesbar halten, wörtlichen Text nur auf Anfrage verwenden und ruhige redaktionelle Kompositionen bevorzugen.", editDialogTitle: "Brand Kit bearbeiten", updated: "Brand Kit aktualisiert", updateFailed: "Brand Kit konnte nicht aktualisiert werden", namePlaceholder: "Name des Brand Kits", editDescriptionPlaceholder: "Beschreibe die visuelle Richtung oder den Inhalt dieses Brand Kits.", noDescriptionYet: "Noch keine Beschreibung", instructions: "Anweisungen", refsCount: "{{count}} Referenzen", assetsCount: "{{count}} Assets", videosCount: "{{count}} Videos", } satisfies Partial; const assetDetailJaJP = { loading: "アセットを読み込み中...", unavailableTitle: "アセットを利用できません", unavailableDescription: "この生成画像は保存前に消去されたか、リンク先が現在アクセスできないアセットである可能性があります。", backToLibrary: "ライブラリに戻る", brandKit: "ブランドキット", videoAsset: "動画アセット", noDescription: "説明は保存されていません", noPrompt: "プロンプトは保存されていません", continueRefining: "このアセットの調整を続ける。", refineInstruction: "変更点を確認してから、このアクティブな画像を調整し、新しいプレビューを表示します。", makeVideoVariation: "動画バリエーションを作成", makeVariations: "バリエーションを作成", copyUrl: "URL をコピー", deleteTitle: "アセットを削除しますか?", deleteDescription: "この操作でアセットがライブラリから削除されます。この URL をすでに使用している既存のエクスポートは表示されなくなる場合があります。", copiedPrompt: "プロンプトをコピーしました", copiedUrl: "URL をコピーしました", copyFailed: "クリップボードにコピーできませんでした。", previewUnavailable: "プレビューを利用できません", downloadFailed: "アセットをダウンロードできませんでした。", } satisfies Partial; const assetPickerJaJP = { starterAssets: "スターターアセット", pickCandidate: "返送したい候補を選択してください。", noUsableCandidates: "画像生成は完了しましたが、使用できる候補はありません。", generationFailed: "画像生成に失敗しました", selectionCopied: "選択内容をコピーしました", selectionReady: "選択の準備ができました", sendBackFailed: "選択したアセットをチャットに返送できませんでした", mcpImagePicks: "MCP 画像選択", mcpImagePicksDescription: "MCP チャットホストから生成・選択された画像です。", prepareLibraryFailed: "画像ライブラリを準備できませんでした", addGenerationKey: "設定で生成キーを追加してください。", connectGenerationModels: "生成モデルを接続してください。", loadingPreset: "プリセットを読み込み中...", setupNeeded: "設定が必要です", preparing: "準備中...", generatingCandidates: "候補を生成中...", checkingLibraries: "画像ライブラリを確認中...", preparingImageLibrary: "画像ライブラリを準備中...", loadingRequestedPreset: "リクエストされたプリセットを読み込み中...", openAssets: "Assets を開く", generatePlaceholder: "画像アセットを生成", candidateCount: "候補数", preparingGeneratedLibrary: "生成候補用の画像ライブラリを準備中...", createLibraryForCandidates: "新しい候補を生成するには画像ライブラリを作成してください。", createLibrary: "ライブラリを作成", copiedHelp: "クリップボードにコピーしました。使うにはエージェントチャットに貼り付けるか、たとえば「これを使って」とエージェントに伝えてください。", copyHelp: "下のテキストをコピーしてエージェントチャットに貼り付けるか、たとえば「これを使って」とエージェントに伝えてください。", showPasteText: "貼り付け用テキストを表示", copyToClipboard: "クリップボードにコピー", fullSizePreview: "{{title}} のフルサイズプレビュー", closePreview: "プレビューを閉じる", previousImage: "前の画像", nextImage: "次の画像", } satisfies Partial; const brandKitsJaJP = { title: "ブランドキット", description: "参照、生成アセット、フォルダー、再利用できるスタイルガイダンスを整理します。", yourBrandKits: "あなたのブランドキット", yourBrandKitsDescription: "他のエージェントが再利用できるブランド参照、製品画像、動画、図、生成候補", searchPlaceholder: "ブランドキットを検索", newBrandKit: "新しいブランドキット", newBrandKitLower: "新しいブランドキット", createAsset: "アセットを作成", emptyTitle: "ブランドキットはまだありません", emptyDescription: "既定のスタイルブランドキットから始めるか、独自の参照とスタイルガイダンスを作成します。", presetCreateFailed: "プリセットブランドキットを作成できませんでした。", duplicateCreated: "プライベートなブランドキットコピーを作成しました", duplicateFailed: "ブランドキットを複製できませんでした。", createDialogTitle: "新しいブランドキット", createDialogDescription: "組み込みのスタイルプリセットから始めるか、独自の参照用に空のブランドキットを作成します。", startFromPreset: "スタイルプリセットから開始", startFromPresetDescription: "組み込みの生成ガイダンスを持つ編集可能なブランドキットを作成します。", titlePlaceholder: "エンジニアリングブログのヒーロー", descriptionPlaceholder: "暗めの編集風イラスト、製品 UI の断片、抑えたカラーパレット。", instructionsPlaceholder: "製品 UI は常に読みやすくし、要求されない限り文字の直接表現を避け、落ち着いた編集風の構図を優先します。", editDialogTitle: "ブランドキットを編集", updated: "ブランドキットを更新しました", updateFailed: "ブランドキットを更新できませんでした", namePlaceholder: "ブランドキット名", editDescriptionPlaceholder: "このブランドキットの視覚的な方向性や内容を説明してください。", noDescriptionYet: "説明はまだありません", instructions: "指示", refsCount: "{{count}} 件の参照", assetsCount: "{{count}} 件のアセット", videosCount: "{{count}} 件の動画", } satisfies Partial; const assetDetailKoKR = { loading: "자산을 불러오는 중...", unavailableTitle: "자산을 사용할 수 없습니다", unavailableDescription: "이 생성 이미지는 저장되기 전에 지워졌거나, 링크가 더 이상 접근할 수 없는 자산을 가리킬 수 있습니다.", backToLibrary: "라이브러리로 돌아가기", brandKit: "브랜드 키트", videoAsset: "비디오 자산", noDescription: "저장된 설명이 없습니다", noPrompt: "저장된 프롬프트가 없습니다", continueRefining: "이 자산을 계속 다듬습니다.", refineInstruction: "무엇을 바꿀지 물어본 다음 이 활성 이미지를 다듬고 새 미리보기를 표시합니다.", makeVideoVariation: "비디오 변형 만들기", makeVariations: "변형 만들기", copyUrl: "URL 복사", deleteTitle: "자산을 삭제할까요?", deleteDescription: "이 작업은 라이브러리에서 자산을 제거합니다. 이미 이 URL을 사용하는 기존 내보내기는 렌더링되지 않을 수 있습니다.", copiedPrompt: "프롬프트가 복사되었습니다", copiedUrl: "URL이 복사되었습니다", copyFailed: "클립보드에 복사할 수 없습니다.", previewUnavailable: "미리보기를 사용할 수 없습니다", downloadFailed: "자산을 다운로드할 수 없습니다.", } satisfies Partial; const assetPickerKoKR = { starterAssets: "시작 자산", pickCandidate: "다시 보낼 후보를 선택하세요.", noUsableCandidates: "이미지 생성이 끝났지만 사용할 수 있는 후보가 없습니다.", generationFailed: "이미지 생성 실패", selectionCopied: "선택 항목이 복사되었습니다", selectionReady: "선택 준비 완료", sendBackFailed: "선택한 자산을 채팅으로 다시 보낼 수 없습니다", mcpImagePicks: "MCP 이미지 선택", mcpImagePicksDescription: "MCP 채팅 호스트에서 생성되고 선택된 이미지입니다.", prepareLibraryFailed: "이미지 라이브러리를 준비할 수 없습니다", addGenerationKey: "설정에서 생성 키를 추가하세요.", connectGenerationModels: "생성 모델을 연결하세요.", loadingPreset: "프리셋을 불러오는 중...", setupNeeded: "설정 필요", preparing: "준비 중...", generatingCandidates: "후보 생성 중...", checkingLibraries: "이미지 라이브러리 확인 중...", preparingImageLibrary: "이미지 라이브러리 준비 중...", loadingRequestedPreset: "요청한 프리셋을 불러오는 중...", openAssets: "Assets 열기", generatePlaceholder: "이미지 자산 생성", candidateCount: "후보 수", preparingGeneratedLibrary: "생성 후보용 이미지 라이브러리 준비 중...", createLibraryForCandidates: "새 후보를 생성하려면 이미지 라이브러리를 만드세요.", createLibrary: "라이브러리 만들기", copiedHelp: "클립보드에 복사되었습니다. 사용하려면 에이전트 채팅에 붙여 넣거나, 예를 들어 '이것 사용'처럼 에이전트에게 어떤 것을 쓸지 말하세요.", copyHelp: "아래 텍스트를 복사해 에이전트 채팅에 붙여 넣거나, 예를 들어 '이것 사용'처럼 에이전트에게 어떤 것을 쓸지 말하세요.", showPasteText: "붙여넣기 텍스트 표시", copyToClipboard: "클립보드에 복사", fullSizePreview: "{{title}} 전체 크기 미리보기", closePreview: "미리보기 닫기", previousImage: "이전 이미지", nextImage: "다음 이미지", } satisfies Partial; const brandKitsKoKR = { title: "브랜드 키트", description: "참조, 생성된 자산, 폴더, 재사용 가능한 스타일 지침을 정리하세요.", yourBrandKits: "내 브랜드 키트", yourBrandKitsDescription: "다른 에이전트가 재사용할 수 있는 브랜드 참조, 제품 이미지, 비디오, 다이어그램, 생성 후보", searchPlaceholder: "브랜드 키트 검색", newBrandKit: "새 브랜드 키트", newBrandKitLower: "새 브랜드 키트", createAsset: "자산 만들기", emptyTitle: "아직 브랜드 키트가 없습니다", emptyDescription: "기본 스타일 브랜드 키트로 시작하거나 직접 참조와 스타일 지침을 만드세요.", presetCreateFailed: "프리셋 브랜드 키트를 만들 수 없습니다.", duplicateCreated: "비공개 브랜드 키트 사본이 만들어졌습니다", duplicateFailed: "브랜드 키트를 복제할 수 없습니다.", createDialogTitle: "새 브랜드 키트", createDialogDescription: "내장 스타일 프리셋에서 시작하거나 자체 참조용 빈 브랜드 키트를 만드세요.", startFromPreset: "스타일 프리셋에서 시작", startFromPresetDescription: "내장 생성 지침이 포함된 편집 가능한 브랜드 키트를 만드세요.", titlePlaceholder: "엔지니어링 블로그 히어로", descriptionPlaceholder: "어두운 편집 일러스트, 제품 UI 조각, 절제된 팔레트.", instructionsPlaceholder: "제품 UI는 항상 읽기 쉽게 유지하고, 요청이 없으면 문자 표현을 피하며, 차분한 편집 구성을 선호하세요.", editDialogTitle: "브랜드 키트 편집", updated: "브랜드 키트가 업데이트되었습니다", updateFailed: "브랜드 키트를 업데이트하지 못했습니다", namePlaceholder: "브랜드 키트 이름", editDescriptionPlaceholder: "이 브랜드 키트의 시각적 방향이나 내용을 설명하세요.", noDescriptionYet: "아직 설명이 없습니다", instructions: "지침", refsCount: "참조 {{count}}개", assetsCount: "자산 {{count}}개", videosCount: "비디오 {{count}}개", } satisfies Partial; const assetDetailHiIN = { loading: "एसेट लोड हो रहा है...", unavailableTitle: "एसेट उपलब्ध नहीं है", unavailableDescription: "यह generated image सेव होने से पहले हट गई हो सकती है, या लिंक ऐसे एसेट की ओर जा सकता है जिस तक अब आपकी पहुंच नहीं है।", backToLibrary: "लाइब्रेरी पर वापस जाएं", brandKit: "ब्रांड किट", videoAsset: "वीडियो एसेट", noDescription: "कोई विवरण सेव नहीं है", noPrompt: "कोई prompt सेव नहीं है", continueRefining: "इस एसेट को refine करना जारी रखें।", refineInstruction: "पूछें कि क्या बदलना है, फिर इस active image को refine करें और नया preview दिखाएं।", makeVideoVariation: "वीडियो variation बनाएं", makeVariations: "Variations बनाएं", copyUrl: "URL कॉपी करें", deleteTitle: "एसेट हटाएं?", deleteDescription: "यह एसेट को लाइब्रेरी से हटा देता है। इस URL का उपयोग कर रहे मौजूदा exports render होना बंद कर सकते हैं।", copiedPrompt: "Prompt कॉपी हुआ", copiedUrl: "URL कॉपी हुआ", copyFailed: "Clipboard पर कॉपी नहीं कर सके।", previewUnavailable: "Preview उपलब्ध नहीं है", downloadFailed: "एसेट डाउनलोड नहीं किया जा सका।", } satisfies Partial; const assetPickerHiIN = { starterAssets: "शुरुआती एसेट", pickCandidate: "जिसे वापस भेजना है उसे चुनें।", noUsableCandidates: "Image generation बिना usable candidates के पूरी हुई।", generationFailed: "Image generation विफल हुआ", selectionCopied: "Selection कॉपी हुआ", selectionReady: "Selection तैयार है", sendBackFailed: "चुने गए एसेट को chat में वापस नहीं भेज सके", mcpImagePicks: "MCP छवि चयन", mcpImagePicksDescription: "MCP chat hosts से generated और selected images.", prepareLibraryFailed: "Image library तैयार नहीं कर सके", addGenerationKey: "Settings में generation key जोड़ें।", connectGenerationModels: "Generation models कनेक्ट करें।", loadingPreset: "Preset लोड हो रहा है...", setupNeeded: "Setup जरूरी है", preparing: "तैयार हो रहा है...", generatingCandidates: "Candidates generate हो रहे हैं...", checkingLibraries: "Image libraries जांची जा रही हैं...", preparingImageLibrary: "Image library तैयार हो रही है...", loadingRequestedPreset: "Requested preset लोड हो रहा है...", openAssets: "Assets खोलें", generatePlaceholder: "Image asset generate करें", candidateCount: "उम्मीदवार गिनती", preparingGeneratedLibrary: "Generated candidates के लिए image library तैयार हो रही है...", createLibraryForCandidates: "नए candidates generate करने के लिए image library बनाएं।", createLibrary: "लाइब्रेरी बनाएं", copiedHelp: "Clipboard पर कॉपी हुआ। उपयोग करने के लिए इसे अपने agent chat में paste करें, या agent को बताएं कि कौन सा उपयोग करना है, जैसे: इसे इस्तेमाल करें।", copyHelp: "नीचे का text कॉपी करके अपने agent chat में paste करें, या agent को बताएं कि कौन सा उपयोग करना है, जैसे: इसे इस्तेमाल करें।", showPasteText: "Paste text दिखाएं", copyToClipboard: "Clipboard पर कॉपी करें", fullSizePreview: "{{title}} का full-size preview", closePreview: "Preview बंद करें", previousImage: "पिछली image", nextImage: "अगली image", } satisfies Partial; const brandKitsHiIN = { title: "ब्रांड किट", description: "References, generated assets, folders और reusable style guidance व्यवस्थित करें।", yourBrandKits: "आपके ब्रांड किट", yourBrandKitsDescription: "Brand references, product imagery, videos, diagrams और generated candidates जिन्हें दूसरे agents reuse कर सकते हैं", searchPlaceholder: "ब्रांड किट खोजें", newBrandKit: "नया ब्रांड किट", newBrandKitLower: "नया ब्रांड किट", createAsset: "एसेट बनाएं", emptyTitle: "अभी कोई ब्रांड किट नहीं", emptyDescription: "Default style brand kit से शुरू करें या अपनी references और style guidance बनाएं।", presetCreateFailed: "Preset brand kit नहीं बना सके।", duplicateCreated: "Private brand kit copy बनी", duplicateFailed: "Brand kit duplicate नहीं कर सके।", createDialogTitle: "नया ब्रांड किट", createDialogDescription: "Built-in style preset से शुरू करें या अपनी references के लिए blank brand kit बनाएं।", startFromPreset: "Style preset से शुरू करें", startFromPresetDescription: "Built-in generation guidance वाला editable brand kit बनाएं।", titlePlaceholder: "इंजीनियरिंग ब्लॉग hero चित्र", descriptionPlaceholder: "गहरे editorial illustrations, product UI fragments, संयमित palette.", instructionsPlaceholder: "Product UI हमेशा पढ़ने योग्य रखें, जब तक कहा न जाए literal text से बचें, और शांत editorial compositions को प्राथमिकता दें।", editDialogTitle: "ब्रांड किट संपादित करें", updated: "ब्रांड किट अपडेट हुआ", updateFailed: "ब्रांड किट अपडेट नहीं हो सका", namePlaceholder: "ब्रांड किट का नाम", editDescriptionPlaceholder: "इस ब्रांड किट की visual direction या contents का वर्णन करें।", noDescriptionYet: "अभी कोई विवरण नहीं", instructions: "निर्देश", refsCount: "{{count}} references", assetsCount: "{{count}} assets", videosCount: "{{count}} videos", } satisfies Partial; function mergeMessages(overrides: PartialMessages): Messages { return { root: { ...enUS.root, ...overrides.root }, navigation: { ...enUS.navigation, ...overrides.navigation }, settings: { ...enUS.settings, ...overrides.settings }, chat: { ...enUS.chat, ...overrides.chat }, create: { ...enUS.create, ...overrides.create, starters: { ...enUS.create.starters, ...overrides.create?.starters, }, }, routeTitles: { ...enUS.routeTitles, ...overrides.routeTitles }, team: { ...enUS.team, ...overrides.team }, assetDetail: { ...enUS.assetDetail, ...overrides.assetDetail }, assetPicker: { ...enUS.assetPicker, ...overrides.assetPicker }, audit: { ...enUS.audit, ...overrides.audit }, brandKitDetail: { ...enUS.brandKitDetail, ...overrides.brandKitDetail, }, brandKits: { ...enUS.brandKits, ...overrides.brandKits }, library: { ...enUS.library, ...overrides.library }, creativeContext: { ...enUS.creativeContext, ...overrides.creativeContext, }, }; } function mergeLocalizedMessages( locale: Exclude, overrides: PartialMessages, ): Messages { return mergeMessages({ ...overrides, creativeContext: creativeContextMessagesByLocale[locale], }); } export const messagesByLocale = { "en-US": enUS, "zh-TW": mergeLocalizedMessages("zh-TW", zhTW), "zh-CN": mergeLocalizedMessages("zh-CN", { library: { allLibraries: "所有库", noDrafts: "暂无草稿。", noMatchingDrafts: "没有匹配的草稿。", recentDrafts: "最近草稿", viewAllDrafts: "查看所有草稿", draftAsset: "草稿资产", addAssets: "添加资产", addAssetsDescription: "上传源素材或生成候选项,然后只将应指导未来生成的资产标记为参考。", addGenerationKey: "在设置中添加生成密钥。", addToReferences: "添加到参考", addedAssetsToReferences: "已将 {{count}} 个资产添加到参考。", addedToReferences: "已添加到参考。", allAssets: "所有资产", allAssetsDescription: "每个可访问的套件", alreadyInThisBrandKit: "已在此品牌套件中。", archive: "归档", archiveBrandKit: "归档品牌套件", archiveKitDescription: "这会从库列表中删除品牌套件。其资产和生成历史记录保持存储。", archiveKitTitle: "归档此品牌套件?", archiving: "正在归档...", asset: "资产", assetActions: "资产操作", assetCount: "{{count}} 个资产", assetScope: "资产范围", assetView: "资产视图", assetViewMode: "{{mode}} 视图", assetsTab: "资产", brandKitArchived: "品牌套件已归档。", buildYourFirstKit: "构建您的第一个套件", buildYourFirstKitDescription: "从可复用的样式预设开始,或为您自己的参考创建一个空库。", cancel: "取消", candidateActions: "候选项操作", candidates: "候选项", cards: "卡片", checking: "正在检查", checkingImageLibraries: "正在检查图像库...", checkingUpload: "正在检查上传", clear: "清除", clearAll: "全部清除", clearCandidates: "清除候选项", clearCandidatesDescription: "清除实时阶段并删除未保存的草稿候选项。", clearCandidatesTitle: "清除 {{count}} 个候选项?", clearGeneratedCandidatesDescription: "这会从线程中删除每个未保存的候选项,并删除其背后生成的资产行。已保存的库资产不会被触及。", clearGeneratedCandidatesTitle: "清除生成的候选项?", clearSearch: "清除搜索", clearing: "正在清除...", close: "关闭", closePreview: "关闭预览", connectGenerationModels: "连接生成模型。", copied: "已复制", copiedPasteInstruction: "已复制到剪贴板 - 将其粘贴到您的代理聊天中使用", copy: "复制", copyAsset: "复制 {{title}}", copyPasteInstruction: "复制下面的文本并将其粘贴到您的代理聊天中", copyToClipboard: "复制到剪贴板", couldNotAddSelectedToReferences: "无法将选中资产添加到参考。", couldNotAddToReferences: "无法将资产添加到参考。", couldNotClearCandidates: "无法清除候选项。", couldNotCreateFolder: "无法创建文件夹", couldNotDeleteAsset: "无法删除资产。", couldNotDeleteSelectedAssets: "无法删除选中的资产。", couldNotDismissCandidate: "无法忽略候选项。", couldNotPrepareHandoff: "无法准备交接。", couldNotPrepareImageLibrary: "无法准备图像库", couldNotRemoveSelectedFromReferences: "无法从参考中移除选中资产。", couldNotSaveCandidate: "无法保存候选项。", couldNotSaveDraft: "无法保存草稿。", create: "创建", createBlankKit: "创建空白套件", createBrandKit: "创建品牌套件", createImageLibraryToGenerate: "创建图像库以生成新候选项。", createLibrary: "创建库", createPane: "创建", defaultKitDescription: "上传、生成、描述并组织可供多个代理复用的资产。", defaultTextPolicy: "尽量不要嵌入文字。如需文字,请保持简短且易读。", deleteAssetDescription: "这会从品牌套件中永久删除该资产。若要保留在库中但停止作为参考,请改用“从参考中移除”。", deleteAssetTitle: "删除资产?", deleteAssetsDescription: "这会从品牌套件中永久删除选中的资产。若要停止作为参考但保留资产,请改用“从参考中移除”。", deleteAssetsTitle: "删除 {{count}} 个资产?", deleteCandidate: "删除候选项", deletedAsset: "资产已删除。", deletedAssets: "已删除 {{count}} 个资产。", deletingAssets: "正在删除 {{count}} 个资产...", deselectAll: "取消全选", dismiss: "忽略", dismissCandidateDescription: "这会从候选区移除 {{title}}。已保存的库资产不会受影响。", dismissCandidateTitle: "忽略此候选项?", dismissFailed: "忽略失败项", dismissFailedSlotsDescription: "从面板中移除所有失败槽位。成功候选项会保留。", dismissFailedSlotsTitle: "忽略 {{count}} 个失败槽位?", dismissedCandidate: "候选项已忽略。", dismissing: "正在忽略...", dropAssetsHere: "将资产拖放到此处", dropAssetsHereBody: "上传源素材、生成的导出、徽标、产品或风格板。", duplicate: "复制", duplicating: "正在复制...", editBrandKit: "编辑品牌套件名称和描述", failed: "失败", failedCandidate: "失败的候选项", folderLabel: "文件夹:{{title}}", folderNamePlaceholder: "活动发布", fullSizePreview: "{{title}} 的完整尺寸预览", generate: "生成", generateImagePlaceholder: "生成图像资产", generated: "已生成", generatedAsset: "生成的资产", generatedCandidatesTitle: "生成的候选项", generating: "正在生成", generatingCandidate: "正在生成候选项", generatingCandidates: "正在生成候选项...", generationFailed: "图像生成失败", image: "图像", kitActions: "品牌套件操作", lanes: "泳道", library: "库", libraryEyebrow: "此筛选视图中的已保存资产。标记应指导未来生成的资产。", liveSlot: "实时槽位", loading: "正在加载资源...", loadingBrandKit: "正在加载品牌套件...", loadingPreset: "正在加载预设...", loadingRequestedPreset: "正在加载请求的预设...", mcpImagePicks: "MCP 图像选择", mcpImagePicksDescription: "来自 MCP 聊天宿主的已生成和已选择图像。", moveTo: "移动到", name: "名称", newFolder: "新建文件夹", newFolderDescription: "为活动、渠道或可复用集合分组上传和生成的资产。", newFolderEllipsis: "新建文件夹...", newKit: "新套件", nextImage: "下一张图像", noAssetsInLibrary: "此库中还没有{{mediaLabel}}资产。", noAssetsMatchView: "没有资产匹配此视图", noAssetsMatchViewBody: "尝试“所有资产”、其他文件夹或更宽泛的搜索。", noAssetsToShow: "没有可显示的资产。", noBrandKit: "无品牌套件", noKitsMatch: "没有套件与您的搜索匹配。", noMatchingAssets: "您的套件中没有匹配的资产。", noMatchingLibraryAssets: "此库中没有匹配的{{mediaLabel}}资产。", noNewAssetsUploaded: "没有上传新的资产。", noReferencesInView: "此视图中没有参考", noReferencesInViewBody: "切回所有资产并将要保留的项目标记为参考。", noReusableAssets: "还没有可复用的资产。选择一个套件来上传参考或生成资产。", open: "打开", openAssets: "打开 Assets", openChat: "打开聊天", openDetails: "打开详情", preparing: "正在准备...", preparingImageLibrary: "正在准备图像库...", preparingImageLibraryCandidates: "正在为生成候选项准备图像库...", previousImage: "上一张图像", primaryKitActions: "主套件操作", privateBrandKitCopyCreated: "已创建私有品牌套件副本", promptTemplatePlaceholder: "创建关于 {{prompt}} 的社交帖子视觉...", readyCandidate: "就绪候选项", readyToSave: "准备保存", reference: "参考", referenceCount: "{{count}} 个参考", references: "参考", referencesCount: "{{count}} 个参考", referencesEyebrow: "当前标记为生成参考的资产。", removeFromReferences: "从参考中移除", removedAssetsFromReferences: "已从参考中移除 {{count}} 个资产。", runHasNoGeneratedAssets: "此运行没有可交接的生成资产。", runs: "运行", save: "保存", saveTo: "保存到...", saved: "已保存", savedGeneratedAsset: "已保存生成的资产。", savedToLibrary: "已保存到库。", searchAssets: "搜索资产", searchKits: "搜索套件", searchMedia: "搜索{{mediaLabel}}", selectAll: "全选", selectAllAssetsInBoard: "选择此面板中的所有资产", selectAllVisibleAssets: "选择所有可见资产", selectAsset: "选择 {{title}}", selectedAssetSendFailed: "无法将所选资产发送回聊天", selectedCount: "已选择 {{count}} 个", selectionCopied: "选择内容已复制", selectionReady: "选择内容已就绪", settings: "设置", setupNeeded: "需要设置", showAll: "显示全部", showCandidate: "显示 {{title}}", showPasteText: "显示粘贴文本", skippedDuplicateAssets: "已跳过 {{count}} 个重复资产。", starterAssets: "入门资产", stillRendering: "仍在渲染", tabsAll: "全部", tellAgentUseThis: '或告诉您的代理选择哪一个,例如"使用这个"。', thisCandidate: "此候选项", unfiled: "未归档", upload: "上传", uploadFailed: "上传失败", uploadTakingLonger: "上传耗时超过预期。", uploadTakingLongerDescription: "服务器可能仍会完成保存这些资产。我们会继续检查此品牌套件。", uploadedAssets: "已上传 {{count}} 个资产。", uploading: "正在上传", uploadingCount: "正在上传 {{count}}", useCandidate: "使用候选项", video: "视频", viewDetails: "查看详情", visibleAssetsCount: "{{count}} 个可见资产", }, root: { commandActions: "操作", commandSearch: "搜索", commandAppearance: "外观", toggleTheme: "切换主题", }, navigation: { create: "创建", library: "资料库", brandKits: "品牌套件", auditLog: "审计日志", settings: "设置", extensions: "扩展", openNavigation: "打开导航", expandSidebar: "展开侧边栏", collapseSidebar: "收起侧边栏", }, settings: { agentTitle: "管理代理", agentDescription: "管理代理的模型、API 密钥、自动化、语音和其他控制项。", openAgentSettings: "管理代理", title: "设置", description: "资产生成、存储和品牌套件访问。", connections: "连接", connectionsDescription: "让 Assets 随时可生成、保存并共享品牌安全媒体。Builder 是最简单的路径;需要时也可使用手动密钥。", languageTitle: "语言", languageDescription: "选择此 Assets 工作区的界面语言。", languageLabel: "界面语言", addBuilderGeminiOrOpenAI: "在生成新资产之前添加 Builder、Gemini 或 OpenAI。", addGeminiOrOpenAI: "在生成新资产之前添加Gemini或OpenAI。", brandKits: "品牌套件", builderDescriptionDisabled: "对此部署禁用。", builderDescriptionManaged: "托管图像生成和存储,无需提供商密钥。", builderDescriptionReady: "连接管理一代。", builderManaged: "Builder 正在处理托管映像生成。", chooseProvider: "选择提供商", enterValueFirst: "首先输入一个值。", generationNeedsSetup: "需要设置", manualGenerationDescription: "添加 Gemini 用于视频生成,或 OpenAI/Gemini 作为图像后备。", manualGenerationKeys: "手动生成密钥", manualKeys: "手动按键", noManualOptions: "该项目没有可用的手动设置选项。", objectStorageDescription: "使用 S3、R2、Spaces、Tigris、MinIO 或其他兼容的提供商。", objectStorage: "对象存储", saveFailed: "保存失败", saveKey: "保存密钥", saveSettings: "保存设置", setupDescription: "两个要素:生成和持久存储。", setupTitle: "Assets 设置", storageNeedsSetup: "为生产资产和导出添加与S3兼容的存储。", storageReady: "原件、缩略图、视频和导出内容都有一个持久的家。", }, chat: { emptyState: "描述你想制作的资产", suggestionBlogHeroes: "从这个品牌套件生成 3 张博客头图", suggestionProductVideo: "制作 8 秒产品展示视频", suggestionReferenceStyle: "匹配我的参考资产风格", chats: "聊天", newChat: "新聊天", newAssetsChat: "新建 Assets 聊天", renameChat: "重命名聊天", pinChat: "置顶聊天", unpinChat: "取消置顶聊天", copyShareLink: "复制分享链接", archiveChat: "归档聊天", archiveFailed: "无法归档聊天。", renameFailed: "无法重命名聊天。", shareLinkFailed: "无法创建分享链接。", shareLinkCopied: "聊天分享链接已复制。", shareLinkReady: "聊天分享链接已就绪。", optionsFor: "{{title}} 的聊天选项", }, assetPicker: { starterAssets: "入门资产", generatedCandidates_one: "已生成 {{count}} 个图像候选项", generatedCandidates_other: "已生成 {{count}} 个图像候选项", failedCandidates_one: "{{count}} 个候选项失败。", failedCandidates_other: "{{count}} 个候选项失败。", pickCandidate: "选择要发送回去的那一个。", noUsableCandidates: "图像生成完成,但没有可用候选项。", generationFailed: "图像生成失败", selectionCopied: "选择内容已复制", selectionReady: "选择内容已就绪", selectedAsset: "已选择 {{title}}", sendBackFailed: "无法将所选资产发送回聊天", mcpImagePicks: "MCP 图像选择", mcpImagePicksDescription: "来自 MCP 聊天宿主的已生成和已选择图像。", prepareLibraryFailed: "无法准备图像库", addGenerationKey: "在设置中添加生成密钥。", connectGenerationModels: "连接生成模型。", loadingPreset: "正在加载预设...", setupNeeded: "需要设置", preparing: "正在准备...", generatingCandidates: "正在生成候选项...", checkingLibraries: "正在检查图像库...", preparingImageLibrary: "正在准备图像库...", loadingRequestedPreset: "正在加载请求的预设...", openAssets: "打开 Assets", generatePlaceholder: "生成图像资产", candidateCount: "候选项数量", preparingGeneratedLibrary: "正在为生成候选项准备图像库...", createLibraryForCandidates: "创建图像库以生成新候选项。", createLibrary: "创建库", copied: "已复制", copy: "复制", copiedHelp: "已复制到剪贴板。将其粘贴到代理聊天中即可使用,或直接告诉代理要用哪一个,例如:使用这个。", copyHelp: "复制下面的文本并粘贴到代理聊天中,或直接告诉代理要用哪一个,例如:使用这个。", showPasteText: "显示粘贴文本", searchMedia: "搜索{{media}}", noMatchingAssets: "此库中没有匹配的{{media}}资产。", noAssetsYet: "此库中还没有{{media}}资产。", openAsset: "打开 {{title}}", copyAsset: "复制 {{title}}", copyToClipboard: "复制到剪贴板", fullSizePreview: "{{title}} 的完整尺寸预览", closePreview: "关闭预览", previousImage: "上一张图像", nextImage: "下一张图像", }, routeTitles: { library: "资料库 - Assets", brandKits: "品牌套件 - Assets", generationPreset: "生成预设 - Assets", extension: "扩展 - Assets", extensions: "扩展 - Assets", team: "团队 - Assets", }, team: { title: "团队", createOrgDescription: "设置团队,与同事共享品牌套件和生成的资产。", }, assetDetail: { backToLibrary: "返回图书馆", brandKit: "品牌套件", continueRefining: "继续完善该资产。", copiedPrompt: "已复制提示", copiedUrl: "已复制URL", copyFailed: "无法复制到剪贴板。", copyUrl: "复制URL", deleteDescription: "这会从库中删除该资源。已使用此 URL 的现有导出可能会停止渲染。", deleteTitle: "删除资产?", downloadFailed: "无法下载资产。", loading: "正在加载资源...", makeVariations: "做出变化", makeVideoVariation: "制作视频变体", noDescription: "没有存储描述", noPrompt: "没有存储提示", previewUnavailable: "预览不可用", refineInstruction: "询问应该更改哪些内容,然后优化此活动图像并显示新的预览。", unavailableDescription: "生成的图像可能在保存之前已被清除,或者链接可能指向您无法再访问的资产。", unavailableTitle: "资产不可用", videoAsset: "视频资源", }, audit: { title: "审计日志", ownerOnlyFallback: "仅所有者回退", orgWide: "整个组织", ownerScopedDescription: "未检测到组织上下文,因此此视图仅限于你触发的运行。组织管理员可查看完整的组织审计源。", orgScopedDescription: "正在查看整个组织的审计数据。此视图仅用于治理审查 - 工作区中的每次生成都会列在下面。", exporting: "正在导出...", exportCsv: "导出 CSV", dateFrom: "开始日期", dateTo: "结束日期", ownerEmail: "所有者邮箱", promptSearch: "搜索提示", model: "模型", allModels: "所有模型", status: "状态", allStatuses: "所有状态", source: "来源", allSources: "所有来源", callingApp: "调用应用 (A2A)", clearFilters: "清除筛选", when: "时间", owner: "所有者", brandKit: "品牌套件", prompt: "提示", savedTotal: "已保存 / 总数", runSummary: "运行 {{id}}... · {{time}}", videoBadge: "{{duration}} 秒 · {{resolution}}", byOwner: "由 {{email}} 创建", userPrompt: "用户提示", compiledPrompt: "编译后的提示", failed: "失败", parentRun: "父运行(优化来源)", referencesCount: "参考({{count}})", generatedChildrenCount: "生成的子项({{count}})", noChildrenProduced: "未生成子项。", openBrandKit: "打开品牌套件 ->", viaCaller: "通过 {{caller}}", noRunsMatch: "没有运行匹配这些筛选条件", noRunsDescription: "尝试扩大日期范围或清除筛选。过去 90 天的生成运行通常是不错的起始视图。", loadFailed: "无法加载审计日志", unknownError: "未知错误。请尝试刷新。", adminOnlyTitle: "审计日志仅限管理员", adminOnlyDescription: "只有组织管理员可以查看审计日志。如果你认为自己应有访问权限,请让组织所有者升级你的角色。", secondsAgo: "{{count}} 秒前", minutesAgo: "{{count}} 分钟前", hoursAgo: "{{count}} 小时前", daysAgo: "{{count}} 天前", }, brandKitDetail: { savedToGenerated: "已保存到生成内容。", couldNotSaveCandidate: "无法保存候选项。", addedToReferences: "已添加到参考。", couldNotAddToReferences: "无法将资产添加到参考。", removedFromReferences: "已从参考中移除。", couldNotRemoveFromReferences: "无法从参考中移除资产。", processingPreviews: "正在处理预览并保存到品牌套件。", processingBatches: "分 {{count}} 批处理。", uploadProgress_one: "正在上传 {{count}} 个资产...", uploadProgress_other: "正在上传 {{count}} 个资产...", uploadedSomeFailed: "已上传 {{uploaded}} 个资产{{uploadedPlural}};{{failed}} 个失败。", skippedDuplicates: "已跳过 {{count}} 个重复项{{plural}}。", uploadedSkipped: "已上传 {{uploaded}} 个资产{{uploadedPlural}};跳过 {{skipped}} 个重复项{{skippedPlural}}。", uploadedCount_one: "已上传 {{count}} 个资产。", uploadedCount_other: "已上传 {{count}} 个资产。", skippedDuplicateAssets_one: "已跳过 {{count}} 个重复资产。", skippedDuplicateAssets_other: "已跳过 {{count}} 个重复资产。", alreadyInBrandKit: "已在此品牌套件中。", noNewAssetsUploaded: "没有上传新的资产。", uploadFailed: "上传失败", uploadTakingLonger: "上传耗时超过预期。", uploadMayFinish: "服务器可能仍会完成保存这些资产。我们会继续检查此品牌套件。", brandKitArchived: "品牌套件已归档。", couldNotArchiveBrandKit: "无法归档品牌套件。", privateCopyCreated: "已创建私有品牌套件副本", couldNotDuplicateBrandKit: "无法复制品牌套件。", couldNotPrepareHandoff: "无法准备交接。", runNoGeneratedAssets: "此运行没有可交接的生成资产。", generatedAsset: "生成的资产", needsDesignRefinement: "需要设计优化。", handoffSessionCreated: "交接会话已创建。", couldNotCreateHandoff: "无法创建交接。", loadingBrandKit: "正在加载品牌套件...", editBrandKit: "编辑品牌套件名称和描述", defaultDescription: "上传、生成、描述并组织可供多个代理复用的资产。", upload: "上传", uploadingCount: "正在上传 {{count}}", folder: "文件夹", brandKitActions: "品牌套件操作", newFolder: "新建文件夹", duplicating: "正在复制...", duplicate: "复制", archiveBrandKit: "归档品牌套件", archiveThisBrandKit: "归档此品牌套件?", archiveDescription: "这会将品牌套件从主列表中移除。其资产和生成历史仍会保留。", cancel: "取消", archiving: "正在归档...", archive: "归档", dropToUpload: "拖放以上传", assets: "资产", asset: "资产", runs: "运行", settings: "设置", allAssets: "所有资产", unfiled: "未归档", searchAssets: "搜索资产", clearSearch: "清除搜索", allMedia: "所有媒体", images: "图像", videos: "视频", handoffSessions: "交接会话", handoffSessionsDescription: "供设计师在没有原始聊天线程的情况下继续处理候选项的共享上下文。", noRunsYet: "还没有运行", noRunsDescription: "从此品牌套件生成内容,以捕获提示、输出、参考和设置。", styleDescription: "风格描述", customInstructions: "自定义指令", customInstructionsPlaceholder: "代理每次使用此品牌套件时应应用的偏好。", palette: "调色板", refreshBrand: "刷新品牌", analyzeBrand: "分析品牌", agentUsage: "代理使用", agentUsageDescription: "其他代理可通过 A2A 使用此品牌套件 ID 调用 Assets。", prompt: "提示", handoff: "交接", refresh: "刷新", rerunThis: "重新运行", model: "模型", aspect: "比例", size: "尺寸", refs: "参考", grounding: "锚定", categories: "类别", output: "输出", noOutputCaptured: "尚未捕获输出。", providerLabel: "提供商:{{provider}}", references: "参考", noneSelected: "未选择", compiledPrompt: "编译后的提示", noFeedbackYet: "还没有反馈。", continue: "继续", active: "活动", activeAsset: "活动 {{id}}", generate: "生成", generateWithChat: "通过聊天生成", preset: "预设", noPreset: "无预设", imageCandidates: "图像候选项", videoCandidate: "视频候选项", videoPromptPlaceholder: "8 秒产品展示,慢速推近镜头", imagePromptPlaceholder: "关于冷启动延迟文章的博客头图", variants: "{{count}} 个变体", logo: "徽标", compositeCanonicalLogo: "合成规范徽标", compositeCanonicalLogoHint: "为使用此预设生成的每张图片合成此套件的规范徽标。需要已设置规范徽标。", presetSkeleton: "预设骨架", presetSkeletonHint: "将生成结果合成到此预设拥有的上传品牌背景图上。", contentMode: "内容模式", contentModeFill: "填充", contentModeCutout: "抠图", skeletonImage: "骨架图片", skeletonImageHint: "使用品牌背景图作为此预设的可复用底板。", uploadSkeletonImage: "上传骨架图片", uploadingSkeletonImage: "正在上传...", chooseSkeletonImage: "从库中选择", noSkeletonImage: "无骨架图片", skeletonImageRequired: "保存前请选择或上传骨架图片。", skeletonImageUploaded: "骨架图片已上传。", couldNotUploadSkeletonImage: "无法上传骨架图片。", skeletonMask: "可编辑区域遮罩", skeletonMaskHint: "gpt-image-2 抠图模式可选。透明像素标记可绘制主体的位置;保持底板内容不透明即可保留它。", uploadSkeletonMask: "上传遮罩", uploadingSkeletonMask: "正在上传...", chooseSkeletonMask: "从库中选择遮罩", noSkeletonMask: "无遮罩", skeletonMaskUploaded: "骨架遮罩已上传。", couldNotUploadSkeletonMask: "无法上传骨架遮罩。", contactShadow: "接触阴影", contactShadowHint: "在透明抠图主体下方添加柔和的落地阴影。", placeLogoInSkeleton: "将徽标放入骨架", placeLogoInSkeletonHint: "让骨架拥有规范徽标,避免重复叠加。", logoPlacement: "徽标位置", upperRight: "右上", upperLeft: "左上", lowerRight: "右下", lowerLeft: "左下", skeletonEnabled: "已启用", skeletonOff: "关闭", ...referenceBoardL10nTodo, openChat: "打开聊天", defaultTextPolicy: "尽量不要嵌入文字。如需文字,请保持简短且易读。", generationPresetCreated: "生成预设已创建。", couldNotCreatePreset: "无法创建预设。", generationPresets: "生成预设", generationPresetsDescription: "用于社交图像、头图和图表的可复用交付规则。", new: "新建", noPresetsYet: "还没有预设。", deleteGenerationPreset: "删除生成预设?", deleteGenerationPresetDescription: "现有运行会保留已捕获的提示和设置。新的生成将不再提供此预设。", generationPresetDeleted: "生成预设已删除。", couldNotDeletePreset: "无法删除预设。", delete: "删除", edit: "编辑", backToLibrary: "返回库", backToSettings: "返回设置", newGenerationPreset: "新建生成预设", newGenerationPresetDescription: "保存输出格式、宽高比和文本规则,用于重复图像工作。", editGenerationPreset: "编辑生成预设", editGenerationPresetDescription: "调整代理在标记此预设进行图像生成时会应用的可复用规则。", generationPresetSaved: "生成预设已保存。", couldNotSavePreset: "无法保存预设。", presetUnavailableTitle: "预设不可用", presetUnavailableDescription: "此预设可能已被删除,或者你可能已无法访问其品牌套件。", readOnly: "只读", viewerModeTitle: "查看者访问权限", viewerModeDescription: "你可以查看此预设,但只有编辑者可以保存更改或删除它。", name: "名称", description: "描述", presetDescriptionPlaceholder: "此预设的用途、适用位置,或它与其他预设的差异。", category: "类别", aspectRatio: "宽高比", imageSize: "图像尺寸", referencePolicy: "参考策略", collection: "集合", noCollection: "无集合", sortOrder: "排序顺序", promptTemplate: "提示模板", promptTemplatePlaceholder: "创建关于 {{prompt}} 的社交帖子视觉...", textPolicy: "文本策略", showAdvancedOptions: "显示高级选项", hideAdvancedOptions: "隐藏高级选项", presetSummary: "预设摘要", saving: "正在保存...", saveChanges: "保存更改", create: "创建", video: "视频", previewUnavailable: "预览不可用", dismissedCandidate: "候选项已忽略。", couldNotDismissCandidate: "无法忽略候选项。", failedCandidate: "失败的候选项", readyCandidate: "就绪候选项", generatingCandidate: "正在生成候选项", liveSlot: "实时槽位", candidate: "候选项", image: "图像", dismiss: "忽略", dismissThisCandidate: "忽略此候选项?", thisCandidate: "此候选项", dismissCandidateDescription: "这会从候选区移除 {{title}}。已保存的库资产不会受影响。", dismissing: "正在忽略...", candidates: "候选项", generationQueue: "生成队列", status: "状态", type: "类型", open: "打开", saveTo: "保存到...", folderLabel: "文件夹:{{title}}", newFolderEllipsis: "新建文件夹...", dismissFailed: "忽略失败项", clearAll: "全部清除", clearing: "正在清除...", couldNotClearCandidates: "无法清除候选项。", dismissedFailedCandidates_one: "已忽略 {{count}} 个失败候选项。", dismissedFailedCandidates_other: "已忽略 {{count}} 个失败候选项。", clearedCandidates_one: "已清除 {{count}} 个候选项。", clearedCandidates_other: "已清除 {{count}} 个候选项。", dismissFailedCandidatesTitle_one: "忽略 {{count}} 个失败候选项?", dismissFailedCandidatesTitle_other: "忽略 {{count}} 个失败候选项?", clearCandidatesTitle_one: "清除 {{count}} 个候选项?", clearCandidatesTitle_other: "清除 {{count}} 个候选项?", dismissFailedDescription: "从候选区移除失败的实时槽位。就绪候选项会保留。", clearCandidatesDescription: "清空候选区并删除未保存的生成候选项。已保存的库资产不会受影响。", candidateActions: "候选项操作", deletedAsset: "资产已删除。", couldNotDeleteAsset: "无法删除资产。", couldNotDeleteSelectedAssets: "无法删除选中的资产。", deletedAssets_one: "已删除 {{count}} 个资产。", deletedAssets_other: "已删除 {{count}} 个资产。", addedAssetsToReferences_one: "已将 {{count}} 个资产添加到参考。", addedAssetsToReferences_other: "已将 {{count}} 个资产添加到参考。", removedAssetsFromReferences_one: "已从参考中移除 {{count}} 个资产。", removedAssetsFromReferences_other: "已从参考中移除 {{count}} 个资产。", couldNotAddSelectedToReferences: "无法将选中资产添加到参考。", couldNotRemoveSelectedFromReferences: "无法从参考中移除选中资产。", checkingUpload: "正在检查上传", uploading: "正在上传", reference: "参考", saved: "已保存", save: "保存", addToReferences: "添加到参考", close: "关闭", generated: "已生成", slot: "槽位", removeFromReferences: "从参考中移除", noAssetsMatch: "没有资产匹配此视图", noAssetsMatchDescription: "尝试“所有资产”、其他文件夹或更宽泛的搜索。", addAssets: "添加资产", addAssetsDescription: "上传源素材或生成候选项,然后只将应指导未来生成的资产标记为参考。", deleteAssetsTitle_one: "删除 {{count}} 个资产?", deleteAssetsTitle_other: "删除 {{count}} 个资产?", deleteOneDescription: "这会从品牌套件中永久删除该资产。若要保留在库中但停止作为参考,请改用“从参考中移除”。", deleteManyDescription: "这会从品牌套件中永久删除选中的资产。若要停止作为参考但保留资产,请改用“从参考中移除”。", selectAllVisibleAssets: "选择所有可见资产", deselectAll: "取消全选", selectAll: "全选", visibleAssets_one: "{{count}} 个可见资产", visibleAssets_other: "{{count}} 个可见资产", referenceCount_one: "{{count}} 个参考", referenceCount_other: "{{count}} 个参考", clear: "清除", selectAllAssetsBoard: "选择此面板中的所有资产", deletingAssets_one: "正在删除 {{count}} 个资产...", deletingAssets_other: "正在删除 {{count}} 个资产...", selectedCount: "已选择 {{count}} 个", boardAssetCount_one: "{{count}} 个资产", boardAssetCount_other: "{{count}} 个资产", referencesSavedCounts: "{{references}} 个参考 · {{saved}} 个已保存", library: "库", referencesEyebrow: "当前标记为生成参考的资产。", libraryEyebrow: "此筛选视图中的已保存资产。标记应指导未来生成的资产。", noReferencesTitle: "此视图中没有参考", noReferencesBody: "切回所有资产并将要保留的项目标记为参考。", showAll: "显示全部", dropAssetsHere: "将资产拖放到此处", dropAssetsBody: "上传源素材、生成的导出、徽标、产品或风格板。", lanes: "泳道", cards: "卡片", assetView: "资产视图", viewModeLabel: "{{label}} 视图", all: "全部", assetScope: "资产范围", noAssetsToShow: "没有可显示的资产。", selectItem: "选择 {{title}}", showItem: "显示 {{title}}", assetActions: "资产操作", viewDetails: "查看详情", moveTo: "移动到", contentOnly: "仅内容", styleReference: "风格参考", fromSource: "来自 {{source}}", checking: "正在检查", couldNotClearCandidate: "无法清除候选项。", dismissThisSlot: "忽略此槽位?", deleteCandidate: "删除候选项?", dismissSlotDescription: "从实时候选面板移除此失败槽位。", deleteCandidateDescription: "从品牌套件中移除此候选项并清除其槽位。", deleting: "正在删除...", generating: "正在生成", couldNotCreateFolder: "无法创建文件夹", newFolderDescription: "为活动、渠道或可复用集合分组上传和生成的资产。", campaignLaunch: "活动发布", clearLiveCandidates: "清除所有实时候选项?", dismissFailedSlotsTitle_one: "忽略 {{count}} 个失败槽位?", dismissFailedSlotsTitle_other: "忽略 {{count}} 个失败槽位?", dismissFailedSlotsDescription: "从面板中移除所有失败槽位。成功候选项会保留。", clearLiveCandidatesDescription: "清除实时候选面板并删除所有未保存的候选行。", couldNotClearLiveCandidates: "无法清除实时候选项。", liveCandidatesActions: "实时候选项操作", settingsTitle: "品牌套件设置", unsavedChangesTitle: "未保存的更改", unsavedChangesDescription: "此品牌套件有未保存的更改。放弃更改还是继续编辑?", discardChanges: "放弃更改", keepEditing: "继续编辑", setupGuide: "设置指南", setupGuideDescription: "为了从此套件获得最一致、最符合品牌调性的生成结果的建议。", setupGuideReferences: "上传参考素材", setupGuideReferencesHint: "将 3-5 个强有力的示例标记为参考,以便品牌分析能从真实作品中学习调色板和视觉特征,而不是猜测。", setupGuideStyleDescription: "撰写具体的风格描述", setupGuideStyleDescriptionHint: "使用具体特征(光线、构图、质感)而不是模糊的形容词,以便每次生成都符合品牌调性。", setupGuideInstructions: "使用自定义指令来设定硬性约束", setupGuideInstructionsHint: "将必须始终成立的事项(徽标位置、禁用颜色、法律文本)放在此处,以便代理永远不会忘记。", setupGuidePresets: "为每种常用格式创建一个预设", setupGuidePresetsHint: "将宽高比、模型和骨架/参考设置保存为预设,以便每次都重复使用相同的输出形式。", }, create: { imageModel: "图像模型", modelBestQuality: "最佳质量", modelFast: "快速", emptyState: "询问 Assets 要创建什么。", composerPlaceholder: "描述资产 - 用 + 附加图片或文本上下文", heroTitle: "我们要制作什么资产?", heroDescription: "从头图、产品展示、参考编辑或你想探索的方向开始。", starters: { image: "图像", video: "视频", refine: "优化" }, }, brandKits: { createDialogTitle: "新建品牌套件", createDialogDescription: "从内置风格预设开始,或为你自己的参考创建空白品牌套件。", startFromPreset: "从风格预设开始", startFromPresetDescription: "创建带有内置生成指导的可编辑品牌套件。", titlePlaceholder: "工程博客头图", descriptionPlaceholder: "深色编辑插画、产品 UI 片段、克制的调色板。", instructionsPlaceholder: "始终保持产品 UI 清晰,除非明确要求,否则避免文字,偏好安静的编辑式构图。", editDialogTitle: "编辑品牌套件", updated: "品牌套件已更新", updateFailed: "无法更新品牌套件", namePlaceholder: "品牌套件名称", editDescriptionPlaceholder: "描述此品牌套件的视觉方向或内容。", noDescriptionYet: "还没有描述", instructions: "指令", refsCount: "{{count}} 个参考", assetsCount: "{{count}} 个资产", videosCount: "{{count}} 个视频", createAsset: "创建资产", description: "组织参考、生成的资源、文件夹和可重用的样式指南。", duplicateCreated: "创建自有品牌套件副本", duplicateFailed: "无法复制品牌套件。", emptyDescription: "从默认的风格品牌套件开始,或创建您自己的参考和风格指南。", emptyTitle: "还没有品牌套件", newBrandKitLower: "新品牌套件", newBrandKit: "新品牌套件", presetCreateFailed: "无法创建预设品牌套件。", searchPlaceholder: "搜索品牌套件", title: "品牌套件", yourBrandKitsDescription: "品牌参考、产品图像、视频、图表和生成的候选产品可供其他代理重复使用", yourBrandKits: "您的品牌套件", }, }), "es-ES": mergeLocalizedMessages("es-ES", { library: { allLibraries: "Todas las bibliotecas", noDrafts: "Aún no hay borradores.", noMatchingDrafts: "No hay borradores coincidentes.", recentDrafts: "Borradores recientes", viewAllDrafts: "Ver todos los borradores", draftAsset: "Borrador", addAssets: "Agregar activos", addAssetsDescription: "Cargue material fuente o genere candidatos, luego marque solo los activos que deberían guiar a las generaciones futuras como referencias.", addGenerationKey: "Añade una clave de generación en Ajustes.", addToReferences: "Agregar a referencias", addedToReferences: "Agregado a Referencias.", allAssets: "Todos los activos", allAssetsDescription: "Todos los kits accesibles", alreadyInThisBrandKit: "Ya en este kit de marca.", archiveBrandKit: "Kit de marca de archivo", archiveKitDescription: "Esto elimina el kit de marca de la lista de la Biblioteca. Sus activos e historial de generación permanecen almacenados.", archiveKitTitle: "¿Archivar este kit de marca?", archiving: "Archivando...", assetActions: "Acciones de activos", assetScope: "Alcance del activo", assetView: "Vista de activos", brandKitArchived: "Kit de marca archivado.", buildYourFirstKit: "Construye tu primer kit", buildYourFirstKitDescription: "Comienza desde un preajuste de estilo reutilizable o crea una biblioteca vacía para tus referencias.", candidateActions: "Acciones candidatas", checkingImageLibraries: "Comprobando bibliotecas de imágenes...", checkingUpload: "Comprobando carga", clearAll: "Borrar todo", clearCandidates: "Limpiar candidatos", clearCandidatesDescription: "Limpia la etapa en vivo y elimina los candidatos de borrador no guardados.", clearGeneratedCandidatesDescription: "Esto elimina todos los candidatos no guardados del hilo y elimina las filas de activos generados detrás de ellos. Los activos de biblioteca guardados no se tocan.", clearGeneratedCandidatesTitle: "¿Limpiar candidatos generados?", clearSearch: "Borrar búsqueda", clearing: "Limpiando...", closePreview: "Cerrar vista previa", connectGenerationModels: "Conecta modelos de generación.", copied: "Copiado", copiedPasteInstruction: "Copiado al portapapeles - pégalo en tu chat del agente para usarlo", copy: "Copiar", copyAsset: "Copiar {{title}}", copyPasteInstruction: "Copia el texto a continuación y pégalo en tu chat del agente", copyToClipboard: "Copiar al portapapeles", couldNotAddSelectedToReferences: "No se pudieron agregar los recursos seleccionados a las Referencias.", couldNotAddToReferences: "No se pudo agregar activo a Referencias.", couldNotClearCandidates: "No se pudieron borrar los candidatos.", couldNotCreateFolder: "No se pudo crear la carpeta", couldNotDeleteAsset: "No se pudo eliminar el activo.", couldNotDeleteSelectedAssets: "No se pudieron eliminar los recursos seleccionados.", couldNotDismissCandidate: "No se pudo despedir al candidato.", couldNotPrepareHandoff: "No se pudo preparar el traspaso.", couldNotPrepareImageLibrary: "No se pudo preparar una biblioteca de imágenes", couldNotRemoveSelectedFromReferences: "No se pudieron eliminar los recursos seleccionados de Referencias.", couldNotSaveCandidate: "No se pudo guardar al candidato.", couldNotSaveDraft: "No se pudo guardar el borrador.", createBlankKit: "Crear kit en blanco", createBrandKit: "Crear un kit de marca", createImageLibraryToGenerate: "Crea una biblioteca de imágenes para generar candidatos nuevos.", createLibrary: "Crear biblioteca", defaultKitDescription: "Cargue, genere, describa y organice activos reutilizables entre agentes.", defaultTextPolicy: "Prefiero que no haya texto incrustado. Mantenga cualquier texto solicitado breve y legible.", deleteAssetDescription: "Esto elimina permanentemente el activo del kit de marca. Para mantenerlo en la biblioteca pero dejar de usarlo como referencia, use Eliminar de referencias en su lugar.", deleteAssetTitle: "¿Eliminar activo?", deleteAssetsDescription: "Esto elimina permanentemente los activos seleccionados del kit de marca. Para dejar de usar un activo como referencia pero conservarlo, use Eliminar de referencias en su lugar.", deleteCandidate: "Eliminar candidato", deletedAsset: "Activo eliminado.", deselectAll: "Deseleccionar todo", dismissCandidateTitle: "¿Desestimar a este candidato?", dismissFailed: "Descartar falló", dismissFailedSlotsDescription: "Elimina todas las ranuras fallidas del panel. Los candidatos seleccionados se quedan.", dismissedCandidate: "Candidato destituido.", dismissing: "Descartando...", dropAssetsHere: "Suelta recursos aquí", dropAssetsHereBody: "Cargue material fuente, exportaciones generadas, logotipos, productos o tableros de estilo.", duplicating: "Duplicando...", editBrandKit: "Editar el nombre y la descripción del kit de marca", failed: "Falló", failedCandidate: "candidato fallido", folderNamePlaceholder: "Lanzamiento de campaña", fullSizePreview: "Vista previa a tamaño completo de {{title}}", generateImagePlaceholder: "Generar un recurso de imagen", generatedAsset: "Activo generado", generatedCandidatesTitle: "Candidatos generados", generatingCandidate: "Generando candidato", generatingCandidates: "Generando candidatos...", generationFailed: "Falló la generación de imagen", kitActions: "Acciones del kit de marca", libraryEyebrow: "Activos guardados en esta vista filtrada. Marque aquellos que deberían guiar a las generaciones futuras.", liveSlot: "tragamonedas en vivo", loading: "Cargando activo...", loadingBrandKit: "Cargando kit de marca...", loadingPreset: "Cargando preset...", loadingRequestedPreset: "Cargando el preset solicitado...", mcpImagePicks: "Selecciones de imagen MCP", mcpImagePicksDescription: "Imágenes generadas y seleccionadas desde hosts de chat MCP.", moveTo: "Mover a", newFolder: "Nueva carpeta", newFolderDescription: "Agrupe recursos cargados y generados para una campaña, canal o colección reutilizable.", newFolderEllipsis: "Nueva carpeta...", newKit: "Nuevo kit", nextImage: "Imagen siguiente", noAssetsInLibrary: "Aún no hay recursos de {{mediaLabel}} en esta biblioteca.", noAssetsMatchView: "Ningún recurso coincide con esta vista", noAssetsMatchViewBody: "Pruebe Todos los recursos, una carpeta diferente o una búsqueda más amplia.", noAssetsToShow: "No hay activos para mostrar.", noBrandKit: "Sin kit de marca", noKitsMatch: "Ningún kit coincide con tu búsqueda.", noMatchingAssets: "No hay recursos que coincidan en tus kits.", noMatchingLibraryAssets: "No hay recursos de {{mediaLabel}} que coincidan en esta biblioteca.", noNewAssetsUploaded: "No se cargaron nuevos activos.", noReferencesInView: "No hay referencias en esta vista.", noReferencesInViewBody: "Vuelva a todos los activos y marque a los guardianes como referencias.", noReusableAssets: "Aún no hay activos reutilizables. Selecciona un kit para cargar referencias o generar activos.", openAssets: "Abrir Assets", openChat: "abrir chat", openDetails: "Abrir detalles", preparing: "Preparando...", preparingImageLibrary: "Preparando una biblioteca de imágenes...", preparingImageLibraryCandidates: "Preparando una biblioteca de imágenes para candidatos generados...", previousImage: "Imagen anterior", primaryKitActions: "Acciones principales del kit", privateBrandKitCopyCreated: "Copia del kit de marca privada creada", readyCandidate: "Candidato listo", readyToSave: "Listo para guardar", referencesEyebrow: "Assets actualmente marcado como referencia de generación.", removeFromReferences: "Eliminar de referencias", runHasNoGeneratedAssets: "Esta ejecución no ha generado activos para entregar.", saveTo: "Guardar en...", savedGeneratedAsset: "Activo generado guardado.", savedToLibrary: "Guardado en la Biblioteca.", searchAssets: "Buscar activos", searchKits: "Buscar kits", searchMedia: "Buscar {{mediaLabel}}s", selectAll: "Seleccionar todo", selectAllAssetsInBoard: "Seleccionar todos los activos en este tablero", selectAllVisibleAssets: "Seleccionar todos los activos visibles", selectedAssetSendFailed: "No se pudo enviar el recurso seleccionado al chat", selectionCopied: "Selección copiada", selectionReady: "Selección lista", setupNeeded: "Configuración necesaria", showAll: "Mostrar todo", showPasteText: "Mostrar texto para pegar", starterAssets: "Recursos iniciales", stillRendering: "Aún renderizando", tellAgentUseThis: 'O dile a tu agente cuál, por ejemplo "usa este".', uploadFailed: "Error al subir", uploadTakingLonger: "La carga está tardando más de lo esperado.", uploadTakingLongerDescription: "Es posible que el servidor aún termine de guardar estos recursos. Seguiremos revisando este kit de marca.", useCandidate: "Usar candidato", viewDetails: "Ver detalles", }, root: { commandActions: "Acciones", commandSearch: "Buscar", commandAppearance: "Apariencia", toggleTheme: "Cambiar tema", }, navigation: { create: "Crear", library: "Biblioteca", brandKits: "Kits de marca", auditLog: "Registro de auditoría", settings: "Ajustes", extensions: "Extensiones", openNavigation: "Abrir navegación", expandSidebar: "Expandir barra lateral", collapseSidebar: "Contraer barra lateral", }, settings: { agentTitle: "Gestionar agente", agentDescription: "Gestiona el modelo del agente, claves API, automatizaciones, voz y otros controles.", openAgentSettings: "Gestionar agente", title: "Ajustes", description: "Generación, almacenamiento y acceso a kits de marca.", connections: "Conexiones", connectionsDescription: "Mantén Assets listo para generar, guardar y compartir contenido seguro para la marca. Builder es la ruta más simple; las claves manuales siguen disponibles.", languageTitle: "Idioma", languageDescription: "Elige el idioma de la interfaz para este workspace.", languageLabel: "Idioma de la interfaz", addBuilderGeminiOrOpenAI: "Agregue Builder, Gemini o OpenAI antes de generar nuevos activos.", addGeminiOrOpenAI: "Agregue Gemini o OpenAI antes de generar nuevos activos.", brandKits: "Kits de marca", builderDescriptionDisabled: "Deshabilitado para esta implementación.", builderDescriptionManaged: "Generación y almacenamiento de imágenes gestionados, sin claves de proveedor.", builderDescriptionReady: "Conectado para generación gestionada.", builderManaged: "Builder se encarga de la generación de imágenes administradas.", chooseProvider: "Elige un proveedor", enterValueFirst: "Introduzca un valor primero.", generationNeedsSetup: "Necesita configuración", manualGenerationDescription: "Agregue Gemini para generación de video o OpenAI/Gemini como respaldo de imágenes.", manualGenerationKeys: "Claves de generación manual", manualKeys: "llaves manuales", noManualOptions: "No hay opciones de configuración manual disponibles para este artículo.", objectStorageDescription: "Utilice S3, R2, Spaces, Tigris, MinIO u otro proveedor compatible.", objectStorage: "Almacenamiento de objetos", saveFailed: "Error al guardar", saveKey: "Guardar clave", saveSettings: "Guardar configuración", setupDescription: "Dos elementos esenciales: generación y almacenamiento duradero.", setupTitle: "Configuración Assets", storageNeedsSetup: "Agregue almacenamiento compatible con S3 para activos de producción y exportaciones.", storageReady: "Los originales, las miniaturas, los vídeos y las exportaciones tienen un hogar duradero.", }, chat: { emptyState: "Describe el recurso que quieres crear", suggestionBlogHeroes: "Genera 3 héroes de blog con este kit de marca", suggestionProductVideo: "Crea un video de presentación de 8 segundos", suggestionReferenceStyle: "Iguala el estilo de mis recursos de referencia", chats: "Chats", newChat: "Nuevo chat", newAssetsChat: "Nuevo chat de Assets", renameChat: "Renombrar chat", pinChat: "Fijar chat", unpinChat: "Desfijar chat", copyShareLink: "Copiar enlace", archiveChat: "Archivar chat", archiveFailed: "No se pudo archivar el chat.", renameFailed: "No se pudo renombrar el chat.", shareLinkFailed: "No se pudo crear un enlace para compartir.", shareLinkCopied: "Enlace del chat copiado.", shareLinkReady: "Enlace del chat listo.", optionsFor: "Opciones de chat para {{title}}", }, create: { imageModel: "Modelo de imagen", modelBestQuality: "mejor calidad", modelFast: "rápido", emptyState: "Pregunta a Assets qué crear.", composerPlaceholder: "Describe el recurso - adjunta imágenes o contexto con +", heroTitle: "¿Qué recurso creamos?", heroDescription: "Empieza con una imagen principal, presentación de producto, edición de referencia o una dirección para explorar.", starters: { image: "imagen", video: "video", refine: "refinar" }, }, assetPicker: { starterAssets: "Recursos iniciales", generatedCandidates_one: "Se generó {{count}} candidato de imagen", generatedCandidates_many: "Se generaron {{count}} candidatos de imagen", generatedCandidates_other: "Se generaron {{count}} candidatos de imagen", failedCandidates_one: "{{count}} candidato falló.", failedCandidates_many: "{{count}} candidatos fallaron.", failedCandidates_other: "{{count}} candidatos fallaron.", pickCandidate: "Elige el que quieres enviar de vuelta.", noUsableCandidates: "La generación de imagen terminó sin candidatos utilizables.", generationFailed: "Falló la generación de imagen", selectionCopied: "Selección copiada", selectionReady: "Selección lista", selectedAsset: "{{title}} seleccionado", sendBackFailed: "No se pudo enviar el recurso seleccionado al chat", mcpImagePicks: "Selecciones de imagen MCP", mcpImagePicksDescription: "Imágenes generadas y seleccionadas desde hosts de chat MCP.", prepareLibraryFailed: "No se pudo preparar una biblioteca de imágenes", addGenerationKey: "Añade una clave de generación en Ajustes.", connectGenerationModels: "Conecta modelos de generación.", loadingPreset: "Cargando preset...", setupNeeded: "Configuración necesaria", preparing: "Preparando...", generatingCandidates: "Generando candidatos...", checkingLibraries: "Comprobando bibliotecas de imágenes...", preparingImageLibrary: "Preparando una biblioteca de imágenes...", loadingRequestedPreset: "Cargando el preset solicitado...", openAssets: "Abrir Assets", generatePlaceholder: "Generar un recurso de imagen", candidateCount: "Cantidad de candidatos", preparingGeneratedLibrary: "Preparando una biblioteca de imágenes para candidatos generados...", createLibraryForCandidates: "Crea una biblioteca de imágenes para generar candidatos nuevos.", createLibrary: "Crear biblioteca", copied: "Copiado", copy: "Copiar", copiedHelp: "Copiado al portapapeles. Pégalo en tu chat de agente para usarlo, o dile al agente cuál usar, por ejemplo: usa este.", copyHelp: "Copia el texto de abajo y pégalo en tu chat de agente, o dile al agente cuál usar, por ejemplo: usa este.", showPasteText: "Mostrar texto para pegar", searchMedia: "Buscar {{media}}s", noMatchingAssets: "No hay recursos de {{media}} que coincidan en esta biblioteca.", noAssetsYet: "Aún no hay recursos de {{media}} en esta biblioteca.", openAsset: "Abrir {{title}}", copyAsset: "Copiar {{title}}", copyToClipboard: "Copiar al portapapeles", fullSizePreview: "Vista previa a tamaño completo de {{title}}", closePreview: "Cerrar vista previa", previousImage: "Imagen anterior", nextImage: "Imagen siguiente", }, brandKitDetail: brandKitDetailEsES, brandKits: { createDialogTitle: "Nuevo kit de marca", createDialogDescription: "Empieza con un preset de estilo integrado o crea un kit de marca vacío para tus propias referencias.", startFromPreset: "Empezar con un preset de estilo", startFromPresetDescription: "Crea un kit de marca editable con guía de generación integrada.", titlePlaceholder: "Héroes de blog de ingeniería", descriptionPlaceholder: "Ilustraciones editoriales oscuras, fragmentos de UI de producto, paleta sobria.", instructionsPlaceholder: "Mantén siempre la UI del producto legible, evita texto literal salvo que se pida y prefiere composiciones editoriales tranquilas.", editDialogTitle: "Editar kit de marca", updated: "Kit de marca actualizado", updateFailed: "No se pudo actualizar el kit de marca", namePlaceholder: "Nombre del kit de marca", editDescriptionPlaceholder: "Describe la dirección visual o el contenido de este kit de marca.", noDescriptionYet: "Sin descripción todavía", instructions: "Instrucciones", refsCount: "{{count}} refs", assetsCount: "{{count}} recursos", videosCount: "{{count}} videos", createAsset: "Crear activo", description: "Organice referencias, recursos generados, carpetas y guías de estilo reutilizables.", duplicateCreated: "Copia del kit de marca privada creada", duplicateFailed: "No se pudo duplicar el kit de marca.", emptyDescription: "Comience con un kit de marca de estilo predeterminado o cree sus propias referencias y guías de estilo.", emptyTitle: "Aún no hay kits de marca", newBrandKitLower: "equipo nuevo de marca", newBrandKit: "Nuevo equipo de marca", presetCreateFailed: "No se pudo crear el kit de marca preestablecido.", searchPlaceholder: "Buscar kits de marca", title: "Kits de marca", yourBrandKitsDescription: "Referencias de marca, imágenes de productos, vídeos, diagramas y candidatos generados que otros agentes pueden reutilizar.", yourBrandKits: "Kits de tu marca", }, routeTitles: { library: "Biblioteca - Assets", generationPreset: "Preajuste de generación - Assets", brandKits: "Kits de marca - Assets", extension: "Extensión - Assets", extensions: "Extensiones - Assets", team: "Equipo - Assets", }, team: { title: "Equipo", createOrgDescription: "Configura un equipo para compartir kits de marca y activos generados con tus colegas.", }, assetDetail: { backToLibrary: "volver a la biblioteca", brandKit: "Kit de marca", continueRefining: "Continúe refinando este activo.", copiedPrompt: "mensaje copiado", copiedUrl: "Copiado URL", copyFailed: "No se pudo copiar al portapapeles.", copyUrl: "Copiar URL", deleteDescription: "Esto elimina el activo de la biblioteca. Las exportaciones existentes que ya utilizan este URL pueden dejar de procesarse.", deleteTitle: "¿Eliminar activo?", downloadFailed: "No se pudo descargar el activo.", loading: "Cargando activo...", makeVariations: "hacer variaciones", makeVideoVariation: "Hacer variación de video", noDescription: "No hay descripción almacenada", noPrompt: "No hay mensaje almacenado", previewUnavailable: "Vista previa no disponible", refineInstruction: "Pregunte qué debería cambiar, luego refine esta imagen activa y muestre la nueva vista previa.", unavailableDescription: "Es posible que esta imagen generada se haya borrado antes de guardarla o que el enlace apunte a un recurso al que ya no tiene acceso.", unavailableTitle: "Activo no disponible", videoAsset: "Activo de vídeo", }, audit: { title: "Registro de auditoría", ownerOnlyFallback: "Alternativa solo del propietario", orgWide: "Toda la organización", ownerScopedDescription: "No se detectó contexto de organización, así que esta vista se limita a las ejecuciones que tú activaste. Los administradores de la organización ven todo el feed de auditoría.", orgScopedDescription: "Viendo datos de auditoría de toda la organización. Esta vista es solo para revisión de gobernanza - cada generación del workspace aparece abajo.", exporting: "Exportando...", exportCsv: "Exportar CSV", dateFrom: "Fecha desde", dateTo: "Fecha hasta", ownerEmail: "Email del propietario", promptSearch: "Buscar prompt", model: "Modelo", allModels: "Todos los modelos", status: "Estado", allStatuses: "Todos los estados", source: "Origen", allSources: "Todos los orígenes", callingApp: "App llamadora (A2A)", clearFilters: "Borrar filtros", when: "Cuándo", owner: "Propietario", brandKit: "Kit de marca", prompt: "Prompt", savedTotal: "Guardados / Total", runSummary: "Ejecución {{id}}... · {{time}}", videoBadge: "{{duration}} s · {{resolution}}", byOwner: "por {{email}}", userPrompt: "Prompt del usuario", compiledPrompt: "Prompt compilado", failed: "Falló", parentRun: "Ejecución padre (origen del refinamiento)", referencesCount: "Referencias ({{count}})", generatedChildrenCount: "Elementos generados ({{count}})", noChildrenProduced: "No se produjeron elementos.", openBrandKit: "Abrir kit de marca ->", viaCaller: "vía {{caller}}", noRunsMatch: "Ninguna ejecución coincide con estos filtros", noRunsDescription: "Prueba ampliar el intervalo de fechas o borrar filtros. Las ejecuciones de los últimos 90 días suelen ser un buen punto de partida.", loadFailed: "No se pudo cargar el registro de auditoría", unknownError: "Error desconocido. Intenta actualizar.", adminOnlyTitle: "El registro de auditoría es solo para administradores", adminOnlyDescription: "Solo los administradores de la organización pueden ver el registro de auditoría. Si crees que deberías tener acceso, pide a un propietario que actualice tu rol.", secondsAgo: "hace {{count}} s", minutesAgo: "hace {{count}} min", hoursAgo: "hace {{count}} h", daysAgo: "hace {{count}} d", }, }), "fr-FR": mergeLocalizedMessages("fr-FR", { library: { allLibraries: "Toutes les bibliothèques", noDrafts: "Aucun brouillon pour l'instant.", noMatchingDrafts: "Aucun brouillon correspondant.", recentDrafts: "Brouillons récents", viewAllDrafts: "Voir tous les brouillons", draftAsset: "Brouillon", addAssets: "Ajouter des éléments", addAssetsDescription: "Téléchargez le matériel source ou générez des candidats, puis marquez uniquement les atouts qui devraient guider les générations futures comme références.", addGenerationKey: "Ajoutez une clé de génération dans Paramètres.", addToReferences: "Ajouter aux références", addedToReferences: "Ajouté aux références.", allAssets: "Tous les actifs", allAssetsDescription: "Tous les kits accessibles", alreadyInThisBrandKit: "Déjà dans ce kit de marque.", archiveBrandKit: "Kit de marque d'archives", archiveKitDescription: "Ceci supprime le kit de marque de la liste de la Bibliothèque. Ses actifs et l'historique de génération restent stockés.", archiveKitTitle: "Archiver ce kit de marque ?", archiving: "Archivage...", assetActions: "Actions sur les actifs", assetScope: "Portée de l'actif", assetView: "Vue des actifs", brandKitArchived: "Kit de marque archivé.", buildYourFirstKit: "Construisez votre premier kit", buildYourFirstKitDescription: "Commencez par un préréglage de style réutilisable ou créez une bibliothèque vide pour vos références.", candidateActions: "Actions des candidats", checkingImageLibraries: "Vérification des bibliothèques d'images...", checkingUpload: "Vérification du téléchargement", clearAll: "Tout effacer", clearCandidates: "Effacer les candidats", clearCandidatesDescription: "Efface l'étape en direct et supprime les candidats de brouillon non enregistrés.", clearGeneratedCandidatesDescription: "Ceci supprime tous les candidats non enregistrés du fil et supprime les lignes d'actifs générés derrière eux. Les actifs de bibliothèque enregistrés ne sont pas affectés.", clearGeneratedCandidatesTitle: "Effacer les candidats générés ?", clearSearch: "Effacer la recherche", clearing: "Dégagement...", closePreview: "Fermer l'aperçu", connectGenerationModels: "Connectez les modèles de génération.", copiedPasteInstruction: "Copié dans votre presse-papiers - collez-le dans votre chat d'agent pour l'utiliser", copyPasteInstruction: "Copiez le texte ci-dessous et collez-le dans votre chat d'agent", copyToClipboard: "Copier dans le presse-papiers", couldNotAddSelectedToReferences: "Impossible d'ajouter les éléments sélectionnés aux références.", couldNotAddToReferences: "Impossible d'ajouter un élément aux références.", couldNotClearCandidates: "Impossible d'effacer les candidats.", couldNotCreateFolder: "Impossible de créer le dossier", couldNotDeleteAsset: "Impossible de supprimer l'élément.", couldNotDeleteSelectedAssets: "Impossible de supprimer les éléments sélectionnés.", couldNotDismissCandidate: "Impossible de renvoyer le candidat.", couldNotPrepareHandoff: "Impossible de préparer le transfert.", couldNotPrepareImageLibrary: "Impossible de préparer une bibliothèque d'images", couldNotRemoveSelectedFromReferences: "Impossible de supprimer les éléments sélectionnés des références.", couldNotSaveCandidate: "Impossible d'enregistrer le candidat.", couldNotSaveDraft: "Impossible d'enregistrer le brouillon.", createBlankKit: "Créer un kit vierge", createBrandKit: "Créer un kit de marque", createImageLibraryToGenerate: "Créez une bibliothèque d'images pour générer de nouveaux candidats.", createLibrary: "Créer une bibliothèque", defaultKitDescription: "Téléchargez, générez, décrivez et organisez des actifs réutilisables entre les agents.", defaultTextPolicy: "Ne préférez pas de texte intégré. Gardez tout texte demandé court et lisible.", deleteAssetDescription: "Cela supprime définitivement l’actif du kit de marque. Pour le conserver dans la bibliothèque mais cesser de l’utiliser comme référence, utilisez plutôt Remove from References.", deleteAssetTitle: "Supprimer l'actif ?", deleteAssetsDescription: "Cela supprime définitivement les éléments sélectionnés du kit de marque. Pour cesser d’utiliser un actif comme référence mais le conserver, utilisez plutôt Remove from References.", deleteCandidate: "Supprimer le candidat", deletedAsset: "Actif supprimé.", deselectAll: "Tout désélectionner", dismissCandidateTitle: "Écarter ce candidat ?", dismissFailed: "Échec du rejet", dismissFailedSlotsDescription: "Supprime chaque emplacement défaillant du panneau. Les candidats retenus restent.", dismissedCandidate: "Candidat licencié.", dismissing: "Rejeter...", dropAssetsHere: "Déposez les éléments ici", dropAssetsHereBody: "Téléchargez le matériel source, les exportations générées, les logos, les produits ou les tableaux de style.", duplicating: "Duplication...", editBrandKit: "Modifier le nom et la description du kit de marque", failed: "Échec", failedCandidate: "Candidat échoué", folderNamePlaceholder: "Lancement de la campagne", generateImagePlaceholder: "Générer un asset image", generatedAsset: "Actif généré", generatedCandidatesTitle: "Candidats générés", generatingCandidate: "Générer un candidat", generatingCandidates: "Générer des candidats...", generationFailed: "La génération d'image a échoué", kitActions: "Actions du kit de marque", libraryEyebrow: "Actifs enregistrés dans cette vue filtrée. Marquez ceux qui devraient guider les générations futures.", liveSlot: "Machine à sous en direct", loading: "Chargement de l'élément...", loadingBrandKit: "Chargement du kit de marque...", loadingPreset: "Chargement du préréglage...", loadingRequestedPreset: "Chargement du préréglage demandé...", mcpImagePicks: "Sélection d'images MCP", mcpImagePicksDescription: "Images générées et sélectionnées à partir des hôtes de discussion MCP.", moveTo: "Déplacer vers", newFolder: "Nouveau dossier", newFolderDescription: "Regroupez les ressources téléchargées et générées pour une campagne, un canal ou une collection réutilisable.", newFolderEllipsis: "Nouveau dossier...", newKit: "Nouveau kit", nextImage: "Image suivante", noAssetsMatchView: "Aucun actif ne correspond à cette vue", noAssetsMatchViewBody: "Essayez Tous les éléments, un autre dossier ou une recherche plus large.", noAssetsToShow: "Aucun atout à montrer.", noBrandKit: "Pas de kit de marque", noKitsMatch: "Aucun kit ne correspond à votre recherche.", noMatchingAssets: "Aucun élément correspondant dans vos kits.", noNewAssetsUploaded: "Aucune nouvelle ressource n'a été téléchargée.", noReferencesInView: "Aucune référence dans cette vue", noReferencesInViewBody: "Revenez à tous les actifs et marquez les gardiens comme références.", noReusableAssets: "Aucun actif réutilisable pour l'instant. Sélectionnez un kit pour télécharger des références ou générer des actifs.", openAssets: "Ouvrir Assets", openChat: "Ouvrir le chat", openDetails: "Ouvrir les détails", preparing: "Préparation...", preparingImageLibrary: "Préparation d'une bibliothèque d'images...", preparingImageLibraryCandidates: "Préparation d'une bibliothèque d'images pour les candidats générés...", previousImage: "Image précédente", primaryKitActions: "Actions principales du kit", privateBrandKitCopyCreated: "Copie du kit de marque privée créée", readyCandidate: "Candidat prêt", readyToSave: "Prêt à enregistrer", referencesEyebrow: "Assets actuellement marqué pour référence de génération.", removeFromReferences: "Supprimer des références", runHasNoGeneratedAssets: "Cette exécution n'a pas généré d'actifs à transférer.", saveTo: "Enregistrer dans...", savedGeneratedAsset: "Actif généré enregistré.", savedToLibrary: "Enregistré dans la Bibliothèque.", searchAssets: "Rechercher des ressources", searchKits: "Rechercher des kits", selectAll: "Tout sélectionner", selectAllAssetsInBoard: "Sélectionnez tous les actifs de ce tableau", selectAllVisibleAssets: "Sélectionnez tous les éléments visibles", selectedAssetSendFailed: "Impossible de renvoyer l'élément sélectionné pour discuter", selectionCopied: "Sélection copiée", selectionReady: "Sélection prête", setupNeeded: "Configuration nécessaire", showAll: "Afficher tout", showPasteText: "Afficher le texte à coller", starterAssets: "Assets de démarrage", stillRendering: "Toujours en cours de rendu", tellAgentUseThis: "Ou dites à votre agent lequel, par exemple « utilisez celui-ci ».", uploadFailed: "Échec du téléchargement", uploadTakingLonger: "Le téléchargement prend plus de temps que prévu.", uploadTakingLongerDescription: "Le serveur peut encore terminer la sauvegarde de ces actifs. Nous continuerons à vérifier ce kit de marque.", useCandidate: "Utiliser le candidat", viewDetails: "Afficher les détails", }, root: { commandActions: "Actions", commandSearch: "Rechercher", commandAppearance: "Apparence", toggleTheme: "Changer de thème", }, navigation: { create: "Créer", library: "Bibliothèque", brandKits: "Kits de marque", auditLog: "Journal d'audit", settings: "Paramètres", extensions: "Extensions", openNavigation: "Ouvrir la navigation", expandSidebar: "Développer la barre latérale", collapseSidebar: "Réduire la barre latérale", }, settings: { agentTitle: "Gérer l’agent", agentDescription: "Gérez le modèle de l’agent, les clés API, les automatisations, la voix et les autres contrôles.", openAgentSettings: "Gérer l’agent", title: "Paramètres", description: "Génération d'assets, stockage et accès aux kits de marque.", connections: "Connexions", connectionsDescription: "Gardez Assets prêt à générer, enregistrer et partager des médias conformes à la marque. Builder est le chemin le plus simple; les clés manuelles restent disponibles.", languageTitle: "Langue", languageDescription: "Choisissez la langue de l'interface pour cet espace Assets.", languageLabel: "Langue de l'interface", addBuilderGeminiOrOpenAI: "Ajoutez Builder, Gemini ou OpenAI avant de générer de nouveaux actifs.", addGeminiOrOpenAI: "Ajoutez Gemini ou OpenAI avant de générer de nouveaux actifs.", brandKits: "Kits de marque", builderDescriptionDisabled: "Désactivé pour ce déploiement.", builderDescriptionManaged: "Génération et stockage d'images gérés, pas de clés de fournisseur.", builderDescriptionReady: "Connecté pour une génération gérée.", builderManaged: "Builder gère la génération d'images gérées.", chooseProvider: "Choisissez un fournisseur", enterValueFirst: "Entrez d'abord une valeur.", generationNeedsSetup: "Nécessite une configuration", manualGenerationDescription: "Ajoutez Gemini pour la génération vidéo, ou OpenAI/Gemini comme images de secours.", manualGenerationKeys: "Clés de génération manuelle", manualKeys: "Clés manuelles", noManualOptions: "Aucune option de configuration manuelle n'est disponible pour cet élément.", objectStorageDescription: "Utilisez S3, R2, Spaces, Tigris, MinIO ou un autre fournisseur compatible.", objectStorage: "Stockage d'objets", saveFailed: "Échec de l'enregistrement", saveKey: "Enregistrer la clé", saveSettings: "Enregistrer les paramètres", setupDescription: "Deux incontournables : la génération et le stockage durable.", setupTitle: "Configuration Assets", storageNeedsSetup: "Ajoutez un stockage compatible S3 pour les actifs de production et les exportations.", storageReady: "Les originaux, les miniatures, les vidéos et les exportations ont un emplacement durable.", }, chat: { emptyState: "Décrivez l'asset que vous voulez créer", suggestionBlogHeroes: "Génère 3 visuels hero de blog avec ce kit", suggestionProductVideo: "Crée une vidéo produit de 8 secondes", suggestionReferenceStyle: "Aligne le style sur mes assets de référence", chats: "Chats", newChat: "Nouveau chat", newAssetsChat: "Nouveau chat Assets", renameChat: "Renommer le chat", pinChat: "Épingler le chat", unpinChat: "Désépingler le chat", copyShareLink: "Copier le lien", archiveChat: "Archiver le chat", archiveFailed: "Impossible d'archiver le chat.", renameFailed: "Impossible de renommer le chat.", shareLinkFailed: "Impossible de créer un lien de partage.", shareLinkCopied: "Lien de chat copié.", shareLinkReady: "Lien de chat prêt.", optionsFor: "Options du chat pour {{title}}", }, create: { imageModel: "Modèle d'image", modelBestQuality: "meilleure qualité", modelFast: "rapide", emptyState: "Demandez à Assets quoi créer.", composerPlaceholder: "Décrivez l'asset - joignez images ou contexte avec +", heroTitle: "Quel asset devons-nous créer ?", heroDescription: "Commencez par une image hero, une révélation produit, une édition de référence ou une direction à explorer.", starters: { image: "image", video: "vidéo", refine: "affiner" }, }, assetPicker: { generatedCandidates_one: "{{count}} candidat image généré", generatedCandidates_many: "{{count}} candidats image générés", generatedCandidates_other: "{{count}} candidats image générés", failedCandidates_one: "{{count}} candidat a échoué.", failedCandidates_many: "{{count}} candidats ont échoué.", failedCandidates_other: "{{count}} candidats ont échoué.", starterAssets: "Assets de démarrage", candidateCount: "Nombre de candidats", closePreview: "Fermer l'aperçu", copyToClipboard: "Copier dans le presse-papiers", createLibrary: "Créer une bibliothèque", generatePlaceholder: "Générer un asset image", nextImage: "Image suivante", previousImage: "Image précédente", selectionCopied: "Sélection copiée", selectionReady: "Sélection prête", showPasteText: "Afficher le texte à coller", addGenerationKey: "Ajoutez une clé de génération dans Paramètres.", checkingLibraries: "Vérification des bibliothèques d'images...", connectGenerationModels: "Connectez les modèles de génération.", copiedHelp: "Copié dans votre presse-papiers. Collez-le dans le chat de votre agent pour l'utiliser, ou dites simplement à votre agent lequel, par exemple : utilisez ceci.", copyHelp: "Copiez le texte ci-dessous et collez-le dans le chat de votre agent, ou dites simplement à votre agent lequel, par exemple : utilisez ceci.", createLibraryForCandidates: "Créez une bibliothèque d'images pour générer de nouveaux candidats.", generatingCandidates: "Générer des candidats...", generationFailed: "La génération d'image a échoué", loadingPreset: "Chargement du préréglage...", loadingRequestedPreset: "Chargement du préréglage demandé...", mcpImagePicksDescription: "Images générées et sélectionnées à partir des hôtes de discussion MCP.", mcpImagePicks: "Sélection d'images MCP", noUsableCandidates: "Génération d'images terminée sans candidats utilisables.", openAssets: "Ouvrir Assets", pickCandidate: "Choisissez celui que vous souhaitez renvoyer.", prepareLibraryFailed: "Impossible de préparer une bibliothèque d'images", preparingGeneratedLibrary: "Préparation d'une bibliothèque d'images pour les candidats générés...", preparingImageLibrary: "Préparation d'une bibliothèque d'images...", preparing: "Préparation...", sendBackFailed: "Impossible de renvoyer l'élément sélectionné pour discuter", setupNeeded: "Configuration nécessaire", }, brandKitDetail: brandKitDetailFrFR, brandKits: { createAsset: "Créer un actif", createDialogDescription: "Partez d'un style prédéfini intégré ou créez un kit de marque vierge pour vos propres références.", createDialogTitle: "Kit nouvelle marque", descriptionPlaceholder: "Illustrations éditoriales sombres, fragments de produit UI, palette restreinte.", description: "Organisez les références, les ressources générées, les dossiers et les conseils de style réutilisables.", duplicateCreated: "Copie du kit de marque privée créée", duplicateFailed: "Impossible de dupliquer le kit de marque.", editDescriptionPlaceholder: "Décrivez l'orientation visuelle ou le contenu de ce kit de marque.", editDialogTitle: "Modifier le kit de marque", emptyDescription: "Commencez avec un kit de marque de style par défaut ou créez vos propres références et conseils de style.", emptyTitle: "Pas encore de kits de marque", instructionsPlaceholder: "Gardez toujours le produit UI lisible, évitez le texte littéral sauf demande, préférez les compositions éditoriales calmes.", namePlaceholder: "Nom du kit de marque", newBrandKitLower: "Kit nouvelle marque", newBrandKit: "Kit nouvelle marque", noDescriptionYet: "Pas encore de description", presetCreateFailed: "Impossible de créer un kit de marque prédéfini.", searchPlaceholder: "Rechercher des kits de marque", startFromPresetDescription: "Créez un kit de marque modifiable avec des conseils de génération intégrés.", startFromPreset: "Commencer à partir d'un style prédéfini", titlePlaceholder: "Héros du blog d'ingénierie", title: "Kits de marque", updateFailed: "Échec de la mise à jour du kit de marque", updated: "Kit de marque mis à jour", yourBrandKitsDescription: "Références de marque, images de produits, vidéos, diagrammes et candidats générés que d'autres agents peuvent réutiliser", yourBrandKits: "Vos kits de marque", }, routeTitles: { library: "Bibliothèque - Assets", generationPreset: "Préréglage de génération - Assets", brandKits: "Kits de marque - Assets", extension: "Module d’extension - Assets", extensions: "Modules d’extension - Assets", team: "Équipe - Assets", }, team: { title: "Équipe", createOrgDescription: "Configurez une équipe pour partager les kits de marque et les ressources générées avec vos collègues.", }, assetDetail: { backToLibrary: "Retour à la bibliothèque", brandKit: "Trousse de marque", continueRefining: "Continuez à affiner cet actif.", copiedPrompt: "Invite copiée", copiedUrl: "Copié URL", copyFailed: "Impossible de copier dans le presse-papiers.", copyUrl: "Copier URL", deleteDescription: "Cela supprime l'actif de la bibliothèque. Les exportations existantes qui utilisent déjà ce URL peuvent arrêter le rendu.", deleteTitle: "Supprimer l'élément ?", downloadFailed: "Impossible de télécharger l'élément.", loading: "Chargement de l'élément...", makeVariations: "Faire des variantes", makeVideoVariation: "Faire une variation vidéo", noDescription: "Aucune description stockée", noPrompt: "Aucune invite stockée", previewUnavailable: "Aperçu indisponible", refineInstruction: "Demandez ce qui devrait changer, puis affinez cette image active et affichez le nouvel aperçu.", unavailableDescription: "Cette image générée peut avoir été effacée avant d'être enregistrée, ou le lien peut pointer vers un actif auquel vous n'avez plus accès.", unavailableTitle: "Actif indisponible", videoAsset: "Actif vidéo", }, audit: { title: "Journal d'audit", ownerOnlyFallback: "Repli limité au propriétaire", orgWide: "Toute l'organisation", ownerScopedDescription: "Aucun contexte d'organisation détecté : cette vue est limitée aux exécutions que vous avez déclenchées. Les admins d'organisation voient tout le flux d'audit.", orgScopedDescription: "Affichage des données d'audit de toute l'organisation. Cette vue sert uniquement à la gouvernance - chaque génération du workspace est listée ci-dessous.", exporting: "Exportation...", exportCsv: "Exporter le CSV", dateFrom: "Date de début", dateTo: "Date de fin", ownerEmail: "E-mail du propriétaire", promptSearch: "Recherche de prompt", model: "Modèle", allModels: "Tous les modèles", status: "Statut", allStatuses: "Tous les statuts", source: "Source", allSources: "Toutes les sources", callingApp: "Application appelante (A2A)", clearFilters: "Effacer les filtres", when: "Quand", owner: "Propriétaire", brandKit: "Kit de marque", prompt: "Prompt", savedTotal: "Enregistrés / Total", runSummary: "Exécution {{id}}... · {{time}}", videoBadge: "{{duration}} s · {{resolution}}", byOwner: "par {{email}}", userPrompt: "Prompt utilisateur", compiledPrompt: "Prompt compilé", failed: "Échec", parentRun: "Exécution parente (source du raffinement)", referencesCount: "Références ({{count}})", generatedChildrenCount: "Enfants générés ({{count}})", noChildrenProduced: "Aucun enfant généré.", openBrandKit: "Ouvrir le kit de marque ->", viaCaller: "via {{caller}}", noRunsMatch: "Aucune exécution ne correspond à ces filtres", noRunsDescription: "Essayez d'élargir la période ou d'effacer les filtres. Les générations des 90 derniers jours sont souvent un bon point de départ.", loadFailed: "Impossible de charger le journal d'audit", unknownError: "Erreur inconnue. Essayez d'actualiser.", adminOnlyTitle: "Le journal d'audit est réservé aux admins", adminOnlyDescription: "Seuls les admins d'organisation peuvent voir le journal d'audit. Si vous pensez devoir y accéder, demandez à un propriétaire de modifier votre rôle.", secondsAgo: "il y a {{count}} s", minutesAgo: "il y a {{count}} min", hoursAgo: "il y a {{count}} h", daysAgo: "il y a {{count}} j", }, }), "de-DE": mergeLocalizedMessages("de-DE", { library: { allLibraries: "Alle Bibliotheken", noDrafts: "Noch keine Entwürfe.", noMatchingDrafts: "Keine passenden Entwürfe.", recentDrafts: "Letzte Entwürfe", viewAllDrafts: "Alle Entwürfe anzeigen", draftAsset: "Entwurf", addAssets: "Assets hinzufügen", addAssetsDescription: "Laden Sie Quellmaterial hoch oder generieren Sie Kandidaten und markieren Sie dann nur die Assets, die künftigen Generationen als Referenz dienen sollen.", addGenerationKey: "Füge in den Einstellungen einen Generierungsschlüssel hinzu.", addToReferences: "Zu Referenzen hinzufügen", addedToReferences: "Zu den Referenzen hinzugefügt.", allAssets: "Alle Vermögenswerte", allAssetsDescription: "Alle zugänglichen Kits", alreadyInThisBrandKit: "Bereits in diesem Markenkit.", archiveBrandKit: "Archivmarken-Kit", archiveKitDescription: "Dies entfernt das Brand-Kit aus der Bibliotheksliste. Seine Assets und der Generierungsverlauf bleiben gespeichert.", archiveKitTitle: "Dieses Markenkit archivieren?", archiving: "Archivierung...", assetActions: "Asset-Aktionen", assetScope: "Asset-Bereich", assetView: "Asset-Ansicht", brandKitArchived: "Markenkit archiviert.", buildYourFirstKit: "Baue dein erstes Kit", buildYourFirstKitDescription: "Starten Sie von einer wiederverwendbaren Stilvorlage oder erstellen Sie eine leere Bibliothek für Ihre eigenen Referenzen.", candidateActions: "Kandidatenaktionen", checkingImageLibraries: "Bildbibliotheken werden geprüft...", checkingUpload: "Upload wird überprüft", clearAll: "Alles löschen", clearCandidates: "Kandidaten löschen", clearCandidatesDescription: "Löscht die Live-Phase und entfernt nicht gespeicherte Entwurfskandidaten.", clearGeneratedCandidatesDescription: "Dies entfernt alle nicht gespeicherten Kandidaten aus dem Thread und löscht die dahinter stehenden generierten Asset-Zeilen. Gespeicherte Bibliotheks-Assets werden nicht berührt.", clearGeneratedCandidatesTitle: "Generierte Kandidaten löschen?", clearSearch: "Suche löschen", clearing: "Löschen...", closePreview: "Vorschau schließen", connectGenerationModels: "Generierungsmodelle verbinden.", copiedPasteInstruction: "In die Zwischenablage kopiert - Einfügen Sie es in Ihren Agent-Chat, um es zu verwenden", copyPasteInstruction: "Kopieren Sie den Text unten und fügen Sie ihn in Ihren Agent-Chat ein", copyToClipboard: "In die Zwischenablage kopieren", couldNotAddSelectedToReferences: "Ausgewählte Assets konnten nicht zu Referenzen hinzugefügt werden.", couldNotAddToReferences: "Asset konnte nicht zu Referenzen hinzugefügt werden.", couldNotClearCandidates: "Kandidaten konnten nicht gelöscht werden.", couldNotCreateFolder: "Ordner konnte nicht erstellt werden", couldNotDeleteAsset: "Asset konnte nicht gelöscht werden.", couldNotDeleteSelectedAssets: "Die ausgewählten Assets konnten nicht gelöscht werden.", couldNotDismissCandidate: "Der Kandidat konnte nicht entlassen werden.", couldNotPrepareHandoff: "Übergabe konnte nicht vorbereitet werden.", couldNotPrepareImageLibrary: "Bildbibliothek konnte nicht vorbereitet werden", couldNotRemoveSelectedFromReferences: "Die ausgewählten Assets konnten nicht aus den Referenzen entfernt werden.", couldNotSaveCandidate: "Der Kandidat konnte nicht gespeichert werden.", couldNotSaveDraft: "Entwurf konnte nicht gespeichert werden.", createBlankKit: "Leeres Kit erstellen", createBrandKit: "Brand-Kit erstellen", createImageLibraryToGenerate: "Erstelle eine Bildbibliothek, um neue Kandidaten zu generieren.", createLibrary: "Bibliothek erstellen", defaultKitDescription: "Laden Sie wiederverwendbare Assets agentenübergreifend hoch, generieren, beschreiben und organisieren Sie sie.", defaultTextPolicy: "Bevorzugen Sie keinen eingebetteten Text. Halten Sie den gewünschten Text kurz und lesbar.", deleteAssetDescription: "Dadurch wird das Asset dauerhaft aus dem Markenkit entfernt. Um es in der Bibliothek zu behalten, es aber nicht mehr als Referenz zu verwenden, verwenden Sie stattdessen „Aus Referenzen entfernen“.", deleteAssetTitle: "Asset löschen?", deleteAssetsDescription: "Dadurch werden die ausgewählten Assets dauerhaft aus dem Markenkit entfernt. Um ein Asset nicht mehr als Referenz zu verwenden, es aber beizubehalten, verwenden Sie stattdessen „Aus Referenzen entfernen“.", deleteCandidate: "Kandidat löschen", deletedAsset: "Gelöschtes Asset.", deselectAll: "Alle abwählen", dismissCandidateTitle: "Diesen Kandidaten abweisen?", dismissFailed: "Entlassung fehlgeschlagen", dismissFailedSlotsDescription: "Entfernt jeden fehlerhaften Steckplatz aus dem Panel. Erfolgreiche Kandidaten bleiben.", dismissedCandidate: "Kandidat entlassen.", dismissing: "Entlassen...", dropAssetsHere: "Legen Sie Vermögenswerte hier ab", dropAssetsHereBody: "Laden Sie Quellmaterial, generierte Exporte, Logos, Produkte oder Styleboards hoch.", duplicating: "Duplizieren...", editBrandKit: "Bearbeiten Sie den Namen und die Beschreibung des Marken-Kits", failed: "Fehlgeschlagen", failedCandidate: "Kandidat gescheitert", folderNamePlaceholder: "Kampagnenstart", fullSizePreview: "Vorschau von {{title}} in voller Größe", generateImagePlaceholder: "Bild-Asset generieren", generatedAsset: "Generiertes Asset", generatedCandidatesTitle: "Generierte Kandidaten", generatingCandidate: "Kandidaten generieren", generatingCandidates: "Kandidaten werden generiert...", generationFailed: "Bildgenerierung fehlgeschlagen", kitActions: "Markenkit-Aktionen", libraryEyebrow: "Gespeicherte Assets in dieser gefilterten Ansicht. Markieren Sie diejenigen, die zukünftige Generationen leiten sollen.", liveSlot: "Live-Slot", loading: "Asset wird geladen...", loadingBrandKit: "Markenkit wird geladen...", loadingPreset: "Preset wird geladen...", loadingRequestedPreset: "Angefordertes Preset wird geladen...", mcpImagePicks: "MCP-Bildauswahl", mcpImagePicksDescription: "Generierte und ausgewählte Bilder aus MCP-Chat-Hosts.", moveTo: "Bewegen Sie sich nach", newFolder: "Neuer Ordner", newFolderDescription: "Gruppieren Sie hochgeladene und generierte Assets für eine Kampagne, einen Kanal oder eine wiederverwendbare Sammlung.", newFolderEllipsis: "Neuer Ordner...", newKit: "Neues Kit", nextImage: "Nächstes Bild", noAssetsMatchView: "Keine Assets stimmen mit dieser Ansicht überein", noAssetsMatchViewBody: "Probieren Sie „Alle Assets“, einen anderen Ordner oder eine umfassendere Suche aus.", noAssetsToShow: "Keine Vermögenswerte zum Anzeigen.", noBrandKit: "Kein Brand-Kit", noKitsMatch: "Keine Kits stimmen mit Ihrer Suche überein.", noMatchingAssets: "Keine passenden Assets in deinen Kits.", noNewAssetsUploaded: "Es wurden keine neuen Assets hochgeladen.", noReferencesInView: "Keine Referenzen in dieser Ansicht", noReferencesInViewBody: "Wechseln Sie zurück zu allen Assets und markieren Sie die Bewahrer als Referenzen.", noReusableAssets: "Noch keine wiederverwendbaren Assets. Wählen Sie ein Kit, um Referenzen hochzuladen oder Assets zu generieren.", openAssets: "Assets öffnen", openChat: "Chat öffnen", openDetails: "Details öffnen", preparing: "Vorbereitung...", preparingImageLibrary: "Bildbibliothek wird vorbereitet...", preparingImageLibraryCandidates: "Bildbibliothek für generierte Kandidaten wird vorbereitet...", previousImage: "Vorheriges Bild", primaryKitActions: "Primäre Kit-Aktionen", privateBrandKitCopyCreated: "Eigenmarken-Kit-Kopie erstellt", readyCandidate: "Bereiter Kandidat", readyToSave: "Bereit zum Speichern", referenceCount: "{{count}} Referenzen", referencesEyebrow: "Assets ist derzeit als Generierungsreferenz markiert.", removeFromReferences: "Aus Referenzen entfernen", runHasNoGeneratedAssets: "Für diesen Lauf sind keine generierten Assets zur Übergabe vorhanden.", saveTo: "Speichern unter...", savedGeneratedAsset: "Generiertes Asset gespeichert.", savedToLibrary: "In der Bibliothek gespeichert.", searchAssets: "Suchen Sie nach Assets", searchKits: "Kits durchsuchen", selectAll: "Alles auswählen", selectAllAssetsInBoard: "Wählen Sie alle Assets in diesem Board aus", selectAllVisibleAssets: "Wählen Sie alle sichtbaren Assets aus", selectedAssetSendFailed: "Das ausgewählte Asset konnte nicht an den Chat zurückgesendet werden", selectionCopied: "Auswahl kopiert", selectionReady: "Auswahl bereit", setupNeeded: "Einrichtung erforderlich", showAll: "Alle anzeigen", showPasteText: "Einfügetext anzeigen", starterAssets: "Start-Assets", stillRendering: "Wird immer noch gerendert", tellAgentUseThis: 'Oder sagen Sie Ihrem Agent, welchen Sie verwenden, z. B. „Diesen verwenden".', uploadFailed: "Der Upload ist fehlgeschlagen", uploadTakingLonger: "Das Hochladen dauert länger als erwartet.", uploadTakingLongerDescription: "Der Server kann die Speicherung dieser Assets möglicherweise noch abschließen. Wir werden dieses Markenkit weiterhin überprüfen.", useCandidate: "Kandidat verwenden", viewDetails: "Details anzeigen", }, root: { commandActions: "Aktionen", commandSearch: "Suchen", commandAppearance: "Darstellung", toggleTheme: "Theme wechseln", }, navigation: { create: "Erstellen", library: "Bibliothek", brandKits: "Marken-Kits", auditLog: "Audit-Log", settings: "Einstellungen", extensions: "Erweiterungen", openNavigation: "Navigation öffnen", expandSidebar: "Seitenleiste erweitern", collapseSidebar: "Seitenleiste einklappen", }, settings: { agentTitle: "Agent verwalten", agentDescription: "Verwalte das Modell, die API-Schlüssel, Automatisierungen, Sprache und weitere Steuerungen des Agents.", openAgentSettings: "Agent verwalten", title: "Einstellungen", description: "Asset-Erstellung, Speicher und Zugriff auf Brand Kits.", connections: "Verbindungen", connectionsDescription: "Halte Assets bereit, um markensichere Medien zu erstellen, zu speichern und zu teilen. Builder ist der einfachste Weg; manuelle Schlüssel bleiben verfügbar.", languageTitle: "Sprache", languageDescription: "Wähle die Oberflächensprache für diesen Assets-Workspace.", languageLabel: "Oberflächensprache", setupTitle: "Assets-Einrichtung", setupDescription: "Zwei Grundlagen: Generierung und dauerhafter Speicher.", setupReady: "bereit", builderDescriptionReady: "Für verwaltete Generierung verbunden.", builderDescriptionManaged: "Verwaltete Bildgenerierung und Speicher, keine Provider-Schlüssel.", builderDescriptionDisabled: "Für diese Bereitstellung deaktiviert.", optional: "Optional", reconnect: "Neu verbinden", generation: "Generierung", generationReady: "Bereit", generationNeedsSetup: "Einrichtung erforderlich", manualGenerationKeys: "Manuelle Generierungsschlüssel", manualGenerationDescription: "Füge Gemini für Videogenerierung oder OpenAI/Gemini als Bild-Fallbacks hinzu.", storage: "Speicher", storageReady: "Originale, Miniaturen, Videos und Exporte haben einen dauerhaften Speicherort.", storageNeedsSetup: "Füge S3-kompatiblen Speicher für Produktions-Assets und Exporte hinzu.", objectStorage: "Objektspeicher", objectStorageDescription: "Verwende S3, R2, Spaces, Tigris, MinIO oder einen anderen kompatiblen Anbieter.", available: "Verfügbar", connecting: "Verbindung wird hergestellt", noManualOptions: "Für dieses Element sind keine manuellen Einrichtungsoptionen verfügbar.", builderManaged: "Builder verwaltet die Bildgenerierung.", providerConfigured: "{{providers}} konfiguriert.", addBuilderGeminiOrOpenAI: "Fügen Sie Builder, Gemini oder OpenAI hinzu, bevor Sie neue Assets generieren.", addGeminiOrOpenAI: "Fügen Sie Gemini oder OpenAI hinzu, bevor Sie neue Assets generieren.", brandKits: "Marken-Kits", chooseProvider: "Wählen Sie einen Anbieter", enterValueFirst: "Geben Sie zunächst einen Wert ein.", manualKeys: "Manuelle Schlüssel", saveFailed: "Speichern fehlgeschlagen", saveKey: "Schlüssel speichern", saveSettings: "Einstellungen speichern", }, chat: { emptyState: "Beschreibe das Asset, das du erstellen möchtest", suggestionBlogHeroes: "Erstelle 3 Blog-Heroes aus diesem Brand Kit", suggestionProductVideo: "Erstelle ein 8-sekündiges Produktvideo", suggestionReferenceStyle: "Passe den Stil an meine Referenz-Assets an", chats: "Chats", newChat: "Neuer Chat", newAssetsChat: "Neuer Assets-Chat", renameChat: "Chat umbenennen", pinChat: "Chat anheften", unpinChat: "Chat lösen", copyShareLink: "Freigabelink kopieren", archiveChat: "Chat archivieren", archiveFailed: "Chat konnte nicht archiviert werden.", renameFailed: "Chat konnte nicht umbenannt werden.", shareLinkFailed: "Freigabelink konnte nicht erstellt werden.", shareLinkCopied: "Chat-Freigabelink kopiert.", shareLinkReady: "Chat-Freigabelink bereit.", optionsFor: "Chatoptionen für {{title}}", }, create: { imageModel: "Bildmodell", modelBestQuality: "beste Qualität", modelFast: "schnell", emptyState: "Frage Assets, was erstellt werden soll.", composerPlaceholder: "Beschreibe das Asset - füge Bilder oder Textkontext mit + hinzu", heroTitle: "Welches Asset sollen wir erstellen?", heroDescription: "Beginne mit einem Hero-Bild, Produkt-Reveal, Referenz-Edit oder einer Richtung zum Erkunden.", starters: { image: "Bild", video: "Video", refine: "verfeinern" }, }, routeTitles: { library: "Bibliothek - Assets", generationPreset: "Generationsvoreinstellung - Assets", brandKits: "Marken-Kits - Assets", extension: "Erweiterung - Assets", extensions: "Erweiterungen - Assets", team: "Teamseite - Assets", }, team: { title: "Team", createOrgDescription: "Richte ein Team ein, um Marken-Kits und generierte Assets mit Kollegen zu teilen.", }, assetDetail: assetDetailDeDE, assetPicker: assetPickerDeDE, brandKitDetail: brandKitDetailDeDE, audit: { title: "Audit-Log", ownerOnlyFallback: "Nur Eigentümer als Fallback", orgWide: "Organisationsweit", ownerScopedDescription: "Kein Organisationskontext erkannt, daher ist diese Ansicht auf Läufe beschränkt, die du ausgelöst hast. Organisationsadmins sehen den vollständigen Audit-Feed.", orgScopedDescription: "Organisationsweite Audit-Daten werden angezeigt. Diese Ansicht ist nur für Governance-Prüfungen gedacht - jede Generierung im Workspace ist unten aufgeführt.", exporting: "Exportieren...", exportCsv: "CSV exportieren", dateFrom: "Datum von", dateTo: "Datum bis", ownerEmail: "E-Mail des Eigentümers", promptSearch: "Prompt suchen", model: "Modell", allModels: "Alle Modelle", status: "Status", allStatuses: "Alle Status", source: "Quelle", allSources: "Alle Quellen", callingApp: "Aufrufende App (A2A)", clearFilters: "Filter löschen", when: "Wann", owner: "Eigentümer", brandKit: "Markenkit", prompt: "Prompt", savedTotal: "Gespeichert / Gesamt", runSummary: "Lauf {{id}}... · {{time}}", videoBadge: "{{duration}} s · {{resolution}}", byOwner: "von {{email}}", userPrompt: "Benutzer-Prompt", compiledPrompt: "Kompilierter Prompt", failed: "Fehlgeschlagen", parentRun: "Übergeordneter Lauf (Quelle der Verfeinerung)", referencesCount: "Referenzen ({{count}})", generatedChildrenCount: "Generierte Kinder ({{count}})", noChildrenProduced: "Keine Kinder erzeugt.", openBrandKit: "Brand Kit öffnen ->", viaCaller: "über {{caller}}", noRunsMatch: "Keine Läufe entsprechen diesen Filtern", noRunsDescription: "Erweitere den Datumsbereich oder lösche Filter. Generierungsläufe der letzten 90 Tage sind meist ein guter Startpunkt.", loadFailed: "Audit-Log konnte nicht geladen werden", unknownError: "Unbekannter Fehler. Bitte aktualisieren.", adminOnlyTitle: "Audit-Log nur für Admins", adminOnlyDescription: "Nur Organisationsadmins können das Audit-Log sehen. Wenn du Zugriff haben solltest, bitte einen Organisationseigentümer, deine Rolle zu aktualisieren.", secondsAgo: "vor {{count}} s", minutesAgo: "vor {{count}} Min.", hoursAgo: "vor {{count}} Std.", daysAgo: "vor {{count}} T.", }, brandKits: brandKitsDeDE, }), "ja-JP": mergeLocalizedMessages("ja-JP", { library: { allLibraries: "すべてのライブラリ", noDrafts: "下書きはまだありません。", noMatchingDrafts: "一致する下書きはありません。", recentDrafts: "最近の下書き", viewAllDrafts: "すべての下書きを表示", draftAsset: "下書きアセット", addAssets: "アセットの追加", addAssetsDescription: "ソース素材をアップロードするか候補を生成し、将来の世代を導く必要がある資産のみを参照としてマークします。", addGenerationKey: "設定で生成キーを追加してください。", addToReferences: "参考文献に追加", addedToReferences: "参考文献に追加されました。", allAssets: "すべての資産", allAssetsDescription: "アクセス可能なすべてのキット", alreadyInThisBrandKit: "すでにこのブランドのキットに含まれています。", archiveBrandKit: "アーカイブブランドキット", archiveKitDescription: "これは、ブランド キットをライブラリ リストから削除します。そのアセットと生成履歴は保存されたままです。", archiveKitTitle: "このブランドのキットをアーカイブしますか?", archiving: "アーカイブ中...", assetActions: "アセットアクション", assetScope: "資産範囲", assetView: "アセットビュー", brandKitArchived: "ブランドキットがアーカイブされました。", buildYourFirstKit: "最初のキットを構築する", buildYourFirstKitDescription: "再利用可能なスタイル プリセットから始めるか、独自の参照用に空のライブラリを作成します。", candidateActions: "候補アクション", checkingImageLibraries: "画像ライブラリを確認中...", checkingUpload: "アップロードを確認しています", clearAll: "すべてクリア", clearCandidates: "候補をクリアする", clearCandidatesDescription: "ライブ ステージをクリアし、保存されていないドラフト候補を削除します。", clearGeneratedCandidatesDescription: "これにより、スレッドから保存されていないすべての候補が削除され、その背後にある生成されたアセット行が削除されます。保存されたライブラリ アセットは影響を受けません。", clearGeneratedCandidatesTitle: "生成された候補をクリアしますか?", clearSearch: "検索をクリア", clearing: "クリア中...", closePreview: "プレビューを閉じる", connectGenerationModels: "生成モデルを接続してください。", copiedPasteInstruction: "クリップボードにコピーされました - エージェント チャットに貼り付けて使用してください", copyPasteInstruction: "下のテキストをコピーして、エージェント チャットに貼り付けてください", copyToClipboard: "クリップボードにコピー", couldNotAddSelectedToReferences: "選択したアセットを参照に追加できませんでした。", couldNotAddToReferences: "アセットを参照に追加できませんでした。", couldNotClearCandidates: "候補者をクリアできませんでした。", couldNotCreateFolder: "フォルダーを作成できませんでした", couldNotDeleteAsset: "アセットを削除できませんでした。", couldNotDeleteSelectedAssets: "選択したアセットを削除できませんでした。", couldNotDismissCandidate: "候補者を解雇できませんでした。", couldNotPrepareHandoff: "ハンドオフを準備できませんでした。", couldNotPrepareImageLibrary: "画像ライブラリを準備できませんでした", couldNotRemoveSelectedFromReferences: "選択したアセットを参照から削除できませんでした。", couldNotSaveCandidate: "候補を保存できませんでした。", couldNotSaveDraft: "ドラフトを保存できません。", createBlankKit: "空のキットを作成する", createBrandKit: "ブランド キットを作成する", createImageLibraryToGenerate: "新しい候補を生成するには画像ライブラリを作成してください。", createLibrary: "ライブラリを作成", defaultKitDescription: "エージェント全体で再利用可能なアセットをアップロード、生成、説明、整理します。", defaultTextPolicy: "埋め込みテキストは使用しないことをお勧めします。要求されたテキストは短くて読みやすいものにしてください。", deleteAssetDescription: "これにより、ブランド キットからアセットが永久に削除されます。ライブラリに保持しつつ参照としての使用を停止するには、代わりに「参照から削除」を使用します。", deleteAssetTitle: "アセットを削除しますか?", deleteAssetsDescription: "これにより、選択したアセットがブランド キットから永久に削除されます。アセットを参照として使用するのをやめて保持するには、代わりに「参照から削除」を使用します。", deleteCandidate: "候補を削除する", deletedAsset: "削除されたアセット。", deselectAll: "すべての選択を解除します", dismissCandidateTitle: "この候補者を却下しますか?", dismissFailed: "破棄に失敗しました", dismissFailedSlotsDescription: "障害が発生したすべてのスロットをパネルから削除します。合格者はそのまま残ります。", dismissedCandidate: "落選された候補者。", dismissing: "却下中...", dropAssetsHere: "ここにアセットをドロップします", dropAssetsHereBody: "ソース素材、生成されたエクスポート、ロゴ、製品、またはスタイルボードをアップロードします。", duplicating: "複製中...", editBrandKit: "ブランド キットの名前と説明を編集する", failed: "失敗", failedCandidate: "落選した候補者", folderNamePlaceholder: "キャンペーン開始", fullSizePreview: "{{title}} のフルサイズプレビュー", generateImagePlaceholder: "画像アセットを生成", generatedAsset: "生成されたアセット", generatedCandidatesTitle: "生成された候補", generatingCandidate: "候補の生成", generatingCandidates: "候補を生成中...", generationFailed: "画像生成に失敗しました", kitActions: "ブランドキットのアクション", libraryEyebrow: "このフィルタリングされたビューに保存されたアセット。将来の世代を導くべきものにマークを付けてください。", liveSlot: "ライブスロット", loading: "アセットを読み込み中...", loadingBrandKit: "ブランドキットを読み込み中...", loadingPreset: "プリセットを読み込み中...", loadingRequestedPreset: "リクエストされたプリセットを読み込み中...", mcpImagePicks: "MCP 画像選択", mcpImagePicksDescription: "MCP チャットホストから生成・選択された画像です。", moveTo: "に移動します", newFolder: "新しいフォルダー", newFolderDescription: "キャンペーン、チャネル、または再利用可能なコレクション用にアップロードおよび生成されたアセットをグループ化します。", newFolderEllipsis: "新しいフォルダ...", newKit: "新しいキット", nextImage: "次の画像", noAssetsMatchView: "このビューに一致するアセットはありません", noAssetsMatchViewBody: "すべてのアセット、別のフォルダー、またはより広範囲の検索を試してください。", noAssetsToShow: "表示するアセットがありません。", noBrandKit: "ブランド キットなし", noKitsMatch: "検索に一致するキットがありません。", noMatchingAssets: "キット全体に一致するアセットがありません。", noNewAssetsUploaded: "新しいアセットはアップロードされませんでした。", noReferencesInView: "このビューには参照がありません", noReferencesInViewBody: "すべてのアセットに戻り、キーパーを参照としてマークします。", noReusableAssets: "再利用可能なアセットはまだありません。キットを選択して参照をアップロードするか、アセットを生成してください。", openAssets: "Assets を開く", openChat: "オープンチャット", openDetails: "詳細を開く", preparing: "準備中...", preparingImageLibrary: "画像ライブラリを準備中...", preparingImageLibraryCandidates: "生成候補用の画像ライブラリを準備中...", previousImage: "前の画像", primaryKitActions: "プライマリ キット アクション", privateBrandKitCopyCreated: "プライベートブランドキットコピー作成", readyCandidate: "準備ができた候補者", readyToSave: "保存する準備ができました", referenceCount: "{{count}} 件の参照", referencesEyebrow: "Assets は現在、世代参照用にマークされています。", removeFromReferences: "参照から削除", runHasNoGeneratedAssets: "この実行には、引き渡す生成されたアセットがありません。", saveTo: "保存先...", savedGeneratedAsset: "生成されたアセットが保存されました。", savedToLibrary: "ライブラリに保存されました。", searchAssets: "アセットの検索", searchKits: "キットを検索する", selectAll: "すべて選択", selectAllAssetsInBoard: "このボード内のすべてのアセットを選択します", selectAllVisibleAssets: "表示されているすべてのアセットを選択します", selectedAssetSendFailed: "選択したアセットをチャットに返送できませんでした", selectionCopied: "選択内容をコピーしました", selectionReady: "選択の準備ができました", setupNeeded: "設定が必要です", showAll: "すべて表示", showPasteText: "貼り付け用テキストを表示", starterAssets: "スターターアセット", stillRendering: "まだレンダリング中です", tellAgentUseThis: "またはエージェントにどれを使用するか指示します。例:「これを使う」。", uploadFailed: "アップロードに失敗しました", uploadTakingLonger: "アップロードに予想より時間がかかっています。", uploadTakingLongerDescription: "サーバーはこれらのアセットの保存をまだ完了している可能性があります。今後もこのブランドのキットをチェックしていきます。", useCandidate: "候補を使用する", viewDetails: "詳細を見る", }, root: { commandActions: "操作", commandSearch: "検索", commandAppearance: "外観", toggleTheme: "テーマを切り替え", }, navigation: { create: "作成", library: "ライブラリ", brandKits: "ブランドキット", auditLog: "監査ログ", settings: "設定", extensions: "拡張機能", openNavigation: "ナビゲーションを開く", expandSidebar: "サイドバーを展開", collapseSidebar: "サイドバーを折りたたむ", }, settings: { agentTitle: "エージェントを管理", agentDescription: "エージェントのモデル、API キー、自動化、音声などを管理します。", openAgentSettings: "エージェントを管理", title: "設定", description: "アセット生成、保存、ブランドキットへのアクセス。", connections: "接続", connectionsDescription: "Assets を、ブランドに安全なメディアの生成、保存、共有に使える状態に保ちます。Builder が最も簡単な方法で、必要に応じて手動キーも利用できます。", languageTitle: "言語", languageDescription: "この Assets ワークスペースのインターフェース言語を選択します。", languageLabel: "インターフェース言語", setupTitle: "Assets の設定", setupDescription: "必要なものは生成と永続ストレージの 2 つです。", setupReady: "準備完了", builderDescriptionReady: "管理された生成に接続済みです。", builderDescriptionManaged: "管理された画像生成とストレージ。プロバイダーキーは不要です。", builderDescriptionDisabled: "このデプロイでは無効です。", optional: "任意", reconnect: "再接続", generation: "生成", generationReady: "準備完了", generationNeedsSetup: "設定が必要です", manualGenerationKeys: "手動生成キー", manualGenerationDescription: "動画生成には Gemini を、画像のフォールバックには OpenAI/Gemini を追加します。", storage: "ストレージ", storageReady: "オリジナル、サムネイル、動画、エクスポートの保存先が確保されています。", storageNeedsSetup: "本番アセットとエクスポート用に S3 互換ストレージを追加してください。", objectStorage: "オブジェクトストレージ", objectStorageDescription: "S3、R2、Spaces、Tigris、MinIO、または別の互換プロバイダーを使用します。", available: "利用可能", connecting: "接続中", noManualOptions: "この項目で利用できる手動設定オプションはありません。", builderManaged: "Builder が管理された画像生成を処理しています。", providerConfigured: "{{providers}} が設定済みです。", addBuilderGeminiOrOpenAI: "新しい資産を生成する前に、Builder、Gemini、または OpenAI を追加します。", addGeminiOrOpenAI: "新しい資産を生成する前に、Gemini または OpenAI を追加します。", brandKits: "ブランドキット", chooseProvider: "プロバイダーを選択", enterValueFirst: "先に値を入力してください。", manualKeys: "手動キー", saveFailed: "保存に失敗しました", saveKey: "キーを保存", saveSettings: "設定を保存する", }, chat: { emptyState: "作りたいアセットを説明してください", suggestionBlogHeroes: "このブランドキットからブログヒーローを 3 点生成", suggestionProductVideo: "8 秒の製品紹介動画を作成", suggestionReferenceStyle: "参照アセットのスタイルに合わせる", chats: "チャット", newChat: "新しいチャット", newAssetsChat: "新しい Assets チャット", renameChat: "チャット名を変更", pinChat: "チャットを固定", unpinChat: "固定を解除", copyShareLink: "共有リンクをコピー", archiveChat: "チャットをアーカイブ", archiveFailed: "チャットをアーカイブできませんでした。", renameFailed: "チャット名を変更できませんでした。", shareLinkFailed: "共有リンクを作成できませんでした。", shareLinkCopied: "チャット共有リンクをコピーしました。", shareLinkReady: "チャット共有リンクの準備ができました。", optionsFor: "{{title}} のチャットオプション", }, create: { imageModel: "画像モデル", modelBestQuality: "最高品質", modelFast: "高速", emptyState: "Assets に何を作るか尋ねてください。", composerPlaceholder: "アセットを説明 - + で画像やテキストの文脈を添付", heroTitle: "どんなアセットを作りますか?", heroDescription: "ヒーロー画像、製品紹介、参照編集、探索したい方向から始めましょう。", starters: { image: "画像", video: "動画", refine: "調整" }, }, routeTitles: { library: "ライブラリ - Assets", generationPreset: "生成プリセット - Assets", brandKits: "ブランドキット - Assets", extension: "拡張機能 - Assets", extensions: "拡張機能 - Assets", team: "チーム - Assets", }, team: { title: "チーム", createOrgDescription: "チームを設定して、ブランドキットと生成されたアセットを同僚と共有します。", }, assetDetail: assetDetailJaJP, assetPicker: assetPickerJaJP, brandKitDetail: brandKitDetailJaJP, audit: { title: "監査ログ", ownerOnlyFallback: "所有者のみのフォールバック", orgWide: "組織全体", ownerScopedDescription: "組織コンテキストが検出されなかったため、このビューはあなたが開始した実行に限定されます。組織管理者は組織全体の監査フィードを表示できます。", orgScopedDescription: "組織全体の監査データを表示しています。このビューはガバナンス確認専用です - ワークスペース内のすべての生成が下に表示されます。", exporting: "エクスポート中...", exportCsv: "CSV をエクスポート", dateFrom: "開始日", dateTo: "終了日", ownerEmail: "所有者のメール", promptSearch: "プロンプト検索", model: "モデル", allModels: "すべてのモデル", status: "ステータス", allStatuses: "すべてのステータス", source: "ソース", allSources: "すべてのソース", callingApp: "呼び出し元アプリ (A2A)", clearFilters: "フィルターをクリア", when: "日時", owner: "所有者", brandKit: "ブランドキット", prompt: "プロンプト", savedTotal: "保存済み / 合計", runSummary: "実行 {{id}}... · {{time}}", videoBadge: "{{duration}} 秒 · {{resolution}}", byOwner: "{{email}} による作成", userPrompt: "ユーザープロンプト", compiledPrompt: "コンパイル済みプロンプト", failed: "失敗", parentRun: "親実行(調整元)", referencesCount: "参照({{count}})", generatedChildrenCount: "生成された子({{count}})", noChildrenProduced: "子は生成されませんでした。", openBrandKit: "ブランドキットを開く ->", viaCaller: "{{caller}} 経由", noRunsMatch: "これらのフィルターに一致する実行はありません", noRunsDescription: "日付範囲を広げるか、フィルターをクリアしてください。通常、過去 90 日間の生成実行が良い開始ビューになります。", loadFailed: "監査ログを読み込めませんでした", unknownError: "不明なエラーです。更新してください。", adminOnlyTitle: "監査ログは管理者専用です", adminOnlyDescription: "監査ログを表示できるのは組織管理者のみです。アクセス権が必要な場合は、組織所有者にロールの更新を依頼してください。", secondsAgo: "{{count}} 秒前", minutesAgo: "{{count}} 分前", hoursAgo: "{{count}} 時間前", daysAgo: "{{count}} 日前", }, brandKits: brandKitsJaJP, }), "ko-KR": mergeLocalizedMessages("ko-KR", { library: { allLibraries: "모든 라이브러리", noDrafts: "아직 초안이 없습니다.", noMatchingDrafts: "일치하는 초안이 없습니다.", recentDrafts: "최근 초안", viewAllDrafts: "모든 초안 보기", draftAsset: "초안 자산", addAssets: "자산 추가", addAssetsDescription: "원본 자료를 업로드하거나 후보를 생성한 후, 미래 세대를 이끌어야 할 자산만 참고 자료로 표시하세요.", addGenerationKey: "설정에서 생성 키를 추가하세요.", addToReferences: "참고자료에 추가", addedToReferences: "참고자료에 추가되었습니다.", allAssets: "모든 자산", allAssetsDescription: "액세스 가능한 모든 키트", alreadyInThisBrandKit: "이미 이 브랜드 키트에 있습니다.", archiveBrandKit: "아카이브 브랜드 키트", archiveKitDescription: "이렇게 하면 브랜드 키트가 라이브러리 목록에서 제거됩니다. 해당 자산 및 생성 기록은 저장된 상태로 유지됩니다.", archiveKitTitle: "이 브랜드 키트를 보관하시겠습니까?", archiving: "보관 중...", assetActions: "자산 작업", assetScope: "자산 범위", assetView: "자산 보기", brandKitArchived: "브랜드 키트가 보관되었습니다.", buildYourFirstKit: "첫 번째 키트 빌드", buildYourFirstKitDescription: "재사용 가능한 스타일 사전 설정에서 시작하거나 자신의 참조용으로 빈 라이브러리를 만듭니다.", candidateActions: "후보자의 행동", checkingImageLibraries: "이미지 라이브러리 확인 중...", checkingUpload: "업로드 확인 중", clearAll: "모두 지우기", clearCandidates: "후보 제거", clearCandidatesDescription: "라이브 단계를 지우고 저장되지 않은 초안 후보를 삭제합니다.", clearGeneratedCandidatesDescription: "이렇게 하면 스레드에서 저장되지 않은 모든 후보가 제거되고 그 뒤의 생성된 자산 행이 삭제됩니다. 저장된 라이브러리 자산은 영향을 받지 않습니다.", clearGeneratedCandidatesTitle: "생성된 후보를 제거하시겠습니까?", clearSearch: "검색 지우기", clearing: "지우는 중...", closePreview: "미리보기 닫기", connectGenerationModels: "생성 모델을 연결하세요.", copiedPasteInstruction: "클립보드에 복사됨 - 에이전트 채팅에 붙여넣어 사용하세요", copyPasteInstruction: "아래 텍스트를 복사하여 에이전트 채팅에 붙여넣으세요", copyToClipboard: "클립보드에 복사", couldNotAddSelectedToReferences: "선택한 자산을 참조에 추가할 수 없습니다.", couldNotAddToReferences: "참조에 자산을 추가할 수 없습니다.", couldNotClearCandidates: "후보자를 삭제할 수 없습니다.", couldNotCreateFolder: "폴더를 생성할 수 없습니다.", couldNotDeleteAsset: "자산을 삭제할 수 없습니다.", couldNotDeleteSelectedAssets: "선택한 자산을 삭제할 수 없습니다.", couldNotDismissCandidate: "후보자를 해고할 수 없습니다.", couldNotPrepareHandoff: "핸드오프를 준비할 수 없습니다.", couldNotPrepareImageLibrary: "이미지 라이브러리를 준비할 수 없습니다", couldNotRemoveSelectedFromReferences: "참조에서 선택한 자산을 제거할 수 없습니다.", couldNotSaveCandidate: "후보자를 저장할 수 없습니다.", couldNotSaveDraft: "초안을 저장할 수 없습니다.", createBlankKit: "빈 키트 생성", createBrandKit: "브랜드 키트 생성", createImageLibraryToGenerate: "새 후보를 생성하려면 이미지 라이브러리를 만드세요.", createLibrary: "라이브러리 만들기", defaultKitDescription: "에이전트 전체에서 재사용 가능한 자산을 업로드, 생성, 설명 및 구성합니다.", defaultTextPolicy: "포함된 텍스트가 없는 것을 선호합니다. 요청된 텍스트는 짧고 읽기 쉽게 유지하세요.", deleteAssetDescription: "이렇게 하면 브랜드 키트에서 자산이 영구적으로 제거됩니다. 라이브러리에 보관하되 참조로 사용하는 것을 중단하려면 대신 참조에서 제거를 사용하세요.", deleteAssetTitle: "자산을 삭제하시겠습니까?", deleteAssetsDescription: "이렇게 하면 브랜드 키트에서 선택한 자산이 영구적으로 제거됩니다. 자산을 참조로 사용하는 것을 중단하고 유지하려면 대신 참조에서 제거를 사용하십시오.", deleteCandidate: "후보 삭제", deletedAsset: "삭제된 자산입니다.", deselectAll: "모두 선택 취소", dismissCandidateTitle: "이 후보자를 기각하시겠습니까?", dismissFailed: "닫기 실패", dismissFailedSlotsDescription: "패널에서 실패한 모든 슬롯을 제거합니다. 합격한 후보자는 남습니다.", dismissedCandidate: "기각된 후보자.", dismissing: "닫는 중...", dropAssetsHere: "여기에 애셋을 드롭하세요.", dropAssetsHereBody: "소스 자료, 생성된 내보내기, 로고, 제품 또는 스타일 보드를 업로드합니다.", duplicating: "복제 중...", editBrandKit: "브랜드 키트 이름 및 설명 수정", failed: "실패", failedCandidate: "불합격자", folderNamePlaceholder: "캠페인 시작", fullSizePreview: "{{title}} 전체 크기 미리보기", generateImagePlaceholder: "이미지 자산 생성", generatedAsset: "생성된 자산", generatedCandidatesTitle: "생성된 후보", generatingCandidate: "후보생성", generatingCandidates: "후보 생성 중...", generationFailed: "이미지 생성 실패", kitActions: "브랜드 키트 작업", libraryEyebrow: "이 필터링된 보기에 저장된 자산입니다. 미래 세대를 인도해야 할 사람들을 표시하십시오.", liveSlot: "라이브 슬롯", loading: "자산을 불러오는 중...", loadingBrandKit: "브랜드 키트 로드 중...", loadingPreset: "프리셋을 불러오는 중...", loadingRequestedPreset: "요청한 프리셋을 불러오는 중...", mcpImagePicks: "MCP 이미지 선택", mcpImagePicksDescription: "MCP 채팅 호스트에서 생성되고 선택된 이미지입니다.", moveTo: "다음으로 이동", newFolder: "새 폴더", newFolderDescription: "캠페인, 채널 또는 재사용 가능한 컬렉션에 대해 업로드 및 생성된 자산을 그룹화합니다.", newFolderEllipsis: "새 폴더...", newKit: "새 키트", nextImage: "다음 이미지", noAssetsMatchView: "이 보기와 일치하는 자산이 없습니다.", noAssetsMatchViewBody: "모든 자산, 다른 폴더 또는 더 광범위한 검색을 시도해 보세요.", noAssetsToShow: "표시할 애셋이 없습니다.", noBrandKit: "브랜드 키트 없음", noKitsMatch: "검색과 일치하는 키트가 없습니다.", noMatchingAssets: "키트 전체에서 일치하는 자산이 없습니다.", noNewAssetsUploaded: "새 자산이 업로드되지 않았습니다.", noReferencesInView: "이 보기에는 참조가 없습니다.", noReferencesInViewBody: "모든 자산으로 다시 전환하고 키퍼를 참조로 표시합니다.", noReusableAssets: "아직 재사용 가능한 자산이 없습니다. 키트를 선택하여 참조를 업로드하거나 자산을 생성하세요.", openAssets: "Assets 열기", openChat: "오픈채팅", openDetails: "세부 정보 열기", preparing: "준비 중...", preparingImageLibrary: "이미지 라이브러리 준비 중...", preparingImageLibraryCandidates: "생성 후보용 이미지 라이브러리 준비 중...", previousImage: "이전 이미지", primaryKitActions: "기본 키트 작업", privateBrandKitCopyCreated: "프라이빗 브랜드 키트 사본이 생성되었습니다.", readyCandidate: "준비된 후보자", readyToSave: "저장할 준비 완료", referenceCount: "참조 {{count}}개", referencesEyebrow: "Assets는 현재 세대 참조용으로 표시되어 있습니다.", removeFromReferences: "참조에서 제거", runHasNoGeneratedAssets: "이 실행에는 전달할 자산이 생성되지 않았습니다.", saveTo: "다음에 저장...", savedGeneratedAsset: "생성된 자산이 저장되었습니다.", savedToLibrary: "라이브러리에 저장되었습니다.", searchAssets: "자산 검색", searchKits: "키트 검색", selectAll: "모두 선택", selectAllAssetsInBoard: "이 보드의 모든 자산을 선택하세요.", selectAllVisibleAssets: "표시되는 자산을 모두 선택하세요.", selectedAssetSendFailed: "선택한 자산을 채팅으로 다시 보낼 수 없습니다", selectionCopied: "선택 항목이 복사되었습니다", selectionReady: "선택 준비 완료", setupNeeded: "설정 필요", showAll: "모두 표시", showPasteText: "붙여넣기 텍스트 표시", starterAssets: "시작 자산", stillRendering: "아직 렌더링 중", tellAgentUseThis: '또는 에이전트에 어떤 항목을 사용할지 알려주세요. 예: "이것을 사용하세요".', uploadFailed: "업로드 실패", uploadTakingLonger: "업로드가 예상보다 오래 걸립니다.", uploadTakingLongerDescription: "서버는 여전히 이러한 자산 저장을 완료할 수 있습니다. 우리는 이 브랜드 키트를 계속해서 확인할 것입니다.", useCandidate: "후보 사용", viewDetails: "세부정보 보기", }, root: { commandActions: "작업", commandSearch: "검색", commandAppearance: "모양", toggleTheme: "테마 전환", }, navigation: { create: "생성", library: "라이브러리", brandKits: "브랜드 키트", auditLog: "감사 로그", settings: "설정", extensions: "확장", openNavigation: "탐색 열기", expandSidebar: "사이드바 펼치기", collapseSidebar: "사이드바 접기", }, settings: { agentTitle: "에이전트 관리", agentDescription: "에이전트의 모델, API 키, 자동화, 음성 및 기타 제어를 관리합니다.", openAgentSettings: "에이전트 관리", title: "설정", description: "자산 생성, 저장소, 브랜드 키트 접근.", connections: "연결", connectionsDescription: "Assets가 브랜드 안전 미디어를 생성, 저장, 공유할 준비를 유지합니다. Builder가 가장 간단한 경로이며 필요하면 수동 키도 사용할 수 있습니다.", languageTitle: "언어", languageDescription: "이 Assets 워크스페이스의 인터페이스 언어를 선택하세요.", languageLabel: "인터페이스 언어", setupTitle: "Assets 설정", setupDescription: "필수 항목 두 가지: 생성과 영구 저장소.", setupReady: "준비됨", builderDescriptionReady: "관리형 생성에 연결되었습니다.", builderDescriptionManaged: "관리형 이미지 생성 및 저장소, 제공자 키가 필요 없습니다.", builderDescriptionDisabled: "이 배포에서는 비활성화되었습니다.", optional: "선택 사항", reconnect: "다시 연결", generation: "생성", generationReady: "준비됨", generationNeedsSetup: "설정 필요", manualGenerationKeys: "수동 생성 키", manualGenerationDescription: "비디오 생성에는 Gemini를, 이미지 대체 모델에는 OpenAI/Gemini를 추가하세요.", storage: "저장소", storageReady: "원본, 썸네일, 비디오, 내보내기에 사용할 영구 저장소가 있습니다.", storageNeedsSetup: "프로덕션 자산과 내보내기를 위해 S3 호환 저장소를 추가하세요.", objectStorage: "객체 저장소", objectStorageDescription: "S3, R2, Spaces, Tigris, MinIO 또는 다른 호환 제공자를 사용하세요.", available: "사용 가능", connecting: "연결 중", noManualOptions: "이 항목에 사용할 수 있는 수동 설정 옵션이 없습니다.", builderManaged: "Builder가 관리형 이미지 생성을 처리합니다.", providerConfigured: "{{providers}} 설정됨.", addBuilderGeminiOrOpenAI: "새 자산을 생성하기 전에 Builder, Gemini 또는 OpenAI를 추가하세요.", addGeminiOrOpenAI: "새 자산을 생성하기 전에 Gemini 또는 OpenAI를 추가하세요.", brandKits: "브랜드 키트", chooseProvider: "제공업체 선택", enterValueFirst: "먼저 값을 입력하세요.", manualKeys: "수동 키", saveFailed: "저장 실패", saveKey: "키 저장", saveSettings: "설정 저장", }, chat: { emptyState: "만들고 싶은 자산을 설명하세요", suggestionBlogHeroes: "이 브랜드 키트로 블로그 히어로 3개 생성", suggestionProductVideo: "8초 제품 공개 영상 만들기", suggestionReferenceStyle: "내 참조 자산 스타일에 맞추기", chats: "채팅", newChat: "새 채팅", newAssetsChat: "새 Assets 채팅", renameChat: "채팅 이름 변경", pinChat: "채팅 고정", unpinChat: "채팅 고정 해제", copyShareLink: "공유 링크 복사", archiveChat: "채팅 보관", archiveFailed: "채팅을 보관할 수 없습니다.", renameFailed: "채팅 이름을 변경할 수 없습니다.", shareLinkFailed: "공유 링크를 만들 수 없습니다.", shareLinkCopied: "채팅 공유 링크가 복사되었습니다.", shareLinkReady: "채팅 공유 링크가 준비되었습니다.", optionsFor: "{{title}} 채팅 옵션", }, create: { imageModel: "이미지 모델", modelBestQuality: "최고 품질", modelFast: "빠름", emptyState: "Assets에 무엇을 만들지 물어보세요.", composerPlaceholder: "자산 설명 - +로 이미지나 텍스트 컨텍스트 첨부", heroTitle: "어떤 자산을 만들까요?", heroDescription: "히어로 이미지, 제품 공개, 참조 편집 또는 탐색할 방향에서 시작하세요.", starters: { image: "이미지", video: "비디오", refine: "다듬기" }, }, routeTitles: { library: "라이브러리 - Assets", generationPreset: "생성 사전 설정 - Assets", brandKits: "브랜드 키트 - Assets", extension: "확장 - Assets", extensions: "확장 - Assets", team: "팀 - Assets", }, team: { title: "팀", createOrgDescription: "팀을 설정해 브랜드 키트와 생성된 에셋을 동료와 공유하세요.", }, assetDetail: assetDetailKoKR, assetPicker: assetPickerKoKR, brandKitDetail: brandKitDetailKoKR, audit: { title: "감사 로그", ownerOnlyFallback: "소유자 전용 대체", orgWide: "조직 전체", ownerScopedDescription: "조직 컨텍스트가 감지되지 않아 이 보기는 사용자가 실행한 작업으로 제한됩니다. 조직 관리자는 전체 조직 감사 피드를 볼 수 있습니다.", orgScopedDescription: "조직 전체 감사 데이터를 보고 있습니다. 이 보기는 거버넌스 검토 전용입니다 - 워크스페이스의 모든 생성이 아래에 표시됩니다.", exporting: "내보내는 중...", exportCsv: "CSV 내보내기", dateFrom: "시작일", dateTo: "종료일", ownerEmail: "소유자 이메일", promptSearch: "프롬프트 검색", model: "모델", allModels: "모든 모델", status: "상태", allStatuses: "모든 상태", source: "소스", allSources: "모든 소스", callingApp: "호출 앱 (A2A)", clearFilters: "필터 지우기", when: "시간", owner: "소유자", brandKit: "브랜드 키트", prompt: "프롬프트", savedTotal: "저장됨 / 합계", runSummary: "실행 {{id}}... · {{time}}", videoBadge: "{{duration}}초 · {{resolution}}", byOwner: "{{email}} 님", userPrompt: "사용자 프롬프트", compiledPrompt: "컴파일된 프롬프트", failed: "실패", parentRun: "상위 실행(개선 소스)", referencesCount: "참조({{count}})", generatedChildrenCount: "생성된 하위 항목({{count}})", noChildrenProduced: "생성된 하위 항목이 없습니다.", openBrandKit: "브랜드 키트 열기 ->", viaCaller: "{{caller}} 경유", noRunsMatch: "이 필터와 일치하는 실행이 없습니다", noRunsDescription: "날짜 범위를 넓히거나 필터를 지워 보세요. 최근 90일의 생성 실행이 보통 좋은 시작 보기입니다.", loadFailed: "감사 로그를 불러올 수 없습니다", unknownError: "알 수 없는 오류입니다. 새로고침해 보세요.", adminOnlyTitle: "감사 로그는 관리자 전용입니다", adminOnlyDescription: "조직 관리자만 감사 로그를 볼 수 있습니다. 접근 권한이 있어야 한다고 생각되면 조직 소유자에게 역할 업그레이드를 요청하세요.", secondsAgo: "{{count}}초 전", minutesAgo: "{{count}}분 전", hoursAgo: "{{count}}시간 전", daysAgo: "{{count}}일 전", }, brandKits: brandKitsKoKR, }), "pt-BR": mergeLocalizedMessages("pt-BR", { library: { allLibraries: "Todas as bibliotecas", noDrafts: "Ainda não há rascunhos.", noMatchingDrafts: "Nenhum rascunho correspondente.", recentDrafts: "Rascunhos recentes", viewAllDrafts: "Ver todos os rascunhos", draftAsset: "Rascunho", addAssets: "Adicionar recursos", addAssetsDescription: "Carregue o material de origem ou gere candidatos e marque apenas os ativos que devem orientar as gerações futuras como referências.", addGenerationKey: "Adicione uma chave de geração em Configurações.", addToReferences: "Adicionar às referências", addedToReferences: "Adicionado às referências.", allAssets: "Todos os ativos", allAssetsDescription: "Todos os kits acessíveis", alreadyInThisBrandKit: "Já neste kit da marca.", archiveBrandKit: "Kit de marca de arquivo", archiveKitDescription: "Isso remove o kit de marca da lista da Biblioteca. Seus ativos e histórico de geração permanecem armazenados.", archiveKitTitle: "Arquivar este kit da marca?", archiving: "Arquivando...", assetActions: "Ações de ativos", assetScope: "Escopo do ativo", assetView: "Visualização de ativos", brandKitArchived: "Kit da marca arquivado.", buildYourFirstKit: "Construa seu primeiro kit", buildYourFirstKitDescription: "Comece com uma predefinição de estilo reutilizável ou crie uma biblioteca vazia para suas próprias referências.", candidateActions: "Ações do candidato", checkingImageLibraries: "Verificando bibliotecas de imagens...", checkingUpload: "Verificando upload", clearAll: "Limpar tudo", clearCandidates: "Limpar candidatos", clearCandidatesDescription: "Limpa o estágio ao vivo e exclui candidatos de rascunho não salvos.", clearGeneratedCandidatesDescription: "Isso remove todos os candidatos não salvos da conversa e exclui as linhas de ativos gerados por trás deles. Os ativos da biblioteca salvos não são tocados.", clearGeneratedCandidatesTitle: "Limpar candidatos gerados?", clearSearch: "Limpar pesquisa", clearing: "Limpando...", closePreview: "Fechar prévia", connectGenerationModels: "Conecte modelos de geração.", copiedPasteInstruction: "Copiado para a área de transferência - cole-o no seu chat de agente para usá-lo", copyPasteInstruction: "Copie o texto abaixo e cole-o no seu chat de agente", copyToClipboard: "Copiar para a área de transferência", couldNotAddSelectedToReferences: "Não foi possível adicionar os ativos selecionados às referências.", couldNotAddToReferences: "Não foi possível adicionar recurso às referências.", couldNotClearCandidates: "Não foi possível limpar os candidatos.", couldNotCreateFolder: "Não foi possível criar a pasta", couldNotDeleteAsset: "Não foi possível excluir o recurso.", couldNotDeleteSelectedAssets: "Não foi possível excluir os recursos selecionados.", couldNotDismissCandidate: "Não foi possível demitir o candidato.", couldNotPrepareHandoff: "Não foi possível preparar a transferência.", couldNotPrepareImageLibrary: "Não foi possível preparar uma biblioteca de imagens", couldNotRemoveSelectedFromReferences: "Não foi possível remover os ativos selecionados das Referências.", couldNotSaveCandidate: "Não foi possível salvar o candidato.", couldNotSaveDraft: "Não foi possível salvar o rascunho.", createBlankKit: "Criar kit em branco", createBrandKit: "Criar um kit de marca", createImageLibraryToGenerate: "Crie uma biblioteca de imagens para gerar novos candidatos.", createLibrary: "Criar biblioteca", defaultKitDescription: "Carregue, gere, descreva e organize ativos reutilizáveis ​​entre agentes.", defaultTextPolicy: "Prefira nenhum texto incorporado. Mantenha qualquer texto solicitado curto e legível.", deleteAssetDescription: "Isso remove permanentemente o ativo do kit da marca. Para mantê-lo na biblioteca, mas parar de usá-lo como referência, use Remover das referências.", deleteAssetTitle: "Excluir ativo?", deleteAssetsDescription: "Isso remove permanentemente os ativos selecionados do kit da marca. Para parar de usar um ativo como referência, mas mantê-lo, use Remover das referências.", deleteCandidate: "Excluir candidato", deletedAsset: "Ativo excluído.", deselectAll: "Desmarcar tudo", dismissCandidateTitle: "Demitir este candidato?", dismissFailed: "Falha ao dispensar", dismissFailedSlotsDescription: "Remove todos os slots com falha do painel. Os candidatos aprovados ficam.", dismissedCandidate: "Candidato demitido.", dismissing: "Dispensando...", dropAssetsHere: "Solte os recursos aqui", dropAssetsHereBody: "Carregue material de origem, exportações geradas, logotipos, produtos ou painéis de estilo.", duplicating: "Duplicando...", editBrandKit: "Editar o nome e a descrição do kit da marca", failed: "Falhou", failedCandidate: "Candidato reprovado", folderNamePlaceholder: "Lançamento da campanha", generateImagePlaceholder: "Gerar um asset de imagem", generatedAsset: "Ativo gerado", generatedCandidatesTitle: "Candidatos gerados", generatingCandidate: "Gerando candidato", generatingCandidates: "Gerando candidatos...", generationFailed: "Falha na geração da imagem", kitActions: "Ações do kit da marca", libraryEyebrow: "Ativos salvos nesta visualização filtrada. Marque aqueles que devem orientar as gerações futuras.", liveSlot: "Slot ao vivo", loading: "Carregando recurso...", loadingBrandKit: "Carregando kit da marca...", loadingPreset: "Carregando predefinição...", loadingRequestedPreset: "Carregando a predefinição solicitada...", mcpImagePicks: "Escolhas de imagem MCP", mcpImagePicksDescription: "Imagens geradas e selecionadas de hosts de bate-papo MCP.", moveTo: "Mover para", newFolder: "Nova pasta", newFolderDescription: "Agrupe ativos carregados e gerados para uma campanha, canal ou coleção reutilizável.", newFolderEllipsis: "Nova pasta...", newKit: "Novo kit", nextImage: "Próxima imagem", noAssetsMatchView: "Nenhum recurso corresponde a esta visualização", noAssetsMatchViewBody: "Experimente Todos os ativos, uma pasta diferente ou uma pesquisa mais ampla.", noAssetsToShow: "Nenhum recurso para mostrar.", noBrandKit: "Sem kit de marca", noKitsMatch: "Nenhum kit corresponde à sua pesquisa.", noMatchingAssets: "Nenhum recurso correspondente nos seus kits.", noNewAssetsUploaded: "Nenhum novo ativo foi carregado.", noReferencesInView: "Nenhuma referência nesta visualização", noReferencesInViewBody: "Volte para todos os ativos e marque os detentores como referências.", noReusableAssets: "Ainda não há ativos reutilizáveis. Selecione um kit para carregar referências ou gerar ativos.", openAssets: "Abra Assets", openChat: "Abrir bate-papo", openDetails: "Abrir detalhes", preparing: "Preparando...", preparingImageLibrary: "Preparando uma biblioteca de imagens...", preparingImageLibraryCandidates: "Preparando uma biblioteca de imagens para candidatos gerados...", previousImage: "Imagem anterior", primaryKitActions: "Ações principais do kit", privateBrandKitCopyCreated: "Cópia do kit de marca privada criada", readyCandidate: "Candidato pronto", readyToSave: "Pronto para salvar", referencesEyebrow: "Assets atualmente marcado para referência de geração.", removeFromReferences: "Remover das referências", runHasNoGeneratedAssets: "Esta execução não gerou ativos para entrega.", saveTo: "Salvar em...", savedGeneratedAsset: "Ativo gerado salvo.", savedToLibrary: "Salvo na Biblioteca.", searchAssets: "Pesquisar ativos", searchKits: "Pesquisar kits", selectAll: "Selecionar tudo", selectAllAssetsInBoard: "Selecione todos os ativos neste quadro", selectAllVisibleAssets: "Selecione todos os ativos visíveis", selectedAssetSendFailed: "Não foi possível enviar o recurso selecionado de volta ao chat", selectionCopied: "Seleção copiada", selectionReady: "Seleção pronta", setupNeeded: "Configuração necessária", showAll: "Mostrar tudo", showPasteText: "Mostrar texto para colar", starterAssets: "Assets iniciais", stillRendering: "Ainda renderizando", tellAgentUseThis: 'Ou diga ao seu agente qual, por exemplo "use este".', uploadFailed: "Falha no upload", uploadTakingLonger: "O upload está demorando mais que o esperado.", uploadTakingLongerDescription: "O servidor ainda pode terminar de salvar esses ativos. Continuaremos verificando este kit da marca.", useCandidate: "Usar candidato", viewDetails: "Ver detalhes", }, root: { commandActions: "Ações", commandSearch: "Buscar", commandAppearance: "Aparência", toggleTheme: "Alternar tema", }, navigation: { create: "Criar", library: "Biblioteca", brandKits: "Kits de marca", auditLog: "Log de auditoria", settings: "Configurações", extensions: "Extensões", openNavigation: "Abrir navegação", expandSidebar: "Expandir barra lateral", collapseSidebar: "Recolher barra lateral", }, settings: { agentTitle: "Gerenciar agente", agentDescription: "Gerencie o modelo do agente, chaves de API, automações, voz e outros controles.", openAgentSettings: "Gerenciar agente", title: "Configurações", description: "Geração de assets, armazenamento e acesso a kits de marca.", connections: "Conexões", connectionsDescription: "Mantenha o Assets pronto para gerar, salvar e compartilhar mídia segura para a marca. Builder é o caminho mais simples; chaves manuais continuam disponíveis.", languageTitle: "Idioma", languageDescription: "Escolha o idioma da interface deste workspace de Assets.", languageLabel: "Idioma da interface", addBuilderGeminiOrOpenAI: "Adicione Builder, Gemini ou OpenAI antes de gerar novos ativos.", addGeminiOrOpenAI: "Adicione Gemini ou OpenAI antes de gerar novos ativos.", brandKits: "Kits de marca", builderDescriptionDisabled: "Desativado para esta implantação.", builderDescriptionManaged: "Geração e armazenamento de imagens gerenciados, sem chaves de provedor.", builderDescriptionReady: "Conectado para geração gerenciada.", builderManaged: "Builder está lidando com a geração de imagens gerenciadas.", chooseProvider: "Escolha um provedor", enterValueFirst: "Insira um valor primeiro.", generationNeedsSetup: "Precisa de configuração", manualGenerationDescription: "Adicione Gemini para geração de vídeo ou OpenAI/Gemini como substitutos de imagem.", manualGenerationKeys: "Chaves de geração manual", manualKeys: "Chaves manuais", noManualOptions: "Nenhuma opção de configuração manual está disponível para este item.", objectStorageDescription: "Use S3, R2, Spaces, Tigris, MinIO ou outro provedor compatível.", objectStorage: "Armazenamento de objetos", saveFailed: "Falha ao salvar", saveKey: "Salvar chave", saveSettings: "Salvar configurações", setupDescription: "Dois fundamentos: geração e armazenamento durável.", setupTitle: "Configuração Assets", storageNeedsSetup: "Adicione armazenamento compatível com S3 para ativos de produção e exportações.", storageReady: "Originais, miniaturas, vídeos e exportações têm um local durável.", }, chat: { emptyState: "Descreva o asset que você quer criar", suggestionBlogHeroes: "Gere 3 imagens hero de blog com este kit", suggestionProductVideo: "Crie um vídeo de produto de 8 segundos", suggestionReferenceStyle: "Combine o estilo dos meus assets de referência", chats: "Chats", newChat: "Novo chat", newAssetsChat: "Novo chat do Assets", renameChat: "Renomear chat", pinChat: "Fixar chat", unpinChat: "Desafixar chat", copyShareLink: "Copiar link", archiveChat: "Arquivar chat", archiveFailed: "Não foi possível arquivar o chat.", renameFailed: "Não foi possível renomear o chat.", shareLinkFailed: "Não foi possível criar um link de compartilhamento.", shareLinkCopied: "Link do chat copiado.", shareLinkReady: "Link do chat pronto.", optionsFor: "Opções de chat para {{title}}", }, create: { imageModel: "Modelo de imagem", modelBestQuality: "melhor qualidade", modelFast: "rápido", emptyState: "Pergunte ao Assets o que criar.", composerPlaceholder: "Descreva o asset - anexe imagens ou contexto com +", heroTitle: "Que asset vamos criar?", heroDescription: "Comece com uma imagem hero, revelação de produto, edição de referência ou direção a explorar.", starters: { image: "imagem", video: "vídeo", refine: "refinar" }, }, assetPicker: { generatedCandidates_one: "{{count}} candidato de imagem gerado", generatedCandidates_many: "{{count}} candidatos de imagem gerados", generatedCandidates_other: "{{count}} candidatos de imagem gerados", failedCandidates_one: "{{count}} candidato falhou.", failedCandidates_many: "{{count}} candidatos falharam.", failedCandidates_other: "{{count}} candidatos falharam.", starterAssets: "Assets iniciais", candidateCount: "Número de candidatos", closePreview: "Fechar prévia", copyToClipboard: "Copiar para a área de transferência", createLibrary: "Criar biblioteca", generatePlaceholder: "Gerar um asset de imagem", nextImage: "Próxima imagem", previousImage: "Imagem anterior", selectionCopied: "Seleção copiada", selectionReady: "Seleção pronta", showPasteText: "Mostrar texto para colar", addGenerationKey: "Adicione uma chave de geração em Configurações.", checkingLibraries: "Verificando bibliotecas de imagens...", connectGenerationModels: "Conecte modelos de geração.", copiedHelp: "Copiado para sua área de transferência. Cole-o no chat do seu agente para usá-lo ou apenas diga ao seu agente qual deles, por exemplo: use isto.", copyHelp: "Copie o texto abaixo e cole-o no chat do seu agente, ou apenas diga ao seu agente qual deles, por exemplo: use isto.", createLibraryForCandidates: "Crie uma biblioteca de imagens para gerar novos candidatos.", generatingCandidates: "Gerando candidatos...", generationFailed: "Falha na geração da imagem", loadingPreset: "Carregando predefinição...", loadingRequestedPreset: "Carregando a predefinição solicitada...", mcpImagePicksDescription: "Imagens geradas e selecionadas de hosts de bate-papo MCP.", mcpImagePicks: "Escolhas de imagem MCP", noUsableCandidates: "A geração da imagem terminou sem candidatos utilizáveis.", openAssets: "Abra Assets", pickCandidate: "Escolha aquele que você deseja enviar de volta.", prepareLibraryFailed: "Não foi possível preparar uma biblioteca de imagens", preparingGeneratedLibrary: "Preparando uma biblioteca de imagens para candidatos gerados...", preparingImageLibrary: "Preparando uma biblioteca de imagens...", preparing: "Preparando...", sendBackFailed: "Não foi possível enviar o recurso selecionado de volta ao chat", setupNeeded: "Configuração necessária", }, brandKitDetail: brandKitDetailPtBR, brandKits: { createAsset: "Criar ativo", createDialogDescription: "Comece com uma predefinição de estilo integrada ou crie um kit de marca em branco para suas próprias referências.", createDialogTitle: "Kit da nova marca", descriptionPlaceholder: "Ilustrações editoriais escuras, fragmentos do produto UI, paleta restrita.", description: "Organize referências, ativos gerados, pastas e orientações de estilo reutilizáveis.", duplicateCreated: "Cópia do kit de marca privada criada", duplicateFailed: "Não foi possível duplicar o kit da marca.", editDescriptionPlaceholder: "Descreva a direção visual ou o conteúdo deste kit de marca.", editDialogTitle: "Editar kit de marca", emptyDescription: "Comece com um kit de marca de estilo padrão ou crie suas próprias referências e orientações de estilo.", emptyTitle: "Ainda não há kits de marca", instructionsPlaceholder: "Mantenha sempre o produto UI legível, evite texto literal, a menos que solicitado, prefira composições editoriais silenciosas.", namePlaceholder: "Nome do kit da marca", newBrandKitLower: "Kit da nova marca", newBrandKit: "Novo kit de marca", noDescriptionYet: "Ainda não há descrição", presetCreateFailed: "Não foi possível criar um kit de marca predefinido.", searchPlaceholder: "Pesquisar kits de marca", startFromPresetDescription: "Crie um kit de marca editável com orientação de geração integrada.", startFromPreset: "Comece com uma predefinição de estilo", titlePlaceholder: "Heróis do blog de engenharia", title: "Kits de marca", updateFailed: "Falha ao atualizar o kit da marca", updated: "Kit da marca atualizado", yourBrandKitsDescription: "Referências de marca, imagens de produtos, vídeos, diagramas e candidatos gerados que outros agentes podem reutilizar", yourBrandKits: "Kits da sua marca", }, routeTitles: { library: "Biblioteca - Assets", generationPreset: "Predefinição de geração - Assets", brandKits: "Kits de marca - Assets", extension: "Extensão - Assets", extensions: "Extensões - Assets", team: "Equipe - Assets", }, team: { title: "Equipe", createOrgDescription: "Configure uma equipe para compartilhar kits de marca e ativos gerados com seus colegas.", }, assetDetail: { backToLibrary: "De volta à biblioteca", brandKit: "Kit de marca", continueRefining: "Continue refinando este ativo.", copiedPrompt: "Solicitação copiada", copiedUrl: "Copiado URL", copyFailed: "Não foi possível copiar para a área de transferência.", copyUrl: "Copiar URL", deleteDescription: "Isso remove o ativo da biblioteca. As exportações existentes que já usam este URL podem parar de renderizar.", deleteTitle: "Excluir recurso?", downloadFailed: "Não foi possível baixar o recurso.", loading: "Carregando recurso...", makeVariations: "Faça variações", makeVideoVariation: "Faça variação de vídeo", noDescription: "Nenhuma descrição armazenada", noPrompt: "Nenhum prompt armazenado", previewUnavailable: "Visualização indisponível", refineInstruction: "Pergunte o que deve mudar, refine esta imagem ativa e mostre a nova visualização.", unavailableDescription: "Esta imagem gerada pode ter sido apagada antes de ser salva ou o link pode apontar para um ativo ao qual você não tem mais acesso.", unavailableTitle: "Recurso indisponível", videoAsset: "Recurso de vídeo", }, audit: { title: "Log de auditoria", ownerOnlyFallback: "Fallback apenas do proprietário", orgWide: "Toda a organização", ownerScopedDescription: "Nenhum contexto de organização foi detectado, então esta visualização fica restrita às execuções que você acionou. Administradores da organização veem todo o feed de auditoria.", orgScopedDescription: "Visualizando dados de auditoria de toda a organização. Esta visualização é apenas para revisão de governança - toda geração no workspace aparece abaixo.", exporting: "Exportando...", exportCsv: "Exportar CSV", dateFrom: "Data inicial", dateTo: "Data final", ownerEmail: "Email do proprietário", promptSearch: "Buscar prompt", model: "Modelo", allModels: "Todos os modelos", status: "Status", allStatuses: "Todos os status", source: "Origem", allSources: "Todas as origens", callingApp: "App chamador (A2A)", clearFilters: "Limpar filtros", when: "Quando", owner: "Proprietário", brandKit: "Kit de marca", prompt: "Prompt", savedTotal: "Salvos / Total", runSummary: "Execução {{id}}... · {{time}}", videoBadge: "{{duration}} s · {{resolution}}", byOwner: "por {{email}}", userPrompt: "Prompt do usuário", compiledPrompt: "Prompt compilado", failed: "Falhou", parentRun: "Execução pai (fonte do refinamento)", referencesCount: "Referências ({{count}})", generatedChildrenCount: "Filhos gerados ({{count}})", noChildrenProduced: "Nenhum filho produzido.", openBrandKit: "Abrir kit de marca ->", viaCaller: "via {{caller}}", noRunsMatch: "Nenhuma execução corresponde a estes filtros", noRunsDescription: "Tente ampliar o intervalo de datas ou limpar filtros. As execuções de geração dos últimos 90 dias costumam ser um bom ponto de partida.", loadFailed: "Não foi possível carregar o log de auditoria", unknownError: "Erro desconhecido. Tente atualizar.", adminOnlyTitle: "O log de auditoria é apenas para administradores", adminOnlyDescription: "Somente administradores da organização podem ver o log de auditoria. Se você acredita que deveria ter acesso, peça a um proprietário para atualizar sua função.", secondsAgo: "há {{count}} s", minutesAgo: "há {{count}} min", hoursAgo: "há {{count}} h", daysAgo: "há {{count}} d", }, }), "hi-IN": mergeLocalizedMessages("hi-IN", { library: { allLibraries: "सभी लाइब्रेरी", noDrafts: "अभी तक कोई ड्राफ़्ट नहीं।", noMatchingDrafts: "कोई मिलान वाला ड्राफ़्ट नहीं।", recentDrafts: "हाल के ड्राफ़्ट", viewAllDrafts: "सभी ड्राफ़्ट देखें", draftAsset: "ड्राफ़्ट एसेट", addAssets: "संपत्तियां जोड़ें", addAssetsDescription: "स्रोत सामग्री अपलोड करें या उम्मीदवार तैयार करें, फिर केवल उन संपत्तियों को चिह्नित करें जो भविष्य की पीढ़ियों को संदर्भ के रूप में मार्गदर्शन करें।", addGenerationKey: "Settings में generation key जोड़ें।", addToReferences: "सन्दर्भों में जोड़ें", addedToReferences: "सन्दर्भों में जोड़ा गया.", allAssets: "सारी संपत्ति", allAssetsDescription: "सभी सुलभ किट", alreadyInThisBrandKit: "इस ब्रांड किट में पहले से ही है।", archiveBrandKit: "पुरालेख ब्रांड किट", archiveKitDescription: "यह ब्रांड किट को लाइब्रेरी सूची से हटा देता है। इसकी संपत्तियां और जनरेशन का इतिहास संग्रहीत रहता है।", archiveKitTitle: "इस ब्रांड किट को संग्रहीत करें?", archiving: "संग्रहित किया जा रहा है...", assetActions: "परिसंपत्ति क्रियाएं", assetScope: "संपत्ति का दायरा", assetView: "संपत्ति दृश्य", brandKitArchived: "ब्रांड किट संग्रहीत.", buildYourFirstKit: "अपना पहला किट बनाएं", buildYourFirstKitDescription: "एक पुन: प्रयोज्य शैली प्रीसेट से शुरू करें या अपने स्वयं के संदर्भों के लिए एक खाली लाइब्रेरी बनाएं।", candidateActions: "उम्मीदवार की हरकतें", checkingImageLibraries: "Image libraries जांची जा रही हैं...", checkingUpload: "अपलोड की जाँच की जा रही है", clearAll: "सभी साफ करें", clearCandidates: "उम्मीदवारों को साफ करें", clearCandidatesDescription: "लाइव चरण को साफ करता है और अ सहेजे गए ड्राफ्ट उम्मीदवारों को हटाता है।", clearGeneratedCandidatesDescription: "यह थ्रेड से सभी असहेजे गए उम्मीदवारों को हटा देता है और उनके पीछे जनित संपत्ति पंक्तियों को हटा देता है। सहेजी गई लाइब्रेरी संपत्तियों को छुआ नहीं जाता है।", clearGeneratedCandidatesTitle: "जनित उम्मीदवारों को साफ करें?", clearSearch: "स्पष्ट खोज", clearing: "समाशोधन...", closePreview: "Preview बंद करें", connectGenerationModels: "Generation models कनेक्ट करें।", copiedPasteInstruction: "क्लिपबोर्ड में कॉपी किया गया - इसे अपने एजेंट चैट में पेस्ट करके इसका उपयोग करें", copyPasteInstruction: "नीचे दिए गए पाठ को कॉपी करें और इसे अपने एजेंट चैट में पेस्ट करें", copyToClipboard: "Clipboard पर कॉपी करें", couldNotAddSelectedToReferences: "चयनित परिसंपत्तियों को संदर्भों में नहीं जोड़ा जा सका.", couldNotAddToReferences: "संदर्भों में संपत्ति नहीं जोड़ी जा सकी.", couldNotClearCandidates: "उम्मीदवारों को साफ़ नहीं किया जा सका.", couldNotCreateFolder: "फ़ोल्डर नहीं बनाया जा सका", couldNotDeleteAsset: "संपत्ति को हटाया नहीं जा सका.", couldNotDeleteSelectedAssets: "चयनित संपत्तियों को हटाया नहीं जा सका.", couldNotDismissCandidate: "उम्मीदवार को बर्खास्त नहीं किया जा सका.", couldNotPrepareHandoff: "हैंडऑफ़ तैयार नहीं हो सका.", couldNotPrepareImageLibrary: "Image library तैयार नहीं कर सके", couldNotRemoveSelectedFromReferences: "संदर्भों से चयनित संपत्तियों को हटाया नहीं जा सका.", couldNotSaveCandidate: "उम्मीदवार को बचाया नहीं जा सका.", couldNotSaveDraft: "ड्राफ्ट को सहेजा नहीं जा सका।", createBlankKit: "खाली किट बनाएं", createBrandKit: "ब्रांड किट बनाएं", createImageLibraryToGenerate: "नए candidates generate करने के लिए image library बनाएं।", createLibrary: "लाइब्रेरी बनाएं", defaultKitDescription: "एजेंटों के बीच पुन: प्रयोज्य संपत्तियों को अपलोड करें, उत्पन्न करें, वर्णन करें और व्यवस्थित करें।", defaultTextPolicy: "किसी एम्बेडेड टेक्स्ट को प्राथमिकता न दें. किसी भी अनुरोधित पाठ को संक्षिप्त और पठनीय रखें।", deleteAssetDescription: "यह ब्रांड किट से संपत्ति को स्थायी रूप से हटा देता है। इसे लाइब्रेरी में रखने के लिए लेकिन संदर्भ के रूप में उपयोग करना बंद करने के लिए, इसके बजाय संदर्भ से निकालें का उपयोग करें।", deleteAssetTitle: "संपत्ति हटाएं?", deleteAssetsDescription: "यह ब्रांड किट से चयनित संपत्तियों को स्थायी रूप से हटा देता है। किसी परिसंपत्ति को संदर्भ के रूप में उपयोग करना बंद करने लेकिन उसे बनाए रखने के लिए, इसके बजाय संदर्भ से निकालें का उपयोग करें।", deleteCandidate: "उम्मीदवार हटाएं", deletedAsset: "हटाई गई संपत्ति.", deselectAll: "सभी का चयन रद्द करें", dismissCandidateTitle: "इस उम्मीदवार को बर्खास्त करें?", dismissFailed: "ख़ारिज करना विफल रहा", dismissFailedSlotsDescription: "पैनल से प्रत्येक विफल स्लॉट को हटा देता है। सफल उम्मीदवार रुके रहते हैं.", dismissedCandidate: "बर्खास्त उम्मीदवार.", dismissing: "ख़ारिज किया जा रहा है...", dropAssetsHere: "संपत्ति यहां गिराएं", dropAssetsHereBody: "स्रोत सामग्री, उत्पन्न निर्यात, लोगो, उत्पाद या स्टाइल बोर्ड अपलोड करें।", duplicating: "नकल हो रही है...", editBrandKit: "ब्रांड किट का नाम और विवरण संपादित करें", failed: "विफल", failedCandidate: "असफल उम्मीदवार", folderNamePlaceholder: "अभियान का शुभारंभ", fullSizePreview: "{{title}} का full-size preview", generateImagePlaceholder: "Image asset generate करें", generatedAsset: "उत्पन्न संपत्ति", generatedCandidatesTitle: "जनित उम्मीदवार", generatingCandidate: "उम्मीदवार तैयार करना", generatingCandidates: "Candidates generate हो रहे हैं...", generationFailed: "Image generation विफल हुआ", kitActions: "ब्रांड किट क्रियाएँ", libraryEyebrow: "इस फ़िल्टर किए गए दृश्य में संपत्तियाँ सहेजी गईं। उन्हें चिन्हित करें जो भावी पीढ़ियों का मार्गदर्शन करें।", liveSlot: "लाइव स्लॉट", loading: "एसेट लोड हो रहा है...", loadingBrandKit: "ब्रांड किट लोड हो रहा है...", loadingPreset: "Preset लोड हो रहा है...", loadingRequestedPreset: "Requested preset लोड हो रहा है...", mcpImagePicks: "MCP छवि चयन", mcpImagePicksDescription: "MCP chat hosts से generated और selected images.", moveTo: "की ओर बढ़ें", newFolder: "नया फ़ोल्डर", newFolderDescription: "किसी अभियान, चैनल या पुन: प्रयोज्य संग्रह के लिए समूह अपलोड और जेनरेट की गई संपत्तियां।", newFolderEllipsis: "नया फ़ोल्डर...", newKit: "नया किट", nextImage: "अगली image", noAssetsMatchView: "कोई भी संपत्ति इस दृश्य से मेल नहीं खाती", noAssetsMatchViewBody: "सभी संपत्तियाँ, एक अलग फ़ोल्डर, या एक विस्तृत खोज आज़माएँ।", noAssetsToShow: "दिखाने के लिए कोई संपत्ति नहीं.", noBrandKit: "कोई ब्रांड किट नहीं", noKitsMatch: "आपकी खोज से कोई किट मेल नहीं खाता।", noMatchingAssets: "आपकी किट में कोई मेल खाने वाली संपत्ति नहीं है।", noNewAssetsUploaded: "कोई नई संपत्ति अपलोड नहीं की गई.", noReferencesInView: "इस दृश्य में कोई संदर्भ नहीं", noReferencesInViewBody: "सभी परिसंपत्तियों पर वापस जाएँ और रखवालों को संदर्भ के रूप में चिह्नित करें।", noReusableAssets: "अभी तक कोई पुन: प्रयोज्य संपत्तियां नहीं। संदर्भ अपलोड करने या संपत्तियां जनित करने के लिए एक किट चुनें।", openAssets: "Assets खोलें", openChat: "चैट खोलें", openDetails: "विवरण खोलें", preparing: "तैयार हो रहा है...", preparingImageLibrary: "Image library तैयार हो रही है...", preparingImageLibraryCandidates: "Generated candidates के लिए image library तैयार हो रही है...", previousImage: "पिछली image", primaryKitActions: "प्राथमिक किट क्रियाएं", privateBrandKitCopyCreated: "निजी ब्रांड किट की प्रतिलिपि बनाई गई", readyCandidate: "तैयार उम्मीदवार", readyToSave: "बचाने के लिए तैयार", referenceCount: "{{count}} references", referencesEyebrow: "Assets वर्तमान में पीढ़ी संदर्भ के लिए चिह्नित है।", removeFromReferences: "सन्दर्भों से हटाएँ", runHasNoGeneratedAssets: "इस रन के पास सौंपने के लिए उत्पन्न संपत्ति नहीं है।", saveTo: "इसमें सहेजें...", savedGeneratedAsset: "जनित संपत्ति सहेजी गई।", savedToLibrary: "लाइब्रेरी में सहेजा गया।", searchAssets: "संपत्ति खोजें", searchKits: "किट खोजें", selectAll: "सभी का चयन करें", selectAllAssetsInBoard: "इस बोर्ड में सभी संपत्तियों का चयन करें", selectAllVisibleAssets: "सभी दृश्यमान परिसंपत्तियों का चयन करें", selectedAssetSendFailed: "चुने गए एसेट को chat में वापस नहीं भेज सके", selectionCopied: "Selection कॉपी हुआ", selectionReady: "Selection तैयार है", setupNeeded: "Setup जरूरी है", showAll: "सब दिखाओ", showPasteText: "Paste text दिखाएं", starterAssets: "शुरुआती एसेट", stillRendering: "अभी भी रेंडरिंग कर रहा है", tellAgentUseThis: 'या अपने एजेंट को बताएं कि कौन सा, उदाहरण के लिए "इसका उपयोग करें"।', uploadFailed: "अपलोड विफल रहा", uploadTakingLonger: "अपलोड में अपेक्षा से अधिक समय लग रहा है.", uploadTakingLongerDescription: "सर्वर अभी भी इन परिसंपत्तियों को सहेजना समाप्त कर सकता है। हम इस ब्रांड किट की जाँच करते रहेंगे।", useCandidate: "उम्मीदवार का उपयोग करें", viewDetails: "विवरण देखें", }, root: { commandActions: "क्रियाएं", commandSearch: "खोजें", commandAppearance: "रूप", toggleTheme: "थीम बदलें", }, navigation: { create: "बनाएं", library: "लाइब्रेरी", brandKits: "ब्रांड किट", auditLog: "ऑडिट लॉग", settings: "सेटिंग्स", extensions: "एक्सटेंशन", openNavigation: "नेविगेशन खोलें", expandSidebar: "साइडबार फैलाएं", collapseSidebar: "साइडबार समेटें", }, settings: { agentTitle: "एजेंट प्रबंधित करें", agentDescription: "एजेंट के मॉडल, API कुंजियों, ऑटोमेशन, आवाज़ और अन्य नियंत्रणों को प्रबंधित करें।", openAgentSettings: "एजेंट प्रबंधित करें", title: "सेटिंग्स", description: "एसेट जेनरेशन, स्टोरेज और ब्रांड किट एक्सेस।", connections: "कनेक्शन", connectionsDescription: "Assets को ब्रांड-सुरक्षित मीडिया बनाने, सहेजने और साझा करने के लिए तैयार रखें। Builder सबसे आसान रास्ता है; जरूरत पड़ने पर मैनुअल कुंजियां उपलब्ध रहती हैं।", languageTitle: "भाषा", languageDescription: "इस Assets workspace की इंटरफ़ेस भाषा चुनें।", languageLabel: "इंटरफ़ेस भाषा", setupTitle: "Assets सेटअप", setupDescription: "दो जरूरी चीजें: generation और durable storage.", setupReady: "तैयार", builderDescriptionReady: "Managed generation के लिए connected.", builderDescriptionManaged: "Managed image generation और storage, provider keys के बिना.", builderDescriptionDisabled: "इस deployment के लिए disabled.", optional: "वैकल्पिक", reconnect: "फिर से कनेक्ट करें", generation: "जनरेशन", generationReady: "तैयार", generationNeedsSetup: "Setup जरूरी", manualGenerationKeys: "मैनुअल generation keys", manualGenerationDescription: "वीडियो generation के लिए Gemini जोड़ें, या image fallbacks के लिए OpenAI/Gemini.", storage: "स्टोरेज", storageReady: "Originals, thumbnails, videos और exports के लिए durable home मौजूद है.", storageNeedsSetup: "Production assets और exports के लिए S3-compatible storage जोड़ें.", objectStorage: "ऑब्जेक्ट स्टोरेज", objectStorageDescription: "S3, R2, Spaces, Tigris, MinIO या कोई compatible provider उपयोग करें.", available: "उपलब्ध", connecting: "कनेक्ट हो रहा है", noManualOptions: "इस item के लिए कोई manual setup options उपलब्ध नहीं हैं.", builderManaged: "Builder managed image generation संभाल रहा है.", providerConfigured: "{{providers}} configured.", addBuilderGeminiOrOpenAI: "नई संपत्तियां बनाने से पहले Builder, Gemini, या OpenAI जोड़ें।", addGeminiOrOpenAI: "नई संपत्तियां बनाने से पहले Gemini या OpenAI जोड़ें।", brandKits: "ब्रांड किट", chooseProvider: "एक प्रदाता चुनें", enterValueFirst: "पहले एक मान दर्ज करें.", manualKeys: "मैनुअल चाबियाँ", saveFailed: "सहेजना विफल", saveKey: "कुंजी सहेजें", saveSettings: "सेटिंग्स सेव करें", }, chat: { emptyState: "बताएं कि आप कौन सा एसेट बनाना चाहते हैं", suggestionBlogHeroes: "इस ब्रांड किट से 3 ब्लॉग hero बनाएं", suggestionProductVideo: "8 सेकंड का product reveal वीडियो बनाएं", suggestionReferenceStyle: "मेरे reference assets की शैली मिलाएं", chats: "चैट", newChat: "नई चैट", newAssetsChat: "नई Assets चैट", renameChat: "चैट का नाम बदलें", pinChat: "चैट पिन करें", unpinChat: "चैट अनपिन करें", copyShareLink: "शेयर लिंक कॉपी करें", archiveChat: "चैट आर्काइव करें", archiveFailed: "चैट आर्काइव नहीं कर सके।", renameFailed: "चैट का नाम नहीं बदल सके।", shareLinkFailed: "शेयर लिंक नहीं बना सके।", shareLinkCopied: "चैट शेयर लिंक कॉपी हुआ।", shareLinkReady: "चैट शेयर लिंक तैयार है।", optionsFor: "{{title}} के लिए चैट विकल्प", }, create: { imageModel: "इमेज मॉडल", modelBestQuality: "सर्वश्रेष्ठ गुणवत्ता", modelFast: "तेज़", emptyState: "Assets से पूछें कि क्या बनाना है।", composerPlaceholder: "एसेट का वर्णन करें - + से images या text context जोड़ें", heroTitle: "हम कौन सा एसेट बनाएं?", heroDescription: "hero image, product reveal, reference edit या खोजने की दिशा से शुरू करें।", starters: { image: "इमेज", video: "वीडियो", refine: "परिष्कृत करें" }, }, routeTitles: { library: "लाइब्रेरी - Assets", generationPreset: "जनरेशन प्रीसेट - Assets", brandKits: "ब्रांड किट - Assets", extension: "एक्सटेंशन - Assets", extensions: "एक्सटेंशन - Assets", team: "टीम - Assets", }, team: { title: "टीम", createOrgDescription: "सहकर्मियों के साथ ब्रांड किट और जनरेट किए गए एसेट साझा करने के लिए टीम सेट अप करें।", }, assetDetail: assetDetailHiIN, assetPicker: assetPickerHiIN, brandKitDetail: brandKitDetailHiIN, audit: { title: "ऑडिट लॉग", ownerOnlyFallback: "केवल मालिक fallback", orgWide: "पूरे संगठन में", ownerScopedDescription: "कोई संगठन context नहीं मिला, इसलिए यह view केवल आपकी trigger की गई runs तक सीमित है। संगठन admins पूरा org-wide audit feed देखते हैं।", orgScopedDescription: "पूरे संगठन का audit data दिखाया जा रहा है। यह view केवल governance review के लिए है - workspace की हर generation नीचे सूचीबद्ध है।", exporting: "Export हो रहा है...", exportCsv: "CSV export करें", dateFrom: "आरंभ तारीख", dateTo: "समाप्ति तारीख", ownerEmail: "मालिक का email", promptSearch: "Prompt खोजें", model: "मॉडल", allModels: "सभी मॉडल", status: "स्थिति", allStatuses: "सभी स्थितियां", source: "स्रोत", allSources: "सभी स्रोत", callingApp: "कॉल करने वाला app (A2A)", clearFilters: "Filters साफ करें", when: "कब", owner: "मालिक", brandKit: "ब्रांड किट", prompt: "Prompt", savedTotal: "सहेजे गए / कुल", runSummary: "Run {{id}}... · {{time}}", videoBadge: "{{duration}} सेकंड · {{resolution}}", byOwner: "{{email}} द्वारा", userPrompt: "उपयोगकर्ता संकेत", compiledPrompt: "शीघ्र संकलित", failed: "विफल", parentRun: "Parent run (refinement source)", referencesCount: "References ({{count}})", generatedChildrenCount: "Generated children ({{count}})", noChildrenProduced: "कोई child produce नहीं हुआ।", openBrandKit: "ब्रांड किट खोलें ->", viaCaller: "{{caller}} के जरिए", noRunsMatch: "इन filters से कोई run match नहीं करता", noRunsDescription: "Date range बढ़ाएं या filters साफ करें। पिछले 90 दिनों की generation runs आम तौर पर अच्छा starting view होती हैं।", loadFailed: "ऑडिट लॉग load नहीं हो सका", unknownError: "अज्ञात error। Refresh करके देखें।", adminOnlyTitle: "ऑडिट लॉग केवल admins के लिए है", adminOnlyDescription: "केवल org admins audit log देख सकते हैं। अगर आपको लगता है कि आपके पास access होना चाहिए, तो org owner से अपना role upgrade करने को कहें।", secondsAgo: "{{count}} सेकंड पहले", minutesAgo: "{{count}} मिनट पहले", hoursAgo: "{{count}} घंटे पहले", daysAgo: "{{count}} दिन पहले", }, brandKits: brandKitsHiIN, }), "ar-SA": mergeLocalizedMessages("ar-SA", { library: { allLibraries: "جميع المكتبات", noDrafts: "لا توجد مسودات بعد.", noMatchingDrafts: "لا توجد مسودات مطابقة.", recentDrafts: "المسودات الأخيرة", viewAllDrafts: "عرض جميع المسودات", draftAsset: "مسودة", addAssets: "أضف الأصول", addAssetsDescription: "قم بتحميل المواد المصدرية أو قم بإنشاء مرشحين، ثم حدد فقط الأصول التي يجب أن توجه الأجيال القادمة كمراجع.", addGenerationKey: "أضف مفتاح إنشاء في الإعدادات.", addToReferences: "أضف إلى المراجع", addedToReferences: "تمت إضافتها إلى المراجع.", allAssets: "جميع الأصول", allAssetsDescription: "جميع المجموعات التي يمكن الوصول إليها", alreadyInThisBrandKit: "بالفعل في هذه المجموعة العلامة التجارية.", archiveBrandKit: "أرشيف مجموعة العلامات التجارية", archiveKitDescription: "هذا يزيل مجموعة العلامة التجارية من قائمة المكتبة. تبقى أصولها وسجل الإنشاء مخزنة.", archiveKitTitle: "أرشفة مجموعة العلامة التجارية هذه؟", archiving: "أرشفة...", assetActions: "إجراءات الأصول", assetScope: "نطاق الأصول", assetView: "عرض الأصول", brandKitArchived: "تم أرشفة مجموعة العلامة التجارية.", buildYourFirstKit: "بناء مجموعتك الأولى", buildYourFirstKitDescription: "ابدأ من إعداد نمط قابل لإعادة الاستخدام أو أنشئ مكتبة فارغة لمراجعاتك الخاصة.", candidateActions: "تصرفات المرشح", checkingImageLibraries: "جارٍ فحص مكتبات الصور...", checkingUpload: "التحقق من التحميل", clearAll: "مسح الكل", clearCandidates: "امسح المرشحين", clearCandidatesDescription: "مسح مرحلة المرشح وحذف المرشحين الذين تم إنشاؤهم غير المحفوظة. أصول المكتبة المحفوظة تبقى دون تغيير.", clearGeneratedCandidatesDescription: "هذا يزيل كل المرشحين غير المحفوظين من الخيط ويحذف صفوف الأصول المولدة خلفهم. الأصول المحفوظة في المكتبة لا تتأثر.", clearGeneratedCandidatesTitle: "مسح المرشحين المولدين؟", clearSearch: "مسح البحث", clearing: "المقاصة...", closePreview: "إغلاق المعاينة", connectGenerationModels: "صل نماذج الإنشاء.", copied: "تم النسخ", copiedPasteInstruction: "تم النسخ إلى الحافظة - الصقه في محادثة وكيلك لاستخدامه", copy: "نسخ", copyAsset: "نسخ {{title}}", copyPasteInstruction: "انسخ النص أدناه والصقه في محادثة وكيلك", copyToClipboard: "نسخ إلى الحافظة", couldNotAddSelectedToReferences: "لا يمكن إضافة الأصول المحددة إلى المراجع.", couldNotAddToReferences: "لا يمكن إضافة الأصل إلى المراجع.", couldNotClearCandidates: "لا يمكن مسح المرشحين.", couldNotCreateFolder: "لا يمكن إنشاء المجلد", couldNotDeleteAsset: "لا يمكن حذف الأصل.", couldNotDeleteSelectedAssets: "لا يمكن حذف الأصول المحددة.", couldNotDismissCandidate: "لا يمكن استبعاد المرشح.", couldNotPrepareHandoff: "لا يمكن تحضير عملية التسليم.", couldNotPrepareImageLibrary: "تعذر إعداد مكتبة صور", couldNotRemoveSelectedFromReferences: "لا يمكن إزالة الأصول المحددة من المراجع.", couldNotSaveCandidate: "لا يمكن حفظ المرشح.", couldNotSaveDraft: "تعذر حفظ المسودة.", createBlankKit: "إنشاء مجموعة فارغة", createBrandKit: "إنشاء مجموعة علامة تجارية", createImageLibraryToGenerate: "أنشئ مكتبة صور لإنشاء مرشحات جديدة.", createLibrary: "إنشاء مكتبة", defaultKitDescription: "قم بتحميل الأصول القابلة لإعادة الاستخدام وإنشائها ووصفها وتنظيمها عبر الوكلاء.", defaultTextPolicy: "أفضّل عدم وجود نص مضمن. اجعل أي نص مطلوب قصيرًا وسهل القراءة.", deleteAssetDescription: "يؤدي هذا إلى إزالة الأصل نهائيًا من مجموعة العلامة التجارية. للاحتفاظ به في المكتبة مع التوقف عن استخدامه كمرجع، استخدم الإزالة من المراجع بدلاً من ذلك.", deleteAssetTitle: "حذف الأصل؟", deleteAssetsDescription: 'يؤدي هذا إلى إزالة الأصول المحددة من مجموعة العلامة التجارية بشكل دائم. للتوقف عن استخدام أحد الأصول كمرجع مع الاحتفاظ به، استخدم "إزالة من المراجع" بدلاً من ذلك.', deleteCandidate: "هل تريد حذف المرشح؟", deletedAsset: "الأصول المحذوفة.", deselectAll: "قم بإلغاء تحديد الكل", dismissCandidateTitle: "هل تريد استبعاد هذا المرشح؟", dismissFailed: "فشل الرفض", dismissFailedSlotsDescription: "يزيل كل فتحة فاشلة من اللوحة. يبقى المرشحون الناجحون.", dismissedCandidate: "مرشح مرفوض.", dismissing: "جارٍ الرفض...", dropAssetsHere: "إسقاط الأصول هنا", dropAssetsHereBody: "قم بتحميل المواد المصدرية أو الصادرات التي تم إنشاؤها أو الشعارات أو المنتجات أو لوحات الأنماط.", duplicating: "تكرار...", editBrandKit: "تحرير اسم مجموعة العلامة التجارية ووصفها", failed: "فشل", failedCandidate: "مرشح فاشل", folderNamePlaceholder: "إطلاق الحملة", fullSizePreview: "معاينة بالحجم الكامل لـ {{title}}", generateImagePlaceholder: "إنشاء أصل صورة", generatedAsset: "الأصول التي تم إنشاؤها", generatedCandidatesTitle: "المرشحون المولدون", generatingCandidate: "توليد المرشح", generatingCandidates: "جارٍ إنشاء المرشحات...", generationFailed: "فشل إنشاء الصورة", kitActions: "إجراءات مجموعة العلامة التجارية", libraryEyebrow: "الأصول المحفوظة في طريقة العرض التي تمت تصفيتها. ضع علامة على الأشخاص الذين يجب أن يرشدوا الأجيال القادمة.", liveSlot: "فتحة حية", loading: "جارٍ تحميل الأصل...", loadingBrandKit: "جارٍ تحميل مجموعة العلامات التجارية...", loadingPreset: "جارٍ تحميل الإعداد المسبق...", loadingRequestedPreset: "جارٍ تحميل الإعداد المسبق المطلوب...", mcpImagePicks: "اختيارات صور MCP", mcpImagePicksDescription: "صور تم إنشاؤها وتحديدها من مضيفي محادثة MCP.", moveTo: "انتقل الى", newFolder: "مجلد جديد", newFolderDescription: "قم بتجميع الأصول التي تم تحميلها وإنشاؤها لحملة أو قناة أو مجموعة قابلة لإعادة الاستخدام.", newFolderEllipsis: "مجلد جديد...", newKit: "مجموعة جديدة", nextImage: "الصورة التالية", noAssetsInLibrary: "لا توجد أصول {{mediaLabel}} في هذه المكتبة بعد.", noAssetsMatchView: "لا توجد أصول تطابق طريقة العرض هذه", noAssetsMatchViewBody: "جرّب جميع الأصول أو مجلدًا مختلفًا أو بحثًا أوسع.", noAssetsToShow: "لا توجد أصول لعرضها.", noBrandKit: "لا توجد مجموعة علامة تجارية", noKitsMatch: "لا توجد مجموعات تطابق بحثك.", noMatchingAssets: "لا توجد أصول مطابقة عبر مجموعاتك.", noMatchingLibraryAssets: "لا توجد أصول {{mediaLabel}} مطابقة في هذه المكتبة.", noNewAssetsUploaded: "لم يتم تحميل أي أصول جديدة.", noReferencesInView: "لا توجد مراجع في هذا الرأي", noReferencesInViewBody: "قم بالتبديل مرة أخرى إلى جميع الأصول وقم بوضع علامة على المحافظين كمراجع.", noReusableAssets: "لا توجد أصول قابلة لإعادة الاستخدام حتى الآن. حدد مجموعة لتحميل المراجع أو إنشاء الأصول.", openAssets: "فتح Assets", openChat: "افتح الدردشة", openDetails: "فتح التفاصيل", preparing: "جارٍ التحضير...", preparingImageLibrary: "جارٍ إعداد مكتبة صور...", preparingImageLibraryCandidates: "جارٍ إعداد مكتبة صور للمرشحات المنشأة...", previousImage: "الصورة السابقة", primaryKitActions: "إجراءات المجموعة الأساسية", privateBrandKitCopyCreated: "تم إنشاء نسخة مجموعة العلامة التجارية الخاصة", readyCandidate: "مرشح جاهز", readyToSave: "جاهز للحفظ", referencesEyebrow: "تم وضع علامة Assets حاليًا كمرجع للجيل.", removeFromReferences: "إزالة من المراجع", runHasNoGeneratedAssets: "لا يحتوي هذا التشغيل على أصول تم إنشاؤها لتسليمها.", saveTo: "حفظ إلى...", savedGeneratedAsset: "تم حفظ الأصل المولد.", savedToLibrary: "تم الحفظ في المكتبة.", searchAssets: "بحث الأصول", searchKits: "البحث عن المجموعات", searchMedia: "بحث في {{mediaLabel}}", selectAll: "حدد الكل", selectAllAssetsInBoard: "حدد جميع الأصول في هذا المنتدى", selectAllVisibleAssets: "حدد جميع الأصول المرئية", selectedAssetSendFailed: "تعذر إرسال الأصل المحدد إلى المحادثة", selectionCopied: "تم نسخ التحديد", selectionReady: "التحديد جاهز", setupNeeded: "يلزم الإعداد", showAll: "إظهار الكل", showPasteText: "إظهار نص اللصق", starterAssets: "أصول البداية", stillRendering: "لا يزال قيد الحساب", tellAgentUseThis: 'أو أخبر وكيلك بأي واحد، على سبيل المثال "استخدم هذا".', uploadFailed: "فشل التحميل", uploadTakingLonger: "يستغرق التحميل وقتًا أطول من المتوقع.", uploadTakingLongerDescription: "ربما يستمر الخادم في إنهاء حفظ هذه الأصول. سنستمر في التحقق من مجموعة العلامات التجارية هذه.", useCandidate: "استخدام المرشح", viewDetails: "عرض التفاصيل", }, root: { commandActions: "الإجراءات", commandSearch: "بحث", commandAppearance: "المظهر", toggleTheme: "تبديل السمة", }, navigation: { create: "إنشاء", library: "المكتبة", brandKits: "مجموعات العلامة", auditLog: "سجل التدقيق", settings: "الإعدادات", extensions: "الإضافات", openNavigation: "فتح التنقل", expandSidebar: "توسيع الشريط الجانبي", collapseSidebar: "طي الشريط الجانبي", }, settings: { agentTitle: "إدارة الوكيل", agentDescription: "أدر نموذج الوكيل ومفاتيح API والأتمتة والصوت وعناصر التحكم الأخرى.", openAgentSettings: "إدارة الوكيل", title: "الإعدادات", description: "إنشاء الأصول والتخزين والوصول إلى مجموعات العلامة.", connections: "الاتصالات", connectionsDescription: "اجعل Assets جاهزًا لإنشاء الوسائط الآمنة للعلامة وحفظها ومشاركتها. Builder هو المسار الأبسط، وتبقى المفاتيح اليدوية متاحة عند الحاجة.", languageTitle: "اللغة", languageDescription: "اختر لغة الواجهة لمساحة عمل Assets هذه.", languageLabel: "لغة الواجهة", addBuilderGeminiOrOpenAI: "قم بإضافة Builder، أو Gemini، أو OpenAI قبل إنشاء أصول جديدة.", addGeminiOrOpenAI: "أضف Gemini أو OpenAI قبل إنشاء أصول جديدة.", brandKits: "مجموعات العلامة التجارية", builderDescriptionDisabled: "معطل لهذا النشر.", builderDescriptionManaged: "إدارة إنشاء الصور وتخزينها، بدون مفاتيح الموفر.", builderDescriptionReady: "متصل للجيل المدار.", builderManaged: "يتعامل Builder مع إنشاء الصور المُدارة.", chooseProvider: "اختر مزودًا", enterValueFirst: "أدخل قيمة أولاً.", generationNeedsSetup: "يحتاج إلى إعداد", manualGenerationDescription: "أضف Gemini لإنشاء الفيديو، أو OpenAI/Gemini كصور احتياطية.", manualGenerationKeys: "مفاتيح الجيل اليدوي", manualKeys: "مفاتيح يدوية", noManualOptions: "لا تتوفر خيارات الإعداد اليدوي لهذا العنصر.", objectStorageDescription: "استخدم S3، أو R2، أو Spaces، أو Tigris، أو MinIO، أو أي موفر آخر متوافق.", objectStorage: "تخزين الكائنات", saveFailed: "فشل الحفظ", saveKey: "حفظ المفتاح", saveSettings: "حفظ الإعدادات", setupDescription: "أساسيان: التوليد والتخزين الدائم.", setupTitle: "إعداد Assets", storageNeedsSetup: "أضف مساحة تخزين متوافقة مع S3 لأصول الإنتاج والصادرات.", storageReady: "تتمتع النسخ الأصلية والصور المصغرة ومقاطع الفيديو والصادرات بمكانة متينة.", }, chat: { emptyState: "صف الأصل الذي تريد إنشاءه", suggestionBlogHeroes: "أنشئ 3 صور رئيسية للمدونة من مجموعة العلامة هذه", suggestionProductVideo: "أنشئ فيديو عرض منتج مدته 8 ثوانٍ", suggestionReferenceStyle: "طابق أسلوب أصولي المرجعية", chats: "المحادثات", newChat: "محادثة جديدة", newAssetsChat: "محادثة Assets جديدة", renameChat: "إعادة تسمية المحادثة", pinChat: "تثبيت المحادثة", unpinChat: "إلغاء تثبيت المحادثة", copyShareLink: "نسخ رابط المشاركة", archiveChat: "أرشفة المحادثة", archiveFailed: "تعذرت أرشفة المحادثة.", renameFailed: "تعذرت إعادة تسمية المحادثة.", shareLinkFailed: "تعذر إنشاء رابط مشاركة.", shareLinkCopied: "تم نسخ رابط مشاركة المحادثة.", shareLinkReady: "رابط مشاركة المحادثة جاهز.", optionsFor: "خيارات المحادثة لـ {{title}}", }, create: { imageModel: "نموذج الصورة", modelBestQuality: "أفضل جودة", modelFast: "سريع", emptyState: "اسأل Assets عمّا تريد إنشاءه.", composerPlaceholder: "صف الأصل - أرفق صورًا أو سياقًا نصيًا باستخدام +", heroTitle: "ما الأصل الذي سننشئه؟", heroDescription: "ابدأ بصورة رئيسية أو عرض منتج أو تعديل مرجعي أو اتجاه تريد استكشافه.", starters: { image: "صورة", video: "فيديو", refine: "تحسين" }, }, assetPicker: { generatedCandidates_zero: "تم إنشاء {{count}} مرشح صورة", generatedCandidates_one: "تم إنشاء {{count}} مرشح صورة", generatedCandidates_two: "تم إنشاء {{count}} مرشحي صورة", generatedCandidates_few: "تم إنشاء {{count}} مرشحات صورة", generatedCandidates_many: "تم إنشاء {{count}} مرشح صورة", generatedCandidates_other: "تم إنشاء {{count}} مرشح صورة", failedCandidates_zero: "فشل {{count}} مرشح.", failedCandidates_one: "فشل {{count}} مرشح.", failedCandidates_two: "فشل {{count}} مرشحان.", failedCandidates_few: "فشل {{count}} مرشحات.", failedCandidates_many: "فشل {{count}} مرشحًا.", failedCandidates_other: "فشل {{count}} مرشح.", starterAssets: "أصول البداية", pickCandidate: "اختر العنصر الذي تريد إرساله مرة أخرى.", noUsableCandidates: "اكتمل إنشاء الصورة دون مرشحات قابلة للاستخدام.", generationFailed: "فشل إنشاء الصورة", selectionCopied: "تم نسخ التحديد", selectionReady: "التحديد جاهز", selectedAsset: "تم تحديد {{title}}", sendBackFailed: "تعذر إرسال الأصل المحدد إلى المحادثة", mcpImagePicks: "اختيارات صور MCP", mcpImagePicksDescription: "صور تم إنشاؤها وتحديدها من مضيفي محادثة MCP.", prepareLibraryFailed: "تعذر إعداد مكتبة صور", addGenerationKey: "أضف مفتاح إنشاء في الإعدادات.", connectGenerationModels: "صل نماذج الإنشاء.", loadingPreset: "جارٍ تحميل الإعداد المسبق...", setupNeeded: "يلزم الإعداد", preparing: "جارٍ التحضير...", generatingCandidates: "جارٍ إنشاء المرشحات...", checkingLibraries: "جارٍ فحص مكتبات الصور...", preparingImageLibrary: "جارٍ إعداد مكتبة صور...", loadingRequestedPreset: "جارٍ تحميل الإعداد المسبق المطلوب...", openAssets: "فتح Assets", generatePlaceholder: "إنشاء أصل صورة", candidateCount: "عدد المرشحين", preparingGeneratedLibrary: "جارٍ إعداد مكتبة صور للمرشحات المنشأة...", createLibraryForCandidates: "أنشئ مكتبة صور لإنشاء مرشحات جديدة.", createLibrary: "إنشاء مكتبة", copied: "تم النسخ", copy: "نسخ", copiedHelp: "تم النسخ إلى الحافظة. الصقه في محادثة الوكيل لاستخدامه، أو أخبر الوكيل أي عنصر يستخدم، مثل: استخدم هذا.", copyHelp: "انسخ النص أدناه والصقه في محادثة الوكيل، أو أخبر الوكيل أي عنصر يستخدم، مثل: استخدم هذا.", showPasteText: "إظهار نص اللصق", searchMedia: "بحث في {{media}}", noMatchingAssets: "لا توجد أصول {{media}} مطابقة في هذه المكتبة.", noAssetsYet: "لا توجد أصول {{media}} في هذه المكتبة بعد.", openAsset: "فتح {{title}}", copyAsset: "نسخ {{title}}", copyToClipboard: "نسخ إلى الحافظة", fullSizePreview: "معاينة بالحجم الكامل لـ {{title}}", closePreview: "إغلاق المعاينة", previousImage: "الصورة السابقة", nextImage: "الصورة التالية", }, brandKitDetail: brandKitDetailArSA, brandKits: { createAsset: "إنشاء الأصول", createDialogDescription: "ابدأ من إعداد مسبق للنمط مدمج أو قم بإنشاء مجموعة علامات تجارية فارغة للمراجع الخاصة بك.", createDialogTitle: "طقم ماركه جديده", descriptionPlaceholder: "الرسوم التوضيحية التحريرية الداكنة، أجزاء المنتج UI، لوحة الألوان المقيدة.", description: "تنظيم المراجع والأصول التي تم إنشاؤها والمجلدات وإرشادات النمط القابلة لإعادة الاستخدام.", duplicateCreated: "تم إنشاء نسخة مجموعة العلامة التجارية الخاصة", duplicateFailed: "لا يمكن تكرار مجموعة العلامة التجارية.", editDescriptionPlaceholder: "قم بوصف الاتجاه المرئي أو محتويات مجموعة العلامة التجارية هذه.", editDialogTitle: "تحرير مجموعة العلامة التجارية", emptyDescription: "ابدأ بمجموعة أدوات العلامة التجارية ذات النمط الافتراضي أو أنشئ مراجعك الخاصة وإرشادات الأسلوب.", emptyTitle: "لا توجد مجموعات العلامة التجارية حتى الآن", instructionsPlaceholder: "اجعل المنتج UI واضحًا دائمًا، وتجنب النص الحرفي ما لم يُطلب منك ذلك، وفضل التراكيب التحريرية الهادئة.", namePlaceholder: "اسم المجموعة التجارية", newBrandKitLower: "طقم ماركه جديده", newBrandKit: "طقم العلامة التجارية الجديدة", noDescriptionYet: "لا يوجد وصف بعد", presetCreateFailed: "تعذر إنشاء مجموعة أدوات العلامة التجارية المعدة مسبقًا.", searchPlaceholder: "ابحث عن مجموعات العلامة التجارية", startFromPresetDescription: "قم بإنشاء مجموعة علامات تجارية قابلة للتحرير مع توجيهات إنشاء مدمجة.", startFromPreset: "ابدأ من نمط محدد مسبقًا", titlePlaceholder: "أبطال مدونة الهندسة", title: "مجموعات العلامة التجارية", updateFailed: "فشل تحديث مجموعة العلامة التجارية", updated: "تم تحديث مجموعة العلامة التجارية", yourBrandKitsDescription: "مراجع العلامة التجارية، وصور المنتج، ومقاطع الفيديو، والرسوم البيانية، والمرشحات التي تم إنشاؤها والتي يمكن للوكلاء الآخرين إعادة استخدامها", yourBrandKits: "مجموعات العلامة التجارية الخاصة بك", }, routeTitles: { library: "المكتبة - Assets", generationPreset: "إعداد التوليد المسبق - Assets", brandKits: "مجموعات العلامة - Assets", extension: "إضافة - Assets", extensions: "الإضافات - Assets", team: "الفريق - Assets", }, team: { title: "الفريق", createOrgDescription: "أعد فريقاً لمشاركة مجموعات العلامة والأصول المُنشأة مع زملائك.", }, assetDetail: { backToLibrary: "العودة إلى المكتبة", brandKit: "طقم العلامة التجارية", continueRefining: "استمر في تحسين هذا الأصل.", copiedPrompt: "موجه منسوخ", copiedUrl: "منسوخ URL", copyFailed: "تعذر النسخ إلى الحافظة.", copyUrl: "انسخ URL", deleteDescription: "يؤدي هذا إلى إزالة الأصل من المكتبة. قد تتوقف عمليات التصدير الحالية التي تستخدم URL بالفعل عن العرض.", deleteTitle: "هل تريد حذف مادة العرض؟", downloadFailed: "تعذّر تنزيل الأصل.", loading: "جارٍ تحميل الأصل...", makeVariations: "قم بإجراء الاختلافات", makeVideoVariation: "جعل الاختلاف في الفيديو", noDescription: "لم يتم تخزين أي وصف", noPrompt: "لم يتم تخزين المطالبة", previewUnavailable: "المعاينة غير متاحة", refineInstruction: "اسأل عما يجب تغييره، ثم قم بتحسين هذه الصورة النشطة واعرض المعاينة الجديدة.", unavailableDescription: "ربما تم مسح هذه الصورة التي تم إنشاؤها قبل حفظها، أو قد يشير الرابط إلى أصل لم يعد بإمكانك الوصول إليه.", unavailableTitle: "مادة العرض غير متوفرة", videoAsset: "أصول الفيديو", }, audit: { title: "سجل التدقيق", ownerOnlyFallback: "احتياطي للمالك فقط", orgWide: "على مستوى المؤسسة", ownerScopedDescription: "لم يتم اكتشاف سياق المؤسسة، لذلك يقتصر هذا العرض على التشغيلات التي بدأتها. يرى مسؤولو المؤسسة موجز التدقيق الكامل على مستوى المؤسسة.", orgScopedDescription: "يتم عرض بيانات التدقيق على مستوى المؤسسة. هذا العرض مخصص لمراجعة الحوكمة فقط - كل عملية إنشاء في مساحة العمل مدرجة أدناه.", exporting: "جارٍ التصدير...", exportCsv: "تصدير CSV", dateFrom: "التاريخ من", dateTo: "التاريخ إلى", ownerEmail: "بريد المالك", promptSearch: "بحث في المطالبة", model: "النموذج", allModels: "كل النماذج", status: "الحالة", allStatuses: "كل الحالات", source: "المصدر", allSources: "كل المصادر", callingApp: "التطبيق المستدعي (A2A)", clearFilters: "مسح عوامل التصفية", when: "الوقت", owner: "المالك", brandKit: "مجموعة العلامة", prompt: "المطالبة", savedTotal: "المحفوظ / الإجمالي", runSummary: "تشغيل {{id}}... · {{time}}", videoBadge: "{{duration}} ث · {{resolution}}", byOwner: "بواسطة {{email}}", userPrompt: "مطالبة المستخدم", compiledPrompt: "المطالبة المجمعة", failed: "فشل", parentRun: "التشغيل الأب (مصدر التحسين)", referencesCount: "المراجع ({{count}})", generatedChildrenCount: "العناصر المنشأة ({{count}})", noChildrenProduced: "لم يتم إنشاء عناصر.", openBrandKit: "فتح مجموعة العلامة ->", viaCaller: "عبر {{caller}}", noRunsMatch: "لا توجد تشغيلات تطابق عوامل التصفية هذه", noRunsDescription: "حاول توسيع نطاق التاريخ أو مسح عوامل التصفية. عادةً ما تكون تشغيلات الإنشاء خلال آخر 90 يومًا نقطة بداية جيدة.", loadFailed: "تعذر تحميل سجل التدقيق", unknownError: "خطأ غير معروف. حاول التحديث.", adminOnlyTitle: "سجل التدقيق للمسؤولين فقط", adminOnlyDescription: "يمكن لمسؤولي المؤسسة فقط عرض سجل التدقيق. إذا كنت تعتقد أنه يجب أن يكون لديك وصول، فاطلب من مالك المؤسسة ترقية دورك.", secondsAgo: "قبل {{count}} ث", minutesAgo: "قبل {{count}} د", hoursAgo: "قبل {{count}} س", daysAgo: "قبل {{count}} يوم", }, }), } satisfies Record;