{
  "_meta": {
    "language": "en",
    "language_name": "English",
    "version": "1.0",
    "description": "AliothPress Admin Panel — English (source language)"
  },
  "sidebar": {
    "main": "Main",
    "dashboard": "Dashboard",
    "content": "Content",
    "posts": "Posts",
    "all_posts": "All Posts",
    "add_new": "Add New",
    "pages": "Pages",
    "all_pages": "All Pages",
    "media": "Media",
    "library": "Library",
    "all_media": "All Media",
    "upload_new": "Upload New",
    "files": "Files",
    "appearance": "Appearance",
    "themes": "Themes",
    "menus": "Menus",
    "favicon": "Favicon",
    "tools": "Tools",
    "ai_assistant": "AI Assistant",
    "seo_tools": "SEO & AEO Tools",
    "audit_log": "Audit Log",
    "backup": "Backup",
    "users": "Users",
    "settings": "Settings",
    "system": "System",
    "forms": "Forms",
    "all_forms": "All Forms",
    "new_form": "New Form",
    "newsletter": "Newsletter",
    "all_newsletters": "All Campaigns",
    "new_campaign": "New Campaign",
    "admin_panel": "Admin Panel",
    "my_profile": "My Profile",
    "logout": "Logout",
    "plugins": "Plugins"
  },
  "dashboard": {
    "title": "Dashboard",
    "greeting": "Hello,",
    "current_version": "Version {version}",
    "welcome": "Here's what's happening with your content.",
    "new_post": "New Post",
    "new_page": "New Page",
    "upload_image": "Upload Image",
    "total_posts": "Total Posts",
    "published": "Published",
    "drafts": "Drafts",
    "total_pages": "Pages",
    "total_images": "Images",
    "total_users": "Users",
    "total_forms": "Forms",
    "new_submissions": "New Submissions",
    "recent_posts": "Recent Posts",
    "recent_pages": "Recent Pages",
    "recent_activity": "Recent Activity",
    "view_all": "View all",
    "no_posts_yet": "No posts yet.",
    "no_pages_yet": "No pages yet.",
    "create_first_post": "Create your first post!",
    "create_first_page": "Create your first page!",
    "no_activity": "No activity recorded yet.",
    "updated": "Updated",
    "edit": "Edit →",
    "update_available": "A new version of AliothPress is available!",
    "update_now": "Update Now",
    "update_confirm": "A full backup will be created before updating. Continue?",
    "updating": "Updating… please wait",
    "restart_hint": "Update applied. Reload or restart your server to see changes.",
    "restarting": "Restarting server… {seconds}s",
    "reload": "Reload Page",
    "auto_restart": "Server is restarting automatically. Reload the page in a few seconds.",
    "manual_restart": "Please restart your server to apply the update.",
    "connection_error": "Could not connect to update server",
    "update_failed": "Update failed",
    "update_license_hint": "Automatic updates require an active license.",
    "activate_license": "Activate License",
    "recent_submissions": "Recent Submissions",
    "view_submission": "View →"
  },
  "posts": {
    "title": "All Posts",
    "subtitle": "Manage your blog posts",
    "new_post": "Add New Post",
    "create_new": "Create New Post",
    "start_writing": "Start writing your content",
    "edit_post": "Edit Post",
    "edit_subtitle": "Edit your post and optimize for SEO",
    "no_posts": "No posts found",
    "create_first": "Create your first post to get started",
    "create_first_btn": "Create First Post",
    "try_adjusting": "Try adjusting your filters",
    "clear_filters": "Clear filters",
    "search_placeholder": "Search posts...",
    "delete_confirm": "Are you sure you want to delete \"{title}\"? This cannot be undone.",
    "duplicate_confirm": "Create a copy of \"{title}\"?\n\nA new draft will be created with all content and structure.",
    "usage_warning": "⚠️ Other content links to this post:",
    "usage_confirm_delete": "All internal links will be unwrapped (text kept, links removed) and menu items deleted. Delete anyway?"
  },
  "pages": {
    "title": "All Pages",
    "subtitle": "Manage your site pages",
    "new_page": "Add New Page",
    "create_new": "Create New Page",
    "create_subtitle": "Create a new page for your site",
    "edit_page": "Edit Page",
    "edit_subtitle": "Edit your page and optimize for SEO",
    "no_pages": "No pages found",
    "create_first": "Create your first page to get started",
    "create_first_btn": "Create First Page",
    "try_adjusting": "Try adjusting your filters",
    "clear_filters": "Clear filters",
    "search_placeholder": "Search pages...",
    "in_menu": "In menu",
    "delete_confirm": "Are you sure you want to delete \"{title}\"? This cannot be undone.",
    "duplicate_confirm": "Create a copy of \"{title}\"?\n\nA new draft will be created with all content and structure.",
    "usage_warning": "⚠️ Other content links to this page:",
    "usage_confirm_delete": "All internal links will be unwrapped (text kept, links removed) and menu items deleted. Delete anyway?"
  },
  "editor": {
    "title_label": "Title",
    "title_post_placeholder": "Enter post title...",
    "title_page_placeholder": "Enter page title...",
    "title_help": "Main title of your post",
    "title_help_page": "Main title of your page",
    "slug_label": "Slug (URL)",
    "slug_help": "Leave empty to auto-generate from title",
    "slug_placeholder": "post-url-slug",
    "slug_taken": "Please fix the slug — it is already taken.",
    "slug_available": "Slug is available",
    "excerpt_label": "Excerpt",
    "excerpt_placeholder": "Brief summary...",
    "excerpt_placeholder_page": "Brief summary of this page...",
    "excerpt_help": "Short summary (used in previews and meta description)",
    "content_label": "Content",
    "content_placeholder": "Write your content here...",
    "content_required": "Content is required!",
    "status_language": "Status & Language",
    "status_label": "Status",
    "status_draft": "Draft",
    "status_published": "Published",
    "language_label": "Language",
    "categorization": "Categorization",
    "category_label": "Category",
    "category_placeholder_post": "e.g. Technology",
    "category_placeholder_page": "e.g. Legal",
    "tags_label": "Tags",
    "tags_placeholder": "AI, CMS, Technology",
    "tags_help": "Comma-separated",
    "display_options": "Display Options",
    "show_date": "Show publication date on page",
    "show_author": "Show author name on page",
    "display_help": "These only affect what visitors see. Author and date are always included in meta tags for SEO.",
    "quick_actions": "Quick Actions",
    "save_draft": "Save as Draft",
    "publish": "Publish",
    "save_changes": "Save Changes",
    "cancel": "Cancel",
    "delete_post": "Delete Post",
    "delete_page": "Delete Page",
    "created": "Created:",
    "last_updated": "Last Updated:",
    "info": "Info",
    "template_label": "Template",
    "template_default": "Default",
    "template_full_width": "Full Width",
    "template_landing": "Landing Page",
    "template_landing_narrow": "Landing Narrow",
    "slug_check_error": "Could not verify slug.",
    "published": "Published:",
    "status_section": "Status",
    "settings_section": "Settings",
    "faq_section": "FAQ Section (AEO)",
    "faq_help": "Add questions and answers to boost AI citation. These appear on the page and generate FAQPage schema automatically.",
    "faq_question": "Question",
    "faq_answer": "Answer",
    "faq_add": "Add Question",
    "faq_remove": "Remove",
    "faq_question_placeholder": "What is...?",
    "faq_answer_placeholder": "A concise answer...",
    "posts_page": "Show latest posts on this page",
    "posts_page_help": "Appends a paginated list of the latest published posts in this page’s language below the page content. Applied to all translations of this page."
  },
  "aeditor": {
    "tab_visual": "Visual",
    "tab_markdown": "Markdown",
    "tab_html": "HTML",
    "undo": "Undo",
    "redo": "Redo",
    "paragraph": "Paragraph",
    "heading": "Heading",
    "blockquote": "Quote",
    "bold": "Bold",
    "italic": "Italic",
    "underline": "Underline",
    "strikethrough": "Strikethrough",
    "inline_code": "Inline code",
    "align_left": "Align left",
    "align_center": "Align center",
    "align_right": "Align right",
    "bullet_list": "Bullet list",
    "numbered_list": "Numbered list",
    "link": "Insert link",
    "link_prompt": "Link URL:",
    "unlink": "Remove link",
    "image": "Insert image",
    "image_url_prompt": "Image URL:",
    "image_alt_prompt": "Alt text (for accessibility):",
    "table": "Insert table",
    "table_size_prompt": "Table size (columns x rows):",
    "code_block": "Code block",
    "code_lang_prompt": "Language (e.g. python, js — empty for plain):",
    "hr": "Horizontal rule",
    "clear_format": "Clear formatting",
    "fullscreen": "Fullscreen",
    "words": "words",
    "chars": "characters",
    "text_color": "Text color",
    "bg_color": "Highlight color",
    "default_color": "Default",
    "readonly_hint": "Read-only",
    "ok": "OK",
    "cancel": "Cancel",
    "columns": "Columns",
    "rows": "Rows"
  },
  "seo": {
    "meta_tags": "SEO Meta Tags",
    "meta_title": "Meta Title",
    "meta_title_placeholder": "SEO title (60 chars max)",
    "meta_title_help": "Title for search engines. Leave empty to use post title.",
    "meta_description": "Meta Description",
    "meta_description_placeholder": "SEO description (160 chars max)",
    "meta_description_help": "Description for search engines (160 chars max)",
    "keywords": "Keywords",
    "keywords_placeholder": "keyword1, keyword2",
    "keywords_help": "Comma-separated keywords (mostly for reference)",
    "canonical_url": "Canonical URL",
    "canonical_url_placeholder": "https://...",
    "canonical_url_help": "Set if this content was originally published elsewhere",
    "og_section": "Open Graph (Facebook, LinkedIn)",
    "og_title": "OG Title",
    "og_title_placeholder": "Title for social sharing",
    "og_title_help": "Title when shared on Facebook/LinkedIn",
    "og_description": "OG Description",
    "og_description_placeholder": "Description for social sharing",
    "og_image": "OG Image URL",
    "og_image_help": "Image URL for social media preview (1200x630px recommended)",
    "twitter_section": "Twitter Card",
    "twitter_title": "Twitter Title",
    "twitter_description": "Twitter Description",
    "twitter_image": "Twitter Image URL",
    "twitter_image_help": "Image for Twitter Card (1200x600px recommended)",
    "schema_section": "Schema.org (Structured Data)",
    "schema_type": "Schema Type",
    "schema_author": "Author Name",
    "schema_author_help": "Leave empty to use your display name",
    "schema_publisher": "Publisher Name",
    "schema_publisher_help": "Leave empty to use site name",
    "featured_image": "Featured Image",
    "featured_image_url": "Image URL",
    "featured_image_alt": "Alt Text",
    "featured_image_alt_help": "Required for accessibility! Describe the image.",
    "featured_image_caption": "Caption",
    "featured_image_help": "Main image for this post",
    "featured_image_social_hint": "Also used as social preview (OG / Twitter) unless overridden above.",
    "meta_title_help_page": "Title for search engines (60 chars max). Leave empty to use page title.",
    "og_description_help": "Description when shared on social media",
    "schema_type_help": "Tells search engines what type of content this is",
    "og_hint_uses_featured": "Social preview will use Featured Image. Size 1200×630 is generated automatically.",
    "og_hint_no_image": "Leave empty if this page does not need a social preview image.",
    "twitter_hint_uses_og": "Will use OG Image automatically.",
    "twitter_hint_uses_featured": "Will use Featured Image automatically.",
    "twitter_hint_no_image": "Leave empty if this page does not need a social preview image."
  },
  "translate": {
    "create_translation_post": "Create a translated version of an existing post",
    "create_translation_page": "Create a translated version of an existing page",
    "creating_translation": "Creating translation",
    "translating_from": "Translating from:",
    "translate_to": "Translate to",
    "select_language": "Select target language first",
    "no_translations_yet": "No translations yet",
    "all_languages_done": "All languages already have translations!",
    "existing_translations": "Existing Translations",
    "original": "Original:",
    "slug_help": "Leave empty to auto-generate from title. Original: /{slug}",
    "status_and_slug": "Status: {status} · Slug: /{slug}",
    "copied_from_source": "Copied from source. Comma-separated.",
    "keywords_no_translation": "Keywords copied from source (usually do not need translation)",
    "image_copied": "Image copied from source",
    "open_existing": "Open existing translation?",
    "save_translation_draft": "Save Translation as Draft",
    "publish_translation": "Publish Translation",
    "copy_for_manual": "Copy for Manual Translation",
    "copy_manual_help": "Creates an exact copy with original texts and full structure. No AI tokens used.",
    "instructions_label": "Instructions for AI (optional)",
    "instructions_placeholder": "e.g. Use formal tone, adapt cultural references...",
    "ai_confirm": "Create AI translation to {lang}?\n\nThis will create a new draft with translated content, title, excerpt, and all SEO fields.",
    "manual_confirm_post": "Create a copy for {lang}?\n\nThis will duplicate the post with all content. You can then translate it manually.\n\nNo AI tokens will be used.",
    "manual_confirm_page": "Create a copy for {lang}?\n\nThis will duplicate the page with all content and Page Builder structure. You can then translate it manually.\n\nNo AI tokens will be used.",
    "translations_title": "Translations",
    "this_version": "this version",
    "source_page": "Source page",
    "back_to_original": "Back to original",
    "target_language": "Target Language",
    "create_translation": "Create Translation",
    "ai_translate_create": "AI: Translate & Create",
    "ai_translate_help": "Creates a new page with AI-translated content (as draft)",
    "ai_translate_help_post": "Creates a new post with AI-translated content (as draft)",
    "ai_translate_all": "AI: Translate All Fields",
    "ai_translate_all_help": "Fills title, content, excerpt, and all SEO fields with AI translation. You can edit everything before saving.",
    "translating_to": "Translating to {lang}...",
    "select_language_option": "— Select language —",
    "select_language_first": "Please select a target language first.",
    "creating_copy": "Creating copy...",
    "translated_title_placeholder": "Translated title...",
    "translated_excerpt_placeholder": "Translated excerpt...",
    "translated_content_placeholder": "Translated content...",
    "translated_slug_placeholder": "translated-url-slug",
    "title_required": "Title is required!",
    "source_badge": "source",
    "group_label": "Group",
    "redirecting_to_edit": "Redirecting to edit the translation..."
  },
  "ai": {
    "title": "AI Assistant",
    "subtitle": "AI-powered tools for content creation, translation, and SEO optimization",
    "api_config": "API Configuration",
    "status": "Status:",
    "connected": "Connected",
    "not_configured": "Not configured",
    "api_key_label": "API Key",
    "api_key_placeholder": "sk-ant-api03-...",
    "api_key_help": "Get your API key at console.anthropic.com. The key is stored securely in your database.",
    "api_key_required": "API key required",
    "api_key_required_hint": "Configure your API key above to use AI tools.",
    "tools_title": "AI Tools",
    "content_generator": "Content Generator",
    "content_generator_desc": "Generate article content from a prompt or idea",
    "content_prompt_label": "Describe what you want to write about",
    "content_prompt_placeholder": "Write a comprehensive guide about sustainable web development practices, including performance optimization, green hosting, and energy-efficient coding...",
    "output_language": "Output Language",
    "generate_btn": "Generate Content",
    "translator": "Translator",
    "translator_desc": "Translate content between languages while preserving HTML formatting",
    "content_to_translate": "Content to translate",
    "content_to_translate_placeholder": "Paste your HTML content here...",
    "from": "From",
    "to": "To",
    "translate_btn": "Translate",
    "seo_optimizer": "SEO Optimizer",
    "seo_optimizer_desc": "Generate optimized meta tags, descriptions, and Open Graph data",
    "post_page_title": "Post/Page Title",
    "content_or_excerpt": "Content (or excerpt)",
    "generate_seo_btn": "Generate SEO Fields",
    "ai_working": "AI is working",
    "result": "Result:",
    "copy": "Copy",
    "copied": "Copied!",
    "ai_generate_content": "AI: Generate Content",
    "ai_fill_seo": "AI: Fill SEO Fields",
    "seo_help": "Fills SEO, Open Graph, and Twitter Card fields based on your title and content",
    "ai_translate_all": "AI: Translate All Fields",
    "seo_filled": "SEO fields filled! Check SEO, Open Graph, and Twitter sections.",
    "could_not_parse": "Could not parse AI response.",
    "generating": "Generating...",
    "generating_seo": "Generating SEO...",
    "translating": "Translating...",
    "prompt_placeholder": "Describe what you need — topic, tone, key points...",
    "send": "Send",
    "apply_result": "Apply to page",
    "apply_to_form": "Apply to form",
    "new_conversation": "New conversation",
    "new_chat": "New Chat",
    "new_chat_hint": "Start new conversation",
    "messages_count": "messages",
    "chat_welcome": "Hi! I am your CMS assistant. Just tell me what you need — I can write content, translate, optimize SEO, design forms, or build page layouts. All in one conversation!",
    "chat_welcome_hint": "Use the quick actions above for a head start, or just describe what you need in any language.",
    "chip_generate": "Write an article about ",
    "chip_translate": "Translate this to ",
    "chip_seo": "Generate SEO fields for my page about ",
    "chip_builder": "Create a page layout for ",
    "chip_form": "Design a form for ",
    "result_done": "Done! Here are the results:",
    "error_label": "Error:",
    "connection_error": "Connection error:",
    "page_builder": "Page Builder",
    "form_designer": "Form Designer",
    "task_content": "Content",
    "task_translate": "Translate",
    "task_seo": "SEO",
    "task_builder": "Builder",
    "task_form": "Form",
    "result_label": "Result",
    "copy_btn": "Copy",
    "copied_btn": "Copied!",
    "label_title": "Title",
    "label_excerpt": "Excerpt",
    "label_meta_title": "Meta Title",
    "label_meta_desc": "Meta Desc",
    "label_description": "Description",
    "label_fields": "Fields",
    "label_fields_count": "fields",
    "label_content_preview": "Content preview:",
    "result_builder_blocks": "Builder Blocks",
    "result_form_design": "Form Design",
    "result_generated_content": "Generated Content",
    "result_seo_fields": "SEO Fields",
    "provider_label": "AI Provider",
    "provider_help": "Select the AI provider for all AI features. You can store keys for all providers and switch anytime.",
    "key_saved": "saved",
    "key_keep_hint": "leave empty to keep current",
    "key_link_anthropic": "→ API Keys",
    "key_link_deepseek": "→ API Keys",
    "key_link_gemini": "→ Get API Key",
    "provider_anthropic": "Anthropic",
    "provider_deepseek": "DeepSeek",
    "provider_gemini": "Gemini",
    "modal_mode_generate": "Generate full {content_type}",
    "modal_mode_seo": "Generate SEO fields",
    "modal_mode_translate": "Translate content",
    "modal_mode_builder": "Generate page layout with blocks",
    "modal_mode_form": "Generate form fields",
    "modal_context_language": "Language:",
    "modal_welcome_generate": "Tell me what this {content_type} should be about. Include the topic, target audience, tone (professional, casual, technical...), and any key points to cover. I will generate title, content, excerpt, and all SEO fields.",
    "modal_welcome_seo": "I will generate meta title, description, keywords, and Open Graph fields based on your content. Mention any target keywords or audience — or just say \"go\" to let me analyze what you have.",
    "modal_welcome_translate": "I will translate your content preserving all formatting. Mention any preferences — formal/informal tone, regional variant (e.g. Brazilian vs European Portuguese), or terminology to keep unchanged. Or just say \"go\" for a standard translation.",
    "modal_welcome_builder": "Describe the page you want to build: purpose, sections (hero, features, testimonials, FAQ, contact...), content, and style. The more detail, the better the layout.",
    "modal_welcome_form": "Describe the form you need: what is its purpose, what data should it collect, and who will fill it out? For example: \"Contact form with name, email, subject, and message\" or \"Event registration with date preference and dietary requirements\". I will generate fields, labels, validation, and settings.",
    "modal_welcome_default": "How can I help?",
    "modal_thinking": "Thinking...",
    "modal_network_error": "Network error:",
    "modal_summary_generated": "Generated:",
    "modal_summary_title": "Title:",
    "modal_summary_excerpt": "Excerpt:",
    "modal_summary_content": "Content:",
    "modal_summary_seo_title": "SEO Title:",
    "modal_summary_seo_desc": "SEO Desc:",
    "modal_summary_blocks": "Blocks:",
    "modal_summary_blocks_count": "blocks generated",
    "modal_summary_fields": "Fields:",
    "modal_summary_fields_count": "form fields generated",
    "modal_summary_submit": "Submit:"
  },
  "media": {
    "library_title": "Media Library",
    "library_subtitle": "Manage your images",
    "upload_title": "Upload Image",
    "upload_subtitle": "Add a new image to your media library",
    "edit_title": "Edit Image",
    "edit_subtitle": "Update image metadata and accessibility info",
    "upload_btn": "Upload",
    "upload_image_btn": "Upload Image",
    "upload_first": "Upload First Image",
    "select_image": "Select Image",
    "choose_btn": "Choose",
    "no_images": "No images yet",
    "no_images_text": "Upload your first image to get started",
    "no_images_picker": "No images.",
    "upload_first_link": "Upload first",
    "loading": "Loading...",
    "error_loading": "Error loading images.",
    "error_loading_retry": "Error loading images. Please try again.",
    "select_file": "Select Image",
    "file_help": "Supported: JPG, PNG, GIF, WebP, SVG — Max 16 MB",
    "alt_text": "Alt Text",
    "alt_text_placeholder": "Describe the image...",
    "alt_text_help": "Describe what's in the image for screen readers",
    "title_label": "Title",
    "title_placeholder": "Image title (optional)",
    "caption": "Caption",
    "caption_placeholder": "Caption shown below the image (optional)",
    "description": "Description",
    "description_placeholder": "Detailed description (optional)",
    "image_url": "Image URL",
    "image_url_help": "Use this URL in posts and pages for OG Image, Twitter Image, etc.",
    "public_slug": "Public URL slug",
    "public_slug_help": "The clean public address for this image. Only lowercase letters, digits and hyphens are allowed — anything else is removed automatically. Changing the slug creates an automatic 301 redirect from the old URL so existing links keep working.",
    "filename": "Filename:",
    "size": "Size:",
    "dimensions": "Dimensions:",
    "type": "Type:",
    "dominant_color": "Dominant Color:",
    "uploaded": "Uploaded:",
    "generated_variants": "Generated Variants",
    "og_social": "OG/Social (1200×630):",
    "accessibility_notice": "Accessibility Required",
    "accessibility_notice_text": "Alt text is mandatory for all images to ensure accessibility compliance (WCAG 2.1)",
    "optimization_notice": "Automatic Optimization",
    "optimization_notice_text": "Images are automatically optimized on upload: resized to max 2560px, converted to WebP & AVIF, and multiple responsive sizes are generated for fast loading. EXIF data is stripped for privacy. Original file is kept as fallback.",
    "save_changes": "Save Changes",
    "delete": "Delete",
    "delete_confirm": "Are you sure you want to delete this image? This cannot be undone.",
    "usage_warning": "⚠️ This image is currently used in:",
    "usage_confirm_delete": "All references will be automatically cleaned up. Delete anyway?",
    "copy_url": "Copy",
    "copied": "Copied!",
    "search_placeholder": "Search images…",
    "no_results": "No images match your search",
    "clear_search": "Clear search",
    "favicon_title": "Favicon Manager",
    "favicon_subtitle": "Upload one image — all sizes generated automatically",
    "favicon_upload_section": "Upload Source Image",
    "favicon_tip_title": "Recommended",
    "favicon_tip_text": "Use a square PNG at least 512×512px for best results. SVG also works perfectly. The image will be automatically resized and optimized for all platforms.",
    "favicon_drop_label": "Click or drag image here",
    "favicon_drop_hint": "PNG, JPG, SVG or WebP · Min 512×512px recommended",
    "favicon_generate_btn": "Generate All Favicons",
    "favicon_current_section": "Current Favicons",
    "favicon_empty": "No favicons generated yet. Upload an image above.",
    "favicon_delete_btn": "Delete All Favicons",
    "favicon_delete_confirm": "Delete all generated favicons? You can re-generate them any time.",
    "uploading": "Uploading & optimizing…",
    "generating_favicons": "Generating favicons…",
    "fav_label_ico": "favicon.ico",
    "fav_label_png96": "PNG 96×96",
    "fav_label_png192": "PNG 192×192",
    "fav_label_png512": "PNG 512×512",
    "fav_label_apple": "Apple Touch",
    "fav_label_svg": "SVG",
    "fav_label_manifest": "Manifest",
    "fav_desc_ico": "ICO 16+32+48",
    "fav_desc_96": "Browser tab",
    "fav_desc_192": "Android / Chrome",
    "fav_desc_512": "PWA Splash",
    "fav_desc_apple": "180×180 iOS",
    "fav_desc_svg": "Scalable vector",
    "fav_desc_manifest": "site.webmanifest",
    "unit_kb": "KB"
  },
  "files": {
    "title": "Files",
    "subtitle": "Manage your documents and files",
    "upload_title": "Upload File",
    "upload_subtitle": "Add a new document to your file library",
    "edit_title": "Edit File",
    "edit_subtitle": "Update file metadata",
    "upload_btn": "Upload",
    "upload_file_btn": "Upload File",
    "upload_first": "Upload First File",
    "no_files": "No files yet",
    "no_files_text": "Upload your first document to get started",
    "search_placeholder": "Search files…",
    "file_url": "File URL",
    "file_url_help": "Use this URL to link to this file in your posts and pages",
    "filename": "Filename:",
    "size": "Size:",
    "type": "Type:",
    "uploaded": "Uploaded:",
    "title_field": "Title",
    "title_placeholder": "File title (optional)",
    "description_field": "Description",
    "description_placeholder": "Brief description of this file (optional)",
    "delete": "Delete",
    "delete_confirm": "Are you sure you want to delete this file? This cannot be undone.",
    "usage_warning": "⚠️ This file is linked in:",
    "usage_confirm_delete": "All links and download buttons for this file will be automatically removed. Delete anyway?",
    "copy_url": "Copy",
    "copied": "Copied!",
    "save_changes": "Save Changes",
    "allowed_types": "Supported: PDF, DOC, DOCX, XLS, XLSX, ZIP, RAR, TXT, CSV — Max 50 MB",
    "drop_label": "Click or drag file here",
    "drop_hint": "PDF, DOC, XLS, ZIP, TXT, CSV — Max 50 MB",
    "uploading": "Uploading…",
    "no_results": "No files match your search",
    "clear_search": "Clear search"
  },
  "settings": {
    "title": "Settings",
    "general": "General",
    "site_name": "Site Name",
    "tagline": "Tagline",
    "site_description": "Site Description",
    "site_description_help": "Short description of your site",
    "meta_description_home": "Meta description for homepage",
    "logo": "Logo URL",
    "logo_placeholder": "/static/uploads/logo.png",
    "logo_help": "Choose from Media Library or paste URL",
    "homepage": "Homepage",
    "homepage_help": "Select any language version of a page — the system will show the correct translation to each visitor.",
    "languages": "Languages",
    "default_language": "Default Language",
    "default_language_help": "Main language of your site",
    "active_languages": "Active Languages",
    "active_languages_help": "Select which languages are available on your site",
    "language_switcher": "Display language selection menu on public site",
    "analytics": "Analytics",
    "google_analytics": "Google Analytics ID",
    "google_analytics_placeholder": "G-XXXXXXXXXX",
    "tag_manager": "Google Tag Manager ID",
    "tag_manager_placeholder": "GTM-XXXXXXX",
    "custom_code": "Custom Analytics Code",
    "custom_code_placeholder": "<!-- Your tracking code here -->",
    "custom_code_help": "Paste custom tracking code (Plausible, Goatcounter, etc.). Will be inserted in <head>",
    "cookie_consent_enabled": "Enable cookie consent banner",
    "cookie_consent_help": "Show a banner asking visitors before any tracking scripts run. Off by default.",
    "email": "Email Configuration",
    "email_intro": "To send emails from your site (invitations, notifications), you need an email account on your hosting. Here is how:",
    "email_step1": "Step 1: Create an email account",
    "email_step1_text": "Log in to your hosting control panel (cPanel, Plesk, or similar). Look for \"Email Accounts\" and create a new email address.",
    "email_step2": "Step 2: Find your SMTP settings",
    "email_step2_text": "In the same control panel, look for \"Mail Settings\" or \"Email Configuration\" for your new email. Note the SMTP Host, Port, Username, and Password.",
    "email_step3": "Step 3: Fill in the form below, save, and test",
    "smtp_host": "SMTP Host",
    "smtp_host_placeholder": "mail.yourdomain.com",
    "smtp_port": "SMTP Port",
    "smtp_port_help": "Usually 587 (TLS) or 465 (SSL) — check your hosting email settings",
    "smtp_username": "SMTP Username",
    "smtp_username_help": "Usually the same as SMTP Username",
    "smtp_password": "SMTP Password",
    "smtp_password_help": "The password you set when creating the email",
    "smtp_confirm_password": "Confirm Password",
    "smtp_password_stored": "The password for your hosting email account. Stored encrypted. Leave both fields blank to keep existing password.",
    "smtp_passwords_mismatch": "SMTP passwords do not match. Please correct before saving.",
    "connection_security": "Connection Security",
    "connection_security_help": "Choose the option that matches the port above. Most hosting providers use TLS.",
    "from_email": "From Email",
    "from_email_help": "The full email address you created on your hosting",
    "from_name": "From Name",
    "from_name_help": "The name recipients will see (e.g. your site name)",
    "test_email": "Test Email",
    "test_email_help": "Save settings first, then send a test email to verify everything works.",
    "send_test": "Send Test Email",
    "sending": "Sending…",
    "social_links": "Social Links",
    "social_links_help": "Paste your profile URL for each platform. Only filled links will show as icons in the footer.",
    "footer": "Footer",
    "copyright": "Copyright Text",
    "copyright_help": "Enter your company or site name. Year and \"All rights reserved\" are added automatically and translated.",
    "copyright_placeholder": "My Company",
    "license": "License",
    "license_placeholder": "CC BY 4.0",
    "additional_footer": "Additional Footer Content",
    "additional_footer_help": "HTML allowed. Use for partners, social links, etc.",
    "save_settings": "Save Settings",
    "saved_success": "Settings saved successfully!",
    "license_updates": "License & Updates",
    "license_version": "Version",
    "license_status": "License",
    "license_active": "Active",
    "license_invalid": "Invalid key",
    "license_free": "Free edition",
    "license_key": "License Key",
    "license_saved": "saved",
    "license_key_placeholder": "Paste your license",
    "license_key_help": "Enter your purchase code or license key. The system auto-detects the marketplace. Leave blank to keep the existing key.",
    "license_deactivate": "Deactivate License",
    "license_deactivate_confirm": "Are you sure? This will remove your license from this installation. You can reactivate it later.",
    "license_updates_check": "Software Updates",
    "license_click_check": "Click the button to check for available updates.",
    "check_for_updates": "Check for Updates",
    "checking_updates": "Checking…",
    "up_to_date": "You're running the latest version!",
    "update_available_short": "is available!",
    "license_up_to_date": "You are already running the latest version.",
    "license_free_note": "Free edition: updates require an active license. Your site works fully without a license — a small \"Powered by AliothPress\" link is shown in the footer.",
    "license_free_note_short": "Activate a license to enable auto-updates",
    "license_updates_dashboard_hint": "Update notifications appear on your Dashboard when a new version is available.",
    "deactivation_failed": "License deactivation failed. Please try again.",
    "connection_error": "Connection error. Please check your internet connection and try again.",
    "remove_logo": "Remove logo",
    "homepage_filter_placeholder": "🔍 Type to filter pages…",
    "homepage_default_option": "— Default (latest posts) —",
    "email_guide_title": "How to set up email on your hosting",
    "guide_col_field": "Field",
    "guide_col_value": "Typical value",
    "guide_port_value": "587 (TLS) or 465 (SSL)",
    "email_step3_text": "Enter the values from your hosting, click <strong>{save_label}</strong>, and then use the test button to verify everything works.",
    "smtp_username_placeholder": "noreply@yourdomain.com",
    "smtp_from_placeholder": "noreply@yourdomain.com",
    "smtp_password_saved_placeholder": "●●●●●●●● (saved)",
    "smtp_password_enter_placeholder": "Enter password",
    "smtp_password_keep_placeholder": "Leave blank to keep existing",
    "smtp_password_repeat_placeholder": "Repeat password",
    "test_email_placeholder": "test@example.com",
    "security_tls_label": "TLS (port 587)",
    "security_ssl_label": "SSL (port 465)",
    "passwords_match": "✅ Passwords match",
    "passwords_no_match": "❌ Passwords do not match",
    "ssl_domain_placeholder": "example.com",
    "social_facebook_placeholder": "https://facebook.com/yourpage",
    "social_twitter_placeholder": "https://x.com/yourprofile",
    "social_linkedin_placeholder": "https://linkedin.com/in/yourprofile",
    "social_github_placeholder": "https://github.com/yourprofile",
    "social_youtube_placeholder": "https://youtube.com/@yourchannel",
    "social_instagram_placeholder": "https://instagram.com/yourprofile",
    "aeo_section": "AI Visibility (AEO)",
    "aeo_help": "These links help AI systems (ChatGPT, Perplexity, Google AI) verify your organization identity and cite your content more accurately.",
    "org_legal_name": "Legal Name",
    "org_legal_name_placeholder": "Your Company LLC",
    "org_founding_year": "Founding Year",
    "org_founding_year_placeholder": "2026",
    "org_sameas_wikipedia": "Wikipedia URL",
    "org_sameas_wikidata": "Wikidata URL",
    "org_sameas_crunchbase": "Crunchbase URL",
    "default_language_active_note": "This is the default language — it cannot be deactivated. Choose another default language first.",
    "timezone": "Timezone",
    "timezone_help": "All dates and times in the admin and on the site are shown in this timezone. Data is stored in UTC, so changing it is always safe.",
    "timezone_filter_placeholder": "Type to filter timezones…"
  },
  "ssl": {
    "title": "Domain & HTTPS",
    "domain_label": "Domain Name",
    "domain_help": "Enter your domain (e.g. example.com). The A record must point to this server's IP before enabling HTTPS.",
    "enable_title": "Free SSL Certificate (Let's Encrypt)",
    "click_to_enable": "Enter your domain above and click to get a free SSL certificate.",
    "click_to_renew": "Certificate renews automatically. Click to set up for a new domain.",
    "btn_enable": "Enable HTTPS",
    "btn_renew": "Re-run SSL Setup",
    "status_active": "HTTPS is active",
    "status_active_short": "✅ HTTPS active",
    "auto_renew": "Certificate renews automatically",
    "confirm": "This will configure HTTPS for {domain}. Make sure the DNS A record is already pointing to this server. Continue?",
    "setting_up": "Setting up SSL…",
    "setting_up_detail": "Getting certificate from Let's Encrypt — this can take up to 60 seconds…",
    "setup_failed": "SSL setup failed",
    "success": "HTTPS is now active for {domain}! HTTP will automatically redirect to HTTPS.",
    "reload_hint": "Reload this page to see the updated status.",
    "instructions": "Step 1: Add an A record for your domain pointing to this server's IP. Step 2: Wait 5–15 minutes for DNS propagation. Step 3: Enter the domain above and click Enable HTTPS. The certificate is free and renews automatically.",
    "error_empty_domain": "Please enter a domain name.",
    "error_invalid_domain": "Invalid domain format. Use something like example.com or blog.example.com (no http://, no trailing slash).",
    "error_domain_too_long": "Domain name is too long (max 253 characters).",
    "error_dns_failed": "DNS lookup failed for {domain}. Make sure your A record is set up and has had time to propagate (5–15 minutes).",
    "error_dns_mismatch": "{domain} resolves to {resolved}, but this server is {server}. Update your DNS A record to point to {server}.",
    "error_not_cloud": "SSL setup is only available on cloud-hosted AliothPress installations. For other setups, configure SSL manually via your hosting provider.",
    "error_rate_limit": "Let's Encrypt rate limit reached (max 5 certificates per domain per week). Please try again later.",
    "error_firewall": "Let's Encrypt could not reach {domain} on port 80. Make sure your firewall allows HTTP traffic (port 80).",
    "error_challenge": "Domain verification failed for {domain}. Make sure the domain resolves to this server and port 80 is open.",
    "error_server_ip_unknown": "Could not determine this server's public IP address. Please try again in a minute or contact your hosting provider.",
    "error_dns_apex_mismatch": "The A record for {domain} does not point to this server. Please check your DNS settings and wait 5–15 minutes for propagation.",
    "error_dns_www_missing": "The DNS record for www.{domain} is missing or does not point to this server. Please add a CNAME record for www pointing to {domain} (or an A record pointing to the same IP), then wait 5–15 minutes for propagation before trying again.",
    "error_timeout": "SSL setup timed out. Please try again."
  },
  "users": {
    "title": "Users",
    "subtitle": "Manage team members and their roles",
    "invite_title": "Invite New User",
    "invite_email": "Email Address",
    "invite_email_placeholder": "colleague@yourdomain.com",
    "invite_role": "Role",
    "send_invitation": "Send Invitation",
    "invite_help_editor": "can create and edit posts, pages, and media.",
    "invite_help_admin": "full access including settings, users, and tools.",
    "invite_owner_only": "Only the site owner can invite administrators.",
    "team_members": "Team Members",
    "you": "(you)",
    "joined": "Joined",
    "invitation_pending": "Invitation pending",
    "role_owner": "Owner",
    "role_admin": "Admin",
    "role_editor": "Editor",
    "role_pending": "Pending",
    "save": "Save",
    "delete": "Delete",
    "cancel_invitation": "Cancel",
    "delete_confirm": "Delete user {name}? Their posts and pages will also be deleted.",
    "cancel_confirm": "Cancel invitation for {email}?"
  },
  "profile": {
    "title": "My Profile",
    "subtitle": "Edit your author profile and account settings",
    "your_role": "Your role:",
    "member_since": "Member since",
    "author_profile": "Author Profile",
    "author_help": "This information is used on your published posts and in search engine metadata (Schema.org).",
    "display_name": "Display Name",
    "display_name_help": "Shown as the author name on posts and pages. If empty, your username is used.",
    "bio": "Bio",
    "bio_placeholder": "A few words about yourself...",
    "bio_help": "Used in author schema markup (improves SEO). Visible to search engines and optionally on your posts.",
    "avatar_url": "Avatar URL",
    "avatar_placeholder": "/static/uploads/avatar.jpg",
    "avatar_help": "Profile picture. Used in author markup for search engines.",
    "select_avatar": "Select Avatar",
    "account_settings": "Account Settings",
    "username": "Username",
    "username_unchangeable": "Username cannot be changed",
    "email": "Email",
    "new_password": "New Password",
    "new_password_placeholder": "Leave blank to keep current",
    "confirm_password": "Confirm New Password",
    "confirm_password_placeholder": "Repeat new password",
    "password_help": "Min 8 characters with uppercase, lowercase and a digit. Leave blank to keep current.",
    "current_password": "Current Password",
    "current_password_placeholder": "Enter your current password",
    "current_password_help": "Required to change your password",
    "admin_language": "Admin Panel Language",
    "admin_language_help": "Language for the admin interface. Content languages are managed separately in Settings.",
    "admin_theme": "Admin Theme",
    "theme_light": "Light",
    "theme_dark": "Dark",
    "theme_system": "System",
    "admin_theme_help": "Choose the appearance of the admin panel. \"System\" follows your device settings.",
    "save_profile": "Save Profile",
    "author_links": "Author Links",
    "author_links_help": "These links are added to your author Schema.org markup. They help AI systems verify your expertise and cite your articles more accurately.",
    "linkedin_url": "LinkedIn URL",
    "website_url": "Personal Website",
    "github_url": "GitHub URL"
  },
  "themes": {
    "title": "Themes",
    "subtitle": "Choose and customize the appearance of your site",
    "default_mode": "Default Display Mode",
    "default_mode_help": "This sets the initial theme for first-time visitors. Users can always switch between dark and light mode using the toggle button on your site.",
    "mode_lock": "Mode Lock",
    "mode_lock_help": "Force a single mode for all visitors and hide the theme toggle on your site.",
    "both_modes": "Both modes",
    "light_only": "Light only",
    "dark_only": "Dark only",
    "dark": "Dark",
    "light": "Light",
    "auto": "Auto",
    "save_mode": "Save Mode",
    "available_themes": "Available Themes",
    "active": "Active",
    "activate": "Activate",
    "currently_active": "Currently Active",
    "single_mode": "Single mode",
    "no_themes": "No themes found",
    "no_themes_help": "Add theme folders to static/css/themes/",
    "custom_css": "Custom CSS",
    "custom_css_help": "Fine-tune block styles — spacing, colors, typography, borders, hover effects, animations. In the Page Builder sidebar, set a \"CSS class\" on any block; then style that class here.",
    "custom_css_placeholder": "/* Style any \"CSS class\" you set on Page Builder blocks */\n\n.my-cool-card {\n  padding: 2rem;\n  border-radius: 12px;\n  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);\n}",
    "save_custom_css": "Save Custom CSS",
    "desc_stellar_origin": "Precision and clarity of deep space — the Alioth star as a point of navigation through meaning and minimalist design.",
    "desc_midnight_botanist": "The organic growth of ideas under the glow of lunar moss — deep forest dark mode with soft botanical accents.",
    "desc_emerald_forest": "Harmony and organic calm — a digital garden where technology serves nature. Like an old library in a deep forest.",
    "desc_oceanic_depth": "Reliability, serenity, powerful intellect and depth — a night ocean under a clear sky, where only the crests of waves glow.",
    "desc_nebula_rose": "Creativity and elegance — light of a distant nebula, deep violet with soft rose gold. Like reading a fine art magazine.",
    "desc_frozen_moss": "The serenity of a frosty forest — deep evergreen shadows beneath pale silver mint and the quiet glow of ice on branches.",
    "desc_amber_blossom": "A warm summer evening in a blooming garden — honey amber accents on creamy surfaces, soft terracotta, and deep bark tones.",
    "desc_ocean_whispers": "The fresh clarity of a sea breeze — white sand, transparent water, and turquoise horizons for a clean coastal reading experience.",
    "desc_volcanic_ash": "The dark mystique of cooled lava — deep graphite with a wine undertone, magical violet glow, and the weight of ancient basalt.",
    "desc_corporate_clean": "Professional clarity and trust — clean white surfaces, precise blue accents, and neutral grays. Built for businesses and agencies.",
    "desc_editorial_press": "The timeless elegance of print — warm sepia accents, serif headings, generous white space. Built for magazines and longform writing.",
    "desc_neon_launch": "The energy of a product launch — electric violet on crisp surfaces, bold geometry, sharp typography. Built for startups and tech blogs.",
    "desc_handmade_story": "The warmth of a handwritten letter — terracotta and olive on cream paper, soft rounded shapes. Built for artisans and small businesses.",
    "desc_crimson_velvet": "The quiet luxury of a private wine cellar — burgundy velvet, aged oak, and candlelight on crystal. Built for restaurants, luxury brands, and fine living.",
    "desc_solar_flare": "The explosive warmth of a solar corona against the void — molten amber and gold on deep ink-blue. Built for bold brands that want to be noticed.",
    "upload_title": "Install theme from ZIP",
    "upload_help": "Upload a theme ZIP: a folder with theme.css and an optional preview image. The theme appears in the list immediately. Themes uploaded here survive CMS updates (unless the name matches a built-in theme).",
    "upload_btn": "Install",
    "upload_ok": "Theme “{name}” installed.",
    "upload_replaced": "Theme “{name}” replaced.",
    "upload_err": "The file is not a valid theme ZIP.",
    "delete_confirm": "Delete this theme? Its files will be removed.",
    "deleted_ok": "Theme “{name}” deleted.",
    "cannot_delete_active": "The active theme cannot be deleted. Activate another theme first."
  },
  "tools": {
    "title": "SEO & AEO Tools",
    "subtitle": "Manage sitemap, robots.txt, RSS feeds, and AI visibility for search engines and answer engines",
    "sitemap_title": "XML Sitemap",
    "sitemap_desc": "Automatically generated from your published content. Search engines use this to discover and index your pages.",
    "sitemap_status": "Status",
    "sitemap_active": "Active",
    "total_urls": "Total URLs",
    "published_posts": "Published Posts",
    "published_pages": "Published Pages",
    "homepage": "Homepage",
    "sitemap_listings": "Tag & category pages",
    "view": "View",
    "sitemap_auto": "Sitemap is auto-generated — no manual editing needed. New content appears automatically.",
    "robots_title": "robots.txt",
    "robots_desc": "Controls which pages search engines can crawl. The Sitemap URL is added automatically.",
    "robots_content": "Content",
    "robots_help": "Standard directives: User-agent, Allow, Disallow. One per line.",
    "save": "Save",
    "reset_default": "Reset to Default",
    "reset_confirm": "Reset robots.txt to default? This will overwrite your current content.",
    "rss_title": "RSS Feed",
    "rss_desc": "Auto-generated RSS feeds for each language. RSS readers, aggregators, and Google News use these to follow your content.",
    "rss_posts_per_feed": "Posts per feed",
    "rss_auto": "Feeds are auto-generated — one per active language. Latest 20 posts with full metadata.",
    "llms_title": "llms.txt",
    "llms_desc": "AI-friendly site summary for ChatGPT, Claude, Perplexity, and other AI systems. Helps AI understand your site and cite your content accurately.",
    "llms_posts_included": "Posts included",
    "llms_pages_included": "Pages included",
    "llms_auto": "Auto-generated from your published content. Includes latest 50 posts and all pages with meta descriptions."
  },
  "audit_log": {
    "title": "Audit Log",
    "subtitle": "Activity and security monitoring",
    "all_actions": "All actions",
    "clear_filter": "Clear filter",
    "entries": "entries",
    "time": "Time",
    "user": "User",
    "action": "Action",
    "details": "Details",
    "ip": "IP",
    "no_entries": "No log entries yet",
    "no_entries_text": "Activity will appear here as users interact with the admin panel.",
    "prev": "← Prev",
    "next": "Next →",
    "action_login": "Login",
    "action_login_failed": "Login Failed",
    "action_login_blocked": "Login Blocked",
    "action_logout": "Logout",
    "action_create_post": "Create Post",
    "action_edit_post": "Edit Post",
    "action_delete_post": "Delete Post",
    "action_create_page": "Create Page",
    "action_edit_page": "Edit Page",
    "action_edit_page_builder": "Edit Page (Builder)",
    "action_delete_page": "Delete Page",
    "action_create_form": "Create Form",
    "action_edit_form": "Edit Form",
    "action_translate_form": "Translate Form",
    "action_delete_form": "Delete Form",
    "action_save_newsletter": "Save Newsletter",
    "action_send_newsletter": "Send Newsletter",
    "action_delete_newsletter": "Delete Newsletter",
    "action_edit_settings": "Edit Settings",
    "action_change_theme": "Change Theme",
    "action_create_backup": "Create Backup",
    "action_restore_backup": "Restore Backup",
    "action_backup_failed": "Backup Failed",
    "action_restore_failed": "Restore Failed",
    "action_update_favicon": "Update Favicon",
    "action_delete_favicon": "Delete Favicon",
    "detail_login_blocked": "IP {ip} blocked (brute-force)",
    "detail_login_success": "Successful login",
    "detail_login_failed": "Failed login for \"{name}\"",
    "detail_logout": "User logged out",
    "detail_password_reset_email_failed": "Failed to send reset email to {email}: {error}",
    "detail_password_reset_request": "Password reset requested for {email}",
    "detail_password_reset": "Password reset for {email}",
    "detail_created_post": "Created post \"{title}\" ({lang})",
    "detail_edited_post": "Edited post \"{title}\" ({lang})",
    "detail_deleted_post": "Deleted post \"{title}\"",
    "detail_duplicated_post": "Duplicated post from \"{title}\"",
    "detail_created_page": "Created page \"{title}\" ({lang})",
    "detail_edited_page": "Edited page \"{title}\" ({lang})",
    "detail_deleted_page": "Deleted page \"{title}\"",
    "detail_duplicated_page": "Duplicated page from \"{title}\"",
    "detail_updated_builder": "Updated page builder blocks for \"{title}\"",
    "detail_created_form": "Created form: {title}",
    "detail_updated_form": "Updated form: {title}",
    "detail_translated_form": "Created form translation: {title} ({lang})",
    "detail_deleted_form": "Deleted form: {title}",
    "detail_duplicated_form": "Duplicated form from \"{title}\"",
    "detail_bulk_deleted_submissions": "Bulk deleted {count} submissions from form \"{title}\"",
    "detail_created_newsletter": "Created newsletter: {title}",
    "detail_saved_newsletter": "Saved newsletter: {title}",
    "detail_translated_newsletter": "Created newsletter translation ({lang}): {title}",
    "detail_deleted_newsletter": "Deleted newsletter",
    "detail_sent_newsletter": "Sent newsletter to {count} recipients ({failed} failed)",
    "detail_duplicated_newsletter": "Duplicated newsletter from \"{title}\"",
    "detail_file_uploaded": "File uploaded: {name}",
    "detail_file_deleted": "File deleted: {name}",
    "detail_favicon_updated": "Generated favicons: {sizes}",
    "detail_favicon_deleted": "Deleted all favicons",
    "detail_license_activated": "License activated ({platform})",
    "detail_license_deactivated": "License deactivated",
    "detail_settings_updated": "Updated site settings",
    "detail_update_backup": "Pre-update backup created",
    "detail_updated_cms": "Updated to v{version}",
    "detail_update_rolled_back": "Update failed, rolled back: {error}",
    "detail_update_error": "Update error: {error}",
    "detail_ssl_enabled": "HTTPS enabled for {domain}",
    "detail_ssl_failed": "SSL setup failed for {domain}: {error}",
    "detail_ssl_timeout": "SSL setup timed out for {domain}",
    "detail_created_backup": "Created backup ({size} MB)",
    "detail_backup_failed": "Backup failed: {error}",
    "detail_restored_backup": "Restored backup: {items}",
    "detail_restore_failed": "Restore failed: {error}",
    "detail_changed_theme_mode": "Changed display mode: {old_mode} → {new_mode}",
    "detail_changed_mode_lock": "Changed mode lock: {old_lock} → {new_lock}",
    "detail_activated_theme": "Activated theme: {theme}",
    "detail_custom_css_updated": "Custom CSS updated",
    "action_accept_invite": "Accept Invite",
    "action_activate_license": "Activate License",
    "action_bulk_delete_submissions": "Bulk Delete Submissions",
    "action_change_mode_lock": "Change Mode Lock",
    "action_change_theme_mode": "Change Display Mode",
    "action_change_user_role": "Change User Role",
    "action_create_newsletter": "Create Newsletter",
    "action_deactivate_license": "Deactivate License",
    "action_delete_image": "Delete Image",
    "action_delete_user": "Delete User",
    "action_duplicate_form": "Duplicate Form",
    "action_duplicate_newsletter": "Duplicate Newsletter",
    "action_duplicate_page": "Duplicate Page",
    "action_duplicate_post": "Duplicate Post",
    "action_edit_custom_css": "Edit Custom CSS",
    "action_edit_image": "Edit Image",
    "action_file_deleted": "Delete File",
    "action_file_uploaded": "Upload File",
    "action_invite_user": "Invite User",
    "action_password_reset": "Password Reset",
    "action_password_reset_email_failed": "Password Reset Email Failed",
    "action_password_reset_request": "Password Reset Request",
    "action_save_menu": "Save Menu",
    "action_ssl_setup": "SSL Setup",
    "action_ssl_setup_failed": "SSL Setup Failed",
    "action_translate_newsletter": "Translate Newsletter",
    "action_update_backup": "Backup Before Update",
    "action_update_cms": "Update CMS",
    "action_update_failed": "Update Failed",
    "action_update_profile": "Update Profile",
    "action_upload_image": "Upload Image",
    "detail_accepted_invite": "Accepted invitation and created account \"{name}\"",
    "detail_changed_user_role": "Changed role of {name} to {role}",
    "detail_deleted_image": "Deleted image: {filename}",
    "detail_deleted_user": "Deleted user \"{name}\"",
    "detail_edited_image": "Edited image: {filename}",
    "detail_invited_user": "Invited {email} as {role}",
    "detail_saved_menu": "Saved {location} menu",
    "detail_updated_profile": "Updated own profile",
    "detail_uploaded_image": "Uploaded image: {filename}",
    "action_install_plugin": "Install Plugin",
    "action_update_plugin": "Update Plugin",
    "action_toggle_plugin": "Enable/Disable Plugin",
    "action_delete_plugin": "Delete Plugin",
    "action_activate_plugin_license": "Activate Plugin License",
    "action_upload_theme": "Upload Theme",
    "action_delete_theme": "Delete Theme",
    "actor_all": "All actors",
    "actor_human": "Human only",
    "actor_agent": "AI agent only",
    "via_agent": "AI agent",
    "via_agent_hint": "Performed by an AI agent (WebMCP) within this user's session",
    "action_2fa_enabled": "2FA Enabled",
    "action_2fa_disabled": "2FA Disabled",
    "action_2fa_login_failed": "2FA Code Failed",
    "action_2fa_recovery_used": "2FA Recovery Code Used",
    "action_2fa_email_code": "2FA E-mail Code Sent",
    "action_2fa_reset_by_admin": "2FA Reset By Admin",
    "action_2fa_bypass_file": "2FA Bypassed (File)",
    "detail_twofa_enabled": "Enabled two-factor authentication",
    "detail_twofa_disabled": "Disabled two-factor authentication",
    "detail_twofa_login_failed": "Entered a wrong second-factor code",
    "detail_twofa_recovery_used": "Signed in with a one-time recovery code",
    "detail_twofa_email_code": "Requested a one-time sign-in code by e-mail",
    "detail_twofa_reset_by_admin": "Reset two-factor authentication for {name}",
    "detail_twofa_bypass_file": "Second factor skipped — DISABLE_2FA file present"
  },
  "backup": {
    "title": "Backup",
    "subtitle": "Create a full backup of your site",
    "overview": "Site Overview",
    "posts": "Posts",
    "pages": "Pages",
    "images": "Images",
    "files_in_uploads": "Files in uploads",
    "database": "Database",
    "uploads_folder": "Uploads folder",
    "download_title": "Download Backup",
    "download_desc": "Creates a ZIP archive containing your database, all uploaded media files, and configuration.",
    "create_download": "Create & Download Backup",
    "creating_backup": "Creating backup…",
    "whats_included": "What's included:",
    "includes_db": "Complete database (all posts, pages, settings, users)",
    "includes_media": "All uploaded media files (images, variants)",
    "includes_env": "Environment configuration (.env)",
    "restore_title": "Restore from Backup",
    "restore_desc": "Upload a previously created backup ZIP to restore your site. This will overwrite the current database and uploads.",
    "restore_btn": "Restore from Backup",
    "restoring": "Restoring…",
    "restore_warning": "Warning:",
    "restore_warning_text": "Restoring a backup will replace your current database and uploaded files. Make sure you have a current backup before restoring an older one.",
    "restore_select_file": "Please select a backup ZIP file first.",
    "restore_confirm": "Are you sure you want to restore from this backup?\n\nThis will OVERWRITE your current database and uploads.\nThis action cannot be undone!"
  },
  "menus": {
    "title": "Menus",
    "subtitle": "Configure your header and footer menus",
    "header_menu": "Header Menu",
    "footer_menu": "Footer Menu",
    "current_header": "Current Header Menu:",
    "current_footer": "Current Footer Menu:",
    "menu_label": "Menu Label",
    "lang": "Lang",
    "published": "Published",
    "no_pages": "No published pages yet.",
    "no_posts": "No published posts yet.",
    "create_first_page": "Create your first page →",
    "create_first_post": "Create your first post →",
    "save_menu": "Save Menu",
    "all_languages": "All languages",
    "custom_label_placeholder": "Menu label",
    "header_info": "Select pages, posts, files or links to add to your header navigation. You can set a <strong>menu label</strong> for each item — useful when the title is too long for a menu.",
    "footer_info": "Select pages, posts, files or links for your footer navigation. Typically used for legal pages and company info.",
    "add_submenu_item": "Add subitem",
    "submenu_items": "Submenu items",
    "no_menu_items": "No items in this menu yet.",
    "drag_to_reorder": "Drag to reorder",
    "drag_to_nest": "Drag onto a top-level item to nest it as a submenu entry",
    "remove_item": "Remove",
    "submenu_note": "Submenus are supported in the header menu. Footer menus display as flat links.",
    "anchor_links_hint": "Anchor links are supported, e.g. /about#team",
    "parent_item": "Top-level item",
    "child_item": "Submenu item",
    "custom_links": "Links",
    "custom_url_placeholder": "https://example.com",
    "pick_file": "Pick a file…",
    "open_new_window": "Open in new window",
    "add_to_menu": "Add to menu",
    "custom_url_invalid": "URL must start with https://, http://, mailto:, tel: or /",
    "custom_label_required": "Label is required",
    "custom_links_empty": "Please fill in at least one language with both URL and label",
    "update_link": "Update link",
    "edit_link": "Edit",
    "custom_url_header": "URL",
    "max_depth_reached": "Maximum menu depth reached (3 levels)"
  },
  "login": {
    "title": "Admin Login",
    "username": "Username",
    "username_or_email": "Username or email",
    "password": "Password",
    "login_btn": "Login",
    "forgot_password": "Forgot your password?",
    "back_to_site": "← Back to site"
  },
  "forgot_password": {
    "title": "Reset Your Password",
    "email_label": "Email Address",
    "email_placeholder": "Enter your account email",
    "email_help": "We'll send you a link to reset your password. The link is valid for 1 hour.",
    "send_btn": "Send Reset Link",
    "back_to_login": "← Back to login"
  },
  "reset_password": {
    "title": "Set New Password",
    "password_label": "New Password",
    "password_placeholder": "Enter new password",
    "password_help": "At least 8 characters",
    "confirm_label": "Confirm New Password",
    "confirm_placeholder": "Repeat new password",
    "submit_btn": "Set New Password",
    "back_to_login": "← Back to login"
  },
  "accept_invite": {
    "welcome": "Welcome!",
    "subtitle": "You've been invited to join the team",
    "invited_as": "You are being invited as {role} for {email}",
    "username": "Username",
    "username_placeholder": "Choose a username",
    "username_help": "Used for logging in",
    "display_name": "Display Name",
    "display_name_placeholder": "Your public name (shown on posts)",
    "display_name_help": "Visible to site visitors as the author name",
    "password": "Password",
    "password_placeholder": "At least 8 characters",
    "confirm_password": "Confirm Password",
    "confirm_placeholder": "Repeat password",
    "create_account": "Create My Account"
  },
  "table": {
    "title": "Title",
    "status": "Status",
    "language": "Language",
    "author": "Author",
    "published_date": "Published",
    "updated_date": "Updated",
    "actions": "Actions",
    "edit": "Edit",
    "translate": "Translate",
    "view": "View",
    "preview": "Preview",
    "delete": "Delete",
    "duplicate": "Duplicate",
    "all": "All",
    "published": "Published",
    "drafts": "Drafts",
    "search": "Search",
    "selected": "selected",
    "all_languages": "All languages",
    "newest_first": "Newest first",
    "oldest_first": "Oldest first"
  },
  "pagination": {
    "prev": "← Prev",
    "next": "Next →",
    "per_page": "Show",
    "per_page_suffix": "per page"
  },
  "common": {
    "save": "Save",
    "cancel": "Cancel",
    "delete": "Delete",
    "edit": "Edit",
    "back": "Back",
    "search": "Search",
    "loading": "Loading...",
    "success": "Success",
    "error": "Error",
    "confirm": "Confirm",
    "yes": "Yes",
    "no": "No",
    "choose": "Choose",
    "copy": "Copy",
    "copied": "Copied!",
    "close": "Close",
    "or": "or",
    "and": "and",
    "required": "required",
    "connection_error": "Connection error. Please try again.",
    "clear": "Clear",
    "remove": "Remove",
    "preview": "Preview",
    "show_hide": "Show/hide",
    "show_hide_password": "Show/hide password",
    "view": "View",
    "status_published": "Published",
    "status_draft": "Draft",
    "status_read": "Read",
    "status_new": "New",
    "unit_b": "B",
    "unit_kb": "KB",
    "unit_mb": "MB",
    "language_deactivated": "deactivated",
    "update_now": "Update now",
    "updating": "Updating…",
    "update_confirm": "Update the CMS now? The site will be briefly unavailable.",
    "reload": "Reload",
    "restart_hint": "Restart the service to finish the update."
  },
  "dates": {
    "months_short": [
      "Jan",
      "Feb",
      "Mar",
      "Apr",
      "May",
      "Jun",
      "Jul",
      "Aug",
      "Sep",
      "Oct",
      "Nov",
      "Dec"
    ],
    "months_long": [
      "January",
      "February",
      "March",
      "April",
      "May",
      "June",
      "July",
      "August",
      "September",
      "October",
      "November",
      "December"
    ],
    "format_date": "{month_short} {day}, {year}",
    "format_datetime": "{month_short} {day}, {time}"
  },
  "builder": {
    "page_builder": "Page Builder",
    "open_builder": "Open Page Builder",
    "save_first_hint": "Save the page first, then open Page Builder from the Edit page",
    "save_translation_hint": "Save the translation first, then open Page Builder from the Edit page",
    "save": "Save",
    "saving": "Saving...",
    "saved": "Saved successfully",
    "save_failed": "Save failed",
    "network_error": "Network error — changes not saved",
    "no_blocks": "No blocks data",
    "preview": "Preview",
    "back_to_editor": "Back to editor",
    "drag_hint": "Drag blocks here or click a block in the sidebar",
    "block_settings": "Block Settings",
    "select_block_hint": "Select a block on the canvas to edit its settings",
    "loading": "Loading...",
    "layout": "Layout",
    "basic": "Basic",
    "structure": "Structure",
    "media": "Media",
    "advanced": "Advanced",
    "heading": "Heading",
    "text": "Text",
    "image": "Image",
    "button": "Button",
    "divider": "Divider",
    "spacer": "Spacer",
    "columns": "Columns",
    "section": "Section",
    "video": "Video",
    "gallery": "Gallery",
    "audio": "Audio",
    "quote": "Quote",
    "table": "Table",
    "accordion": "Accordion",
    "tabs": "Tabs",
    "html": "HTML",
    "code": "Code",
    "form": "Form",
    "form_select": "Select form",
    "form_no_forms": "No forms yet. Create one in Forms section.",
    "form_fields": "fields",
    "form_submit_default": "Submit",
    "form_show_title": "Show title",
    "form_show_description": "Show description",
    "alignment": "Alignment",
    "left": "Left",
    "center": "Center",
    "right": "Right",
    "justify": "Justify",
    "top_margin": "Top margin",
    "bottom_margin": "Bottom margin",
    "none": "None",
    "css_class": "CSS class",
    "anchor_id": "Anchor ID",
    "text_content": "Text",
    "level": "Level",
    "image_url": "Image URL",
    "image_url_hint": "Paste URL or use media library",
    "alt_text": "Alt text",
    "caption": "Caption",
    "link_url": "Link URL",
    "size": "Size",
    "size_full": "Full width",
    "size_medium": "Medium",
    "size_small": "Small",
    "size_auto": "Auto",
    "button_text": "Button text",
    "button_url": "URL",
    "style": "Style",
    "style_primary": "Primary",
    "style_outline": "Outline",
    "style_ghost": "Ghost",
    "style_solid": "Solid",
    "style_dashed": "Dashed",
    "style_dotted": "Dotted",
    "style_gradient": "Gradient",
    "size_sm": "Small",
    "size_md": "Medium",
    "size_lg": "Large",
    "target": "Target",
    "target_self": "Same tab",
    "target_blank": "New tab",
    "height_px": "Height (px)",
    "columns_layout": "Layout",
    "columns_hint": "Tip: Add blocks into columns from the canvas.",
    "video_url": "YouTube or Vimeo URL",
    "video_url_hint": "e.g. https://youtube.com/watch?v=...",
    "video_title": "Title (accessibility)",
    "aspect_ratio": "Aspect ratio",
    "ratio_cinematic": "21:9 (cinematic)",
    "ratio_auto": "Auto (content height)",
    "html_code": "HTML Code",
    "html_executes": "Executes on page",
    "quote_text": "Quote text",
    "author": "Author",
    "code_language": "Language",
    "code_content": "Code",
    "audio_url": "Audio URL",
    "audio_title": "Title",
    "table_headers": "Headers (comma-separated)",
    "table_rows": "Rows (comma per cell, new line per row)",
    "table_rows_count": "rows",
    "accordion_items": "Items",
    "accordion_title": "Title",
    "accordion_content": "Content",
    "add_item": "Add item",
    "remove": "Remove",
    "tabs_count": "Tabs",
    "tab_title": "Tab title",
    "tab_content": "Content",
    "add_tab": "Add tab",
    "gallery_images": "images",
    "gallery_images_hint": "Paste image URLs below (one per line)",
    "gallery_images_format": "Images (url|alt|caption)",
    "gallery_columns": "Columns",
    "background": "Background",
    "bg_none": "None",
    "bg_color": "Color",
    "bg_gradient": "Gradient",
    "bg_image": "Image",
    "bg_value": "Background value",
    "bg_color_pick": "Pick color",
    "bg_gradient_value": "CSS Gradient",
    "bg_image_url": "Image URL",
    "bg_image_hint": "Recommended: 1920×1080px or wider. Image covers full section width.",
    "text_color": "Text color",
    "text_color_auto": "Auto (theme colors)",
    "text_color_light": "Light (for dark backgrounds)",
    "text_color_dark": "Dark (for light backgrounds)",
    "min_height": "Min height",
    "min_height_auto": "Auto",
    "min_height_50_screen": "50% screen",
    "min_height_75_screen": "75% screen",
    "min_height_full_screen": "Full screen",
    "bg_overlay": "Overlay color",
    "bg_light_mode": "Light mode background",
    "bg_light_color_pick": "Pick light mode color",
    "bg_light_gradient_value": "Light mode gradient",
    "bg_light_image_url": "Light mode image URL",
    "bg_light_overlay": "Light mode overlay",
    "bg_dark_mode": "Dark mode background",
    "bg_dark_color_pick": "Pick dark mode color",
    "bg_dark_gradient_value": "Dark mode gradient",
    "bg_dark_image_url": "Dark mode image URL",
    "bg_dark_overlay": "Dark mode overlay",
    "bg_theme_default": "Theme default",
    "choose_image": "Select Image",
    "gallery_add_from_library": "Add from Library",
    "gallery_pick_title": "Select Images",
    "gallery_add_selected": "Add selected",
    "section_layout": "Section Layout",
    "section_full_width": "Full width (edge-to-edge background)",
    "section_full_width_hint": "Full width stretches the background to the screen edges. Content width controls the inner area.",
    "section_content_width": "Content width",
    "section_width_narrow": "Narrow (768px)",
    "section_width_default": "Default (page width)",
    "section_width_wide": "Wide (1200px)",
    "section_width_full": "Full (no limit)",
    "slideshow": "Slideshow",
    "slideshow_mode": "Mode",
    "slideshow_mode_image": "Image only",
    "slideshow_mode_hero": "Hero (image + content)",
    "slideshow_animation": "Animation",
    "animation_slide": "Slide",
    "animation_fade": "Fade",
    "slideshow_autoplay": "Autoplay",
    "slideshow_interval": "Interval (seconds)",
    "slideshow_arrows": "Show arrows",
    "slideshow_dots": "Show dots",
    "slideshow_overlay": "Overlay",
    "slideshow_slides": "Slides",
    "slideshow_add_slide": "Add slide",
    "slideshow_remove_slide": "Remove Slide",
    "alt_text_override": "Alt text (override)",
    "alt_text_library_hint": "Inherited from media library. Edit in Media → Library.",
    "padding": "Padding",
    "padding_sm": "Small",
    "padding_md": "Medium",
    "padding_lg": "Large",
    "padding_xl": "Extra large",
    "move_up": "Move up",
    "move_down": "Move down",
    "duplicate": "Duplicate",
    "delete": "Delete",
    "drag": "Drag",
    "unsaved_warning": "You have unsaved changes. Are you sure you want to leave?",
    "content_alignment": "Text Alignment",
    "alignment_auto": "— Auto",
    "block_position": "Block Position",
    "slide_select_hint": "Click a slide number to edit its blocks",
    "slideshow_add_block": "Add block to slide",
    "default_heading": "New Heading",
    "default_text": "Start writing here...",
    "text_edit_canvas_hint": "Click the text on canvas to edit",
    "default_button": "Click Me",
    "default_accordion_title": "New question",
    "default_tab": "Tab",
    "click_select_image": "Click to select image",
    "click_select_form": "Click to select form",
    "add_block": "Add block",
    "section_full_width_badge": "FULL WIDTH",
    "table_add_row": "Row",
    "table_add_col": "Column",
    "table_width": "Table width",
    "column_alignment": "Column alignment",
    "table_remove_row": "Row",
    "table_remove_col": "Column",
    "table_insert_row": "Insert row",
    "column_width": "Column width",
    "column_width_hint": "%",
    "total": "Total",
    "undo": "Undo",
    "redo": "Redo",
    "visibility": "Visibility",
    "visibility_all": "All devices",
    "visibility_desktop": "Desktop only",
    "visibility_mobile": "Mobile only",
    "scroll_animation": "Scroll animation",
    "animation_fade_in": "Fade in",
    "animation_slide_up": "Slide up",
    "alt_missing": "No alt text — select image from library",
    "delete_block_confirm": "Delete this {type} block?",
    "delete_item_confirm": "Delete this item?",
    "empty_hint": "No items yet. Click the button below to add one.",
    "video_gallery": "Video Gallery",
    "video_gallery_add": "Add video",
    "video_gallery_add_title": "Add Video",
    "video_gallery_add_btn": "Add",
    "video_gallery_empty": "Click to add videos",
    "video_gallery_videos": "videos",
    "video_gallery_title_fetched": "Title fetched automatically",
    "video_meta_fetch_failed": "Couldn't fetch video info",
    "ticker": "Logo Ticker",
    "ticker_speed": "Speed",
    "ticker_slow": "Slow",
    "ticker_medium": "Medium",
    "ticker_fast": "Fast",
    "ticker_pause_hover": "Pause on hover",
    "ticker_grayscale": "Grayscale effect",
    "ticker_height": "Logo height",
    "ticker_direction": "Direction",
    "ticker_dir_rtl": "Right to left",
    "ticker_dir_ltr": "Left to right",
    "ticker_images": "logos",
    "toggle_preview": "Toggle preview: dark ↔ light",
    "canvas": "Canvas",
    "bold": "Bold",
    "italic": "Italic",
    "underline": "Underline",
    "strikethrough": "Strikethrough",
    "align_left": "Align left",
    "align_center": "Align center",
    "align_right": "Align right",
    "align_justify": "Justify",
    "bullet_list": "Bullet list",
    "numbered_list": "Numbered list",
    "link": "Link",
    "clear_formatting": "Clear formatting",
    "icon_check": "Check",
    "icon_cross": "Cross",
    "icon_star": "Star",
    "icon_feature": "Feature",
    "icon_tip": "Tip",
    "icon_warning": "Warning",
    "icon_plus": "Plus",
    "icon_minus": "Minus",
    "icon_dot": "Dot",
    "error_loading_forms": "Error loading forms",
    "form_search_placeholder": "Search forms...",
    "form_all_languages": "All",
    "form_new": "Create a form",
    "ai_placeholder": "Describe your page: purpose, sections, content, style...",
    "ai_welcome": "Tell me what page you'd like to build! Describe the purpose, what sections you need (hero, features, testimonials, FAQ, contact...), and any specific content. The more detail you give, the better the result. You can also ask me to modify the layout after I generate it.",
    "ai_thinking": "Thinking...",
    "ai_generated": "✅ Generated <strong>{count} blocks</strong>. Click \"Apply\" to load them into the canvas.",
    "ai_no_blocks": "No blocks generated. Try being more specific about the page structure.",
    "ai_apply_blocks": "Apply blocks",
    "ai_blocks_loaded": "AI blocks loaded — {count} blocks",
    "editor_readonly_hint": "This content is managed by Page Builder",
    "convert_from_editor_title": "Switch this page to Page Builder?",
    "convert_from_editor_warning": "This page was written in the regular editor. Saving here hands it over to Page Builder: the regular editor becomes read-only for this page, and the original formatting may change. To keep editing it in the regular editor, close the builder without saving.",
    "convert_from_editor_ok": "Save in Page Builder"
  },
  "forms": {
    "title": "Forms",
    "subtitle": "Create and manage forms, surveys, and data collection",
    "new_form": "Create New Form",
    "create_subtitle": "Choose a template and start building your form",
    "edit_form": "Edit Form",
    "edit_subtitle": "Design your form fields and configure settings",
    "no_forms": "No forms yet",
    "no_forms_text": "Create your first form to start collecting data",
    "no_forms_filtered": "No forms match your filters",
    "clear_filters": "Clear filters",
    "search_placeholder": "Search forms...",
    "all_types": "All types",
    "create_first": "Create First Form",
    "delete_confirm": "Are you sure you want to delete \"{title}\"? All submissions will also be deleted.",
    "delete_confirm_generic": "Are you sure you want to delete this form? All submissions will also be deleted.",
    "usage_warning": "⚠️ This form is embedded in page builder blocks:",
    "usage_confirm_delete": "The form block will be removed from these pages. Delete anyway?",
    "form_type": "Form Type",
    "type_contact": "Contact Form",
    "type_contact_desc": "Name, email, subject, message — classic contact form with privacy consent",
    "type_survey": "Survey / Poll",
    "type_survey_desc": "Rating, radio buttons, checkboxes — collect feedback and opinions",
    "type_subscription": "Subscription",
    "type_subscription_desc": "Email signup with consent — ready for newsletter integration",
    "type_custom": "Custom Form",
    "type_custom_desc": "Start from scratch and build exactly what you need",
    "status_active": "Active",
    "status_inactive": "Inactive",
    "submissions_count": "Submissions",
    "new_badge": "new",
    "fields": "Fields",
    "form_settings": "Form Settings",
    "field_types": "Field Types",
    "add_field": "Add Field",
    "field_label": "Label",
    "field_name": "Field name",
    "field_name_help": "Internal name (no spaces, lowercase)",
    "field_placeholder": "Placeholder",
    "field_required": "Required",
    "field_width": "Width",
    "field_width_full": "Full width",
    "field_width_half": "Half width",
    "field_help_text": "Help text",
    "field_options": "Options (one per line)",
    "field_max_rating": "Max stars",
    "field_consent_text": "Consent text",
    "type_text": "Text",
    "type_email": "Email",
    "type_phone": "Phone",
    "type_number": "Number",
    "type_textarea": "Text Area",
    "type_select": "Dropdown",
    "type_radio": "Radio Buttons",
    "type_checkbox": "Checkboxes",
    "type_date": "Date",
    "type_url": "URL",
    "type_file": "File Upload",
    "type_hidden": "Hidden",
    "type_rating": "Star Rating",
    "type_consent": "Consent / GDPR",
    "settings_submit_label": "Submit Button Text",
    "settings_success_message": "Success Message",
    "settings_success_help": "Shown after successful submission",
    "settings_redirect_url": "Redirect URL (optional)",
    "settings_redirect_help": "Redirect to this URL after submission instead of showing the success message",
    "settings_notify_email": "Notification Email",
    "settings_notify_help": "Receive email when someone submits this form",
    "settings_notify_on_submit": "Send email notification on each submission",
    "settings_store_submissions": "Store submissions in database",
    "settings_anti_spam": "Anti-Spam Protection",
    "settings_anti_spam_honeypot": "Honeypot (recommended)",
    "settings_anti_spam_none": "None",
    "preview": "Preview",
    "move_up": "Move up",
    "move_down": "Move down",
    "duplicate_field": "Duplicate",
    "remove_field": "Remove",
    "form_slug": "Form Slug",
    "form_description": "Description",
    "form_description_help": "Shown above the form on the public site",
    "translate_form": "Create Translation",
    "translating_from": "Translating from:",
    "select_target_language": "Select target language",
    "existing_translations": "Existing Translations",
    "ai_translate_fields": "AI: Translate all fields",
    "translating_fields": "Translating fields...",
    "language": "Language",
    "translations": "Translations",
    "no_translations": "No translations yet",
    "create_translation": "Create Translation",
    "ai_translate_create": "AI: Translate & Create",
    "translation_group": "Translation Group",
    "ai_generate_form": "AI: Generate Form",
    "ai_generate_form_desc": "Let AI create form fields based on your description",
    "ai_hint_create_first": "Create the form first, then use AI to generate fields on the Edit page",
    "ai_hint_translate": "Use AI to generate or adjust form content for the target language",
    "this_version": "— this version",
    "or_use_ai": "Or use AI:",
    "select_language_placeholder": "— Select language —",
    "ai_translate_help": "Creates a new form with AI-translated fields",
    "group": "Group",
    "drag": "Drag",
    "copy": "Copy",
    "select_language_first": "Please select a target language first.",
    "confirm_ai_translate": "Create AI translation to {lang}? This will create a new form with all fields translated.",
    "open_existing_translation": "Open existing translation?",
    "default_text_field": "Text Field",
    "default_email": "Email",
    "default_phone": "Phone",
    "default_number": "Number",
    "default_message": "Message",
    "default_select": "Select",
    "default_choice": "Choice",
    "default_select_all": "Select all that apply",
    "default_date": "Date",
    "default_website": "Website",
    "default_rating": "Rating",
    "default_privacy": "Privacy",
    "default_hidden": "Hidden",
    "default_consent_text": "I agree to the processing of my personal data.",
    "default_option": "Option",
    "default_your_message": "Your message...",
    "source_form": "Source form",
    "source_badge": "source",
    "source_form_fields": "Source Form Fields",
    "original": "Original",
    "translated_title_placeholder": "Translated form title...",
    "translated_desc_placeholder": "Translated description...",
    "source_settings": "Settings",
    "source_submit": "Submit",
    "source_success": "Success",
    "source_placeholder": "Placeholder",
    "source_help": "Help",
    "source_consent": "Consent",
    "source_options": "Options",
    "ai_translate_all_help": "Translates title, description, all field labels, placeholders, options, consent texts, and submit button via AI. Creates the translated form automatically.",
    "confirm_ai_translate_full": "Create AI translation to {lang}? This will create a new form with all fields, labels, placeholders, and settings translated.",
    "redirect_to_translation": "Redirecting to edit the translation...",
    "fields_count": "fields",
    "new_form_placeholder": "My Contact Form",
    "tpl_contact_name": "Your Name",
    "tpl_contact_name_placeholder": "John Doe",
    "tpl_contact_email": "Email Address",
    "tpl_contact_email_placeholder": "john@example.com",
    "tpl_contact_subject": "Subject",
    "tpl_contact_subject_placeholder": "How can we help?",
    "tpl_contact_message": "Message",
    "tpl_contact_message_placeholder": "Your message...",
    "tpl_contact_privacy": "Privacy Policy",
    "tpl_contact_consent": "I agree to the processing of my personal data according to the Privacy Policy.",
    "tpl_contact_submit": "Send Message",
    "tpl_contact_success": "Thank you! We will get back to you shortly.",
    "tpl_survey_name": "Your Name (optional)",
    "tpl_survey_satisfaction": "How satisfied are you with our service?",
    "tpl_survey_opt_very_satisfied": "Very satisfied",
    "tpl_survey_opt_satisfied": "Satisfied",
    "tpl_survey_opt_neutral": "Neutral",
    "tpl_survey_opt_dissatisfied": "Dissatisfied",
    "tpl_survey_opt_very_dissatisfied": "Very dissatisfied",
    "tpl_survey_rating": "Rate your overall experience",
    "tpl_survey_improvements": "What could we improve?",
    "tpl_survey_opt_speed": "Speed",
    "tpl_survey_opt_quality": "Quality",
    "tpl_survey_opt_communication": "Communication",
    "tpl_survey_opt_price": "Price",
    "tpl_survey_opt_support": "Support",
    "tpl_survey_comments": "Additional comments",
    "tpl_survey_comments_placeholder": "Tell us more...",
    "tpl_survey_submit": "Submit Survey",
    "tpl_survey_success": "Thank you for your feedback! It helps us improve.",
    "tpl_sub_email": "Email Address",
    "tpl_sub_email_placeholder": "your@email.com",
    "tpl_sub_name": "Name (optional)",
    "tpl_sub_name_placeholder": "Your name",
    "tpl_sub_consent_label": "Newsletter Consent",
    "tpl_sub_consent_text": "I agree to receive email updates. I can unsubscribe at any time.",
    "tpl_sub_submit": "Subscribe",
    "tpl_sub_success": "You have been subscribed! Check your inbox for a confirmation email.",
    "tpl_custom_field": "Field 1",
    "tpl_custom_submit": "Submit",
    "tpl_custom_success": "Thank you! Your response has been recorded.",
    "email_new_submission": "New submission: {title}",
    "email_subject_submission": "[{title}] New submission",
    "default_thank_you": "Thank you!",
    "default_submit": "Submit",
    "all_translated": "All languages already have translations.",
    "settings_confirmation_email": "Send confirmation email to visitor",
    "settings_confirmation_email_help": "Send a thank-you email to the visitor after submission (requires a required email field)",
    "settings_double_opt_in": "Require email confirmation (double opt-in)",
    "settings_double_opt_in_help": "Visitor must click a link in the email to confirm their address. Recommended for subscription forms."
  },
  "submissions": {
    "title": "Submissions",
    "subtitle": "View responses for",
    "no_submissions": "No submissions yet",
    "no_submissions_text": "Submissions will appear here when visitors fill out the form.",
    "no_results": "No submissions match your search",
    "clear_search": "Clear search",
    "search_placeholder": "Search by email, name, IP...",
    "delete_selected": "Delete selected",
    "clear_selection": "Clear selection",
    "select_all": "Select all",
    "bulk_delete_confirm": "Delete {count} selected submissions? This cannot be undone.",
    "export_csv": "Export CSV",
    "export_excel": "Export Excel",
    "all": "All",
    "new": "New",
    "read": "Read",
    "archived": "Archived",
    "spam": "Spam",
    "mark_as": "Mark as",
    "delete": "Delete",
    "delete_confirm": "Delete this submission?",
    "date": "Date",
    "status": "Status",
    "ip": "IP Address",
    "data": "Data",
    "detail_title": "Submission Detail",
    "back_to_list": "← Back to submissions",
    "submitted_at": "Submitted",
    "user_agent": "Browser",
    "referrer": "Referrer",
    "metadata": "Metadata",
    "agreed": "Agreed",
    "not_agreed": "Not agreed",
    "email_confirmed": "Confirmed",
    "email_pending": "Pending",
    "email_not_applicable": "N/A",
    "email_status": "Email Status"
  },
  "admin_bar": {
    "edit_page": "Edit Page",
    "edit_post": "Edit Post",
    "page_builder": "Page Builder",
    "dashboard": "Dashboard"
  },
  "newsletter": {
    "title": "Newsletter",
    "subtitle": "Send emails to your subscribers and form respondents",
    "compose": "New Campaign",
    "compose_subtitle": "Create an email campaign and send to your audience",
    "edit_campaign": "Edit Campaign",
    "view_campaign": "View Campaign",
    "subject": "Subject",
    "subject_placeholder": "Your newsletter subject line...",
    "content": "Email Content",
    "audience": "Audience",
    "target_languages": "Filter by language",
    "target_languages_help": "Select languages to target. Leave empty to send to all.",
    "target_forms": "Filter by form",
    "target_forms_help": "Select specific forms. Leave empty to include all forms with email field.",
    "no_forms_with_email": "No active forms with email field found.",
    "recipients": "Recipients",
    "languages": "Languages",
    "all_languages": "All",
    "status_label": "Status",
    "status_draft": "Draft",
    "status_sending": "Sending...",
    "status_sent": "Sent",
    "status_failed": "Failed",
    "date": "Date",
    "failed": "failed",
    "actions": "Actions",
    "save_draft": "Save Draft",
    "save_first_hint": "Save the draft first to unlock test send and delivery.",
    "test_send": "Test Email",
    "send_test": "Send Test",
    "send_now": "Send to All Recipients",
    "send_warning": "This action cannot be undone. Emails will be sent immediately.",
    "send_confirm": "Send this newsletter to {count} recipients? This cannot be undone.",
    "no_recipients_alert": "No recipients found. Check your language and form filters.",
    "sent_info": "This campaign has been sent.",
    "sent_at": "Sent at",
    "no_newsletters": "No campaigns yet",
    "no_newsletters_text": "Create your first email campaign to reach your subscribers.",
    "delete_confirm": "Delete this campaign? This cannot be undone.",
    "recipient_list": "Recipient List",
    "recipient_list_help": "These people will receive the email. Uncheck to exclude.",
    "translate_recipients_help": "Recipients for the selected target language. This is a preview — audience settings are inherited from the original campaign.",
    "search_recipients": "Search by name or email...",
    "sort_email": "Email",
    "sort_name": "Name",
    "sort_source": "Source",
    "select_all": "Select all",
    "deselect_all": "Deselect all",
    "import_csv": "Import CSV",
    "import_csv_help": "CSV file with columns: email, name (optional)",
    "imported_badge": "imported",
    "excluded_badge": "excluded",
    "no_recipients_yet": "No recipients match current filters.",
    "showing_recipients": "Showing {shown} of {total}",
    "csv_imported": "{count} emails imported from CSV",
    "test_banner": "TEST EMAIL — This is a preview, not sent to subscribers",
    "unsubscribe_link": "Unsubscribe",
    "confirmed_only": "Confirmed subscribers only",
    "confirmed_only_help": "Send only to recipients who confirmed their email via double opt-in. Imported and non-opt-in subscribers are always included.",
    "confirmed_badge": "confirmed",
    "pending_badge": "pending",
    "imported_source": "CSV Import",
    "search_placeholder": "Search by subject...",
    "no_campaigns": "No campaigns match your filters.",
    "try_adjusting": "Try adjusting your filters or search query.",
    "clear_filters": "Clear Filters",
    "create_first": "Create your first email campaign to reach your subscribers.",
    "create_first_btn": "Create Campaign",
    "campaign_language_help": "The language this campaign is written in.",
    "duplicate_confirm": "Create a copy of \"{title}\"?",
    "ai_translate_help": "Creates a new campaign with AI-translated subject and content (as draft).",
    "translate_confirm": "Create AI translation to {lang}?\n\nThis will create a new draft with translated subject and content.",
    "manual_confirm": "Create a copy for {lang}?\n\nThis will duplicate the campaign with all content. You can then translate it manually.\n\nNo AI tokens will be used.",
    "translate_campaign": "Create a translated version of a newsletter campaign",
    "translated_subject_placeholder": "Translated subject line...",
    "source_campaign": "Source campaign",
    "ai_generate_help": "Generate email subject and content using AI"
  },
  "flash": {
    "setup_completed": "Setup completed successfully! Welcome to AliothPress.",
    "setup_already_done": "Setup already completed",
    "fields_required": "All fields are required",
    "passwords_mismatch": "Passwords do not match",
    "password_min_length": "Password must be at least 8 characters.",
    "invalid_credentials": "Invalid username or password",
    "logged_out": "You have been logged out",
    "too_many_attempts": "Too many failed login attempts. Please wait 15 minutes.",
    "post_created": "Post created successfully!",
    "post_updated": "Post updated successfully!",
    "post_deleted": "Post deleted successfully!",
    "page_created": "Page created successfully!",
    "page_updated": "Page updated successfully!",
    "page_deleted": "Page deleted successfully!",
    "translation_created": "Translation created successfully! Status: {status}",
    "translation_exists": "Translation in {language} already exists!",
    "slug_exists": "Slug already exists (used by another post or page), using auto-generated slug",
    "image_uploaded": "Image uploaded and optimized successfully!",
    "image_updated": "Image updated successfully!",
    "image_deleted": "Image deleted successfully!",
    "file_uploaded": "File uploaded successfully!",
    "file_updated": "File updated successfully!",
    "file_deleted": "File deleted successfully!",
    "file_too_large": "File is too large. Maximum size: {size}MB.",
    "alt_text_required": "Alt text is required for accessibility!",
    "alt_text_required_short": "Alt text is required!",
    "invalid_file_type": "Invalid file type. Allowed formats: {formats}. Max size: {size}MB.",
    "no_file_selected": "No file selected",
    "settings_saved": "Settings saved successfully!",
    "email_test_sent": "Test email sent to {email}!",
    "email_test_failed": "Failed to send test email: {message}",
    "email_address_required": "Please provide an email address for the test.",
    "access_denied": "Access denied",
    "owner_only": "Only the site owner can perform this action.",
    "permission_denied": "You do not have permission to access this page.",
    "invite_email_required": "Please enter an email address.",
    "invite_email_exists": "A user with email {email} already exists.",
    "invite_admin_owner_only": "Only the site owner can invite administrators.",
    "invite_sent": "Invitation sent to {email}!",
    "invite_email_failed": "User created but email failed: {message}. Share this link manually: {url}",
    "invite_invalid": "Invalid invitation link.",
    "invite_expired": "This invitation has expired. Please ask the administrator to send a new one.",
    "username_password_required": "Username and password are required.",
    "username_taken": "This username is already taken.",
    "account_created": "Account created! Please log in.",
    "cannot_change_owner_role": "Cannot change the site owner's role.",
    "owner_assign_admin_only": "Only the site owner can assign the admin role.",
    "role_changed": "{name} is now {role}.",
    "cannot_delete_owner": "Cannot delete the site owner.",
    "cannot_delete_self": "You cannot delete your own account.",
    "user_deleted": "User {name} has been deleted.",
    "email_in_use": "This email is already in use.",
    "profile_updated": "Profile updated!",
    "menu_updated": "{location} menu updated successfully!",
    "api_key_saved": "API key saved successfully!",
    "theme_activated": "Theme \"{name}\" activated!",
    "theme_not_found": "Theme not found",
    "display_mode_changed": "Default display mode updated.",
    "custom_css_saved": "Custom CSS saved.",
    "custom_css_url_not_supported": "Custom CSS does not support url() or @import.",
    "robots_updated": "robots.txt updated successfully!",
    "backup_failed": "Backup failed: {error}",
    "backup_invalid_zip": "Invalid ZIP file",
    "backup_upload_zip": "Please upload a valid .zip backup file",
    "backup_suspicious": "Invalid backup file: suspicious paths detected",
    "backup_restored": "Backup restored successfully: {items}. Please restart the server.",
    "backup_no_data": "Backup file did not contain recognizable data",
    "backup_restore_failed": "Restore failed: {error}",
    "password_reset_sent": "If an account with that email exists, a password reset link has been sent.",
    "password_reset_invalid": "This password reset link is invalid or has expired.",
    "password_reset_done": "Your password has been reset! Please log in with your new password.",
    "email_enter_address": "Please enter your email address.",
    "favicon_invalid_format": "Please upload a PNG, JPG, SVG or WebP image.",
    "favicon_generated": "All favicons generated successfully!",
    "favicon_generation_failed": "Favicon generation failed: {error}",
    "favicon_svg_only": "SVG saved, but raster sizes could not be generated. Install cairosvg for full SVG support.",
    "favicon_deleted": "All favicons deleted.",
    "form_created": "Form created successfully!",
    "form_updated": "Form updated successfully!",
    "form_deleted": "Form deleted successfully!",
    "form_fields_invalid": "Invalid fields JSON. Please check the form structure.",
    "submission_deleted": "Submission deleted.",
    "submissions_bulk_deleted": "{count} submissions deleted.",
    "newsletter_saved": "Campaign saved as draft!",
    "newsletter_deleted": "Campaign deleted.",
    "newsletter_test_sent": "Test email sent to {email}!",
    "newsletter_test_failed": "Test email failed: {message}",
    "newsletter_sent": "Newsletter sent to {count} recipients! ({failed} failed)",
    "newsletter_already_sent": "This newsletter has already been sent.",
    "newsletter_no_recipients": "No recipients found. Check your language and form filters.",
    "session_expired": "Session expired. Please try again.",
    "current_password_wrong": "Current password is incorrect.",
    "password_needs_uppercase": "Password must contain at least one uppercase letter.",
    "password_needs_lowercase": "Password must contain at least one lowercase letter.",
    "password_needs_digit": "Password must contain at least one digit.",
    "license_activated": "License activated successfully!",
    "license_deactivated": "License deactivated.",
    "license_validation_failed": "License key could not be validated. It has been saved — validation will be retried.",
    "update_success": "AliothPress updated to v{version}!",
    "update_failed": "Update failed: {error}",
    "too_many_requests": "Too many requests. Please wait a moment and try again.",
    "db_connection_error": "Database connection error: {error}",
    "openpyxl_required": "openpyxl is required for Excel export. Install it with: pip install openpyxl",
    "db_restore_warning": "Database restore warning: {warning}",
    "email_sent_ok": "Email sent successfully!",
    "smtp_auth_failed": "Authentication failed. Check SMTP username and password.",
    "smtp_connect_failed": "Could not connect to {host}:{port}. Check host and port.",
    "smtp_recipient_rejected": "Recipient address rejected: {email}",
    "smtp_error": "Email error: {error}",
    "newsletter_duplicated": "Campaign duplicated as draft!",
    "newsletter_translation_exists": "A translation in {language} already exists for this campaign.",
    "invite_email_invalid": "Please enter a valid email address (up to 120 characters)."
  },
  "email": {
    "reset_subject": "Password Reset",
    "reset_title": "Reset Your Password",
    "reset_intro": "You requested a password reset for your account on {site_name}.",
    "reset_your_username": "Your username",
    "reset_button": "Reset Password",
    "reset_expires": "This link is valid for 1 hour.",
    "reset_ignore": "If you did not request this, you can safely ignore this email.",
    "test_subject": "Test Email from {site_name}",
    "test_subtitle": "Email Configuration Test",
    "test_body": "Your email settings are working correctly!",
    "test_body_detail": "This test email was sent from your {site_name} admin panel to verify the SMTP configuration.",
    "invite_subject": "You are invited to join {site_name}",
    "invite_subtitle": "You're invited!",
    "invite_body": "{inviter} has invited you to join <strong>{site_name}</strong> as {role}.",
    "invite_cta": "Accept Invitation",
    "invite_expires": "This invitation expires in 7 days.",
    "invite_click_hint": "Click the button below to create your account:",
    "role_admin": "an Administrator",
    "role_editor": "an Editor",
    "sent_by": "Sent by {site_name}",
    "confirm_subject": "Please confirm your email — {site_name}",
    "confirm_title": "Confirm Your Email Address",
    "confirm_intro": "Thank you for submitting the form \"{form_title}\". Please click the button below to confirm your email address.",
    "confirm_button": "Confirm Email",
    "confirm_ignore": "If you did not submit this form, you can safely ignore this email.",
    "confirmation_subject": "Thank you for your submission — {site_name}",
    "confirmation_title": "Thank You!",
    "confirmation_body": "We have received your submission for \"{form_title}\" on {site_name}. We will get back to you if needed."
  },
  "footer": {
    "all_rights_reserved": "All rights reserved."
  },
  "api": {
    "too_many_requests": "Too many requests. Please wait a moment and try again.",
    "setup_already_completed": "Setup already completed",
    "setup_db_fields_required": "Host, database name and user are required",
    "setup_connected": "Connected to \"{db_name}\" on {host}:{port}",
    "setup_timeout": "Operation timed out. Try again or install manually.",
    "no_file_uploaded": "No file uploaded",
    "empty_file": "Empty file",
    "form_not_accepting": "This form is not accepting submissions.",
    "form_inactive": "Form inactive",
    "too_many_submissions": "Too many submissions. Please try again later.",
    "no_blocks_data": "No blocks data",
    "convert_requires_confirm": "This page contains regular-editor content. Saving blocks converts it to the Page Builder and the regular editor becomes read-only for it. Repeat the request with convert=true to confirm.",
    "slug_empty": "Slug cannot be empty",
    "slug_available": "Slug is available",
    "missing_source_or_lang": "Missing source_id or target_lang",
    "missing_source_id": "Missing source_id",
    "source_not_found": "Source content not found",
    "could_not_parse": "Could not parse AI translation response",
    "api_key_not_configured": "API key not configured. Go to AI Assistant settings.",
    "unknown_task": "Unknown task",
    "access_denied": "Access denied",
    "backup_failed": "Backup failed. Update aborted for safety.",
    "download_failed": "Download failed or checksum mismatch.",
    "slug_taken": "Slug \"/{slug}\" is already used by: {title} ({language})",
    "translation_already_exists": "Translation in {language} already exists",
    "apt_update_failed": "apt-get update failed: {error}",
    "postgres_install_failed": "PostgreSQL installation failed: {error}",
    "pg_ready": "PostgreSQL is ready! Database \"{db_name}\" created.",
    "slug_invalid_chars": "Invalid characters. Suggested: \"{slug}\"",
    "translation_copy_created": "Copy for {language} created as draft. You can now translate it manually.",
    "duplicate_created": "Copy created as draft: \"{title}\"",
    "form_translation_created": "Form translation to {language} created!",
    "ai_translation_created": "Translation to {language} created as draft!",
    "api_error": "API error: {code}",
    "api_error_detail": "API error {code}: {detail}",
    "no_data_provided": "No data provided.",
    "unknown_provider": "Unknown AI provider: {provider}",
    "newsletter_translation_created": "Newsletter translation to {language} created as draft!",
    "newsletter_duplicate_created": "Campaign duplicated as draft: \"{title}\""
  },
  "webmcp": {
    "section_title": "AI agent access (WebMCP)",
    "section_help": "Let AI agents use your site as structured tools instead of guessing where to click. Works with agentic browsers (the agent consuming these tools today is Gemini in Chrome; others are expected to follow). Experimental browser feature — requires HTTPS, and the agent always acts within the current user's permissions.",
    "admin_label": "Admin panel",
    "admin_help": "Let a signed-in user hand admin work (drafts, translations, media uploads, image attachments, page blocks, menus) to their agent. Each write asks for confirmation, and agents can never publish — only save drafts. Turn off to revoke instantly.",
    "public_label": "Public tools (search + forms)",
    "public_help": "Registers the site search as an agent tool on every public page, plus form tools on pages that render a form. A visitor's agent can find content and fill and submit forms — the visitor confirms before anything is sent.",
    "polyfill_label": "Load compatibility polyfill",
    "polyfill_help": "Adds the modelContext API on browsers that don't ship it yet (loads a small script from a CDN). Leave off if you want zero third-party requests.",
    "token_label": "Origin trial token",
    "token_placeholder": "Paste your Chrome Origin Trial token for this domain",
    "token_help": "Required to run WebMCP for real visitors in production (until it ships in stable Chrome). Register your site's domain for the WebMCP origin trial in Chrome and paste the token here. Without it, agent access only works for users who manually enable the browser flag. → developer.chrome.com/origintrials",
    "saved": "Agent access settings saved.",
    "confirm_create_post": "Create post \"{title}\" as {status}?",
    "confirm_create_page": "Create page \"{title}\" as {status}?",
    "confirm_create_builder_page": "Create page \"{title}\" (Page Builder) as {status}?",
    "confirm_build_menu": "Replace the {location} menu with {count} item(s)?",
    "confirm_upload_image": "Upload image \"{name}\" to the media library?",
    "confirm_update_post": "Save changes to post #{id} \"{title}\" (status: {status})?",
    "confirm_update_page": "Save changes to page #{id} \"{title}\" (status: {status})?",
    "confirm_attach_image": "Attach image ({slot}) to {type} #{id} \"{title}\"?",
    "publish_blocked": "Publishing is not available to agents. Save as a draft — the site owner publishes from the admin panel.",
    "builder_content_locked": "This page uses the Page Builder — change its layout with set_page_blocks, not the content field.",
    "confirm_set_page_blocks": "Replace the layout of page #{id} with the new blocks?",
    "confirm_convert_page_blocks": "Page #{id} was written in the regular editor. Replace its content with the new blocks and convert it to the Page Builder? The regular editor becomes read-only for this page.",
    "declined": "Cancelled — nothing was changed.",
    "confirm_title": "Agent requests approval",
    "approve": "Approve",
    "cancel": "Cancel",
    "select_all": "Select all",
    "approve_selected": "Approve selected ({count})",
    "batch_title_posts": "Agent wants to create {count} post(s) as drafts",
    "batch_title_pages": "Agent wants to create {count} page(s) as drafts",
    "batch_title_images": "Agent wants to upload {count} image(s) to the media library",
    "autopilot_label": "Auto-approve agent actions for",
    "autopilot_minutes": "{min} min",
    "autopilot_badge": "Agent autopilot: auto-approving actions ({min} min left)",
    "autopilot_revoke": "Revoke"
  },
  "plugins": {
    "title": "Plugins",
    "subtitle": "Install, license, and manage plugins.",
    "installed": "Installed plugins",
    "no_plugins": "No plugins installed yet.",
    "upload_title": "Install plugin from ZIP",
    "upload_help": "Upload a plugin ZIP file. New plugins start disabled — enable them after installation.",
    "install_btn": "Install",
    "third_party_warning": "A plugin runs with the same permissions as the CMS itself. Only install plugins from sources you trust.",
    "core_license_note": "Plugins require a valid AliothPress license. Activate your license in Settings first.",
    "restart_required": "Changes take effect after a restart.",
    "restart_now": "Restart now",
    "restart_scheduled": "Restart scheduled — the site will be back in a few seconds.",
    "status_active": "Active",
    "status_disabled": "Disabled",
    "status_needs_license": "License required",
    "status_needs_core_license": "CMS license required",
    "status_pending_restart": "Restart required",
    "status_error": "Error",
    "enable": "Enable",
    "disable": "Disable",
    "delete": "Delete",
    "delete_confirm": "Delete this plugin? Its files will be removed. This cannot be undone.",
    "license_key": "Plugin license key",
    "activate_license": "Activate license",
    "license_valid": "License active",
    "license_invalid": "License key is not valid.",
    "enabled_ok": "Plugin enabled.",
    "disabled_ok": "Plugin disabled.",
    "installed_ok": "Plugin installed.",
    "removed_ok": "Plugin removed.",
    "err_not_zip": "Please upload a valid ZIP file.",
    "err_too_big": "The plugin file is too large.",
    "err_invalid_plugin": "The ZIP file is not a valid plugin.",
    "err_install_failed": "Plugin installation failed.",
    "err_not_found": "Plugin not found.",
    "err_empty_key": "Please enter a license key.",
    "check_updates": "Check for updates",
    "updates_found": "{count} plugin update(s) available.",
    "up_to_date": "All plugins are up to date.",
    "update_check_failed": "Update check failed: {error}",
    "update_available": "Update available: v{version}",
    "update_now": "Update to v{version}",
    "changelog": "What's new",
    "update_ok": "Plugin updated to v{version}.",
    "update_failed": "Plugin update failed — the package could not be downloaded or its checksum did not match.",
    "err_no_update": "No update is available for this plugin.",
    "update_needs_cms": "This update requires AliothPress {version} or newer. Please update the CMS first.",
    "restart_in_progress": "The server is restarting to apply your changes. This page will refresh automatically in a few seconds.",
    "available_title": "Available plugins",
    "available_help": "Published on your update server — install with one click. Every download is checksum-verified before unpacking.",
    "catalog_refresh": "Refresh catalog",
    "catalog_refreshed": "Plugin catalog refreshed.",
    "catalog_error": "Could not refresh the plugin catalog: {error}",
    "catalog_empty": "Nothing new on the update server — everything published is already installed.",
    "catalog_search": "Search plugins…",
    "install_from_server": "Install",
    "catalog_install_failed": "Download from the update server failed. Check the server and try again.",
    "catalog_activate_hint": "This plugin needs its license key — paste it on the plugin card below and activate it.",
    "catalog_free": "free",
    "catalog_license": "license key required",
    "catalog_requires_cms": "Requires AliothPress {version}+",
    "show_all": "Show all ({count})",
    "show_less": "Show less",
    "err_invalid_id": "Invalid plugin id: {pid}",
    "err_id_mismatch": "Manifest id {pid} does not match folder {folder}",
    "err_missing_init": "Missing __init__.py",
    "err_needs_cms": "Requires AliothPress {min_ver} or newer (this installation is {current}). Please update the CMS first.",
    "err_reserved_setting": "Plugin '{plugin}': the setting name '{key}' is reserved by the core — it stores the plugin's enable state and license data there. Choose another name, e.g. 'tracking' instead of 'enabled'.",
    "trial_days_left": "Trial — {days} day(s) left",
    "trial_started": "Free trial started — {days} days. Enter a license key any time to keep the plugin after the trial.",
    "recheck_license": "Check payment / re-validate license",
    "err_no_stored_key": "No license key stored yet — enter and activate it first.",
    "locked_page_msg": "The free trial has ended or the license is not active. Enter the license key to unlock the plugin — all its data is preserved and everything comes back as soon as the key is validated.",
    "catalog_trial": "Free {days}-day trial — install now, no key needed; the license key can be entered later.",
    "trial_on_enable": "Free {days}-day trial — it starts when you enable the plugin."
  },
  "twofa": {
    "title": "Two-factor authentication",
    "profile_help": "An extra one-time code from an authenticator app is required when signing in. Optional — you enable it only for your own account.",
    "status_on": "Two-factor authentication is enabled for your account.",
    "status_off": "Two-factor authentication is not enabled for your account.",
    "btn_enable": "Enable two-factor authentication",
    "btn_disable": "Disable",
    "disable_password_label": "Current password (required to disable)",
    "setup_title": "Set up two-factor authentication",
    "setup_intro": "Scan the QR code with any authenticator app (FreeOTP, Aegis, Google Authenticator, 1Password …), then enter the current code from the app. Nothing is enabled until the whole setup is completed.",
    "setup_scan": "Scan this QR code with your authenticator app",
    "setup_manual_key": "Can't scan? Enter this key manually:",
    "setup_code_step": "Enter the current code from the app",
    "setup_verify_btn": "Verify code",
    "setup_cancel": "Cancel",
    "setup_wrong_code": "That code didn't match. Check the app and the device clock, then try again.",
    "recovery_title": "Recovery codes",
    "recovery_intro": "Save these one-time codes now — print them or store them in a password manager. Each code signs you in once if you lose your authenticator device. They are shown only this once.",
    "recovery_copy": "Copy codes",
    "recovery_confirm_label": "I have saved my recovery codes in a safe place",
    "recovery_finish_btn": "Finish and enable",
    "recovery_confirm_required": "Please confirm that you have saved your recovery codes.",
    "enabled_ok": "Two-factor authentication is now enabled.",
    "disabled_ok": "Two-factor authentication has been disabled.",
    "site_disabled": "Two-factor authentication is not enabled on this site.",
    "login_title": "Verification code",
    "login_intro": "Enter the current code from your authenticator app.",
    "login_code_label": "Code",
    "login_recovery_hint": "You can also enter one of your recovery codes here.",
    "login_trust_label": "Trust this browser for 30 days",
    "login_submit": "Verify",
    "login_email_send": "Send a one-time code to my e-mail",
    "login_email_sent": "A one-time code has been sent to your e-mail address.",
    "login_email_failed": "The e-mail could not be sent. Please use your authenticator app or a recovery code.",
    "login_email_unavailable": "E-mail codes are not enabled on this site.",
    "login_back": "Back to login",
    "login_failed": "Wrong code. Please try again.",
    "login_expired": "The sign-in attempt expired. Please log in again.",
    "attempts_exceeded": "Too many wrong codes. Please log in again.",
    "bypass_file_warning": "Two-factor authentication was SKIPPED because the DISABLE_2FA file exists next to app.py. Delete the file as soon as you have restored access.",
    "reset_done": "Two-factor authentication has been reset for {name}.",
    "reset_confirm": "Reset two-factor authentication for {name}? They will sign in with their password only until they set it up again.",
    "reset_btn_users": "Reset 2FA",
    "settings_title": "Two-factor authentication",
    "settings_help": "Optional second sign-in factor for admin accounts, using free authenticator apps (TOTP). No external services — codes are verified locally and e-mails use your own SMTP.",
    "site_enable_label": "Allow two-factor authentication on this site",
    "site_enable_help": "Off by default. When enabled, each user can turn 2FA on for their own account in their profile. Nobody is forced.",
    "email_fallback_label": "Allow one-time sign-in codes by e-mail",
    "email_fallback_help": "A recovery path if the authenticator device is lost: a one-time code is sent to the account's e-mail address via your SMTP settings.",
    "break_glass_help": "Emergency access: if you ever lock yourself out completely, create an empty file named DISABLE_2FA next to app.py (your hosting file manager is enough) — the second factor is skipped until you delete the file. Every such login is flagged in the audit log.",
    "email_subtitle": "Account security",
    "email_code_subject": "{site} — your one-time sign-in code",
    "email_code_body": "Your one-time sign-in code for {site}:\n\n{code}\n\nIt is valid for 10 minutes. If you did not try to sign in, change your password.",
    "email_enabled_subject": "{site} — two-factor authentication enabled",
    "email_enabled_body": "Hello {name},\n\ntwo-factor authentication has just been enabled for your {site} account. If this was not you, reset it from your profile and change your password.",
    "email_disabled_subject": "{site} — two-factor authentication disabled",
    "email_disabled_body": "Hello {name},\n\ntwo-factor authentication has just been disabled for your {site} account. If this was not you, change your password immediately.",
    "email_reset_subject": "{site} — two-factor authentication was reset",
    "email_reset_body": "Hello {name},\n\nan administrator has reset two-factor authentication for your {site} account. You can sign in with your password and set it up again in your profile."
  },
  "demo": {
    "banner": "Demo mode — feel free to explore everything. Saving, publishing, uploads and sending are disabled.",
    "read_only": "This is a read-only demo — changes are not saved.",
    "feature_disabled": "This feature is disabled in the demo.",
    "login_hint": "Demo access — the credentials are already filled in. Just click “Log in”.",
    "pref_saved": "Language and theme applied — in the demo they are kept only for your current browser session.",
    "theme_preview": "Theme applied — in the demo, your choice is visible only in your current browser session."
  }
}
