{
  "auctions": "Auctions",
  "auction": "Auction",
  "auctionInfo": "Auction Information",
  "productInfo": "Product Information",
  "auctionDetails": "Auction Details",
  "auctionNumber": "Auction Number",
  "productName": "Product Name",
  "auctionName": "Auction Name",
  "productHeight": "Product height",
  "productWidth": "Product width",
  "productLength": "Product length",
  "productWeight": "Product weight",
  "productHeightInvalid": "Invalid product height.",
  "productWidthInvalid": "Invalid product width.",
  "productLengthInvalid": "Invalid product length.",
  "productWeightInvalid": "Invalid product weight.",
  "seller": "Seller",
  "sellerInfo": "Seller Information",
  "subDepartment": "Sub Department",
  "region": "Region",
  "city": "City",
  "cityInvalid": "Invalid city.",
  "cityAr": "City (Arabic)",
  "cityEn": "City (English)",
  "cityArInvalid": "Invalid Arabic city name.",
  "cityEnInvalid": "Invalid English city name.",
  "cityArLength": "Arabic city name must be between 2 and 200 characters.",
  "cityEnLength": "English city name must be between 2 and 200 characters.",
  "addressAr": "Address in Arabic",
  "addressEn": "Address in English",
  "addressArInvalid": "Invalid Arabic address.",
  "addressEnInvalid": "Invalid English address.",
  "addressArLength": "Arabic address must be between 3 and 500 characters.",
  "addressEnLength": "English address must be between 3 and 500 characters.",
  "latitude": "Latitude",
  "longitude": "Longitude",
  "latitudeInvalid": "Invalid latitude (must be between -90 and 90).",
  "longitudeInvalid": "Invalid longitude (must be between -180 and 180).",
  "location": "Location",
  "locationInvalid": "Invalid location.",
  "locationCoordinatesInvalid": "Invalid location coordinates. Must be an array of two numbers [longitude, latitude].",
  "status": "Status",
  "approvalStatus": "Approval Status",
  "upcoming": "Upcoming",
  "current": "Current",
  "finished": "Finished",
  "cancelled": "Cancelled",
  "wait": "Waiting",
  "accept": "Accepted",
  "reject": "Rejected",
  "startAt": "Starts At",
  "endAt": "Ends At",
  "startAtInvalid": "Invalid start date.",
  "endAtInvalid": "Invalid end date.",
  "invalidDateFormat": "Invalid auction start or end date format.",
  "endAtBeforeStartAt": "End date must be after start date.",
  "datetimeSplitHint": "Pick the date and time in two fields. Numbers run left‑to‑right (year‑month‑day) so the value is easier to read.",
  "datePart": "Date",
  "timePart": "Time",
  "initialBidValue": "Initial Bid Value",
  "initialBidValueInvalid": "Invalid initial bid value.",
  "minimumBidValue": "Minimum Bid Value",
  "minimumBidValueInvalid": "Invalid minimum bid value.",
  "depositAmount": "Deposit Amount",
  "depositAmountInvalid": "Invalid deposit amount.",
  "requiredAmount": "Required Amount",
  "currentPrice": "Current Price",
  "totalBids": "Total Bids",
  "description": "Description",
  "descriptionInvalid": "Invalid description.",
  "specialConditions": "Special Conditions",
  "specialConditionsInvalid": "Invalid special conditions.",
  "images": "Images",
  "isLive": "Is live",
  "isLiveInvalid": "Invalid live status.",
  "assignedHaraj": "Assigned Haraj",
  "assignedHarajInfo": "Assigned Haraj Information",
  "selectedHaraj": "Selected Haraj",
  "selectedHarajInfo": "Selected Haraj Information",
  "selectedHarajRequired": "Selected haraj is required when the auction is live.",
  "harajCommissionPercentage": "Haraj commission percentage",
  "harajCommissionPercentageInvalid": "Invalid haraj commission percentage.",
  "appCommissionRule": "Auction app commission rule",
  "appCommission": "App commission due",
  "appCommissionPending": "Calculated after winner payment",
  "vatPrice": "VAT amount",
  "vatPricePending": "Calculated after winner payment",
  "harajListSuccess": "Haraj list retrieved successfully",
  "winner": "Winner",
  "winnerInfo": "Winner Information",
  "winnersQueueTitle": "Winner queue (payment order)",
  "queueRank": "Rank",
  "winnerPositionLabel": "Current slot index in queue",
  "paymentLineStatus": "Payment status (winner slot)",
  "currentTurnBadge": "Current turn",
  "failedPaymentBadge": "Did not pay",
  "auctionPaymentOverview": "Auction payment status",
  "finalWinnerSection": "Final winner (payment completed)",
  "awaitingPaymentFrom": "Currently responsible for payment",
  "ratingsSection": "Ratings",
  "winnerRatedSeller": "Winner's rating of the seller",
  "sellerRatedWinner": "Seller's rating of the winner",
  "notRatedYet": "Not rated yet",
  "noWinnersQueue": "No winner queue for this auction.",
  "reactivationAuctionsTitle": "Auctions re-listed after non-payment",
  "reactivatedFromTitle": "Original auction (re-list)",
  "paymentStatus_PENDING": "Pending",
  "paymentStatus_PAID": "Paid",
  "paymentStatus_UN_PAID": "Unpaid",
  "paymentStatus_REFUNDED": "Refunded",
  "winnerRetrieved": "Winner details retrieved successfully.",
  "winnerNotification": "Congratulations! You won the auction {{auctionName}} with a bid of {{winningPrice}}.",
  "winnerPaymentDeadlineNotification": "We hereby notify you of your win in auction {{auctionName}} for {{winningPrice}}. Payment must be completed before {{deadlineDate}}. In case of non-compliance, the win will be cancelled, the deposit will be forfeited, and the auction will be awarded to the next bidder.",
  "winnerPaymentReminderNotification": "Reminder to settle the dues of auction {{auctionName}}: the final payment date is {{deadlineDate}}. Failure to pay results in cancellation of the win, forfeiture of the deposit, and awarding the auction to the next bidder.",
  "winnerDepositForfeitedNotification": "Payment was not completed in time for auction {{auctionName}}, and the deposit ({{depositAmount}} SAR) has been deducted.",
  "paymentNotPaidDepositDeducted": "Payment was not made and the deposit has been deducted",
  "sellerWinnerNotification": "Auction #{{auctionNumber}} has ended with a final price of {{finalPrice}} SAR.",
  "noBidsNotification": "Your auction {{auctionName}} has ended without any bids.",
  "waitingQueueNotification": "You are now in the waiting queue for auction {{orderNumber}} (position {{total}}).",
  "winnerDidNotPayNotification": "Winner {{name}} did not complete payment for auction {{orderNumber}}. Next winner: {{clientName}}.",
  "winnerDidNotPayNotificationAndNoNextWinner": "Winner {{name}} did not complete payment for auction {{orderNumber}}. No next winner found for this auction.",
  "unWinnerDepositRefundedNotification": "Auction {{auctionName}} ended without you winning. Your deposit ({{depositAmount}} SAR) has been refunded to your wallet.",
  "noWinner": "No winner found for this auction.",
  "noBid": "No bid found.",
  "adminReason": "Admin Reason",
  "reason": "Reason",
  "reasonLabel": "Reason",
  "approve": "Approve",
  "approveAuction": "Approve Auction",
  "approveConfirm": "Are you sure you want to approve this auction?",
  "bidValuesHint": "Enter three bid values (each must be greater than {{min}}).",
  "bidValueLabel": "Bid value {{index}}",
  "bidValuePlaceholder": "Greater than {{min}}",
  "bidValueMustBeGreaterThanMin": "Each bid value must be greater than the minimum bid value.",
  "enterBidValue": "Enter bid value",
  "mustBeGreaterThan": "Must be greater than",
  "mustBeGreaterThanPrevious": "Must be greater than previous value",
  "rejectAuction": "Reject Auction",
  "cancelAuction": "Cancel Auction",
  "cancel": "Cancel",
  "waitCount": "Waiting",
  "upcomingCount": "Upcoming",
  "currentCount": "Current",
  "finishedCount": "Finished",
  "cancelledCount": "Cancelled",
  "needApproval": "Your auction has been submitted and is pending approval.",
  "listSuccess": "Auctions retrieved successfully.",
  "notFound": "Auction not found.",
  "notCurrentAuction": "This auction is not in the current state.",
  "notSelectedHaraj": "You are not the assigned haraj for this auction.",
  "alreadyLive": "This auction is already live.",
  "startedLive": "Live broadcast started successfully.",
  "auctionIdRequired": "Auction ID is required.",
  "auctionIdInvalid": "Invalid auction ID.",
  "detailsSuccess": "Auction details retrieved successfully.",
  "bidsListSuccess": "Bids retrieved successfully.",
  "liveCommentsListSuccess": "Live comments retrieved successfully.",
  "bidsListNotAllowed": "You cannot view the bids list for this auction.",
  "updateNotAllowed": "You cannot update this auction.",
  "cancelNotAllowed": "You cannot cancel this auction.",
  "deleted": "Auction has been deleted successfully.",
  "updated": "Auction has been updated successfully.",
  "deleteNotAllowed": "You cannot delete this auction.",
  "hasSubscribers": "You cannot delete this auction because it has subscribers.",
  "notFinished": "Auction has not finished yet.",
  "statusInvalid": "Invalid auction status.",
  "subscribeRequiredForClient": "The subscribe flag is required for client users.",
  "subscribedInvalid": "Invalid subscribe value.",
  "paymentUpdated": "Payment status updated successfully.",
  "paymentCompleted": "Payment completed for auction {{auctionName}} by winner {{winnerName}}.",
  "itemDelivered": "Item delivered for auction {{auctionName}}.",
  "deliveryConfirmed": "Delivery confirmed successfully.",
  "receiveConfirmAutoConfirmedWinner": "The window to confirm receipt of auction item {{auctionName}} expired without your confirmation, so receipt was confirmed automatically.",
  "receiveConfirmAutoConfirmedSeller": "The receiving-confirmation window for auction {{auctionName}} expired and receipt was confirmed automatically.",
  "paymentRequiredForDelivery": "Please complete payment before confirming delivery.",
  "address": "Address",
  "productDimensions": "Product Dimensions",
  "locationInfo": "Location Information",
  "liveAuctionSettings": "Live Auction Settings",
  "auctionSettings": "Auction Settings",
  "liveStatus": "Live Status",
  "subscribersCount": "Subscribers Count",
  "auctionPaymentDeadline": "Payment Deadline",
  "auctionBidIncrement": "Bid Increment",
  "broadcastFee": "Broadcast Fee",
  "harajRequestResponseTime": "Haraj Response Time",
  "nonSubscriberMaxViewers": "Max Non-Subscriber Viewers",
  "reactivationCount": "Reactivation Count",
  "maxReactivationCount": "Max Reactivation Count",
  "minutes": "Minutes",
  "hours": "Hours",
  "days": "Days",
  "cm": "cm",
  "kg": "kg",
  "sar": "SAR",
  "bidValue1GreaterThanMinimum": "Bid Value 1 must be greater than or equal to minimum bid value",
  "bidValue2GreaterThanBidValue1": "Bid Value 2 must be greater than Bid Value 1",
  "bidValue3GreaterThanBidValue2": "Bid Value 3 must be greater than Bid Value 2",
  "invalidBidValues": "Invalid bid values.",
  "bidValues": "Bid Values",
  "bidValuesNote": "Default bid values from settings. You can modify them if they don't fit the minimum bid value.",
  "mustBeGreaterThanMinimum": "Must be greater than or equal to minimum bid value",
  "noBidValuesSet": "No bid values set yet (will be set from settings upon approval)",
  "defaultValuesFromSettings": "The following default values are taken from system settings",
  "harajRequestNotification": "You have a request to manage the live auction: {{auctionName}}. Please accept or reject it within {{responseDuration}} at most (before {{deadlineDate}}), after which the request will be cancelled automatically.",
  "harajAutoAssignedNotification": "Haraj {{harajName}} has been automatically assigned to your auction {{auctionName}} after no response within the specified time.",
  "imagesRequired": "Images are required.",
  "startAtInThePast": "Start date cannot be in the past.",
  "harajRequestCreated": "Haraj request has been sent successfully.",
  "harajRequestAlreadySent": "A request to this haraj before.",
  "harajRequestOnlyForLive": "Haraj can only be requested for live auctions.",
  "invalidHarajForRequest": "Cannot send request to this haraj.",
  "live": "Live",
  "depositOnlyForUpcoming": "Deposit can only be paid for upcoming auctions.",
  "notApproved": "Auction is not approved yet.",
  "sellerCannotSubscribe": "Seller cannot subscribe to their own auction.",
  "alreadySubscribed": "You have already subscribed to this auction.",
  "alreadySubscribedSuccess": "You are already subscribed to this auction.",
  "invalidDepositAmount": "Invalid deposit amount.",
  "depositPaidSuccess": "Auction subscription deposit paid successfully.",
  "subscriptionPending": "Your auction subscription deposit is still pending confirmation.",
  "subscriptionHeldForReview": "Your auction deposit is held for review. Bidding is not allowed.",
  "subscriptionRefunded": "Your auction deposit was refunded. Bidding is not allowed.",
  "subscriptionNotAllowed": "You are not allowed to bid with the current subscription status.",
  "subscribeConflict": "Another subscription request is in progress. Please retry.",
  "subscribeNotOpen": "This auction is not open for subscription.",
  "subscribeFailed": "Could not complete auction subscription.",
  "subscriptionStatusInvalid": "Invalid subscription status filter.",
  "reportAlreadyPending": "You already have a pending report for this auction.",
  "reportSubmitted": "Your report was submitted.",
  "providerMissing": "This auction has no provider to chat with.",
  "cannotChatSelf": "You cannot start a conversation with yourself.",
  "directPurchaseNotSupported": "Direct purchase is not available for bidding auctions. Place bids via Socket.IO after paying the deposit.",
  "alreadySubmitted": "Auction is already submitted for review.",
  "submitNotAllowed": "This auction cannot be submitted for review in its current state.",
  "submittedForReview": "Auction submitted for review.",
  "providerCannotCancelLive": "Providers cannot cancel a live auction.",
  "priceSuggestionAdvisory": "Suggested price is advisory only and does not change the auction.",
  "auctionStartedNotification": "Your auction {{auctionName}} has started now!",
  "auctionEndingSoonNotification": "Auction {{auctionNumber}} is about to end. Only {{remainingPercentage}}% of the auction time is left.",
  "auctionReactivatedNotification": "Your auction {{originalAuctionNumber}} has been automatically reactivated with number {{newAuctionNumber}}.",
  "noHarajReplyNotification": "The haraj did not respond to the auction request number {{auctionNumber}}.",
  "bidValue": "Bid Value",
  "paymentAlreadyCompleted": "Payment for this auction has already been completed.",
  "depositRefundedToClient": "{{depositAmount}} SAR from your auction deposit has been added to your wallet. The winner completed payment for {{auctionName}}.",
  "auctionEnteredOwnerNotification": "{{bidderName}} entered auction #{{auctionNumber}}.",
  "newBidOwnerNotification": "New bid received: {{bidAmount}} SAR on Auction #{{auctionNumber}}.",
  "auctionWinnerForSubscriberNotification": "Auction #{{auctionNumber}} has ended. Winning price is {{winningPrice}}.",
  "auctionEndedWinnerNotification": "The auction has ended and the winner is {{winnerName}}.",
  "subscriptionRequiredForBid": "You must subscribe to the auction before placing a bid.",
  "youAreTheLastBidder": "You are the last bidder.",
  "auctionCancelledSubscriberNotify": "Auction {{auctionName}} (#{{auctionNumber}}) has been cancelled. Your deposit of {{depositAmount}} SAR has been refunded to your wallet.",
  "auctionRejectedSellerNotify": "Auction number {{auctionNumber}} has been rejected by the management. Reason: {{reason}}",
  "auctionApprovedSellerNotify": "Auction number {{auctionNumber}} has been approved by the management.",
  "update": "Auction is updated",
  "editOnlyUpcoming": "Auction can only be edited while it is upcoming.",
  "editAuctionSection": "Edit auction data",
  "editAuctionHint": "Editing is allowed only when the auction status is upcoming.",
  "editImagesHint": "Leave empty to keep current images. Uploading new images replaces all existing images.",
  "youAreNotTheWinner": "You are not the winner of this auction.",
  "paymentNotCompleted": "Payment for this auction has not been completed.",
  "approveOnlyWhileWaiting": "Approval is only allowed while the auction is waiting for review.",
  "rejectOnlyWhileWaiting": "Rejection is only allowed while the auction is waiting for review.",
  "cancelInvalidState": "This auction cannot be cancelled in its current state.",
  "reasonLength": "Reason must be between 2 and 500 characters.",
  "approveBlockedStartInPast": "Cannot approve: the auction start time has already passed or is invalid. Edit the auction and set a future start time.",
  "chat": "Auction Chat",
  "chatReadOnlyNotice": "You are viewing this chat as read-only. Sending messages is not allowed.",
  "chatLoadingOlder": "Loading older messages…",
  "chatConversationStart": "Start of conversation",
  "viewChat": "View Chat",
  "agoraNotConfigured": "Live streaming is temporarily unavailable. Please try again later.",
  "liveViewerLimitSubscribe": "The maximum number of viewers for this live stream has been reached. Please subscribe to the auction to continue watching.",
  "liveNotActiveForViewers": "This auction is not live right now.",
  "liveCommentSubscribersOnly": "Only subscribers can comment during the live stream.",
  "liveCommentInvalid": "Comment cannot be empty.",
  "liveCommentTooLong": "Comment is too long.",
  "liveStartedSubscriberPush": "Live started for auction #{{auctionNumber}}: {{auctionName}}.",
  "liveJoinRoomFirst": "Join the live stream before commenting.",
  "liveAutoConnectOnActive": "The stream will connect automatically when the live auction becomes active.",
  "liveReady": "Ready",
  "joinStream": "Join Stream",
  "leaveStream": "Leave",
  "liveVideo": "Live Video",
  "liveReadyToConnect": "Ready to connect",
  "liveNotConnectedYet": "Live stream is not connected yet",
  "joinOrWaitForBroadcast": "Join the stream to start watching, or wait until the broadcast becomes active.",
  "liveComments": "Live Comments",
  "messages": "messages",
  "liveStream": "Live stream",
  "streamDisconnected": "Stream disconnected",
  "waitingBroadcaster": "Waiting for a broadcaster to publish video.",
  "noLiveCommentsYet": "No live comments yet.",
  "liveSdkNotLoaded": "Agora SDK is not loaded",
  "liveUnavailable": "Unavailable",
  "liveMissingCredentials": "Missing stream credentials",
  "liveUnableToConnect": "Unable to connect",
  "liveAppIdOrChannelMissing": "App ID or channel is missing.",
  "liveConnectingStream": "Connecting to live stream...",
  "liveConnecting": "Connecting",
  "liveConnectingWait": "Please wait while the stream is loading.",
  "liveWatchingStream": "Watching live stream",
  "liveFailedToConnect": "Failed to connect",
  "liveConnectionFailed": "Connection failed",
  "liveConnectTryAgain": "Could not connect to the live stream. Please try again.",
  "liveDisconnectedStream": "Disconnected from live stream",
  "liveDisconnected": "Disconnected",
  "liveYouLeftStream": "You left the stream",
  "liveClickJoinAgain": "Click Join Stream to connect again.",
  "liveActive": "Live auction is active",
  "liveWaitingStart": "Waiting for live to start",
  "liveWaitingStream": "Waiting for stream",
  "liveNotStartedYet": "The live auction has not started yet.",
  "newBid": "New bid",
  "viewerJoined": "Viewer joined",
  "totalViewers": "Total viewers",
  "winnerAnnouncedWithPrice": "Winner announced with price",
  "userFallback": "U",
  "paymentStatus_UNPAID": "Unpaid",
  "auctionNotFound": "Auction not found",
  "harajCommissionPercentageRequired": "Haraj commission percentage is required",
  "notStartedYet": "The auction has not started yet",
  "auctionAlreadyEnded": "The auction has already ended",
  "bidConflictStale": "The price changed due to another bid. New minimum is {{min}}",
  "invalidMoneyPrecision": "Amounts may contain at most two decimal places",
  "bidFailed": "Unable to place the bid",
  "bidPlaced": "Your bid was placed successfully",
  "bidOutbidNotification": "A higher bid was placed on auction #{{auctionNumber}}.",
  "bidPrice": "Bid amount",
  "bidPriceInvalid": "Invalid bid amount",
  "notFinalizedYet": "This auction has not been finalized yet. Ending is controlled by the server.",
  "reserveNotMetNotification": "Auction #{{auctionNumber}} ended without meeting the reserve. No sale was created.",
  "winnerPaymentRequiredNotification": "You won auction {{auctionName}}. Please complete payment before the deadline.",
  "winnerDefaultedHoldNotification": "Payment deadline passed for auction {{auctionName}}. Your deposit is held pending admin review.",
  "winnerDefaultedAdminReviewNotification": "Winner defaulted on auction {{auctionName}}. Deposit is held for admin resolution.",
  "auctionEndedNoBidsNotification": "Auction #{{auctionNumber}} ended with no bids.",
  "createProductAuctionSuccess": "Auction submitted for review",
  "productNotEligible": "Product is not eligible for auction",
  "productAuctionConflict": "An active or pending auction already exists for this product",
  "changesRequested": "Changes were requested on the auction",
  "requestChangesReasonRequired": "A reason for requested changes is required",
  "settlementStatus": "Settlement status",
  "reservePriceEnabled": "Reserve price enabled",
  "remainingSeconds": "Remaining seconds",
  "minimumNextBid": "Minimum next bid",
  "depositHeldForReview": "Deposit held for review",
  "resolveHeldDeposit": "Resolve held deposit",
  "newAuctionPendingReview": "New auction pending review",
  "published": "Auction published and scheduled successfully",
  "finishedAwaitingProviderDecision": "Auction ended and is awaiting the provider decision",
  "winnerAccepted": "Highest bid accepted and winner payment is now available",
  "winnerRejected": "Highest bid rejected and deposit settlement has started",
  "invalidTransition": "This action is not allowed in the auction's current state",
  "refundFailed": "Deposit refund could not be completed and was recorded for retry",
  "protectedFieldsNotAllowed": "The request contains fields that cannot be modified",
  "winnerOnlyPayment": "Payment is available only to the accepted winner",
  "winnerPaymentNotAvailable": "Auction payment is not available in the current state",
  "paymentDeadlineExpired": "The auction payment deadline has expired",
  "highestBidAwaitingProviderDecision": "Your bid is the highest and awaits the provider decision",
  "highestBidRequiresProviderReview": "The auction ended and the highest bid requires your decision",
  "providerAcceptedWinnerNotification": "The provider accepted the highest bid for this auction",
  "providerRejectedWinnerNotification": "The provider rejected the highest bid for this auction",
  "winnerPaymentCompletedNotification": "Auction payment completed and the order was created successfully",
  "outbidNotification": "Your bid was outbid in auction #{{auctionNumber}}",
  "depositRefundedNotification": "Your auction deposit of {{depositAmount}} SAR was refunded to your wallet successfully",
  "created": "Auction created and submitted to the administration for review",
  "listTypeRequired": "Auction list type is required",
  "statusNotAllowedForRole": "The requested auction status is not available for this account role",
  "openingPriceBelowAdminMinimum": "The opening price must not be lower than the administration minimum.",
  "openingPriceRequired": "The auction opening price is required.",
  "openingPriceInvalid": "The auction opening price is invalid.",
  "joinNotAllowed": "This account cannot join the auction in its current state",
  "onlinePaymentPending": "The online payment request is pending and the operation will not activate before gateway confirmation",
  "unexpectedFileField": "The request contains an unsupported file field",
  "imagesRequired": "Auction images are required",
  "maxImagesExceeded": "An auction may contain at most 10 images",
  "invalidImage": "Upload valid JPG, JPEG, PNG, or WEBP images",
  "nameInvalid": "Auction name is required and must contain between 2 and 160 characters",
  "durationHoursInvalid": "Auction duration must be a whole number from 5 to 24 hours",
  "startDateFormatInvalid": "Auction start date format is invalid. Use a value such as 2030-01-01T12:00:00Z",
  "depositPaid": "The auction deposit was paid successfully and you are now a participant",
  "winnerPaymentSuccess": "The remaining amount was paid and the auction completed successfully"
}
