export default {
  common: {
    confirm: 'Confirm',
    cancel: 'Cancel',
    save: 'Save',
    delete: 'Delete',
    edit: 'Edit',
    search: 'Search',
    reset: 'Reset',
    view: 'View',
    loading: 'Loading...',
    searchPlaceholder: 'Search for content',
    welcome: 'Welcome',
    home: 'Home',
    profile: 'Profile',
    orders: 'Orders',
    payments: 'Payments',
    adminPanel: 'Admin Panel',
    login: 'Login',
    register: 'Register',
    logout: 'Logout',
    settings: 'Settings',
    userProfile: 'User Profile',
    points: 'Points',
    profileDevMsg: 'Profile feature under development',
    settingsDevMsg: 'Settings feature under development',
    noPermissionMsg: 'Insufficient permission, only administrators can access admin panel',
    logoutConfirm: 'Are you sure you want to logout?',
    logoutSuccess: 'Logout successful',
    tip: 'Tip',
    submit: 'Submit',
    back: 'Back',
    next: 'Next',
    previous: 'Previous',
    close: 'Close',
    success: 'Success',
    error: 'Error',
    warning: 'Warning',
    info: 'Info',
    downloadSuccess: 'Download successful',
    downloadFailed: 'Download failed',
    preparingDownload: 'Preparing download...',
    downloadStarted: 'Download started',
    noDownloadableImage: 'No downloadable storyboard image',
    pleaseUploadStoryboard: 'Please upload storyboard first',
    noRetryableTask: 'No retryable task',
    regenerating: 'Regenerating...',
    retrySubmitted: 'Retry task submitted',
    imageSpliceFailed: 'Image splice failed',
    videoLinkUnavailable: 'Video link unavailable',
    videoDeleted: 'Video deleted',
    jumpToTextToVideo: 'Redirecting to text-to-video page',
    missingVideoId: 'Missing video ID',
    loadWorkDetailFailed: 'Failed to load work details',
    loadTaskListFailed: 'Failed to load task list',
    taskListRefreshed: 'Task list refreshed',
    taskCancelled: 'Task cancelled',
    cancelTaskFailed: 'Failed to cancel task',
    retryFeatureInDev: 'Retry feature under development',
    pollingTriggered: 'Polling triggered',
    triggerPollingFailed: 'Failed to trigger polling',
    orderStatusUpdated: 'Order status updated',
    updateFailed: 'Update failed',
    updateOrderStatusFailed: 'Failed to update order status',
    passwordSetSuccess: 'Password set successfully',
    codeSentToEmail: 'Verification code sent to your email',
    pleaseEnterEmail: 'Please enter email address',
    pleaseEnterValidEmail: 'Please enter a valid email address',
    loginSuccess: 'Login successful',
    pleaseAgreeTerms: 'Please agree to the terms and privacy policy',
    registerFailed: 'Registration failed, please try again',
    cannotLoadMembershipConfig: 'Cannot load membership level config, please check membership_levels table',
    cannotLoadMembershipPriceConfig: 'Cannot load membership price config, please check membership_levels table',
    fetchPaymentsFailed: 'Failed to fetch payment records',
    pleaseLoginFirst: 'Please login first to subscribe',
    redirectingToAlipay: 'Redirecting to Alipay payment page',
    createAlipayFailed: 'Failed to create Alipay payment',
    redirectingToPaypal: 'Redirecting to PayPal payment page',
    createPaypalFailed: 'Failed to create PayPal payment',
    createSubscriptionFailed: 'Failed to create subscription payment',
    testPaymentSuccess: 'Test payment completed, order created automatically',
    testPaymentFailed: 'Test payment failed',
    deleteSuccess: 'Deleted successfully',
    deleteFailed: 'Delete failed',
    paymentCreateSuccess: 'Payment created successfully',
    paymentCreateFailed: 'Failed to create payment',
    paymentFeatureInDev: 'Payment feature under development',
    cancelOrderFeatureInDev: 'Cancel order feature under development',
    saveFailed: 'Save failed',
    loadStatsFailed: 'Failed to load statistics',
    loadErrorLogsFailed: 'Failed to load error logs',
    taskDeleteSuccess: 'Task deleted successfully',
    taskDeleteFailed: 'Delete failed',
    pleaseSelectTasksFirst: 'Please select tasks to delete first',
    batchDeleteSuccess: 'Successfully deleted {count} tasks',
    batchDeleteFailed: 'Batch delete failed',
    apiCallFailed: 'API call failed',
    checkNetwork: 'Please check network',
    dataLoadFailed: 'Data load failed, please check network connection',
    confirmDeleteTask: 'Are you sure to delete task {taskId}?',
    confirmDeleteTitle: 'Confirm Delete',
    confirmBatchDeleteTasks: 'Are you sure to delete the selected {count} tasks?',
    confirmBatchDeleteTitle: 'Confirm Batch Delete',
    addValidProduct: 'Please add at least one valid virtual product',
    orderCreateSuccess: 'Virtual product order created successfully! Products will be sent to your email',
    orderCreateFailed: 'Failed to create order',
    paymentPageGenerateFailed: 'Failed to generate payment page',
    paymentCreateFailedRetry: 'Payment creation failed, please retry',
    creatingPaypalPayment: 'Creating PayPal payment...',
    redirectingToPaypalPage: 'Redirecting to PayPal payment page...',
    paymentSuccessful: 'Payment successful!',
    paymentCancelledOrFailed: 'Payment cancelled or failed',
    pleaseGenerateQrFirst: 'Please generate QR code first',
    queryingPaymentStatus: 'Querying payment status...',
    queryFailed: 'Query failed, please try again later',
    paymentNotCompleted: 'Payment not completed (status: {status}), please complete payment and try again',
    chartDataLoadFailed: 'Failed to load chart data',
    chartInitFailed: 'Chart initialization failed',
    insufficientPoints: 'Insufficient points',
    goRecharge: 'Go recharge',
    confirmTest: 'Confirm test',
    confirmBatchDelete: 'Batch delete',
    insufficientPointsMessage: 'Insufficient points to create task. Would you like to recharge?',
    confirmTestPayment: 'Are you sure to test complete payment {orderId}? This will automatically create an order.',
    pleaseSelectMembers: 'Please select members to delete first',
    mergingImages: 'Merging {count} images into {rows}×{cols} grid...',
    imagesMerged: 'Merged {count} images into {rows}×{cols} grid',
    setFailed: 'Set failed',
    paymentRecordCreated: '{title} payment record created successfully',
    retryFailed: 'Retry failed',
    loadDataFailed: 'Failed to load data',
    configSavedToDb: 'Configuration saved to database, effective immediately',
    paymentFailed: 'Payment failed: {message}',
    paypalPaymentCreateFailed: 'PayPal payment creation failed',
    redirectFailed: 'Redirect failed',
    cancelFailed: 'Cancel failed',
    unknownError: 'Unknown error',
    unknownUser: 'Unknown user',
    untitledWork: 'Untitled work',
    noPrompt: 'No prompt',
    unknownDate: 'Unknown date',
    unknownSize: 'Unknown size',
    textToVideoCategory: 'Text to Video',
    imageToVideoCategory: 'Image to Video',
    storyboardVideoCategory: 'Storyboard Video',
    storyboardImageCategory: 'Storyboard Image',
    unknownCategory: 'Unknown',
    retryFailed: 'Retry failed',
    spliceFailed: 'Splice failed',
    cannotLoadImage: 'Cannot load image',
    generateVideoFromStoryboard: 'Generate video from storyboard',
    loginFailed: 'Login failed',
    loginFailedRetry: 'Login failed, please retry',
    memberUpdateSuccess: 'Member info updated successfully',
    weak: 'Weak',
    fair: 'Fair',
    good: 'Good',
    strong: 'Strong',
    notConfigured: 'Not configured',
    createPaymentRecordFailed: 'Failed to create payment record',
    unknownStatus: 'Unknown status'
  },

  login: {
    title: 'Login',
    email: 'Email',
    password: 'Password',
    verificationCode: 'Verification Code',
    forgotPassword: 'Forgot password?',
    emailCodeLogin: 'Email Verification Login',
    emailPasswordLogin: 'Email Password Login',
    emailPlaceholder: 'Enter email address',
    codePlaceholder: 'Enter verification code',
    passwordPlaceholder: 'Enter password',
    getCode: 'Get Code',
    loginButton: 'Login',
    loginOrRegister: 'Login/Register',
    loggingIn: 'Logging in...',
    agreementPrefix: 'By logging in, you agree to the ',
    termsOfService: 'Terms of Service',
    and: ' and ',
    privacyPolicy: 'Privacy Policy',
    testAccounts: 'Test Accounts',
    admin: 'Admin',
    normalUser: 'Normal User',
    quickEmail: 'Quick Email'
  },

  home: {
    title: 'Home',
    exploreCreativity: 'Explore Unlimited Creativity',
    subtitle: 'Transform Your Imagination into Reality with AI',
    getStarted: 'Get Started',
    learnMore: 'Learn More',
    features: 'Core Features',
    textToVideo: 'Text to Video',
    textToVideoDesc: 'Enter text descriptions and AI generates high-quality videos',
    imageToVideo: 'Image to Video',
    imageToVideoDesc: 'Upload images and AI generates dynamic videos',
    storyboardVideo: 'Storyboard Video',
    storyboardVideoDesc: 'Professional storyboarding for cinematic effects',
    myWorks: 'My Works',
    myWorksDesc: 'Manage and view all your creations',
    subscription: 'Subscription',
    subscriptionDesc: 'Unlock more advanced features and resources'
  },

  profile: {
    title: 'Profile',
    userInfo: 'User Information',
    username: 'Username',
    email: 'Email',
    memberLevel: 'Membership Level',
    expiryDate: 'Expiry Date',
    availablePoints: 'Available Points',
    frozenPoints: 'Frozen Points',
    accountStats: 'Account Statistics',
    totalWorks: 'Total Works',
    videoGenerated: 'Videos Generated',
    storageUsed: 'Storage Used',
    editProfile: 'Edit Profile',
    changePassword: 'Change Password',
    viewWorks: 'View Works',
    upgradeMembership: 'Upgrade Membership',
    subscription: 'Subscription',
    myWorks: 'My Works',
    tools: 'Tools',
    noUsername: 'No username set',
    published: 'Portfolio',
    userId: 'ID',
    noWorksYet: 'No works yet, start creating!',
    createSimilar: 'Create Similar',
    workDetail: 'Work Details',
    videoDetail: 'Video Details',
    description: 'Description',
    category: 'Category',
    inputDetails: 'Input Details',
    createTime: 'Create Time',
    workId: 'Work ID',
    date: 'Date',
    duration: 'Duration',
    quality: 'Quality',
    aspectRatio: 'Aspect Ratio',
    unknown: 'Unknown',
    anonymousUser: 'Anonymous User',
    browserNotSupport: 'Your browser does not support video playback',
    noPrompt: 'No prompt available',
    dashboard: 'Dashboard',
    orderManagement: 'Order Management',
    memberManagement: 'Member Management',
    systemSettings: 'System Settings',
    insufficientPermission: 'Insufficient permission, only administrators can access',
    logoutConfirm: 'Are you sure you want to logout?',
    logoutSuccess: 'Logged out successfully',
    logoutFailed: 'Logout failed',
    loadWorksFailed: 'Failed to load works',
    loadUserInfoFailed: 'Failed to load user info',
    loadDetailFailed: 'Failed to load work details',
    profileEditDevMsg: 'Profile edit feature under development'
  },

  video: {
    create: 'Create',
    generating: 'Generating',
    completed: 'Completed',
    failed: 'Failed',
    failReason: 'Failure Reason',
    prompt: 'Prompt',
    promptPlaceholder: 'Enter video description...',
    optimizePrompt: 'Optimize Prompt',
    uploadImage: 'Upload Image',
    selectImage: 'Select Image',
    generate: 'Generate Video',
    duration: 'Duration',
    resolution: 'Resolution',
    style: 'Style',
    aspectRatio: 'Aspect Ratio',
    advancedSettings: 'Advanced Settings',
    cost: 'Points Cost',
    estimatedTime: 'Estimated Time',
    result: 'Result',
    download: 'Download',
    share: 'Share',
    regenerate: 'Regenerate',
    saveToWorks: 'Save to Works',
    videoUrl: 'Video URL',
    status: 'Status',
    createdAt: 'Created At',

    // Text to Video translations
    textToVideo: {
      aspectRatio: 'Aspect Ratio',
      dateFormat: '{year}-{month}-{day} {hours}:{minutes}',
      pointsUpdated: 'User points updated',
      pointsUpdateFailed: 'Failed to update user points',
      textInputPlaceholder: 'Enter video description, e.g.: horses running on the grassland...',
      userAvatar: 'User Avatar',
      optimizing: 'Optimizing...',
      oneClickOptimize: 'One-Click Optimize',
      hdMode: 'HD Mode',
      hdModeCost: '+20 Points',
      startGenerate: 'Start Generation',
      pleaseLogin: 'Please Login First',
      loginRequired: 'Login required to start creating',
      loginNow: 'Login Now',
      inProgress: 'In Progress',
      noVideoUrl: 'No Video Available',
      withWatermark: 'With Watermark',
      withoutWatermark: 'Without Watermark',
      createSimilar: 'Create Similar',
      downloadVideo: 'Download Video',
      deleteWork: 'Delete Work',
      generationFailed: 'Generation Failed',
      checkInputOrRetry: 'Please check input or retry',
      regenerate: 'Regenerate',
      clearAndCreateNew: 'Clear and Create New',
      failedTaskCleared: 'Failed task cleared',
      startCreating: 'Start creating your video!',
      noDescription: 'No Description',
      queuing: 'Queuing...',
      subscribeToSpeedUp: 'Subscribe to speed up',
      noResult: 'No Result',
      pleaseLoginFirst: 'Please login first',
      taskInProgress: 'Task already in progress, please wait',
      pleaseEnterText: 'Please enter video description',
      creatingTask: 'Creating task...',
      taskCreated: 'Task created successfully, generating...',
      createTaskFailed: 'Failed to create task',
      videoCompleted: 'Video generation completed!',
      videoFailed: 'Video generation failed:',
      statusPending: 'Pending',
      statusProcessing: 'Processing',
      statusCancelled: 'Cancelled',
      statusUnknown: 'Unknown Status',
      pleaseEnterPrompt: 'Please enter prompt first',
      promptTooLong: 'Prompt too long, max 2000 characters',
      optimizingPrompt: 'Optimizing prompt...',
      optimizeSuccess: 'Prompt optimized successfully!',
      optimizeNoChange: 'Prompt is already optimal',
      optimizeFailed: 'Optimization failed, please retry',
      requestParamError: 'Invalid request parameters',
      requestTimeout: 'Request timeout, check network',
      serverError: 'Server error, please retry later',
      networkError: 'Network error, check connection',
      networkConnectionError: 'Network connection failed',
      downloadStarted: 'Download started',
      videoUrlNotAvailable: 'Video URL not available',
      noWorkToDelete: 'No work to delete',
      deleteConfirm: 'Are you sure to delete this work? This cannot be undone.',
      confirmDelete: 'Confirm Delete',
      workDeleted: 'Work deleted',
      deleteCancelled: 'Delete cancelled',
      historyLoadSuccess: 'History loaded: {count} items',
      historyLoadFailed: 'Failed to load history',
      historyParamsFilled: 'History parameters filled, ready to generate',
      cancelFunctionTBD: 'Cancel function under development',
      unfinishedTaskDetected: 'Unfinished task detected, restoring...'
    },

    // Image to Video translations
    imageToVideo: {
      userAvatar: 'User Avatar',
      firstFrame: 'First Frame',
      promptPlaceholder: 'Describe the content you want to generate with the image',
      tipWarning: '⚠️ Do not upload images of real people or anime IP',
      tip1: '🎬 Supports camera movements, character actions, scene transitions, etc.',
      optimizing: 'Optimizing...',
      optimizePrompt: 'Optimize',
      hdMode: 'HD Mode',
      hdModeCost: 'Costs 20 points when enabled',
      startGenerate: 'Start Generate',
      pleaseLogin: 'Please Login',
      loginRequired: 'Login required to submit task',
      loginNow: 'Login Now',
      inProgress: 'In Progress',
      statusPending: 'Pending',
      statusProcessing: 'Processing',
      statusCompleted: 'Completed',
      statusFailed: 'Failed',
      statusCancelled: 'Cancelled',
      noVideoUrl: 'Video generated but URL not available',
      withWatermark: 'With Watermark',
      withoutWatermark: 'Without Watermark (Member Exclusive)',
      createSimilar: 'Create Similar',
      downloadVideo: 'Download Video',
      deleteWork: 'Delete Work',
      retry: 'Retry',
      generateFailed: 'Generation Failed',
      generateFailedDesc: 'Please check input or retry',
      startCreating: 'Start creating your first work!',
      tip1: 'Upload first frame image',
      tip2: 'Enter description text',
      tip3: 'Select video parameters',
      tip4: 'Click to start generating',
      noDescription: 'No Description',
      queuing: 'Queuing',
      subscribeToSpeedUp: 'Subscribe to speed up generation',
      cancel: 'Cancel',
      firstFrameImage: 'First Frame Image',
      noResult: 'No Result',
      year: '',
      month: '',
      day: '',
      fileSizeLimit: 'Image file size cannot exceed 100MB',
      invalidImageFile: 'Please select a valid image file',
      pleaseLoginFirst: 'Please login before submitting task',
      taskInProgress: 'A task is already in progress, please wait or cancel it',
      uploadFirstFrameRequired: 'Please upload first frame image',
      enterDescriptionRequired: 'Please enter description text',
      creatingTask: 'Creating task...',
      taskCreatedSuccess: 'Task created successfully, processing...',
      createTaskFailed: 'Failed to create task',
      createTaskFailedRetry: 'Failed to create task, please retry',
      videoGenerateCompleted: 'Video generation completed!',
      videoGenerateFailed: 'Video generation failed: ',
      enterPromptFirst: 'Please enter prompt',
      promptTooLong: 'Prompt too long, please keep within 2000 characters',
      optimizingPrompt: 'Optimizing prompt, please wait...',
      promptOptimizedSuccess: 'Prompt optimized successfully!',
      promptAlreadyOptimized: 'Prompt already optimized, may not have obvious changes',
      optimizeFailed: 'Optimization failed',
      optimizePromptFailed: 'Failed to optimize prompt',
      requestParameterError: 'Request parameter error',
      requestTimeout: 'Request timeout, please retry later',
      serverError: 'Server error, please retry later',
      networkError: 'Network error, please check connection',
      networkConnectionError: 'Network connection error, please check your network',
      startDownload: 'Starting video download',
      videoUrlNotAvailable: 'Video URL not available',
      noWorkToDelete: 'No work to delete',
      confirmDeleteWork: 'Are you sure to delete this work?',
      confirmDelete: 'Confirm Delete',
      workDeleted: 'Work deleted',
      deleteCancelled: 'Deletion cancelled',
      historyParamsFilled: 'History parameters filled, ready to generate',
      cancelFeatureTodo: 'Cancel feature coming soon',
      resumingTask: 'Unfinished task detected, resuming...',
      resumingStoryboardTask: 'Detected unfinished storyboard generation task, resuming...',
      unfinishedTaskDetected: 'Unfinished task detected, restoring...',
      imageLoadFailed: 'Image load failed, please select image file again'
    },

    // Storyboard Video translations
    storyboard: {
      userAvatar: 'User Avatar',
      generateStoryboard: 'Generate Storyboard',
      generateVideo: 'Generate Video',
      uploadStoryboard: 'Upload Storyboard (can generate video directly)',
      uploadImage: 'Upload Image',
      imageLabel: 'Image ',
      uploadHint: 'Upload reference images, AI will generate 6-grid storyboard based on images',
      addMore: 'Add More',
      uploadedCount: 'Uploaded {count}/9',
      uploadLimit: 'Limit reached',
      uploadedImage: 'Uploaded image {index}',
      maxImages: 'Maximum 3 images allowed',
      maxImagesWarning: 'Maximum 3 images allowed',
      fileSizeLimit: 'Image file size cannot exceed 100MB',
      invalidFileType: 'Please select valid image files',
      uploadSuccess: 'Successfully uploaded {count} images',
      imageRemoved: 'Image removed',
      promptPlaceholder: 'Example: a coffee advertisement\n\nTip: Simple description is enough, AI will automatically optimize it into professional storyboard\nSupports Chinese or English input, the system will automatically translate and optimize it into professional storyboard description',
      tipWarning: '⚠️ Do not upload images of real people or anime IP',
      tip1: '🎬 Supports camera movements, character actions, scene transitions, etc.',
      imageCost: 'Storyboard generation costs 30 points',
      videoCost: 'Video generation costs 30 points',
      videoPromptLabel: 'Video Description',
      videoPromptPlaceholder: 'Describe actions and camera movements in the video, e.g.: camera slowly zooms in, person turns around and smiles',
      videoTip1: '💡 Describe actions and camera movements for more vivid video generation',
      videoTip2: '🎬 Supports camera movements, character actions, scene transitions, etc.',
      storyboardReadyHint: 'Storyboard is ready, enter video description and click generate',
      optimizing: 'Optimizing...',
      enterPrompt: 'Please enter prompt',
      promptTooLong: 'Prompt is too long, please keep it within 2000 characters',
      optimizingPrompt: 'Optimizing prompt, please wait...',
      optimizeSuccess: 'Prompt optimized successfully!',
      alreadyOptimized: 'Prompt already optimized, but may have no obvious changes',
      optimizeFailed: 'Failed to optimize prompt',
      paramError: 'Request parameter error',
      timeout: 'Request timeout, please try again later',
      serverError: 'Server error, please try again later',
      networkError: 'Network error, please check your connection',
      storyboardImage: 'Storyboard',
      referenceImage: 'Reference Image',
      noStoryboard: 'No storyboard yet',
      hdMode: 'HD Mode (1080P)',
      hdCost: 'Costs 20 points when enabled',
      imageModel: 'Image Generation Model',
      pleaseLogin: 'Please login first',
      loginRequired: 'Login required to submit task',
      loginNow: 'Login Now',
      loginBeforeSubmit: 'Please login before submitting task',
      inProgress: 'In Progress',
      generatingVideo: 'Generating video, please wait...',
      progress: 'Progress: {progress}%',
      generatingStoryboardText: 'Generating storyboard, please wait...',
      generatingVideoText: 'Generating video, please wait...',
      generatingText: 'Generating',
      startCreating: 'Start creating your first work!',
      noDescription: 'No description',
      queuing: 'Queuing',
      subscribeToSpeed: 'Subscribe to improve generation speed',
      noResult: 'No result yet',
      noStoryboardImage: 'Please wait for storyboard generation to complete, or upload a storyboard image',
      uploadOrGenerateFirst: 'Please upload or generate storyboard first',
      uploadOrInputPrompt: 'Please upload storyboard or enter prompt',
      startGenerateVideo: 'Start Generate Video',
      generateVideoWithUpload: 'Generate Video with Uploaded Image',
      generateStoryboardWithImage: 'Generate Storyboard with Image',
      startGenerateStoryboard: 'Start Generate Storyboard',
      startGenerate: 'Start Generate',
      generating: 'Generating...',
      enterDescription: 'Please enter description',
      enterDescriptionForImage: 'Please enter description, AI will generate storyboard based on reference image and description',
      startingGenerate: 'Starting to generate storyboard...',
      taskCreated: 'Storyboard task created successfully!',
      createTaskFailed: 'Failed to create task',
      generateFailed: 'Failed to generate storyboard',
      taskTimeout: 'Task timeout, please check later',
      storyboardCompleted: 'Storyboard generation completed! Please click "Start Generate" button to generate video',
      videoCompleted: 'Video generation completed!',
      taskFailed: 'Task failed',
      checkInputOrRetry: 'Please check input or retry',
      unknownError: 'Unknown error',
      downloadStarted: 'Download started',
      startingVideoGenerate: 'Starting to generate video...',
      videoTaskStarted: 'Video generation task started, please wait...',
      videoStartFailed: 'Failed to start video generation',
      defaultPrompt: 'Generate video from image',
      videoTaskCreated: 'Video task created successfully, processing...',
      createVideoTaskFailed: 'Failed to create video task',
      generateVideoFailed: 'Failed to generate video',
      videoTaskTimeout: 'Video task timeout, please check later',
      videoGenerateFailed: 'Video generation failed',
      paramsFilled: 'Parameters filled from history, ready to generate',
      cancelFeaturePending: 'Cancel feature pending implementation',
      taskCompleted: 'Task completed!',
      resumingVideoTask: 'Detected unfinished video generation task, resuming...',
      resumingStoryboardTask: 'Detected unfinished storyboard generation task, resuming...',
      resumingTask: 'Detected unfinished task, resuming...',
      storyboardReady: 'Storyboard generated, click button below to generate video',
      readyForVideo: 'Storyboard ready, you can generate video now',
      uploadStoryboardFirst: 'Please upload storyboard first',
      regenerate: 'Regenerate',
      regenerateConfirm: 'Regenerating will consume points and create a new task. Continue?',
      regenerateTitle: 'Regenerate Storyboard',
      generateVideo: 'Generate Video',
      readyToGenerateVideo: 'Storyboard parameters filled, ready to generate video',
      downloadImage: 'Download Storyboard',
      imageUrlNotAvailable: 'Storyboard image URL not available',
      statusPending: 'Pending',
      statusProcessing: 'Processing',
      statusCompleted: 'Completed',
      statusFailed: 'Failed',
      statusCancelled: 'Cancelled',
      statusUnknown: 'Unknown Status'
    }
  },

  works: {
    title: 'My Works',
    all: 'All',
    videoDetail: 'Video Details',
    description: 'Description',
    createSimilar: 'Create Similar',
    textToVideo: 'Text to Video',
    imageToVideo: 'Image to Video',
    storyboardVideo: 'Storyboard Video',
    filter: 'Filter',
    sortBy: 'Sort By',
    newest: 'Newest',
    oldest: 'Oldest',
    noWorks: 'No Works Yet',
    noWorksDesc: 'Start creating your first work!',
    viewDetail: 'View Details',
    deleteConfirm: 'Are you sure you want to delete this work?',
    deleteSuccess: 'Deleted successfully',
    deleteFailed: 'Delete failed',
    video: 'Video',
    image: 'Image',
    dateFilter: 'Date',
    today: 'Today',
    thisWeek: 'This Week',
    thisMonth: 'This Month',
    taskType: 'Task Type',
    resolution: 'Resolution',
    sd: 'SD',
    hd: 'HD',
    uhd: 'UHD',
    ratio: 'Ratio',
    time: 'Time',
    popular: 'Popular',
    searchPlaceholder: 'Name/Prompt/ID',
    selectItems: 'Select {count} items',
    selectAll: 'Select All',
    selectedCount: '{count} selected',
    favorite: 'Favorite',
    downloadWithWatermark: 'Download with Watermark',
    downloadWithoutWatermark: 'Download without Watermark',
    memberOnly: 'Member Only',
    rename: 'Rename',
    referenceImagePrompt: 'Image 1 running in Image 2 video',
    allLoaded: '✓ All content loaded',
    noContent: 'No content found',
    backToTop: 'Back to Top',
    createSimilarInfo: 'Create similar based on "{title}"',
    goToCreate: 'Go to create page',
    downloadStart: 'Download started: {title}',
    downloadComplete: 'Download complete',
    shareComingSoon: 'Share feature coming soon',
    downloadWithWatermarkStart: 'Starting download with watermark',
    downloadWithoutWatermarkStart: 'Starting download without watermark (Member exclusive)',
    renameDevMsg: 'Rename feature under development',
    deleteWorkConfirm: 'Are you sure to delete this work?',
    deleteConfirmTitle: 'Delete Confirmation',
    bulkDownloadStart: 'Starting download of {count} files',
    bulkDeleteConfirm: 'Are you sure to delete {count} selected items?',
    bulkDeleteSuccess: 'Selected items deleted',
    filtersReset: 'Filters reset',
    processing: 'Processing...',
    queuing: 'Queuing...',
    pleaseWait: 'Please wait, video is being generated',
    noPreview: 'No Preview',
    videoLoadFailed: 'Video Load Failed',
    videoFileNotExist: 'Video file may not exist or has been deleted',
    retry: 'Retry',
    deleteFailedWork: 'Delete This Work',
    deleteFailedWorkConfirm: 'This work\'s video failed to load. Are you sure you want to delete it? This action cannot be undone.',
    readyToGenerateVideo: 'Storyboard image loaded, ready to generate video',
    noDownloadUrl: 'No downloadable file available'
  },

  subscription: {
    title: 'Subscription',
    choosePlan: 'Choose Plan',
    currentPlan: 'Current Plan',
    starter: 'Starter',
    standard: 'Standard',
    professional: 'Professional',
    perMonth: '/year',
    perYear: '/year',
    subscribe: 'Subscribe Now',
    renew: 'Renew',
    upgrade: 'Upgrade',
    features: 'Features',
    unlimited: 'Unlimited',
    limited: 'Limited',
    pointsPerMonth: 'Points/Year',
    includedPoints: 'Includes {points} points',
    videoQuality: 'Video Quality',
    support: 'Support',
    priorityQueue: 'Priority Queue',
    advancedFeatures: 'Advanced Features',

    // New keys
    userAvatar: 'User Avatar',
    loading: 'Loading...',
    pointsDetails: 'Points Details',
    myOrders: 'My Orders',
    currentActivePlan: 'Current Active Plan',
    expiryTime: 'Expiry Time',
    permanent: 'Permanent',
    remainingPoints: 'Remaining Points',
    plans: 'Plans',
    pointsPerYear: 'points/year',
    currentPackage: 'Current Plan',
    firstPurchaseDiscount: 'First Purchase Discount up to 15% off',
    bestValue: 'Best Value',
    standardPoints: '6000 points/year',
    premiumPoints: '12000 points/year',
    freeNewUserBonus: 'New users get 50 bonus points on first login',
    fastGeneration: 'Fast Generation',
    superFastGeneration: 'Super Fast Generation',
    commercialUse: 'Commercial Use',
    noWatermark: 'No Watermark',
    earlyAccess: 'Early Access to New Features',
    
    // Points and items
    points: 'points',
    items: 'items',
    pointsValidOneYear: 'Points valid for one year',
    textToVideo30Points: 'Text to Video: 30 points/item',
    imageToVideo30Points: 'Image to Video: 30 points/item',
    storyboardImage30Points: 'Storyboard Image: 30 points/time',
    storyboardVideo30Points: 'Storyboard Video: 30 points/item',
    maxTextToVideo: 'Max Text to Video {count} items',
    maxImageToVideo: 'Max Image to Video {count} items',
    maxStoryboardImage: 'Max Storyboard Image {count} times',
    maxStoryboardVideo: 'Max Storyboard Video {count} items',
    textToVideoItems: 'Text to Video {count} items',
    imageToVideoItems: 'or Image to Video {count} items',
    storyboardImageTimes: 'or Storyboard Image {count} times',
    storyboardVideoItems: 'or Storyboard Video {count} items',

    // Points history related
    pointsUsageHistory: 'Points Usage History',
    pointsUsageOverview: 'Points Usage Overview',
    totalRecharge: 'Total Recharge',
    totalConsumption: 'Total Consumption',
    currentPoints: 'Current Points',
    noPointsHistory: 'No points usage history',
    description: 'Description',
    time: 'Time',
    orderNumber: 'Order Number',
    taskId: 'Task ID',
    recharge: 'Recharge',
    consume: 'Consume',

    // Messages
    pleaseLogin: 'Please login first',
    loadUserInfoFailed: 'Failed to load user info, using defaults',
    loadUserInfoError: 'Failed to load user info: {message}',
    loadPointsHistoryFailed: 'Failed to load points history',
    generatingQRCode: 'Generating payment QR code...',
    subscriptionFailed: 'Subscription failed, please try again',
    qrCodeGenerated: 'QR code generated, please scan with Alipay',
    qrCodeGenerationFailed: 'Failed to generate QR code, please try again',
    qrCodeEmpty: 'QR code generation failed: QR code is empty',
    createPaymentFailed: 'Failed to create payment order',
    qrCodeGenerationError: 'QR code generation failed: {message}',
    pleaseTryAgain: 'Please try again',
    refreshPage: 'Please refresh and try again',
    paymentSuccess: 'Payment successful! Updating information...',
    paymentPending: 'Payment processing, please wait...',
    paymentCancelled: 'Payment cancelled',
    paymentError: 'Payment processing error, please contact support if you have questions',
    infoUpdated: 'Information updated!',
    paymentProcessingFailed: 'Payment successful but order processing failed, please contact support',
    paymentFailed: 'Payment failed, please try again',
    creatingOrder: 'Creating order...',
    paymentPageLoadFailed: 'Failed to load payment page',
    createAlipayPaymentFailed: 'Failed to create Alipay payment',
    createPaymentOrderFailed: 'Failed to create payment order, please try again',

    // Plan descriptions
    starterDescription: 'Starter Membership Subscription',
    standardDescription: 'Standard Subscription - 200 points per month',
    premiumDescription: 'Premium Subscription - 1000 points per month'
  },

  welcome: {
    textToVideo: 'Text to Video',
    imageToVideo: 'Image to Video',
    storyboardVideo: 'Storyboard Video',
    pricing: 'Pricing Plans',
    startExperience: 'Get Started',
    title1: 'Create',
    title2: 'Unlimited,',
    title3: 'Ideas',
    title4: 'Realized.',
    subtitle: 'Secure and convenient login with email verification',
    tryNow: 'Try Now',
    coreFeatures: 'Core Features',
    textToVideoDesc: 'Enter text description, AI automatically generates high-quality video content',
    imageToVideoDesc: 'Upload images, AI intelligently analyzes and generates dynamic videos',
    storyboardVideoDesc: 'Professional storyboarding for cinematic video effects',
    pricingDesc: 'Flexible pricing plans to meet different creative needs',
    startCreating: 'Start Creating'
  },

  nav: {
    dashboard: 'Dashboard',
    members: 'Member Management',
    orders: 'Order Management',
    apiManagement: 'API Management',
    tasks: 'Task Records',
    systemSettings: 'System Settings',
    onlineUsers: 'Online Users',
    systemUptime: 'System Uptime',
    todayVisitors: 'Today Visitors',
    loading: 'Loading...',
    memberManagement: 'Member Management',
    orderManagement: 'Order Management',
    taskRecord: 'Task Records',
    errorStats: 'Error Statistics',
    profile: 'Profile',
    myWorks: 'My Works',
    workflowVideos: 'Workflow Videos'
  },

  workflowVideo: {
    title: 'Workflow Videos',
    management: 'Video Management',
    addVideo: 'Add Video',
    editVideo: 'Edit Video',
    videoTitle: 'Video Title',
    description: 'Description',
    tags: 'Tags',
    sortOrder: 'Sort Order',
    status: 'Status',
    createdAt: 'Created At',
    operation: 'Operation',
    thumbnail: 'Thumbnail',
    enableStatus: 'Enable Status',
    enabled: 'Enabled',
    disabled: 'Disabled',
    enable: 'Enable',
    disable: 'Disable',
    videoFile: 'Video File',
    thumbnailFile: 'Thumbnail',
    uploadVideo: 'Upload Video',
    uploadThumbnail: 'Upload Thumbnail',
    uploaded: 'Uploaded',
    uploadSuccess: 'Upload successful',
    uploadFailed: 'Upload failed',
    titlePlaceholder: 'Enter video title',
    descriptionPlaceholder: 'Enter video description',
    tagsPlaceholder: 'Separate tags with commas',
    titleRequired: 'Please enter video title',
    videoRequired: 'Please upload a video file first',
    confirmDelete: 'Are you sure to delete video',
    noVideos: 'No videos yet',
    loadFailed: 'Failed to load videos',
    publishTime: 'Published',
    browserNotSupport: 'Your browser does not support video playback',
    heroTitle: 'Discover Premium Workflow Videos',
    heroSubtitle: 'Explore professional AI creation workflows to boost your creative efficiency',
    totalVideos: 'Total Videos',
    categories: 'Categories',
    activeUsers: 'Active Users',
    loading: 'Loading...',
    noVideosDescription: 'No premium workflow videos yet, coming soon',
    defaultAuthor: 'AIGC Expert',
    views: 'views',
    contactAuthor: 'Contact Author',
    favorite: 'Favorite',
    purchaseWorkflow: 'Purchase Workflow',
    share: 'Share',
    videoLength: 'Video Length',
    fillRequiredFields: 'Please fill in all required fields',
    contactSent: 'Contact information sent',
    contactFailed: 'Failed to send contact information',
    addedToFavorites: 'Added to favorites',
    linkCopied: 'Link copied to clipboard',
    yourName: 'Your Name',
    yourEmail: 'Your Email',
    message: 'Message',
    budget: 'Budget',
    namePlaceholder: 'Please enter your name',
    emailPlaceholder: 'Please enter your email',
    messagePlaceholder: 'Please enter your message',
    expert: 'Expert'
  },

  admin: {
    exitAdmin: 'Exit Admin'
  },

  dashboard: {
    title: 'Dashboard',
    totalUsers: 'Total Users',
    paidUsers: 'Paid Users',
    todayRevenue: "Today's Revenue",
    dailyActive: 'Daily Active User Trend',
    conversionRate: 'User Conversion Rate',
    comparedToLastMonth: 'vs last month',
    comparedToYesterday: 'vs yesterday',
    yearSuffix: '',
    year2025: '2025',
    year2024: '2024',
    year2023: '2023',
    userAvatar: 'User Avatar',
    month1: 'Jan',
    month2: 'Feb',
    month3: 'Mar',
    month4: 'Apr',
    month5: 'May',
    month6: 'Jun',
    month7: 'Jul',
    month8: 'Aug',
    month9: 'Sep',
    month10: 'Oct',
    month11: 'Nov',
    month12: 'Dec',
    pleaseLogin: 'Please login first',
    loadDataFailed: 'Failed to load dashboard data',
    unknownError: 'Unknown error',
    selectYear: 'Select Year',
    todayDAU: 'Today DAU',
    dayGrowthRate: 'Day Growth Rate',
    monthlyAvgDAU: 'Monthly Avg DAU',
    monthGrowthRate: 'Month Growth Rate'
  },

  orders: {
    title: 'Order Management',
    orderNumber: 'Order Number',
    username: 'Username',
    amount: 'Amount',
    paymentMethod: 'Payment Method',
    status: 'Status',
    createTime: 'Create Time',
    operation: 'Operation',
    allStatus: 'All Status',
    allTypes: 'All Types',
    allPaymentMethods: 'All Payment Methods',
    pending: 'Pending',
    confirmed: 'Confirmed',
    paid: 'Paid',
    processing: 'Processing',
    shipped: 'Shipped',
    delivered: 'Delivered',
    completed: 'Completed',
    cancelled: 'Cancelled',
    refunded: 'Refunded',
    unpaid: 'Unpaid',
    alipay: 'Alipay',
    wechat: 'WeChat Pay',
    paypal: 'PayPal',
    selected: '{count} selected',
    orderDetail: 'Order Detail',
    basicInfo: 'Basic Info',
    orderType: 'Order Type',
    paymentInfo: 'Payment Info',
    confirmDeleteOrder: 'Are you sure to delete order {orderNumber}?',
    confirmDeleteTitle: 'Confirm Delete',
    deleteSuccess: 'Deleted successfully',
    deleteFailed: 'Delete failed',
    pleaseSelectOrders: 'Please select orders to delete first',
    confirmBatchDelete: 'Are you sure to delete the selected {count} orders?',
    batchDeleteTitle: 'Batch Delete',
    batchDeleteSuccess: 'Batch delete successful',
    batchDeleteFailed: 'Batch delete failed',
    loadOrdersFailed: 'Failed to load orders',
    apiDataFormatError: 'API data format error',
    productOrder: 'Product Order',
    serviceOrder: 'Service Order',
    subscriptionOrder: 'Subscription Order',
    digitalProduct: 'Digital Product',
    physicalProduct: 'Physical Product',
    paidTime: 'Paid Time',
    contactInfo: 'Contact Info',
    email: 'Email',
    phone: 'Phone',
    description: 'Order Description',
    orderNotFound: 'Order not found'
  },

  tasks: {
    title: 'Task Records',
    taskId: 'Task ID',
    username: 'Username',
    type: 'Type',
    resources: 'Resources Used',
    status: 'Status',
    createTime: 'Create Time',
    operation: 'Operation',
    allStatus: 'All Status',
    completed: 'Completed',
    processing: 'Processing',
    failed: 'Failed',
    cancelled: 'Cancelled',
    pending: 'Pending',
    textToVideo: 'Text to Video',
    imageToVideo: 'Image to Video',
    storyboardVideo: 'Storyboard Video',
    taskDetail: 'Task Detail',
    unknown: 'Unknown',
    pointsUnit: ' points',
    basicInfo: 'Basic Info',
    timeInfo: 'Time Info',
    progressInfo: 'Progress Info',
    progress: 'Progress',
    result: 'Result',
    resultLink: 'Result Link',
    viewResult: 'View Result',
    errorInfo: 'Error Info',
    close: 'Close',
    updateTime: 'Update Time',
    completeTime: 'Complete Time',
    taskType: 'Task Type',
    resourcesConsumed: 'Resources Consumed',
    defaultPoints: '0 points'
  },

  members: {
    title: 'Member List',
    userId: 'User ID',
    username: 'Username',
    level: 'Membership Level',
    points: 'Remaining Points',
    expiryDate: 'Expiry Date',
    operation: 'Edit',
    allLevels: 'All Levels',
    professional: 'Professional',
    standard: 'Standard',
    editMember: 'Edit Member',
    usernamePlaceholder: 'Enter username',
    levelPlaceholder: 'Select level',
    pointsPlaceholder: 'Enter points',
    expiryPlaceholder: 'Select expiry date',
    memberLevel: 'Membership Level',
    freeMember: 'Free Member',
    starterMember: 'Starter Member',
    standardMember: 'Standard Member',
    professionalMember: 'Professional Member',
    userStatus: 'User Status',
    activeUsers: 'Active Users',
    bannedUsers: 'Banned Users',
    allUsers: 'All Users',
    role: 'Role',
    status: 'Status',
    setAdmin: 'Set as Admin',
    revokeAdmin: 'Revoke Admin',
    ban: 'Ban',
    unban: 'Unban',
    active: 'Active',
    banned: 'Banned',
    superAdmin: 'Super Admin',
    admin: 'Admin',
    normalUser: 'User',
    userRole: 'User Role',
    selectRole: 'Select role',
    confirmRoleChange: 'Are you sure to {action} user {username}?',
    confirmBanAction: 'Are you sure to {action} user {username}?',
    confirmAction: 'Confirm {action}',
    actionSuccess: '{action} successful',
    actionFailed: '{action} failed',
    confirmDeleteMember: 'Are you sure to delete user {username}?',
    confirmBatchDeleteMembers: 'Are you sure to delete the selected {count} members?',
    batchDeleteSuccess: 'Batch delete successful',
    batchDeleteFailed: 'Batch delete failed'
  },

  apiManagement: {
    title: 'API Management',
    apiKey: 'API Key',
    apiKeyPlaceholder: 'Enter API key',
    apiBaseUrl: 'API Base URL',
    apiBaseUrlPlaceholder: 'Enter API base URL, e.g. https://ai.comfly.chat',
    apiBaseUrlHint: 'Currently using',
    tokenExpiration: 'Token Expiration',
    tokenPlaceholder: 'Enter hours (1-720)',
    hours: 'hours',
    days: 'days',
    rangeHint: 'Range: 1-720 hours (1 hour - 30 days)',
    atLeastOneRequired: 'Please enter at least one configuration',
    saveSuccess: 'Saved successfully',
    saveFailed: 'Save failed',
    currentConfig: 'Current Configuration',
    apiEndpoint: 'API Endpoint',
    modifyConfig: 'Modify Configuration'
  },

  errorStats: {
    title: 'Error Statistics',
    userAvatar: 'User Avatar',
    totalErrors: 'Total Errors',
    todayErrors: 'Today Errors',
    weekErrors: 'Week Errors',
    errorTypeDistribution: 'Error Type Distribution',
    last7Days: 'Last 7 Days',
    last30Days: 'Last 30 Days',
    last90Days: 'Last 90 Days',
    times: 'times',
    noErrorData: 'No error data',
    recentErrors: 'Recent Errors',
    refresh: 'Refresh',
    time: 'Time',
    errorType: 'Error Type',
    user: 'User',
    taskId: 'Task ID',
    errorMessage: 'Error Message'
  },

  setPassword: {
    title: 'Set Password',
    newPasswordPlaceholder: 'Enter password (at least 8 characters, including letters and numbers)',
    confirmPasswordPlaceholder: 'Confirm password',
    submitting: 'Submitting...',
    confirm: 'Confirm',
    skipForNow: 'Skip for now',
    enterPassword: 'Please enter password',
    passwordMinLength: 'Password must be at least 8 characters',
    passwordNeedLetter: 'Password must contain letters',
    passwordNeedNumber: 'Password must contain numbers',
    confirmPasswordRequired: 'Please confirm password',
    passwordMismatch: 'Passwords do not match'
  },

  changePassword: {
    title: 'Change Password',
    currentPasswordPlaceholder: 'Enter current password (optional)',
    newPasswordPlaceholder: 'Enter new password',
    confirmPasswordPlaceholder: 'Confirm new password',
    submitting: 'Submitting...',
    confirm: 'Confirm',
    enterNewPassword: 'Please enter new password',
    passwordMinLength: 'Password must be at least 8 characters',
    passwordNeedLetter: 'Password must contain letters',
    passwordNeedNumber: 'Password must contain numbers',
    confirmPasswordRequired: 'Please confirm password',
    passwordMismatch: 'Passwords do not match',
    changeSuccess: 'Password changed successfully',
    changeFailed: 'Failed to change password'
  },

  register: {
    title: 'Register',
    usernamePlaceholder: 'Enter username',
    emailPlaceholder: 'Enter email',
    passwordPlaceholder: 'Enter password',
    confirmPasswordPlaceholder: 'Confirm password',
    getCode: 'Get Code',
    registerButton: 'Register',
    registering: 'Registering...',
    haveAccount: 'Already have an account?',
    loginNow: 'Login now',
    agreement: 'I have read and agree to the Terms of Service and Privacy Policy',
    usernameExists: 'Username already exists',
    usernameAvailable: 'Username available',
    emailExists: 'Email already exists',
    emailAvailable: 'Email available',
    usernameRequired: 'Please enter username',
    usernameLength: 'Username must be 3-20 characters',
    usernameFormat: 'Username can only contain letters, numbers and underscores',
    emailRequired: 'Please enter email',
    emailFormat: 'Please enter a valid email format',
    passwordRequired: 'Please enter password',
    passwordLength: 'Password must be 6-20 characters',
    confirmPasswordRequired: 'Please confirm password',
    passwordMismatch: 'Passwords do not match'
  },

  payments: {
    title: 'Payment Records',
    statusPlaceholder: 'Select payment status',
    searchPlaceholder: 'Search order number',
    allStatus: 'All Status',
    pending: 'Pending',
    paid: 'Paid',
    failed: 'Failed',
    cancelled: 'Cancelled',
    refunded: 'Refunded',
    paymentDetail: 'Payment Detail',
    externalTransactionId: 'External Transaction ID',
    updateTime: 'Update Time'
  },

  paymentCreate: {
    title: 'Create Payment',
    orderIdLabel: 'Order ID',
    orderIdPlaceholder: 'Enter order ID',
    amountLabel: 'Payment Amount',
    amountPlaceholder: 'Enter payment amount',
    currencyLabel: 'Currency',
    currencyPlaceholder: 'Select currency',
    currencyCNY: 'CNY (Chinese Yuan)',
    currencyUSD: 'USD (US Dollar)',
    paymentMethodLabel: 'Payment Method',
    descriptionLabel: 'Payment Description',
    descriptionPlaceholder: 'Enter payment description',
    callbackUrlLabel: 'Callback URL',
    callbackUrlPlaceholder: 'Enter callback URL (optional)',
    returnUrlLabel: 'Return URL',
    returnUrlPlaceholder: 'Enter return URL (optional)',
    createButton: 'Create Payment',
    creating: 'Creating...',
    alipayDesc: 'Supports Alipay QR code and web payment'
  },

  orderCreate: {
    title: 'Create Order',
    orderTypeLabel: 'Order Type',
    orderTypePlaceholder: 'Select order type',
    orderTypeProduct: 'Virtual Product',
    orderTypeService: 'AI Service',
    orderTypeSubscription: 'AI Subscription',
    orderTypeHint: 'Select the type of virtual product you want to purchase: AI Service (e.g., AI Painting, AI Writing), AI Subscription (monthly/yearly), Digital Product (e.g., software, e-books), Virtual Product (e.g., game items, virtual currency)',
    currencyLabel: 'Currency',
    currencyPlaceholder: 'Select currency',
    currencyCNY: 'CNY (Chinese Yuan)',
    currencyUSD: 'USD (US Dollar)',
    currencyHint: 'Select payment currency type, the system will bill and settle according to your selected currency',
    descriptionLabel: 'Order Description',
    descriptionPlaceholder: 'Please describe your order requirements in detail, e.g.: AI painting service, anime style, 1024x1024 pixels',
    descriptionHint: 'Describe your order requirements in detail, including service requirements, special needs, etc., which will help the service provider better understand your needs',
    contactEmailLabel: 'Contact Email',
    contactEmailPlaceholder: 'Enter contact email (for receiving virtual products)',
    contactEmailHint: 'Required! Virtual products will be sent to this email, please ensure the email address is correct and can receive emails normally',
    contactPhoneLabel: 'Contact Phone',
    contactPhonePlaceholder: 'Enter contact phone (optional)',
    contactPhoneHint: 'Optional, for emergency contact or important notifications, recommended to fill in so the service provider can contact you when needed',
    shippingAddressLabel: 'Shipping Address',
    shippingAddressPlaceholder: 'Enter shipping address',
    billingAddressLabel: 'Billing Address',
    billingAddressPlaceholder: 'Enter billing address',
    virtualProductsLabel: 'Virtual Products',
    virtualProductsHint: 'Add the virtual products you want to purchase, including product name, unit price and quantity. Multiple products are supported.',
    productNamePlaceholder: 'Product name (e.g.: AI Painting Service, AI Writing Assistant, AI Translation Service)',
    unitPricePlaceholder: 'Unit Price',
    quantityPlaceholder: 'Quantity',
    subtotalPlaceholder: 'Subtotal',
    addProduct: 'Add Product',
    totalAmount: 'Total Amount',
    createButton: 'Create Order',
    creating: 'Creating...'
  },

  imageToVideoDetail: {
    title: 'Image to Video Detail',
    detailInputPlaceholder: 'Enter details'
  },

  paymentModal: {
    alipayDesc: 'Secure and convenient online payment',
    alipayHint: 'Click the button below to complete payment via Alipay',
    goToAlipay: 'Go to Alipay',
    paypalDesc: 'Secure and convenient international payment',
    paypalHint: 'Click the button below to complete payment via PayPal',
    goToPaypal: 'Go to PayPal',
    redirecting: 'Redirecting...',
    serviceTerms: 'Vionow Payment Terms of Service'
  },

  systemSettings: {
    title: 'System Settings',
    membership: 'Membership Pricing',
    cleanup: 'Task Cleanup',
    membershipLevels: 'Membership Levels',
    editLevel: 'Edit Level',
    price: 'Price',
    description: 'Description',
    cleanupStats: 'Cleanup Statistics',
    manualCleanup: 'Manual Cleanup',
    autoCleanup: 'Auto Cleanup',
    perMonth: '/month',
    includesPoints: 'Includes {points} points/month',
    cleanupStatsInfo: 'Cleanup Statistics',
    refresh: 'Refresh',
    currentTotalTasks: 'Current Total Tasks',
    completedTasks: 'Completed Tasks',
    failedTasks: 'Failed Tasks',
    archivedTasks: 'Archived Tasks',
    cleanupLogsCount: 'Cleanup Logs',
    retentionDays: 'Retention Days',
    days: 'days',
    cleanupActions: 'Cleanup Actions',
    performFullCleanup: 'Perform Full Cleanup',
    cleanupUserTasks: 'Cleanup User Tasks',
    fullCleanupDesc: 'Full Cleanup',
    fullCleanupDescDetail: 'Export successful tasks to archive, delete failed tasks',
    userCleanupDesc: 'User Cleanup',
    userCleanupDescDetail: 'Cleanup all tasks for specified user',
    cleanupConfig: 'Cleanup Configuration',
    taskRetentionDays: 'Task Retention Days',
    taskRetentionTip: 'Days to retain completed tasks',
    archiveRetentionDays: 'Archive Retention Days',
    archiveRetentionTip: 'Days to retain archived data',
    membershipLevel: 'Membership Level',
    selectLevelPlaceholder: 'Select membership level',
    freeMembership: 'Free Membership',
    starterMembership: 'Starter Membership',
    standardMembership: 'Standard Membership',
    professionalMembership: 'Professional Membership',
    membershipPrice: 'Membership Price',
    resourcePointsAmount: 'Resource Points',
    validityPeriod: 'Validity Period',
    monthly: 'Monthly',
    quarterly: 'Quarterly',
    yearly: 'Yearly',
    oneYear: '1 Year',
    twoYears: '2 Years',
    threeYears: '3 Years',
    permanent: 'Permanent',
    customDays: 'Custom Days',
    enterDays: 'Enter number of days',
    enterValidDays: 'Please enter a valid number of days',
    daysCount: '{days} Days',
    enterUsername: 'Enter username to cleanup',
    warning: 'Warning',
    cleanupWarning: 'This operation will cleanup all tasks for this user, including:',
    successTasksArchived: 'Successful tasks will be exported to archive',
    failedTasksLogged: 'Failed tasks will be logged to cleanup logs',
    originalTasksDeleted: 'Original task records will be deleted',
    irreversibleWarning: 'This operation is irreversible, please proceed with caution!',
    confirmCleanup: 'Confirm Cleanup',
    selectLevelRequired: 'Please select membership level',
    enterPriceRequired: 'Please enter price',
    enterValidNumber: 'Please enter a valid number',
    enterResourcePointsRequired: 'Please enter resource points',
    selectValidityRequired: 'Please select validity period',
    enterUsernameRequired: 'Please enter username',
    usernameLengthLimit: 'Username must be 2-50 characters',
    membershipUpdateSuccess: 'Membership level updated successfully',
    membershipUpdateFailed: 'Failed to update membership level',
    loadMembershipFailed: 'Failed to load membership configuration',
    usingDefaultConfig: 'Using default configuration',
    statsRefreshSuccess: 'Statistics refreshed successfully',
    statsRefreshFailed: 'Failed to get statistics',
    fullCleanupSuccess: 'Full cleanup executed successfully',
    fullCleanupFailed: 'Failed to execute full cleanup',
    userCleanupSuccess: 'User tasks cleaned up successfully',
    userCleanupFailed: 'Failed to cleanup user tasks',
    configSaveSuccess: 'Cleanup configuration saved successfully',
    configSaveFailed: 'Failed to save cleanup configuration',
    aiModelSaveSuccess: 'AI model settings saved successfully',
    aiModelSaveFailed: 'Failed to save AI model settings',
    aiModelLoadFailed: 'Failed to load AI model settings',
    includesPointsPerMonth: 'Includes {points} points/month',
    unknown: 'Unknown',
    aiModel: 'AI Model Settings',
    promptOptimization: 'Prompt Optimization Settings',
    promptOptimizationModel: 'Model Name',
    promptOptimizationModelTip: 'Enter the model name for prompt optimization, e.g., gpt-4o, gemini-pro',
    storyboardSystemPrompt: 'Storyboard System Prompt',
    storyboardSystemPromptTip: 'This prompt will be prepended to user prompts for consistent storyboard generation style',
    storyboardSystemPromptPlaceholder: 'E.g., high quality cinematic shot, professional photography, film tone...',
    pointsCostTitle: 'Resource Points Configuration',
    pointsCostDesc: 'Configure the resource points consumed per generation task for each service. Changes take effect immediately.',
    textToVideoTitle: 'Text to Video',
    textToVideoDesc: 'Generate videos from text descriptions',
    imageToVideoTitle: 'Image to Video',
    imageToVideoDesc: 'Generate videos from images',
    storyboardImageTitle: 'Storyboard Generation',
    storyboardImageDesc: 'AI generates multi-scene storyboards',
    storyboardVideoTitle: 'Storyboard Video',
    storyboardVideoDesc: 'Synthesize videos from storyboards',
    pointsUnit: 'pts/time',
    savePointsConfig: 'Save Configuration',
    pointsCostSaveSuccess: 'Resource points configuration saved successfully',
    pointsCostSaveFailed: 'Failed to save resource points configuration'
  },

  taskMonitor: {
    title: 'Task Status Monitor',
    refreshing: 'Refreshing...',
    refreshAll: 'Refresh All',
    manualPolling: 'Manual Polling',
    pending: 'Pending',
    processing: 'Processing',
    completed: 'Completed',
    failed: 'Failed',
    taskList: 'Task List',
    allStatus: 'All Status',
    cancelled: 'Cancelled',
    timeout: 'Timeout',
    viewResult: 'View Result',
    retry: 'Retry',
    noTasks: 'No Tasks',
    taskStatus: 'Task Status',
    queuing: 'Queuing...',
    taskId: 'Task ID',
    createTime: 'Created At',
    completeTime: 'Completed At',
    resultUrl: 'Result URL',
    errorMessage: 'Error Message',
    unknown: 'Unknown'
  },

  chartLabels: {
    avgDailyActive: 'Avg DAU',
    maxDailyActive: 'Max DAU',
    minDailyActive: 'Min DAU',
    dailyActiveUsers: 'Daily Active Users'
  },

  paymentStatus: {
    pending: 'Pending - Waiting for payment',
    processing: 'Processing - Alipay is processing payment',
    success: 'Payment Successful',
    completed: 'Payment Completed',
    failed: 'Payment Failed',
    cancelled: 'Cancelled',
    refunded: 'Refunded'
  },

  orderStatus: {
    pending: 'Pending',
    confirmed: 'Confirmed',
    paid: 'Paid',
    processing: 'Processing',
    shipped: 'Shipped',
    delivered: 'Delivered',
    completed: 'Completed',
    cancelled: 'Cancelled',
    refunded: 'Refunded'
  },

  orderType: {
    product: 'Product Order',
    service: 'Service Order',
    subscription: 'Subscription Order',
    digital: 'Digital Product',
    physical: 'Physical Product'
  },

  footer: {
    aboutUs: 'About Us',
    contactUs: 'Contact Us',
    privacyPolicy: 'Privacy Policy',
    termsOfService: 'Terms of Service'
  },

  welcomePage: {
    brandTagline: 'AI-Powered Video Creation Platform',
    brandDesc: 'Transform your imagination into videos',
    welcomeTo: 'Welcome to',
    emailLogin: 'Email Login',
    accountLogin: 'Account Login',
    pleaseEnterEmail: 'Please enter email address',
    invalidEmail: 'Please enter a valid email address',
    pleaseEnterCode: 'Please enter verification code',
    invalidCode: 'Invalid code format, please enter 6 digits',
    pleaseEnterPassword: 'Please enter password',
    passwordMinLength: 'Password must be at least 6 characters'
  },

  imageDetail: {
    files: 'Files',
    images: 'Images',
    videos: 'Videos',
    browserNotSupport: 'Your browser does not support video playback',
    imageDetail: 'Image Details',
    createTime: 'Created At',
    videoId: 'Video ID',
    duration: 'Duration',
    quality: 'Quality',
    aspectRatio: 'Aspect Ratio',
    createSimilar: 'Create Similar'
  },

  langSwitcher: {
    switchToEn: 'Switch to English',
    switchToZh: 'Switch to Chinese'
  }
}
