{
  "@@locale": "en",

  "appTitle": "iAgent",
  "appSubtitle": "Server Cluster Operations AI Agent",

  "navHome": "Home",
  "navMyAgents": "My Agents",
  "navBilling": "Billing",
  "navProfile": "Me",

  "cancelButton": "Cancel",
  "confirmButton": "Confirm",
  "saveButton": "Save",
  "retryButton": "Retry",
  "loadingLabel": "Loading...",
  "unknownLabel": "Unknown",
  "unnamedLabel": "Unnamed",

  "homeGreeting": "{greeting}, {name}",
  "@homeGreeting": {
    "placeholders": {
      "greeting": { "type": "String" },
      "name": { "type": "String" }
    }
  },
  "homeSubtitle": "iAgent is always here for you",
  "greetingEarlyMorning": "Good morning",
  "greetingNoon": "Good noon",
  "greetingAfternoon": "Good afternoon",
  "greetingEvening": "Good evening",
  "greetingLateNight": "Late night",

  "agentStatusIdle": "Idle",
  "agentStatusThinking": "Thinking...",
  "agentStatusExecuting": "Executing...",
  "agentStatusAwaitingApproval": "Awaiting approval",
  "agentStatusError": "Error occurred",

  "officialAgentsSection": "IT0 Official Agents",
  "myAgentsSection": "My Agents",
  "officialBadge": "Official",
  "officialAgent1Name": "iAgent Ops Assistant",
  "officialAgent1Desc": "Server management, SSH execution, log analysis",
  "officialAgent2Name": "Security Audit Assistant",
  "officialAgent2Desc": "Vulnerability scanning, permission review, compliance",
  "officialAgent3Name": "Database Inspector",
  "officialAgent3Desc": "Slow query analysis, index optimization, backup verification",
  "officialAgent4Name": "Office Assistant",
  "officialAgent4Desc": "Draft emails, summarize docs, schedule meetings, manage tasks",
  "officialAgent5Name": "Customer Service Bot",
  "officialAgent5Desc": "24/7 auto-reply, FAQ handling, order & complaint routing",
  "officialAgent6Name": "Marketing Assistant",
  "officialAgent6Desc": "Copywriting, social media posts, campaign ideas, ad scripts",
  "officialAgent7Name": "Language Tutor",
  "officialAgent7Desc": "Conversation practice, grammar correction, vocabulary building",

  "noOwnAgentsTitle": "No agents yet",
  "noOwnAgentsDesc": "Tap the robot button below and tell iAgent:\n\"Recruit an OpenClaw agent for me\"",
  "quickTipsHeader": "You can say...",
  "quickTip1": "💬 \"Recruit an agent to monitor GitHub Actions\"",
  "quickTip2": "🔧 \"Export my OpenClaw config as JSON\"",
  "quickTip3": "📊 \"Analyze server load for the past 7 days\"",
  "quickTip4": "🛡️ \"Set up automatic database backup at 2AM daily\"",

  "myAgentsTitle": "My Agents",
  "myAgentsEmptyTitle": "Recruit your own agent",
  "myAgentsEmptyDesc": "Chat with iAgent to recruit various agents:\nOpenClaw coding assistant, ops bot, data analyst...",
  "myAgentsStep1Title": "Tap the robot button",
  "myAgentsStep1Desc": "Open a conversation with iAgent",
  "myAgentsStep2Title": "Describe the agent you want",
  "myAgentsStep2Desc": "e.g. \"Recruit an OpenClaw coding assistant for me\"",
  "myAgentsStep3Title": "iAgent auto-deploys",
  "myAgentsStep3Desc": "It appears here after deployment. Chat via Telegram/WhatsApp.",
  "myAgentsTemplatesHeader": "Popular templates (tell iAgent which one you want)",

  "summaryTotal": "Total {count}",
  "@summaryTotal": {
    "placeholders": { "count": { "type": "int" } }
  },
  "summaryRunning": "Running {count}",
  "@summaryRunning": {
    "placeholders": { "count": { "type": "int" } }
  },
  "summaryStopped": "Stopped {count}",
  "@summaryStopped": {
    "placeholders": { "count": { "type": "int" } }
  },

  "statusRunning": "Running",
  "statusDeploying": "Deploying",
  "statusStopped": "Stopped",
  "statusError": "Error",

  "dismissTitle": "Dismiss Agent",
  "dismissConfirmContent": "Confirm dismissal of \"{name}\"?\n\nThe agent container will be stopped and deleted. This cannot be undone.",
  "@dismissConfirmContent": {
    "placeholders": { "name": { "type": "String" } }
  },
  "dismissButton": "Dismiss",
  "renameButton": "Rename",
  "renameTitle": "Rename",
  "renameHint": "Enter new name",
  "dismissSuccessMessage": "Dismissed \"{name}\"",
  "@dismissSuccessMessage": {
    "placeholders": { "name": { "type": "String" } }
  },
  "dismissErrorMessage": "Dismiss failed: {error}",
  "@dismissErrorMessage": {
    "placeholders": { "error": { "type": "String" } }
  },
  "renameSuccessMessage": "Renamed successfully",
  "renameErrorMessage": "Rename failed: {error}",
  "@renameErrorMessage": {
    "placeholders": { "error": { "type": "String" } }
  },

  "loginPasswordTab": "Password",
  "loginOtpTab": "OTP",
  "emailLabel": "Email",
  "emailHint": "user@example.com",
  "emailRequiredError": "Please enter email",
  "invalidEmailError": "Please enter a valid email",
  "passwordLabel": "Password",
  "passwordRequiredError": "Please enter password",
  "phoneLabel": "Phone",
  "phoneHint": "+1 234 567 8900",
  "phoneRequiredError": "Please enter phone number",
  "otpLabel": "OTP",
  "otpHint": "6-digit code",
  "otpRequiredError": "Please enter OTP",
  "sendingLabel": "Sending",
  "getOtpButton": "Get OTP",
  "enterPhoneFirstError": "Please enter phone number first",
  "loginButton": "Login",
  "accountCreationNote": "Accounts are created by admin or via invitation link",

  "chatNewConversationTooltip": "New conversation",
  "chatStopTooltip": "Stop",
  "chatVoiceCallTooltip": "Voice call",
  "chatSelectFromAlbum": "Select from album",
  "chatMultiSelectSupport": "Multi-select supported",
  "chatTakePhoto": "Take photo",
  "chatSelectFile": "Select file",
  "chatImagesPdfLabel": "Images, PDF",
  "chatThinkingLabel": "Thinking...",
  "chatNeedsApprovalLabel": "Needs approval",
  "chatExecutionFailedLabel": "Execution failed",
  "chatExecutionResultLabel": "Execution result",
  "chatStandingOrderDraftLabel": "Standing order draft",
  "chatProcessingLabel": "Processing...",
  "chatReplyingLabel": "Replying...",
  "chatReplyLabel": "Reply",
  "chatStartConversationPrompt": "Start chatting with iAgent",
  "chatInputInstructionHint": "Enter command or make a voice call",
  "chatAdditionalInstructionHint": "Additional instruction...",
  "chatInstructionHint": "Enter instruction...",
  "chatAddImageTooltip": "Add image",
  "chatInjectionTooltip": "Inject instruction",
  "chatCollapseLabel": "Collapse",
  "chatExpandLabel": "Expand ({lineCount} lines)",
  "@chatExpandLabel": {
    "placeholders": { "lineCount": { "type": "int" } }
  },
  "chatRecognizingLabel": "Recognizing…",
  "chatSpeechRecognitionError": "Speech recognition failed, please retry",
  "chatTargetsLabel": "Targets: ",

  "agentCallVoiceCallTitle": "Voice Call",
  "agentCallRingingStatus": "iAgent Voice Call",
  "agentCallActiveStatus": "iAgent",
  "agentCallConnectingStatus": "Connecting...",
  "agentCallEndedStatus": "Call ended",
  "agentCallThinking": "Thinking...",

  "terminalTitle": "Remote Terminal",
  "terminalInitMessage": "iAgent Remote Terminal",
  "terminalSelectServerMessage": "Select a server and click Connect.",
  "terminalSelectServerFirst": "Please select a server first",
  "terminalConnectingMessage": "Connecting to server",
  "terminalConnectedLabel": "Connected",
  "terminalConnectingLabel": "Connecting...",
  "terminalDisconnectedLabel": "Disconnected",
  "terminalSelectServerHint": "Select server...",
  "terminalNoAvailableServers": "No servers available",
  "terminalLoadServersError": "Failed to load servers",
  "terminalConnectButton": "Connect",
  "terminalDisconnectButton": "Disconnect",
  "terminalDisconnectMessage": "Disconnected",

  "tasksPageTitle": "Tasks",
  "opsTasksTab": "Ops Tasks",
  "standingOrdersTab": "Standing Orders",
  "noTasksTitle": "No tasks",
  "createNewTaskHint": "Tap + to create a new task",
  "noStandingOrdersTitle": "No standing orders",
  "standingOrdersHint": "Chat with iAgent to add standing orders",
  "createTaskTitle": "New Task",
  "taskTitleLabel": "Title",
  "taskTitleHint": "e.g. Restart nginx on web-01",
  "taskDescriptionLabel": "Description",
  "taskDescriptionHint": "Optional details...",
  "taskPriorityLabel": "Priority",
  "taskServerOptionalLabel": "Server (optional)",
  "taskNoServerSelection": "Any",
  "createTaskButton": "Create Task",
  "createTaskError": "Failed to create task: {error}",
  "@createTaskError": {
    "placeholders": { "error": { "type": "String" } }
  },

  "notificationInboxTitle": "Inbox",
  "notificationMarkAllRead": "Mark all read",
  "notificationLoadingFailed": "Failed to load",
  "noMessagesTitle": "No messages",
  "operationFailedError": "Operation failed, please retry",
  "linkLabel": "Link: ",

  "notificationPreferencesTitle": "Notification Preferences",
  "noNotificationChannels": "No configurable notification channels",
  "notificationPreferencesInfo": "Choose which notifications to receive. Mandatory notifications (e.g. security alerts) cannot be disabled.",
  "mandatoryNotificationsSection": "Mandatory notifications",
  "optionalNotificationsSection": "Optional notifications",
  "savePreferencesButton": "Save preferences",
  "requiredLabel": "Required",
  "preferencesSavedMessage": "Preferences saved",
  "saveFailedMessage": "Save failed: {error}",
  "@saveFailedMessage": {
    "placeholders": { "error": { "type": "String" } }
  },

  "referralScreenTitle": "Refer & Earn",
  "yourReferralCodeLabel": "Your referral code",
  "copyReferralCodeTooltip": "Copy referral code",
  "copyInviteLinkButton": "Copy invite link",
  "shareButton": "Share",
  "copiedToClipboard": "Copied to clipboard",
  "referralRecordsSection": "Referral records",
  "viewAllReferralsLink": "View all >",
  "pendingRewardsSection": "Pending credits",
  "viewAllRewardsLink": "View all >",
  "referredLabel": "Referred",
  "peopleUnit": " people",
  "activatedLabel": "Activated",
  "pendingCreditsLabel": "Pending credits",
  "rewardRulesTitle": "Reward rules",
  "proReferralReward": "Refer Pro plan: you get USD15, they get USD5",
  "enterpriseReferralReward": "Refer Enterprise plan: you get USD50, they get USD20",
  "renewalBonusReward": "Earn 10% of their monthly payments for up to 12 months",
  "creditDeductionNote": "Credits automatically applied to your next invoice",
  "noReferralsMessage": "No referrals yet. Share your code!",
  "pendingPaymentStatus": "Pending",
  "activeStatus": "Active",
  "rewardedStatus": "Rewarded",
  "expiredStatus": "Expired",
  "registeredAt": "Registered",
  "noPendingRewardsMessage": "No pending credits",
  "noReferralRecordsMessage": "No referral records",
  "noRewardRecordsMessage": "No reward records",
  "pendingDeductionStatus": "Pending deduction",

  "billingTitle": "Subscription & Usage",
  "upgradeButton": "Upgrade",
  "upgradeDialogTitle": "Upgrade Plan",
  "upgradeDialogMessage": "Go to Web Admin → Billing → Plans to complete the upgrade.",
  "acknowledgeButton": "Got it",
  "currentPlanLabel": "Current plan",
  "periodEndLabel": "Period ends: ",
  "tokenUsageLabel": "Token usage this month",
  "unlimitedLabel": "Unlimited",
  "billingStatusActive": "Active",
  "billingStatusTrialing": "Trial",
  "billingStatusPastDue": "Past due",
  "billingStatusCancelled": "Cancelled",
  "billingStatusExpired": "Expired",
  "invoicePaidStatus": "Paid",
  "invoiceUnpaidStatus": "Unpaid",

  "serversPageTitle": "Servers",
  "noServersTitle": "No servers found",
  "noServersFiltered": "No servers match the current filter",
  "allEnvironments": "All",
  "ipAddressLabel": "IP Address",
  "osLabel": "OS",
  "cpuLabel": "CPU",
  "memoryLabel": "Memory",
  "regionLabel": "Region",
  "cloudProviderLabel": "Cloud provider",
  "createdAtLabel": "Created at",

  "standingOrdersPageTitle": "Standing Orders",
  "standingOrdersEmptyHint": "Standing orders will appear here after configuration",
  "executionHistoryLabel": "Execution history ({count})",
  "@executionHistoryLabel": {
    "placeholders": { "count": { "type": "int" } }
  },
  "unnamedOrderName": "Unnamed order",
  "neverExecuted": "Never executed",
  "updateStatusError": "Failed to update status: {error}",
  "@updateStatusError": {
    "placeholders": { "error": { "type": "String" } }
  },

  "settingsPageTitle": "Settings",
  "appearanceThemeLabel": "Appearance",
  "languageLabel": "Language",
  "languageZh": "简体中文",
  "languageZhTW": "繁體中文",
  "languageEn": "English",
  "languageAuto": "Auto (System)",
  "referralTabTenant": "Enterprise",
  "referralTabPersonal": "My Circle",
  "loadFailed": "Load failed",
  "myPersonalInviteCode": "My personal invite code",
  "pointsBalanceTitle": "Points Balance",
  "currentBalanceLabel": "Balance",
  "circleMembersCountLabel": "Members",
  "totalEarnedLabel": "Total Earned",
  "circleRewardRulesTitle": "Circle Reward Rules",
  "circleRule1": "New member joins your circle: both get 200 pts welcome gift",
  "circleRule2": "Member subscribes Pro: you get 1500 pts, they get 500 pts",
  "circleRule3": "Member subscribes Enterprise: you get 5000 pts, they get 2000 pts",
  "circleRule4": "Earn 10% of their monthly payments for up to 12 months",
  "circleRule5": "L2 circle renewals earn you 5% for up to 6 months",
  "circleRule6": "Redeem points for usage quota or agent unlocks",
  "myCircleMembersSection": "My Circle Members",
  "pointsHistorySection": "Points History",
  "noCircleMembersMessage": "No circle members yet. Invite friends!",
  "noPointsHistoryMessage": "No points history",
  "activatedStatus": "Activated",
  "joinedAtLabel": "Joined",
  "viewAllButton": "View all",
  "rewardHistoryPageTitle": "Reward History",
  "noRewardsHistoryMessage": "No rewards yet",
  "creditDeductionReward": "Credits auto-deducted from your next bill",
  "selectLanguageTitle": "Select Language",
  "pushNotificationsLabel": "Push notifications",
  "soundLabel": "Sound",
  "hapticFeedbackLabel": "Haptic feedback",
  "conversationEngineLabel": "AI engine",
  "ttsVoiceLabel": "Voice",
  "ttsStyleLabel": "Voice style",
  "subscriptionLabel": "Subscription & Usage",
  "changePasswordLabel": "Change password",
  "versionLabel": "Version",
  "checkUpdateLabel": "Check for updates",
  "tenantLabel": "Tenant",
  "logoutButton": "Log out",

  "selectThemeTitle": "Select Theme",
  "darkModeLabel": "Dark",
  "lightModeLabel": "Light",
  "followSystemLabel": "System",

  "selectVoiceTitle": "Select Voice",
  "voiceCoralDesc": "Female · Warm",
  "voiceNovaDesc": "Female · Lively",
  "voiceSageDesc": "Female · Intellectual",
  "voiceShimmerDesc": "Female · Soft",
  "voiceMarinDesc": "Female · Clear",
  "voiceAshDesc": "Male · Steady",
  "voiceEchoDesc": "Male · Bright",
  "voiceOnyxDesc": "Male · Deep",
  "voiceVerseDesc": "Male · Magnetic",
  "voiceBalladDesc": "Male · Rich",
  "voiceCedarDesc": "Male · Natural",
  "voiceAlloyDesc": "Neutral",
  "voiceFableDesc": "Neutral · Narrative",

  "selectEngineTitle": "Select AI Engine",
  "agentSdkDesc": "Supports tool approval, skill injection, session restore",
  "claudeApiDesc": "Direct API, faster response",

  "selectStyleTitle": "Select Voice Style",
  "defaultStyleLabel": "Default",
  "customStyleLabel": "Custom style",
  "customStyleHint": "e.g. Speak like a pirate, with humor",
  "resetToDefaultButton": "Reset to default",
  "styleProfessionalName": "Professional",
  "styleProfessionalDesc": "Speak in a professional, concise, and efficient tone.",
  "styleGentleName": "Gentle & Patient",
  "styleGentleDesc": "Speak in a warm and patient tone, like a caring friend.",
  "styleRelaxedName": "Relaxed & Lively",
  "styleRelaxedDesc": "Speak in a relaxed, lively tone with a bit of humor.",
  "styleFormalName": "Formal",
  "styleFormalDesc": "Speak in a serious, formal tone, like in a business meeting.",
  "styleScifiName": "Sci-Fi AI",
  "styleScifiDesc": "Speak like an AI in a sci-fi movie — calm, rational, futuristic.",

  "editNameDialogTitle": "Edit Display Name",
  "displayNameLabel": "Display name",
  "displayNameHint": "Enter new display name",
  "changePasswordTitle": "Change Password",
  "currentPasswordLabel": "Current password",
  "newPasswordLabel": "New password",
  "confirmPasswordLabel": "Confirm new password",
  "passwordMismatchError": "Passwords do not match",
  "passwordMinLengthError": "New password must be at least 6 characters",
  "confirmChangeButton": "Confirm",
  "passwordChangedMessage": "Password changed",
  "nameUpdatedMessage": "Name updated",
  "updateFailedMessage": "Update failed",
  "changeFailedMessage": "Change failed",
  "logoutDialogTitle": "Log out",
  "logoutConfirmMessage": "Are you sure you want to log out?",
  "logoutConfirmButton": "Log out",

  "profileSubscriptionLabel": "Subscription & Usage",
  "profileFreePlanLabel": "Free",
  "profileReferralLabel": "Refer & Earn",
  "profileReferralHint": "Earn credits by referring",
  "profileInSiteMessagesLabel": "Inbox",
  "profileViewMessagesLabel": "View messages",

  "errorNetworkError": "Cannot connect to server, check your network",
  "errorDataFormat": "Invalid data format",
  "errorUnknown": "Unknown error occurred",
  "errorConnectionTimeout": "Connection timed out",
  "errorSendTimeout": "Request timed out, check your network",
  "errorReceiveTimeout": "Response timed out, please retry",
  "errorBadCertificate": "SSL certificate verification failed",
  "errorRequestCancelled": "Request cancelled",
  "errorBadRequest": "Invalid request parameters",
  "errorPermissionDenied": "Permission denied",
  "errorNotFound": "Resource not found",
  "errorConflict": "Data conflict, please refresh",
  "errorInvalidData": "Invalid data submitted",
  "errorTooManyRequests": "Too many requests, please slow down",
  "errorInternalServer": "Server error, please retry",
  "errorBadGateway": "Gateway error, please retry",
  "errorServiceUnavailable": "Service unavailable, please retry",
  "errorConnectionReset": "Connection reset, please retry",
  "errorConnectionRefused": "Connection refused, check if service is running",
  "errorConnectionClosed": "Connection closed, please retry",
  "errorSocketException": "Network error, check your connection",
  "errorTlsException": "Secure connection failed, check your network",
  "errorNetworkRequestFailed": "Network request failed, check your connection",

  "defaultUserName": "User",
  "agentInConversation": "In conversation · {count} messages",
  "@agentInConversation": {
    "placeholders": {
      "count": { "type": "int" }
    }
  }
}
