<?php
/**
 * ITSWEBER CMS – English Admin Translations
 */
return [
    'nav' => [
        'dashboard' => 'Dashboard',
        'pages' => 'Pages',
        'blog' => 'Blog',
        'categories' => 'Categories',
        'tags' => 'Tags',
        'gallery' => 'Gallery',
        'events' => 'Events',
        'downloads' => 'Downloads',
        'media' => 'Media',
        'menus' => 'Menus',
        'homepage' => 'Homepage',
        'themes' => 'Themes',
        'plugins' => 'Plugins',
        'users' => 'Users',
        'settings' => 'Settings',
        'consent' => 'Cookie Settings',
        'maintenance' => 'Maintenance',
        'system' => 'System',
        'backup' => 'Backup & Update',
        'system_section' => 'System',
    ],

    'topbar' => [
        'view_site' => 'View Site',
        'logout' => 'Logout',
        'skip_to_content' => 'Skip to main content',
        'open_menu' => 'Open/close menu',
    ],

    'theme_fallback' => [
        'title' => 'Theme not found:',
        'text' => 'The configured theme :theme is not installed on this system. The frontend is temporarily displayed with the default theme.',
        'link' => '→ Install or switch theme',
    ],

    'common' => [
        'edit' => 'Edit',
        'delete' => 'Delete',
        'save' => 'Save',
        'cancel' => 'Cancel',
        'create' => 'Create',
        'update' => 'Update',
        'back' => 'Back',
        'actions' => 'Actions',
        'status' => 'Status',
        'title' => 'Title',
        'slug' => 'Slug',
        'name' => 'Name',
        'description' => 'Description',
        'search' => 'Search',
        'filter' => 'Filter',
        'clear' => 'Clear',
        'yes' => 'Yes',
        'no' => 'No',
        'all' => 'All',
        'none' => 'None',
        'draft' => 'Draft',
        'published' => 'Published',
        'visible' => 'Visible',
        'hidden' => 'Hidden',
        'sort_order' => 'Sort Order',
        'email' => 'Email',
        'date' => 'Date',
        'view' => 'View',
        'duplicate' => 'Duplicate',
        'upload' => 'Upload',
        'remove' => 'Remove',
        'add'    => 'Add',
        'preview' => 'Preview',
        'active' => 'Active',
        'inactive' => 'Inactive',
        'loading' => 'Loading…',
        'uploading' => 'Uploading…',
        'processing' => 'Processing…',
        'confirm_delete' => 'Are you sure you want to delete this?',
        'no_results' => 'No results found.',
        'required' => 'Required',
        'note' => 'Note',
    ],

    'dashboard' => [
        'title' => 'Dashboard',
        'welcome' => 'Welcome, :name',
        'pages' => 'Pages',
        'blog_posts' => 'Blog Posts',
        'media_files' => 'Media Files',
        'users' => 'Users',
        'gallery_albums' => 'Gallery Albums',
        'events' => 'Events',
        'downloads' => 'Downloads',
        'published' => 'published',
        'draft' => 'draft',
        'upcoming' => 'upcoming',
        'new_page' => '+ New Page',
        'new_post' => '+ New Post',
        'new_event' => '+ New Event',
        'upload_media' => 'Upload Media',
        'site_settings' => 'Site Settings',
        'quick_actions' => 'Quick Actions',
        'recent_posts' => 'Recent Blog Posts',
        'recent_posts_empty' => 'No posts yet.',
        'view_all_posts' => 'View all posts →',
        'recent_pages' => 'Recently Updated Pages',
        'recent_pages_empty' => 'No pages yet.',
        'view_all_pages' => 'View all pages →',
        'upcoming_events' => 'Upcoming Events',
        'upcoming_events_empty' => 'No upcoming events.',
        'view_all_events' => 'View all events →',
        'system_info' => 'System Info',
        'cms_version' => 'CMS Version',
        'php_version' => 'PHP Version',
        'active_theme' => 'Active Theme',
        'maintenance_mode' => 'Maintenance Mode',
        'maintenance_active' => 'ACTIVE',
        'maintenance_inactive' => 'OFF',
        'view_system_status' => 'System Status →',
    ],

    'pages' => [
        'title' => 'All Pages',
        'new' => '+ New Page',
        'edit' => 'Edit Page',
        'create' => 'Create Page',
        'view_page' => 'View Page ↗',
        'back' => '← Back to Pages',
        'page_title' => 'Title',
        'page_title_placeholder' => 'Page title…',
        'slug_placeholder' => 'auto-generated from title',
        'slug_help' => 'Leave empty to auto-generate. Only lowercase letters, numbers and hyphens.',
        'content' => 'Content',
        'content_help' => 'Use the toolbar above for formatting. Switch to Source to edit raw HTML.',
        'insert_from_library' => '📷 Insert from Library',
        'publishing' => 'Publishing',
        'template' => 'Template',
        'template_default' => 'Default Page',
        'template_home' => 'Home',
        'template_contact' => 'Contact',
        'template_help' => 'Determines how the page is rendered in the theme.',
        'sort_help' => 'Lower numbers appear first in menus.',
        'set_homepage' => 'Set as Homepage',
        'show_title' => 'Show page title',
        'show_title_help' => 'Uncheck to hide the large H1 heading in the frontend. Breadcrumbs remain visible.',
        'update_page' => 'Update Page',
        'create_page' => 'Create Page',
        'seo' => 'SEO',
        'seo_title' => 'SEO Title',
        'seo_title_default' => 'Defaults to page title',
        'seo_title_hint' => '/60 recommended',
        'seo_description' => 'SEO Description',
        'seo_description_default' => 'Defaults to page content snippet',
        'seo_description_hint' => '/160 recommended',
        'no_pages' => 'No pages found.',
        'homepage_badge' => 'Homepage',
        'confirm_duplicate' => 'Duplicate page ":title" as draft?',
        'confirm_delete' => 'Delete this page?',
        'insert_image_title' => 'Insert Image from Library',
        'insert_image_help' => 'Click an image to insert it at the cursor. Images come from the central Media Manager.',
        'order' => 'Order',
    ],

    'blog' => [
        'title' => 'Blog Posts',
        'new' => '+ New Post',
        'edit' => 'Edit Blog Post',
        'create' => 'Create Blog Post',
        'view_post' => 'View Post ↗',
        'back' => '← Back to Posts',
        'post_title' => 'Title',
        'post_title_placeholder' => 'Post title…',
        'slug_prefix' => '/blog/',
        'slug_placeholder' => 'auto-generated from title',
        'slug_help' => 'Leave empty to generate automatically. Must be unique.',
        'excerpt' => 'Excerpt',
        'excerpt_placeholder' => 'Short summary shown in listings…',
        'excerpt_help' => 'Shown in blog listing and homepage preview. Leave blank to auto-generate from content.',
        'content' => 'Content',
        'content_placeholder' => 'Write your post content here…',
        'content_help' => 'Use the toolbar for formatting. Switch to Source to edit raw HTML.',
        'insert_from_library' => 'Insert from Library',
        'category' => 'Category',
        'no_category' => '— No category —',
        'manage_categories' => 'Manage categories →',
        'tags' => 'Tags',
        'tags_placeholder' => 'php, tutorial, cms',
        'tags_help' => 'Comma-separated. New tags are created automatically.',
        'manage_tags' => 'Manage tags →',
        'update_post' => 'Update Post',
        'create_post' => 'Create Post',
        'featured_image' => 'Featured Image',
        'featured_image_preview' => 'Featured image preview',
        'remove_image' => 'Remove current image',
        'select_from_library' => 'Select from Library',
        'change_image' => 'Change Image',
        'clear_selection' => '✕ Clear selection',
        'upload_new' => 'Or upload a new file directly:',
        'upload_hint' => 'Max 5 MB. Allowed: JPG, PNG, GIF, WEBP.',
        'seo' => 'SEO',
        'seo_title' => 'SEO Title',
        'seo_title_default' => 'Defaults to post title',
        'seo_description' => 'SEO Description',
        'seo_description_default' => 'Defaults to excerpt',
        'no_posts' => 'No blog posts yet.',
        'create_first' => 'Create your first post →',
        'author' => 'Author',
        'confirm_duplicate' => 'Duplicate post ":title" as draft?',
        'confirm_delete' => 'Delete post ":title"? This cannot be undone.',
        'select_featured_title' => 'Select Featured Image',
        'select_featured_help' => 'Click an image to use it as the featured image. Images come from the Media Manager.',
    ],

    'blog_categories' => [
        'title' => 'Blog Categories',
        'back' => '← Back to Posts',
        'add_title' => 'Add New Category',
        'name' => 'Name',
        'slug' => 'Slug',
        'slug_placeholder' => 'auto-generated',
        'description' => 'Description',
        'add_btn' => 'Add Category',
        'posts' => 'Posts',
        'no_categories' => 'No categories yet.',
        'confirm_delete' => 'Delete category ":name"?',
        'cannot_delete' => 'Cannot delete: has :count post(s)',
        'edit_title' => 'Edit Category',
        'slug_help' => 'Leave empty to auto-generate from name.',
        'search_placeholder' => 'Search categories…',
        'no_results' => 'No categories found.',
    ],

    'blog_tags' => [
        'title' => 'Blog Tags',
        'back' => '← Back to Posts',
        'summary' => 'Summary',
        'total_tags' => 'Total tags',
        'unused' => 'Unused',
        'unused_help' => 'Unused tags can be safely deleted below.',
        'auto_create_hint' => 'Tags are created automatically when saving blog posts. Add or edit tags in the post form.',
        'name' => 'Name',
        'posts' => 'Posts',
        'no_tags' => 'No tags yet. Tags are created when saving blog posts.',
        'unused_badge' => 'unused',
        'confirm_delete' => 'Delete tag ":name"?',
        'cannot_delete' => 'Cannot delete: assigned to :count post(s)',
        'search_placeholder' => 'Search tags…',
        'only_unused' => 'Unused only',
        'no_results' => 'No tags found.',
    ],

    'gallery' => [
        'title' => 'Gallery Albums',
        'new' => '+ New Album',
        'edit' => 'Edit Album',
        'create' => 'Create Album',
        'back' => '← Back to Albums',
        'album_title' => 'Title',
        'slug_placeholder' => 'auto-generated from title',
        'slug_help' => 'Leave empty to generate automatically. Used in the URL: /gallery/:slug',
        'description' => 'Description',
        'description_placeholder' => 'Optional album description…',
        'settings' => 'Settings',
        'visibility' => 'Visibility',
        'sort_help' => 'Lower numbers appear first.',
        'update_album' => 'Update Album',
        'create_album' => 'Create Album',
        'cover_image' => 'Cover Image',
        'current_cover' => 'Current cover',
        'remove_cover' => 'Remove current cover',
        'replace_cover' => 'Replace with new image',
        'upload_cover' => 'Upload cover image',
        'cover_later_hint' => 'You can also set the cover from within the image manager later.',
        'cover_upload_hint' => 'Max 5 MB. Allowed: JPG, PNG, GIF, WEBP.',
        'no_albums' => 'No albums yet.',
        'create_first' => 'Create your first album →',
        'cover' => 'Cover',
        'images' => 'Images',
        'confirm_delete' => 'Delete album ":title" and all its images? This cannot be undone.',
    ],

    'gallery_images' => [
        'title' => 'Images: :album',
        'edit_album' => 'Edit Album',
        'back' => '← All Albums',
        'album_meta' => 'Album meta',
        'image_count' => ':count image(s)',
        'upload_image' => 'Upload Image(s)',
        'upload_click' => 'Click to choose image(s)',
        'upload_drag' => 'or drag and drop here',
        'upload_formats' => 'JPG, PNG, GIF or WEBP · max 5 MB',
        'image_title' => 'Title',
        'image_title_placeholder' => 'Optional image title',
        'alt_text' => 'Alt Text',
        'alt_text_placeholder' => 'Descriptive text for screen readers and SEO',
        'no_images' => 'No images in this album yet. Upload your first images above or add from Media Manager.',
        'images_heading' => 'Images (:count)',
        'drag_to_reorder' => 'Drag rows to reorder',
        'no_alt_text' => 'No alt text',
        'edit_meta' => 'Edit meta',
        'set_cover' => 'Set',
        'confirm_delete' => 'Delete this image? This cannot be undone.',
        'add_from_media' => 'Add from Media Manager',
        'select_from_media' => 'Select Images from Media Manager',
        'select_media_warning' => 'Please select at least one image',
        'no_images_in_media' => 'No images in Media Manager',
        'media_load_error' => 'Error loading media',
        'files_selected' => 'files selected',
        'upload_success_n' => 'file(s) uploaded',
        'upload_partial_ok' => 'uploaded',
        'upload_partial_fail' => 'failed',
    ],

    'events' => [
        'title' => 'Events',
        'new' => '+ New Event',
        'edit' => 'Edit Event',
        'create' => 'Create Event',
        'view_event' => 'View Event ↗',
        'back' => '← Back to Events',
        'event_title' => 'Title',
        'event_title_placeholder' => 'Event title…',
        'slug_prefix' => '/events/',
        'slug_placeholder' => 'auto-generated from title',
        'slug_help' => 'Leave empty to generate automatically. Must be unique.',
        'excerpt' => 'Short Description / Excerpt',
        'excerpt_placeholder' => 'Brief summary shown in listings…',
        'content' => 'Description / Content',
        'content_placeholder' => 'Full event description…',
        'publishing' => 'Publishing',
        'publish_status' => 'Publish Status',
        'event_status' => 'Event Status',
        'scheduled' => 'Scheduled',
        'postponed' => 'Postponed',
        'cancelled' => 'Cancelled',
        'postponed_hint' => 'Postponed and cancelled events are visually flagged in the frontend.',
        'featured' => 'Featured event',
        'featured_hint' => 'Featured events can be highlighted separately in the frontend.',
        'featured_badge' => '★ Featured',
        'update_event' => 'Update Event',
        'create_event' => 'Create Event',
        'date_time' => 'Date & Time',
        'start_date' => 'Start Date',
        'start_time' => 'Start Time',
        'end_date' => 'End Date',
        'end_date_hint' => 'Optional. Leave blank for single-day events.',
        'end_time' => 'End Time',
        'location_category' => 'Location & Category',
        'location' => 'Location',
        'location_placeholder' => 'e.g. Conference Centre Berlin',
        'no_category' => '— No category —',
        'manage_categories' => 'Manage categories →',
        'event_image' => 'Event Image',
        'upload_image' => '⬆ Upload Image',
        'upload_hint' => 'JPG, PNG, GIF, WebP · max 5 MB. Uploaded files are saved to the Media Manager.',
        'select_image_title' => 'Select Event Image',
        'select_image_help' => 'Click an image to set it as the event image.',
        'search_placeholder' => 'Search title or location…',
        'all_publish_statuses' => 'All publish statuses',
        'all_event_statuses' => 'All event statuses',
        'all_categories' => 'All categories',
        'featured_only' => 'Featured only',
        'non_featured' => 'Non-featured only',
        'no_events' => 'No events found.',
        'create_first' => 'Create your first event →',
        'start' => 'Start',
        'confirm_delete' => 'Delete event ":title"? This cannot be undone.',
    ],

    'event_categories' => [
        'title' => 'Event Categories',
        'back' => '← Back to Events',
        'add_title' => 'Add Category',
        'form_title' => 'Add / edit form',
        'name' => 'Name',
        'name_placeholder' => 'e.g. Workshop',
        'slug' => 'Slug',
        'slug_placeholder' => 'auto-generated',
        'description' => 'Description',
        'save' => 'Save Category',
        'reset' => 'Reset',
        'edit_title' => 'Edit Category',
        'events' => 'Events',
        'no_categories' => 'No categories yet. Add one using the form on the right.',
        'confirm_delete' => 'Delete category ":name"?',
        'cannot_delete' => 'Cannot delete: events are assigned',
    ],

    'downloads' => [
        'title' => 'Downloads',
        'new' => '+ New Download',
        'edit' => 'Edit Download',
        'create' => 'Create Download',
        'view_download' => 'View Download ↗',
        'back' => '← Back to Downloads',
        'download_title' => 'Title',
        'download_title_placeholder' => 'Download title…',
        'slug_prefix' => '/download/',
        'slug_placeholder' => 'auto-generated from title',
        'slug_help' => 'Leave empty to generate automatically. Must be unique.',
        'excerpt' => 'Short Description / Excerpt',
        'excerpt_placeholder' => 'Brief summary shown in listings…',
        'content' => 'Description / Content',
        'content_placeholder' => 'Full download description…',
        'content_help' => 'Use the toolbar for formatting. Switch to Source to edit raw HTML.',
        'details' => 'Details',
        'no_category' => '— No category —',
        'manage_categories' => 'Manage categories →',
        'version' => 'Version',
        'version_placeholder' => 'e.g. 1.0.0 or v2.1',
        'version_hint' => 'Optional. Shown in listings and on the detail page.',
        'download_file' => 'Download File',
        'upload_file' => '⬆ Upload File',
        'replace_file' => 'Replace File',
        'file_hint' => 'PDF, ZIP, DOC(X), XLS(X), PPT(X), ODT/ODS, TXT, CSV and more · max 50 MB.',
        'upload_image' => '⬆ Upload Image',
        'upload_image_hint' => 'JPG, PNG, GIF, WebP · max 5 MB. Uploaded files are saved to the Media Manager.',
        'search_placeholder' => 'Search title or excerpt…',
        'all_statuses' => 'All statuses',
        'all_categories' => 'All categories',
        'file' => 'File',
        'no_downloads' => 'No downloads found.',
        'create_first' => 'Create your first download →',
        'confirm_delete' => 'Delete download ":title"? This cannot be undone.',
        'sort_help' => 'Lower number = shown first.',
        'update_download' => 'Update Download',
        'create_download' => 'Create Download',
        'insert_image_title' => 'Insert Image from Library',
        'select_image_title' => 'Select Download Image',
        'select_image_help' => 'Click an image to set it as the download\'s featured image.',
    ],

    'download_categories' => [
        'title' => 'Download Categories',
        'back' => '← Back to Downloads',
        'add_title' => 'Add Category',
        'name' => 'Name',
        'name_placeholder' => 'e.g. Software',
        'slug' => 'Slug',
        'slug_placeholder' => 'auto-generated',
        'description' => 'Description',
        'save' => 'Save Category',
        'reset' => 'Reset',
        'edit_title' => 'Edit Category',
        'downloads' => 'Downloads',
        'no_categories' => 'No categories yet. Add one using the form on the right.',
        'confirm_delete' => 'Delete category ":name"?',
        'cannot_delete' => 'Cannot delete: downloads are assigned',
    ],

    'media' => [
        'title' => 'Media Manager',
        'optimize' => 'Optimize Images',
        'upload_btn' => '+ Upload',
        'upload_title' => 'Upload Files',
        'upload_click' => 'Click to choose images',
        'upload_drag' => 'or drag and drop here',
        'upload_formats' => 'JPG, PNG, GIF, WEBP, SVG, ICO · max 5 MB · up to 10 files',
        'upload_folder' => 'Upload into folder',
        'unassigned' => '— Unassigned —',
        'new_folder' => 'New Folder',
        'folder_name' => 'Folder Name',
        'folder_name_placeholder' => 'e.g. Team Photos',
        'create_folder' => 'Create Folder',
        'rename_folder' => 'Rename Folder',
        'new_name' => 'New Name',
        'rename' => 'Rename',
        'folders' => 'Folders',
        'all_media' => 'All Media',
        'drop_here' => 'Drop files here to upload',
        'search_placeholder' => 'Search by filename or title…',
        'all_types' => 'All types',
        'images_only' => 'Images',
        'file_count' => ':count file(s)',
        'no_search_results' => 'No files match your search.',
        'no_files' => 'No files in this view yet.',
        'upload_a_file' => 'Upload a file',
        'open_original' => 'Open original',
        'copy_url' => 'Copy URL',
        'confirm_delete' => 'Delete this file permanently?',
    ],

    'media_edit' => [
        'title' => 'Edit Media',
        'back' => '← Back to Media',
        'preview' => 'Preview',
        'open_original' => 'Open Original ↗',
        'metadata' => 'Metadata',
        'display_title' => 'Title',
        'display_title_help' => 'Display name for this file',
        'alt_text' => 'Alt Text',
        'alt_text_help' => 'Describe the image for accessibility',
        'alt_text_hint' => 'Used as the alt attribute when inserted via the media picker.',
        'description' => 'Description',
        'description_help' => 'Optional short description or caption',
        'folder' => 'Folder',
        'save' => 'Save Changes',
        'file_details' => 'File Details',
        'filename' => 'Filename',
        'original_name' => 'Original name',
        'type' => 'Type',
        'size' => 'Size',
        'path' => 'Path',
        'uploaded' => 'Uploaded',
        'dimensions' => 'Dimensions',
        'file_url' => 'File URL',
        'copy' => 'Copy',
        'copied' => 'Copied!',
        'url_hint' => 'Use this URL to embed the file in content.',
        'delete_title' => 'Delete',
        'delete_text' => 'Permanently removes this file and all its variants (thumbnail, WebP). This cannot be undone.',
        'delete_btn' => 'Delete File',
    ],

    'media_optimize' => [
        'title' => 'Image Optimization',
        'back' => '← Media Library',
        'status_title' => 'Legacy Image Status',
        'status_text' => 'Older images uploaded before automatic image optimization was introduced may not have thumbnails or WebP companion files. Use this tool to retroactively generate missing files for all existing uploads in blog/, gallery/, media/ and media/{folder}/ subdirectories.',
        'originals' => 'Original images found',
        'missing_thumbs' => 'Missing thumbnails',
        'missing_webp' => 'Missing WebP files',
        'all_optimized' => '✓ All images are fully optimized — no action needed.',
        'no_images' => 'No images found in blog/, gallery/ or media/ upload directories.',
        'generate_label' => 'What to generate:',
        'both' => 'Both (thumbnails + WebP)',
        'thumbs_only' => 'Thumbnails only',
        'webp_only' => 'WebP files only',
        'skip_note' => 'Already-existing files are always skipped. Only missing files are created. Requires GD extension with imagewebp() support for WebP generation.',
        'run' => 'Run Optimization',
        'how_title' => 'How It Works',
        'how_text_1' => 'Scans the upload directories blog/, gallery/, media/ and their subfolders for JPG, PNG and GIF originals. Derived thumbs/ directories are skipped automatically.',
        'how_text_2' => 'Thumbnails: max 400 × 300 px, saved to {subdir}/thumbs/{filename}.',
        'how_text_3' => 'WebP: quality 85, saved alongside original as {filename}.webp. Thumbnail WebP is generated separately in thumbs/{filename}.webp.',
        'how_text_4' => 'Existing files are never overwritten. Run again after adding new legacy uploads if needed.',
        'how_text_5' => 'Errors (unreadable source, GD limitation) are counted and reported — they do not abort the run.',
    ],

    'menus' => [
        'title' => 'Menu Management',
        'add_item' => '+ Add Item',
        'no_items' => 'No items in this menu yet.',
        'label' => 'Label',
        'url' => 'URL',
        'target' => 'Target',
        'target_self' => 'Same window',
        'target_blank' => 'New window',
        'order' => 'Order',
        'confirm_delete' => 'Delete this menu item?',
        'preview_title' => 'Preview – as visitors see it',
        'no_visible' => 'No visible items',
        'hidden_count' => '+ :count hidden',
        'add_to_menu' => 'Add Item to :menu',
        'label_placeholder' => 'e.g. About Us',
        'url_placeholder' => '/about',
        'add_btn' => 'Add',
        'quick_fill' => 'Quick-fill from pages:',
    ],

    'homepage' => [
        'title' => 'Manage Homepage',
        'configure_text' => 'Configure and reorder the sections on your homepage. Only <strong>active</strong> sections are shown on the frontend.',
        'section_active' => 'Active',
        'section_inactive' => 'Inactive',
        'drag_to_reorder' => 'Drag sections to reorder',
        'save' => 'Save All Changes',
        'no_sections' => 'No homepage sections found. Run the installer to create the default sections.',
        'deactivate' => 'Deactivate',
        'activate' => 'Activate',
        'edit' => 'Edit',
        'section_display_title' => 'Section Display Title',
        'internal_label_hint' => 'Internal admin title. Not used directly in the frontend template.',
        'plugin_not_installed_title' => 'Plugin Not Installed',
        'plugin_not_installed_text' => 'This section requires the plugin <strong>:slug</strong> (section type: <code>:key</code>), which is not installed. Install the plugin to configure this section.',
        'plugin_inactive_title' => 'Plugin Inactive',
        'plugin_inactive_text' => 'The plugin <strong>:slug</strong> is installed but not activated. Activate it to edit this section.',
        'activate_plugin' => 'Activate Plugin',
        'raw_json_hint' => 'Edit the raw JSON content for this custom section type.',
        'preview_title' => 'Title',
        'preview_subtitle' => 'Subtitle',
        'preview_text' => 'Text',
        'preview_cta' => 'CTA',
        'preview_count' => 'Count',
        'preview_items' => ':count item(s)',
        'section_text_color' => 'Text Color',
        'text_color_default' => 'Theme Default',
        'text_color_black' => 'Black',
        'text_color_white' => 'White',
        'text_color_theme' => 'Theme Color',
        'save_section' => 'Save Section',
        'cancel' => 'Cancel',
    ],

    'settings' => [
        'title' => 'Site Settings',
        'general' => 'General',
        'site_name' => 'Site Name',
        'tagline' => 'Tagline',
        'contact_email' => 'Contact Email',
        'contact_phone' => 'Contact Phone',
        'footer_text' => 'Footer Text',
        'footer_text_help' => 'HTML allowed: &lt;a&gt;, &lt;strong&gt;, &lt;em&gt;, &lt;br&gt;, &lt;span&gt;, &lt;p&gt;, &lt;ul&gt;, &lt;ol&gt;, &lt;li&gt;',
        'copyright' => 'Copyright Notice',
        'copyright_help' => 'HTML allowed: &lt;a&gt;, &lt;strong&gt;, &lt;em&gt;, &lt;br&gt;, &lt;span&gt;',
        'footer_menu_help' => 'Footer links can be managed under',
        'footer_menu_link' => 'Menus → Footer',
        'seo' => 'SEO',
        'seo_title' => 'Default SEO Title',
        'seo_title_help' => 'Used as the &lt;title&gt; tag on the homepage if not overridden.',
        'seo_description' => 'Default SEO Description',
        'seo_description_help' => 'Fallback meta description for pages without a custom description.',
        'social' => 'Social Media',
        'social_facebook' => 'Facebook URL',
        'social_instagram' => 'Instagram URL',
        'social_linkedin' => 'LinkedIn URL',
        'social_x' => 'X (Twitter) URL',
        'social_youtube' => 'YouTube URL',
        'branding' => 'Branding',
        // Branding sidebar – field labels & hints
        'branding_header_logo'          => 'Header Logo',
        'branding_header_logo_hint'     => 'Empty = falls back to "Logo (general)".',
        'branding_header_mode'          => 'Header Logo Display',
        'branding_mode_original'        => 'Original (colour)',
        'branding_mode_filtered'        => 'Filtered',
        'branding_mode_filtered_header' => 'Filtered (e.g. white on dark header)',
        'branding_mode_help'            => 'The active theme determines what "Filtered" looks like.',
        'branding_footer_logo'          => 'Footer Logo',
        'branding_footer_logo_hint'     => 'Empty = falls back to Header Logo → "Logo (general)".',
        'branding_footer_mode'          => 'Footer Logo Display',
        'branding_logo_alt'             => 'Logo Alt Text',
        'branding_logo_alt_hint'        => 'Alt text for header and footer logo. Empty = site name.',
        'branding_logo_alt_placeholder' => 'e.g. Company Name – Logo',
        'branding_logo_general'         => 'Logo (general) – Fallback',
        'branding_logo_general_hint'    => 'Used as a fallback when no header or footer logo is set.',
        'branding_favicon'              => 'Favicon',
        'branding_favicon_hint'         => 'Supports .ico, .png, .svg. Path relative to /uploads/.',
        // Branding sidebar – widget buttons & placeholder
        'branding_no_image'             => 'No image set',
        'branding_upload'               => '↑ Upload',
        'branding_from_media'           => '⊞ From Media Library',
        'branding_remove'               => '✕ Remove',
        // Branding sidebar – media picker modal
        'branding_picker_title'         => 'Choose image from media library',
        'branding_picker_close'         => 'Close',
        'branding_picker_loading'       => 'Loading…',
        'branding_picker_search'        => 'Search…',
        'branding_picker_no_images'     => 'No images found.',
        'branding_picker_error'         => 'Error loading images.',
        'language' => 'Language',
        'language_label' => 'System Language',
        'language_help' => 'Language for the admin backend and system texts.',
        'upload_pending' => '(will be uploaded on save: :filename)',
        'display_options' => 'Display Options',
        'breadcrumbs_enabled' => 'Show breadcrumb navigation',
        'breadcrumbs_enabled_help' => 'When disabled, the breadcrumb navigation is hidden across the entire website.',
        'save' => 'Save Settings',
    ],

    'themes' => [
        'title' => 'Themes',
        'install' => '⬆ Install Theme',
        'zip_not_available' => 'PHP ZipArchive extension not available on this server.',
        'active_badge' => 'Active',
        'no_preview' => 'No preview available',
        'no_description' => 'No description.',
        'by_author' => 'By :author',
        'slug_label' => 'Slug: :slug',
        'currently_active' => '✓ Currently Active',
        'activate' => 'Activate',
        'confirm_activate' => 'Activate theme :name? The website will immediately switch to this theme.',
        'view_site' => 'View Site',
        'uninstall' => 'Uninstall',
        'confirm_uninstall' => 'Uninstall theme :name? This will permanently delete the theme files. This action cannot be undone.',
        'protected' => 'Protected',
        'protected_hint' => 'System theme – cannot be uninstalled.',
        'no_themes' => 'No installed themes found in the themes/ directory.',
        'upload_title' => 'Install Theme',
        'upload_text' => 'Upload a theme package (.zip) to add a new theme to your site.',
        'back' => '← Back to Themes',
        'upload_label' => 'Theme ZIP File',
        'upload_hint' => 'Accepted: .zip – max. 10 MB',
        'upload_btn' => '⬆ Upload & Install',
        'format_title' => 'Package Format',
    ],

    'plugins' => [
        'title' => 'Plugins',
        'subtitle' => 'Manage installed plugins. Activate or deactivate plugins to control which are loaded at boot.',
        'install' => '⬆ Install Plugin',
        'zip_not_available' => 'PHP ZipArchive extension not available on this server.',
        'no_plugins' => 'No plugins installed yet.',
        'no_plugins_hint' => 'Upload a plugin package (.zip) to add new functionality to your CMS.',
        'install_first' => '⬆ Install your first Plugin',
        'plugin' => 'Plugin',
        'version' => 'Version',
        'author' => 'Author',
        'slug_label' => 'Slug: :slug',
        'deactivate' => 'Deactivate',
        'activate' => 'Activate',
        'confirm_uninstall' => 'Uninstall plugin :name? This will permanently delete the plugin files. This action cannot be undone.',
        'activation_note' => 'Note: Active plugins are loaded at every page request. Only activate plugins from trusted sources. Activation state is stored in storage/plugins_active.json.',
        'upload_title' => 'Install Plugin',
        'upload_text' => 'Upload a plugin package (.zip) to add new functionality to your CMS.',
        'back' => '← Back to Plugins',
        'upload_label' => 'Plugin ZIP File',
        'upload_hint' => 'Accepted: .zip – max. 10 MB',
        'upload_btn' => '⬆ Upload & Install',
        'security_note' => 'Security notice: Only install plugins from trusted sources. Plugin files are executed by the CMS and can access all server resources. Verify the plugin source before uploading.',
        'format_title' => 'Package Format',
        'load_error_title' => 'Plugin Error:',
        'load_error_text' => 'The following plugins could not be loaded and were automatically deactivated:',
        'safe_mode_title' => 'Plugin Safe Mode active:',
        'safe_mode_text' => 'All plugins have been skipped. Remove <code>storage/.plugin_safe_mode</code> to restore normal plugin operation.',
    ],

    'users' => [
        'title' => 'Users',
        'new' => '+ New User',
        'edit' => 'Edit User',
        'create' => 'Create User',
        'back' => '← Back to Users',
        'username' => 'Username',
        'username_help' => 'Letters, numbers, underscores and hyphens. Min. 3 characters.',
        'username_hint' => 'Letters, numbers, underscores and hyphens only',
        'email' => 'Email Address',
        'password' => 'Password',
        'password_help_edit' => 'Leave blank to keep the current password. Min. 8 characters if changing.',
        'password_help_create' => 'Minimum 8 characters.',
        'account_settings' => 'Account Settings',
        'role' => 'Role',
        'role_editor' => 'Editor',
        'role_admin' => 'Administrator',
        'role_only_admin' => 'You are the only admin — role cannot be changed.',
        'role_help' => 'Admin: Full access to all areas. Editor: Content management only.',
        'active_account' => 'Active account',
        'cannot_deactivate' => 'You cannot deactivate your own account.',
        'created_at' => 'Created: :date',
        'updated_at' => 'Last updated: :date',
        'save' => 'Save Changes',
        'create_btn' => 'Create User',
        'no_users' => 'No users found.',
        'you_badge' => 'You',
        'confirm_delete' => 'Delete user ":name"? This cannot be undone.',
        'cannot_delete_self' => 'Cannot delete your own account',
        'created' => 'Created',
    ],

    'consent' => [
        'title' => 'Cookie Settings',
        'subtitle' => 'Manage the consent banner and privacy texts for your website.',
        'enable' => 'Activation',
        'enable_label' => 'Enable consent banner',
        'texts' => 'Banner Texts',
        'banner_title' => 'Title',
        'banner_text' => 'Description text',
        'buttons' => 'Button Labels',
        'accept_all' => '"Accept All"',
        'reject_all' => '"Necessary Only"',
        'settings_btn' => '"Settings"',
        'save_selection' => '"Save Selection"',
        'categories' => 'Cookie Categories',
        'necessary_label' => 'Category: Necessary – Label',
        'necessary_desc' => 'Category: Necessary – Description',
        'functional_label' => 'Category: Functional – Label',
        'functional_desc' => 'Category: Functional – Description',
        'privacy_link' => 'Privacy Link',
        'privacy_url' => 'Privacy policy URL',
        'privacy_text' => 'Link text',
        'display' => 'Display',
        'show_logo' => 'Show logo in banner',
        'cookie' => 'Cookie & Reopen',
        'cookie_name' => 'Cookie name',
        'cookie_days' => 'Validity period (days)',
        'show_reopen' => 'Show reopen link in footer',
        'reopen_text' => 'Reopen link text',
        'save' => 'Save Settings',
        // Hints
        'enable_hint' => 'When enabled, the cookie notice banner appears for all visitors who have not yet made a decision. The banner is disabled by default and must be explicitly turned on.',
        'banner_text_hint' => 'Brief explanation of why and which cookies are set.',
        'categories_hint' => 'Currently supported categories: <strong>Technically necessary</strong> (always active) and <strong>Functional</strong> (optional, user-selectable).',
        'show_logo_hint' => 'Uses the header logo configured under Settings → Branding.',
        'cookie_name_hint' => 'Technical name of the cookie being set.',
    ],

    'maintenance' => [
        'title' => 'Maintenance Mode',
        'status' => 'Status',
        'active_warning' => '⚠ Maintenance mode is active.',
        'active_text' => 'The frontend is locked for visitors (HTTP 503). Admins can still log in and use the backend.',
        'activated_at' => 'Activated: :date',
        'inactive_ok' => '✓ Website is publicly accessible.',
        'inactive_text' => 'Maintenance mode is disabled.',
        'backup_flag' => 'ℹ Backup/Restore flag active',
        'enable_title' => 'Enable Maintenance Mode',
        'enable_text' => 'The frontend will be locked for visitors with HTTP 503. Admins can still log in at /admin.',
        'page_title_label' => 'Maintenance page title',
        'page_title_default' => 'Website under maintenance',
        'message_label' => 'Message for visitors',
        'message_default' => 'We are currently working on the website and will be back shortly. Please try again in a few minutes.',
        'enable_btn' => 'Enable Maintenance Mode',
        'current_config' => 'Current Configuration',
        'config_title' => 'Title',
        'config_message' => 'Message',
        'config_site' => 'Site Name',
        'disable_btn' => 'Disable Maintenance Mode',
        'update_config' => 'Update Configuration',
        'update_hint' => 'Title and message can be changed without disabling maintenance mode.',
        'update_btn' => 'Update',
        'nav_active' => 'ON',
        'subtitle_label' => 'Subtitle (optional)',
        'subtitle_help' => 'An additional subtitle displayed below the main title.',
        'subtitle_placeholder' => 'e.g. "Database is being updated"',
        'contact_info_label' => 'Contact information (optional)',
        'contact_info_help' => 'Displayed so visitors can reach you with questions.',
        'contact_info_placeholder' => 'e.g. email address or phone number',
        'return_info_label' => 'Estimated return (optional)',
        'return_info_help' => 'When the website is expected to be available again.',
        'return_info_placeholder' => 'e.g. "in about 30 minutes" or "around 3:00 PM"',
        'show_logo_label' => 'Show website logo',
        'show_logo_help' => 'Display logo above the title, if configured.',
        'admin_hint_label' => 'Show admin hint',
        'admin_hint_help' => 'Show "Administrators can still log in at /admin" on maintenance page.',
        'title_help' => 'Displayed as the main heading on the maintenance page.',
        'message_help' => 'Short info for visitors (max. 500 characters).',
        'confirm_enable' => 'Enable maintenance mode? The frontend will be blocked immediately.',
        'confirm_disable' => 'Disable maintenance mode? The website will become publicly accessible immediately.',
        'preview_btn' => 'Show preview',
        'backup_flag_description' => 'was set by BackupService (is a restore or update running?). This state will be automatically cleared after the operation completes.',
    ],

    'backup' => [
        'title' => 'Backup & Update',
        'zip_warning' => 'ZIP Extension',
        'tab_backup' => 'Website Backup',
        'tab_restore' => 'Restore',
        'tab_update' => 'CMS Update',
        'backup_title' => 'Create Website Backup',
        'backup_text' => 'Creates a complete backup of your website data as a ZIP file for download. The backup includes all database contents and all uploaded files.',
        'backup_version' => 'CMS Version: :version',
        'backup_includes' => 'Includes: Database + Uploads',
        'backup_format' => 'Format: ZIP (iw_backup v1)',
        'backup_auto_download' => 'The download starts automatically after the backup is created.',
        'backup_btn' => '↓ Create & Download Backup Now',
        'restore_title' => 'Restore Backup',
        'restore_text' => 'Restore a previously created ITSWEBER CMS backup.',
        'restore_warning_title' => '⚠ Important notice before restoring',
        'restore_warning_text' => 'Restoring will overwrite all existing database contents and media with the backup state.',
        'restore_label' => 'Select backup file (.zip)',
        'restore_hint' => 'ITSWEBER CMS backup files only (iw_backup format). Max :maxMb MB.',
        'restore_btn' => 'Upload & Verify Backup',
        'update_title' => 'Apply CMS Update',
        'update_text' => 'Apply an update file provided by ITSWEBER.',
        'update_version' => 'Installed version: :version',
        'update_warning_title' => '⚠ Recommendation before updating',
        'update_warning_text' => 'Please create a current backup before applying an update.',
        'update_label' => 'Select update package (.zip)',
        'update_hint' => 'Official ITSWEBER CMS update packages only (iw_update format). Max :maxMb MB.',
        'update_btn' => 'Upload & Verify Update',
        'php_limit_hint' => 'The upload limit is restricted to :maxMb MB by this server\'s PHP configuration. Adjust upload_max_filesize and post_max_size in php.ini if needed.',
        // Restore confirm page
        'confirm_title' => 'Confirmation',
        'confirm_warning_heading' => '⚠ Warning: All current data will be overwritten!',
        'confirm_warning_text' => 'The following data will be replaced with the backup state:',
        'confirm_warning_db' => 'All database contents (pages, blog, gallery, events, media, settings)',
        'confirm_warning_files' => 'All uploaded files in the media area (backup files will be added/overwritten but not deleted)',
        'confirm_irreversible' => 'This action cannot be undone.',
        'confirm_backup_first' => 'Create a current backup of this installation first if you haven\'t already.',
        'confirm_version_heading' => '⚠ Version Notice',
        'confirm_version_text' => 'The backup was created with CMS version <strong>:backup_version</strong>. This installation runs version <strong>:current_version</strong>. The restore usually works anyway, but database structure or settings fields may differ. Check after the restore that everything works correctly.',
        'confirm_info_heading' => 'Backup Information',
        'confirm_created_at' => 'Created at',
        'confirm_website' => 'Website',
        'confirm_cms_version' => 'CMS Version (Backup)',
        'confirm_current_version' => 'current version: :version',
        'confirm_format' => 'Backup Format',
        'confirm_php_version' => 'PHP Version (Backup)',
        'confirm_protected_heading' => 'Not overwritten (protected)',
        'confirm_protected_db' => 'Database connection',
        'confirm_protected_app' => 'Server configuration',
        'confirm_protected_core' => 'CMS core files (only database content + media are replaced)',
        'confirm_uploads_note' => 'Note: Existing files in <code>public/uploads/</code> will be overwritten or supplemented by the backup, but not deleted.',
        'confirm_theme_heading' => 'ℹ Theme Notice',
        'confirm_theme_text' => 'After restoring, the theme configured in the backup will be used. If this theme is not installed on the target system, the frontend will automatically render with the default theme (<em>default</em>). A warning with a direct link to theme management will appear in the admin area.',
        'confirm_js_confirm' => 'Really restore? All current database contents and media files will be irreversibly overwritten.',
        'confirm_execute_btn' => '✓   Restore Now',
        // Update confirm page
        'update_confirm_title' => 'Confirmation',
        'update_checked_heading' => 'Update package verified and ready for installation',
        'update_checked_text' => 'The following update package has been validated and the preflight check has passed. Your media, uploads, and configuration files will <strong>not</strong> be modified.',
        'update_recommend' => '⚠ Recommendation',
        'update_preflight_heading' => 'ℹ Preflight notices (no error – informational only)',
        'update_info_heading' => 'Update Information',
        'update_info_version' => 'Version',
        'update_info_desc' => 'Description',
        'update_info_released' => 'Released',
        'update_info_min_version' => 'Minimum version',
        'update_info_format' => 'Package type',
        'update_protected_heading' => 'Protected areas (will not be overwritten)',
        'update_protected_uploads' => 'Your uploaded media',
        'update_protected_storage' => 'Logs, cache, sessions',
        'update_protected_db' => 'Database connection',
        'update_protected_config' => 'Configuration',
        'update_migrations_note' => 'SQL migrations are executed in alphabetical order.',
        'update_js_confirm' => 'Install update now? The website will briefly enter maintenance mode.',
        'update_execute_btn' => '✓   Install Update Now',
        // Long-Running Action (LRA) – Status feedback
        'lra_backup_heading' => 'Creating backup…',
        'lra_backup_step1'   => 'Backing up database',
        'lra_backup_step2'   => 'Compressing media files',
        'lra_backup_step3'   => 'Preparing download',
        'lra_backup_done'    => 'Backup downloaded',
        'lra_backup_error'   => 'Backup failed. Please try again or check the logs.',
        'lra_restore_heading' => 'Restore in progress…',
        'lra_restore_step1'  => 'Opening backup archive',
        'lra_restore_step2'  => 'Importing database',
        'lra_restore_step3'  => 'Extracting files',
        'lra_restore_step4'  => 'Disabling maintenance mode',
        'lra_update_heading' => 'Installing update…',
        'lra_update_step1'   => 'Opening update package',
        'lra_update_step2'   => 'Applying files',
        'lra_update_step3'   => 'Running migrations',
        'lra_update_step4'   => 'Disabling maintenance mode',
    ],

    'system' => [
        'title' => 'System Status',
        'subtitle' => 'Technical overview for maintenance and troubleshooting.',
        'php_server' => 'PHP & Server',
        'php_version' => 'PHP Version',
        'php_ok' => '≥ 8.1',
        'php_bad' => '< 8.1 (unsupported)',
        'web_server' => 'Web Server',
        'installation' => 'Installation',
        'installed' => 'Installed',
        'not_installed' => 'Not installed',
        'active_theme' => 'Active Theme',
        'disk_usage' => 'Disk Usage',
        'disk_format' => ':percent% used — :free free of :total',
        'database' => 'Database',
        'connection' => 'Connection',
        'connected' => 'Connected',
        'connection_error' => 'Error',
        'cms_tables' => 'CMS Tables (iw_*)',
        'tables_found' => ':count tables found',
        'extensions' => 'PHP Extensions',
        'extension' => 'Extension',
        'ext_description' => 'Description',
        'ext_type' => 'Type',
        'required' => 'Required',
        'optional' => 'Optional',
        'loaded' => 'Loaded',
        'missing_required' => 'Missing – required!',
        'not_loaded' => 'Not loaded',
        'filesystem' => 'File System & Write Permissions',
        'directory' => 'Directory',
        'exists' => 'Exists',
        'writable' => 'Writable',
        'yes' => 'Yes',
        'missing' => 'Missing',
        'na' => 'N/A',
        'writable_yes' => 'Writable',
        'not_writable' => 'Not writable',
        'filesystem_hint' => 'All directories above must exist and be writable for the CMS to function correctly. If any are missing or not writable, adjust permissions on your server (chmod 755 or 777).',
    ],

    // Preview (draft/published preview in frontend theme)
    'preview' => [
        'type_page'       => 'Page',
        'type_blog'       => 'Blog Post',
        'banner_text'     => 'Preview – :type',
        'back_to_editor'  => 'Back to Editor',
        'close'           => 'Close',
        'preview_draft'   => 'Preview Draft',
        'preview_page'    => 'Preview',
    ],

    // FTP Backup (Phase 3.0.4)
    'ftp_backup' => [
        'tab_ftp'                   => 'FTP Backup',
        'title'                     => 'Set Up FTP Backup',
        'description'               => 'Configure automated backups that are uploaded directly to an FTP server. Backups can be scheduled daily or weekly, or triggered manually. Old backups are automatically deleted based on your retention settings.',

        // Sections
        'section_connection'        => 'FTP Connection',
        'section_schedule'          => 'Schedule & Retention',
        'section_items'             => 'Backup Items',

        // Connection fields
        'label_host'                => 'FTP Host',
        'hint_host'                 => 'Hostname or IP address of the FTP server',
        'label_port'                => 'FTP Port',
        'hint_port'                 => 'Default: 21',
        'label_user'                => 'FTP Username',
        'hint_user'                 => 'Login name for the FTP server',
        'label_pass'                => 'FTP Password',
        'hint_pass'                 => 'Leave empty to keep the current password',
        'label_path'                => 'Remote Path',
        'hint_path'                 => 'e.g. /backups or /public_html/backups',

        // Schedule fields
        'label_schedule'            => 'Schedule',
        'hint_schedule'             => 'Manual only = no automatic backups',
        'schedule_manual'           => 'Manual Only',
        'schedule_daily'            => 'Daily (03:00 AM)',
        'schedule_weekly'           => 'Weekly (Monday)',
        'label_daily_retain'        => 'Keep Daily Backups',
        'hint_daily_retain'         => 'How many daily backups to keep',
        'label_weekly_retain'       => 'Keep Weekly Backups',
        'hint_weekly_retain'        => 'How many weekly backups to keep',

        // Items
        'hint_items'                => 'Select what to back up:',
        'item_database'             => 'Database',
        'item_uploads'              => 'Uploads/Images',
        'item_themes'               => 'Themes',
        'item_plugins'              => 'Plugins',

        // Buttons
        'btn_test'                  => 'Test Connection',
        'btn_backup'                => 'Backup Now',
        'btn_save'                  => 'Save Settings',

        // Messages
        'test_success'              => 'Connection tested successfully!',
        'test_failed'               => 'Connection test failed',
        'test_error'                => 'An error occurred',
        'confirm_backup'            => 'Create and upload backup now? This may take a few minutes.',
        'backup_started'            => 'Backup is being created and uploaded...',
        'backup_error'              => 'Backup error',
        'settings_saved'            => 'FTP backup settings saved.',
        'backup_success'            => 'Backup successfully uploaded to FTP server.',
        'backup_failed'             => 'Backup error',

        // Errors
        'error_ftp_disabled'        => 'FTP extension not available',
        'error_ftp_info'            => 'The PHP FTP extension is not enabled on this server. Please contact your hosting provider.',
        'error_incomplete_settings' => 'FTP settings are incomplete',
        'error_connection_failed'   => 'FTP connection failed',
        'error_connection_lost'     => 'FTP connection was unexpectedly lost',
    ],

    // JavaScript translations (injected into admin layout as window.iwT)
    'js' => [
        'search_images'   => 'Search images…',
        'folder_label'    => 'Folder:',
        'all_media'       => 'All media',
        'unassigned'      => 'Unassigned',
        'loading'         => 'Loading…',
        'no_images'       => 'No images found.',
        'load_failed'     => 'Failed to load images.',
        'select_image'    => 'Select image',
        'upload_btn'      => '⬆ Upload',
        'search'          => 'Search…',
        'file_too_large'  => 'File too large (max. 5 MB). Current size: :size MB',
        'csrf_missing'    => 'CSRF token missing. Please reload the page and try again.',
        'uploading'       => 'Uploading… (:size KB)',
        'upload_failed'   => 'Upload failed: :error',
        'upload_http_err' => 'Upload failed (HTTP :status): :body',
        'network_error'   => 'Network error – server unreachable. Please check your internet connection.',
        'upload_timeout'  => 'Upload timeout. Please try again.',
    ],
];
