{"account":{"navOverview":"Overview","navOrders":"Orders","navProjects":"Projects","navAddresses":"Addresses","navPayments":"Payment methods","navWishlists":"Wishlists","navSavedSearches":"Saved searches","navSecurity":"Login & security","navMfa":"Two-step verification","customerFallback":"Customer","homeCrumb":"Home","yourAccount":"Your account","navAriaLabel":"Account navigation","signOut":"Sign out","accountEyebrow":"Account","overviewIntro":"Manage your projects and personal details in one place.","currentProject":"Current project","noProjectBody":"You don't have a project with us yet. When you do, this is where the quote, the messages, the documents and the state of the work all live. Until then, the quickest way to get moving is to talk to someone.","noProjectCall":"Call us","noProjectMessage":"Send us a message","projectLabel":"Project","projectProgress":"Project progress","brief":"Brief","quote":"Quote","work":"Work","done":"Done","openProject":"Open project","startProject":"Request a service","securitySummary":"Password and active devices","review":"Review","notEnabled":"Not enabled","setUp":"Set up","personalDetails":"Personal details","phoneNotAdded":"Phone not added","cityNotAdded":"City not added","referralAndSupport":"Referral & support","projectsEyebrow":"Projects","myProjects":"My projects","projectsIntro":"Every request, quote, delivery and handover in one place.","projectFilters":"Project filters","searchProjects":"Search projects","activeProjects":"Active","completedProjects":"Completed","allProjects":"All","loadingProjects":"Loading projects…","noActiveProjects":"No active projects","noProjectsHere":"No projects here yet","noProjectsBody":"Start a project when you are ready and it will appear here.","projectFallback":"Home project","projectRequested":"Requested","locationPending":"Location to be confirmed","materialsProject":"Materials project","estimatedTotal":"Estimated total","contactSupport":"Contact support","view":"View","cantFindProject":"Can’t find a project?","backToProjects":"Back to projects","savedAddresses":"Saved addresses","primary":"Primary","savedAddress":"Saved address","homeLabel":"Home","privateByDefault":"Private by default","privateAddressBody":"Project addresses are shared only with professionals assigned to your request.","signInDetails":"Sign-in details","emailAddress":"Email address","verified":"Verified","change":"Change","passwordUpdatedRecently":"Updated recently","update":"Update","twoStepSecurityBody":"Use a code from your phone when signing in on a new device.","setUpTwoStep":"Set up two-step","recovery":"Recovery","recoveryEmail":"Recovery email","notAdded":"Not added","add":"Add","securityHelp":"Security help","visitHelpCentre":"Visit help centre","securityNotice":"AlbNova will never ask for your password or verification code.","mfaSimpleTitle":"Protect your account with a code from your phone.","mfaSimpleBody":"Use an authenticator app whenever you sign in on a new device.","setupAuthenticator":"Set up authenticator","mfaUseNewCode":"Use a new code when asked","beforeYouBegin":"Before you begin","keepPhoneNearby":"Keep your phone nearby","installAuthenticator":"Install an authenticator app","saveRecoveryCodes":"Save your recovery codes securely","needHelp":"Need help?","authenticatorSecretNote":"Your authenticator secret is never shared with AlbNova professionals.","cardOrdersBlurb":"Track, return, or buy items again","cardAddressesBlurb":"Manage your shipping and billing addresses","cardPaymentsBlurb":"Add or remove payment methods","cardWishlistsBlurb":"Return to the items you like","cardSavedSearchesBlurb":"Revisit saved searches and alerts","cardSecurityBlurb":"Password, login, and active devices","cardMfaBlurb":"Add an extra layer of security","welcomeBack":"Welcome back, {name}","accountIntro":"Your personal space for following projects and the materials you have chosen.","accountSnapshot":"Account snapshot","projectWorkspace":"Project workspace","viewProjects":"View projects","savedAddressCount":"{n, plural, one {# saved address} other {# saved addresses}}","savedCardCount":"{n, plural, one {# saved card} other {# saved cards}}","on":"On","off":"Off","referral":"Referral","referralEnterCode":"Enter a code.","referralContactLabel":"Your AlbNova contact","referralLinkedVia":"Linked via code","referralLinkedNote":"and can't be changed.","referralConnected":"Connected","referralLockedTitle":"Referral is locked","referralLockedBody":"Referrals can only be linked before your first order or quote. Your account is past that point.","referralNoneTitle":"Have a referral code?","referralNoneBody":"Connect an AlbNova team member's code to get personalized support for your project.","referralCodeAria":"Referral code","referralConnecting":"Connecting…","connect":"Connect","referralPerk1":"Personalized product and installation advice","referralPerk2":"Priority on quotes and installer scheduling","referralPerk3":"A single point of contact throughout your project","referralFine":"A referral code is not a coupon and gives no discount.","enterName":"Enter your name.","savedStatus":"Saved ✓","yourDetails":"Your details","profilePhoto":"Profile photo","photoHint":"JPG, PNG or WebP · saves as soon as you pick one","addPhoto":"Add a photo","changePhoto":"Change photo","removePhoto":"Remove","photoTooLarge":"That image is too large. Try one under 2 MB.","photoInvalidType":"That file isn't a JPG, PNG or WebP image.","photoUploadFailed":"Couldn't save your photo. Please try again.","detailsBlurb":"These autofill at checkout and on service requests, so you don't retype them.","fullName":"Full name","phone":"Phone","city":"City","selectCity":"Select a city","preferredContact":"Preferred contact","contactPhone":"Phone","email":"Email","contactWebsite":"On the website","saving":"Saving…","saveDetails":"Save details","profileWelcome":"Welcome, {name}","profileCompleteTitle":"Complete your profile","profileCompleteBody":"Help us tailor deliveries, projects, and support to you.","profilePersonalDetails":"Personal details","profileAddress":"Address","profileAboutTwoMinutes":"About 2 minutes","profilePrivacyNote":"We only ask for information we use.","profileSaveContinue":"Save and continue","profileNotNow":"Not now","profileStepOf":"Step {step} of {total}","profileAddAddress":"Add your address","profileAddressBody":"Used for deliveries, site visits, and project planning.","profileUseDefault":"Use as my default address","profileBack":"Back","profileSaveFinish":"Save and finish","profileSkipNow":"Skip for now","profilePercentComplete":"Profile {percent}% complete","profileFinishSetup":"Finish your account setup","profileAddressComplete":"Address added","profileAddressMissing":"Address missing","profileContinueSetup":"Continue setup","profileOneStepLeft":"One step left","profileSaveAddress":"Save address","profileDoLater":"Do this later","required":"Required.","invalidPhone":"Enter a valid phone number.","invalidPostal":"4-digit postal code.","editAddress":"Edit address","addAddress":"Add address","addNewAddress":"Add a new address","close":"Close","addrLabel":"Label (optional)","addrLabelPlaceholder":"e.g. Home, Work","streetAddress":"Street address","streetPlaceholder":"Street, building, apartment","county":"County","postalCode":"Postal code","country":"Country","defaultShippingAddress":"Set as default shipping address","defaultBillingAddress":"Set as default billing address","cancel":"Cancel","saveChanges":"Save changes","yourAddresses":"Your addresses","addressesIntro":"Manage the locations used for deliveries and project visits.","noAddresses":"No addresses yet","noAddressesBody":"Add a shipping address for faster checkout.","addFirstAddress":"Add your first address","whySaveAddress":"Why save an address?","fasterCheckout":"Faster checkout","fasterCheckoutBody":"Complete your order faster without re-entering details each time.","accurateDelivery":"Accurate delivery","accurateDeliveryBody":"Help us ensure accurate, on-time deliveries.","useForProjects":"Use it for projects","useForProjectsBody":"Save separate addresses for home, work, or different projects.","dataStoredSecurely":"Your information is stored securely.","defaultShipping":"Default shipping","defaultBilling":"Default billing","edit":"Edit","remove":"Remove","invalidCard":"Enter a valid card number.","cardNameRequired":"Name as shown on the card.","invalidExpiry":"Use MM/YY.","cardNumber":"Card number","nameOnCard":"Name on card","expiryMmYy":"Expiry (MM/YY)","cvc":"CVC","cardDemoNote":"Demo checkout — no real card is stored or charged.","addCard":"Add card","paymentsIntro":"Manage saved cards for faster orders.","securePayments":"Secure payments","securePaymentsBody":"Card details are encrypted and stored securely. We do not keep the complete card details.","encrypted":"Encrypted","checkoutOnly":"Used only at checkout","removeAnytime":"Remove it at any time","billingAddress":"Billing address","sameAsShipping":"Same as the shipping address","manageAddresses":"Manage addresses","noCards":"No cards yet","noCardsBody":"Add a payment method for faster checkout.","addACard":"Add a card","cardEndingIn":"{brand} ending in {last4}","cardExpires":"{name} · Expires {expiry}","default":"Default","setDefault":"Set as default","removeCard":"Remove card","moveToCart":"Move to cart","moveItemAria":"Move {name} to another list","moveTo":"Move to…","loadingItems":"Loading items…","noSavedItems":"No saved items yet","noSavedItemsBody":"Save tiles and floors you like to find them later.","browseCatalog":"Browse the catalog","otherLists":"Other lists","wishlistsIntro":"Save materials you want to compare or use in your projects.","otherListsBlurb":"Organize saved items into lists by room or project.","newListPlaceholder":"New list name","create":"Create","createList":"Create list","loadingLists":"Loading lists…","noOtherLists":"You don't have any other lists yet.","itemCount":"{count, plural, one {# item} other {# items}}","save":"Save","rename":"Rename","delete":"Delete","emptyNamedList":"No items in this list yet.","noSavedSearches":"No saved searches yet","noSavedSearchesBody":"Save a search from the listing page to jump back to it quickly.","savedSearchesIntro":"Quickly return to materials and filters that interest you.","howItWorks":"How it works","filterMaterials":"Filter materials","filterMaterialsBody":"Use filters to find the materials that interest you.","saveSearchStep":"Save the search","saveSearchStepBody":"Save and name your filters to find them easily.","getAlerts":"Get alerts","getAlertsBody":"Hear when new matching materials arrive.","emailAlerts":"Email alerts","emailAlertsBody":"Get notified when new materials match your saved searches.","alertsActive":"Alerts on","allProducts":"All products","savedOn":"Saved on {date}","disableAlerts":"Turn off alerts","enableAlerts":"Turn on alerts","unknownDevice":"Unknown device","deviceOnOs":"{browser} on {os}","justNow":"Just now","minAgo":"{n, plural, one {# minute ago} other {# minutes ago}}","hoursAgo":"{n, plural, one {# hour ago} other {# hours ago}}","daysAgo":"{n, plural, one {# day ago} other {# days ago}}","enterCurrentPassword":"Enter your current password.","min8Chars":"Use at least 8 characters.","passwordsNoMatch":"Passwords don't match.","name":"Name","password":"Password","session":"Session","signedInThisDevice":"Signed in on this device","changePassword":"Change password","currentPassword":"Current password","newPassword":"New password","min8Placeholder":"At least 8 characters","confirmNewPassword":"Confirm new password","saveNewPassword":"Save new password","passwordUpdatedDemo":"Password updated.","passwordChangeFailed":"The password was not changed. Try again.","demoQr":"QR code for setting up your authenticator app","twoStepLabel2fa":"Two-step verification","manage":"Manage","activeSessions":"Active sessions","securityIntro":"Manage how you sign in and protect your account.","accountDetails":"Account details","mfaSummaryBody":"Add an extra layer of security to your account.","loading":"Loading…","noActiveSessions":"No active sessions.","lastActive":"Last active {when}","thisDevice":"This device","signingOut":"Signing out…","signOutOthers":"Sign out other devices","mfaIntro":"Add a second layer of protection when you sign in.","mfaHeroTitle":"Protect your account with an extra step","mfaHeroBody":"An authenticator app generates a unique 6-digit code that changes every 30 seconds. You will use it with your password whenever you sign in.","learnMore":"Learn more","yourCode":"Your code","whatHappensNext":"What happens next?","mfaStep1Short":"Scan the QR code","mfaStep1ShortBody":"Use your authenticator app to scan the code.","mfaStep2Short":"Enter the 6-digit code","mfaStep2ShortBody":"Enter the code generated by the app.","mfaStep3Short":"Save backup codes","mfaStep3ShortBody":"Keep the backup codes somewhere secure.","mfaSafetyNote":"It will not be enabled until you finish all three steps.","status":"Status","mfaStatusOn":"On","mfaStatusOff":"Off","turnOff":"Turn off","enable2fa":"Enable two-step verification","mfaProtecting":"Two-step verification is protecting {target}.","yourAccountFallback":"your account","mfaStep1Title":"Scan the QR code","mfaStep1Body":"Open your authenticator app (Google Authenticator, Authy) and scan the code, or enter the key manually.","manualEntryKey":"Manual entry key","mfaStep2Title":"Enter the 6-digit code","mfaStep2Body":"Enter the code shown by your app to finish setup.","codeAria":"Verification code","verifyEnable":"Verify & enable","enter6Digit":"Enter a 6-digit code.","working":"Working…","qrAlt":"QR code for setting up your authenticator app","openInAuthenticator":"Open in my authenticator app","currentPasswordLabel":"Current password","recoveryCodesTitle":"Save your recovery codes","recoveryCodesBody":"These are the way back into your account if you lose your phone. Each one works once. This is the only time they will be shown.","recoveryCodesSaved":"I have saved them","recoveryCodesWarning":"Keep these somewhere separate from your phone — a password manager, or printed and put away. Anyone holding one can sign in as you.","recoveryCodesLeft":"{count, plural, =0 {No recovery codes left} one {# recovery code left} other {# recovery codes left}}","copyCodes":"Copy codes","copied":"Copied","turnOffTitle":"Turn off two-step verification?","turnOffBody":"Your account will be protected by its password alone. Enter your password to confirm.","confirmTurnOff":"Turn off","errInvalidCode":"That code is not right. Check your authenticator app and try the current code.","errCodeUsed":"That code has already been used. Wait for your app to show the next one.","errEnrolmentExpired":"Setup timed out. Start again to get a fresh QR code.","errAlreadyEnrolled":"Two-step verification is already on for this account.","errInvalidPassword":"That password is not right.","errGeneric":"Something went wrong. Please try again.","currentPasswordWrong":"That is not your current password.","samePassword":"Choose a password different from your current one.","networkErrorTryAgain":"We could not reach the server. Please try again.","passwordUpdated":"Your password has been changed.","otherSessionsSignedOut":"{count, plural, one {# other device was signed out.} other {# other devices were signed out.}}"},"admin":{"navOverview":"Overview","navReferrals":"Referrals","navServices":"Services & pricing","bpNoJourneyYet":"No journey","navGroupServices":"Services","navGroupBuild":"Build","navGroupConsoles":"Consoles","navConsoleWork":"Work manager","navTeam":"Team","teamTitle":"Team accounts","teamSub":"Everyone who can sign in at the employee door. A new account chooses its own password from an emailed link — you never see it, and never have to.","teamNew":"New account","teamName":"Full name","teamEmail":"Work email","teamEmailFixed":"The address is fixed once the account exists — it is half the account's identity, and where every link has been sent.","teamType":"Account type","teamTypeStaff":"Staff","teamTypeWorker":"Worker","teamRole":"Role","teamStatus":"Status","teamActive":"Active","teamPending":"Invite pending","teamTrades":"Verified trades","teamTradesHint":"Comma-separated, workers only. Leave it empty until you have actually verified them — the job board reads an empty list as “none verified”.","teamCreate":"Create and send the invite","teamCreated":"Account created — the set-password link is on its way.","teamCreatedNoMail":"Account created, but the email did not send. Use Send link once mail is working again.","teamResend":"Send link","teamLinkSent":"Set-password link sent.","teamLinkFailed":"The email did not send.","teamSignOutAll":"Sign out everywhere","teamSignedOut":"Signed out of every device.","teamSignOutConfirm":"Sign this account out of every device?","teamEmailTaken":"An employee account already uses this address.","teamAdminOnly":"Only an admin can create or change a staff account.","teamSelfRole":"You can't change your own role. Ask another admin.","teamNoMembers":"No accounts yet.","teamSaved":"Saved.","teamYou":"You","roleAdmin":"Admin","roleHr":"HR","roleWorkmanager":"Work manager","roleCatalog":"Catalog","roleOrders":"Orders","roleSupport":"Support","roleFinance":"Finance","roleContent":"Content","roleWorker":"Worker","bpJourney":"Question journey","bpSub":"The cards a customer answers for this service. Order, wording and options are yours.","bpNone":"This service has no journey yet — customers get the default bathroom questions.","bpStart":"Start a journey","bpCards":"Cards","bpAddCard":"Add card","bpLayout":"Card style","bpEyebrow":"Kicker","bpHeading":"Heading","bpCopy":"Supporting line","bpRequired":"Must be answered before continuing","bpQuestions":"Questions","bpAddQuestion":"Add question","bpFieldKey":"Key","bpDestination":"Where the answer goes","bpDestNone":"Keep with the request's other answers","bpLabel":"Label","bpOptions":"Options","bpAddOption":"Add option","bpValue":"Stored value","bpImage":"Image","bpNoImage":"No image","bpPublish":"Publish","bpPublished":"Published — customers see it now.","bpDraftSaved":"Draft saved.","bpVersion":"Version {n}","bpTranslations":"Translations","bpUp":"Move up","bpDown":"Move down","errBpSave":"The journey could not be saved.","errBpPublish":"The journey could not be published.","labelServiceName":"Service name","labelServiceImage":"Card photograph","serviceImageNone":"No photograph","serviceImagePreview":"Preview","pricingSlugHint":"Used in links as ?type=… — leave empty to build it from the name.","pricingNew":"New service","pricingCreate":"Create service","pricingRetire":"Retire service","pricingRetireConfirm":"Retire this service? It disappears from the customer's picker.","pricingInUse":"Still in use: {requests} requests and {jobs} jobs.","errPricingCreate":"The service could not be created.","errPricingDelete":"The service could not be retired.","brandAdmin":"Admin","hrReviewQueue":"HR review queue","storefront":"Public site","logout":"Log out","loading":"Loading…","save":"Save","cancel":"Cancel","delete":"Delete","edit":"Edit","saved":"Saved","remove":"Remove","nothingMatches":"Nothing matches.","labelType":"Type","labelCategory":"Category","labelSlug":"Slug","colCode":"Code","colRate":"Rate","colService":"Service","colModel":"Model","colUnit":"Unit","colBase":"Base","colLead":"Lead","colTrades":"Trades","fieldSeller":"Company / seller","fieldSubcategory":"Subcategory","fieldBasePrice":"Base price (lek)","fieldCost":"Product cost (lek)","fieldWas":"Was (0 = no sale)","fieldStockQty":"Stock qty","fieldMinStock":"Min-stock alert","fieldBadge":"Badge","fieldCondition":"Condition","fieldWeight":"Weight","fieldDimensions":"Dimensions","fieldWarranty":"Warranty","fieldApprovalStatus":"Approval status","fieldInStock":"In stock","saveChanges":"Save changes","requestChanges":"Request changes","reject":"Reject","preview":"Preview","suspend":"Suspend","reactivate":"Reactivate","statusActive":"active","statusInactive":"inactive","fieldMinSubtotal":"Min subtotal","fieldMaxDiscount":"Max discount / cap","fieldStartDate":"Start date","fieldExpirationDate":"Expiration date","fieldStackable":"Stackable with other coupons","fieldBogoBuy":"Buy (units)","fieldBogoGet":"Get free (units)","fieldAppliesTo":"Applies to (leave blank for the whole cart)","fieldLabel":"Label (shown to shopper)","fieldActive":"Active","fieldBundlePrice":"Bundle price (L)","fieldToneHex":"Tone (hex)","fieldPattern":"Pattern","fieldProductN":"Product {n}","fieldQty":"Qty","pricingSub":"Every service AlbNova offers. Add one here and it appears in the customer's picker; rates feed instant quotes, and trades decide which workers a dispatched job reaches.","searchServicePlaceholder":"Search service…","errUpdatingPricing":"Error updating pricing","fieldQuoteModel":"Quote model","fieldBaseFee":"Base fee","fieldLeadTime":"Lead time","fieldRequiredTrades":"Required trades","phTradesExample":"e.g. Tiler, Plumber","fieldBlurb":"Blurb","navTranslations":"Translations","overview":"Overview","loadingPanel":"Loading panel…","statusNotUpdated":"Status not updated.","serviceRequests":"Service requests","pendingApproval":"Pending approval","status":"Status","viewAll":"View all →","recentActivity":"Recent activity","everythingUpdated":"Everything is up to date.","close":"Close","total":"Total","live":"Live","tradeInstallation":"Installation","tradeConstruction":"Construction","tradeDesign":"Design","tradeSpecialist":"Specialist","modelPerM2":"Per m²","modelPerFixture":"Per fixture","modelDayRate":"Day rate","modelConsult":"Consultation","overviewSub":"A complete view of AlbNova operations","noteOpenJobs":"{n} open jobs","noteNeedsAction":"Need action","customerFallback":"Customer","overviewKpiTickets":"Support tickets","overviewKpiReferralsDue":"Referrals to settle","overviewNoteServiceCatalogue":"In the service catalogue","overviewNoteFromHelp":"Raised from the help centre","overviewReferralsPending":"Referrals waiting on you","navBlog":"Journal","blogTitle":"Journal","blogSub":"Project write-ups and news. Drafts are invisible to visitors.","blogNewPost":"New post","blogSlug":"URL slug","blogSlugHint":"Lower-case words joined by hyphens. Cannot be changed after saving.","blogPostTitle":"Title","blogExcerpt":"Excerpt","blogBody":"Body","blogBodyHint":"One paragraph per blank line.","blogCover":"Cover image path","blogAuthor":"Author","blogTag":"Topic","blogLocale":"Language","blogStatus":"Status","blogDraft":"Draft","blogPublished":"Published","blogSaved":"Post saved.","blogCreated":"Post created.","blogDeleted":"Post deleted.","blogDeleteConfirm":"Delete this post? This cannot be undone.","blogNoPosts":"No posts yet.","blogSlugTaken":"That slug is already in use.","shellErrorTitle":"This screen didn't load","shellErrorBody":"The rest of the back-office is working. Try opening this screen again, or go back.","shellErrorRetry":"Try again","shellErrorBack":"Go back","menu":"Menu","roleFieldTechnician":"Field technician","roleHiringManager":"Hiring manager","roleAdministrator":"Administrator","referralBonusesTab":"Bonuses","referralBonusesTitle":"Referral bonuses","referralBonusesHint":"Every verified job for a customer a worker introduced writes two rows: a bonus on their own labour share (only if they worked it) and a bonus on the material cost (always). Neither touches the customer's price.","referralBonusKind":"Kind","referralBonusLabour":"Labour","referralBonusMaterials":"Materials","referralBonusBase":"Base","referralBonusAmount":"Amount","referralBonusJob":"Job","referralBonusWorker":"Worker","referralBonusStatusAccrued":"Owed","referralBonusStatusPaid":"Paid","referralBonusStatusDisputed":"In dispute","referralBonusStatusVoid":"Cancelled","referralBonusMarkPaid":"Mark paid","referralBonusVoid":"Void bonus","referralBonusPaidToast":"Bonus marked paid.","referralBonusVoidedToast":"Bonus voided.","referralBonusReasonLabel":"Reason for voiding","referralNoBonuses":"No bonuses yet.","referralLabourPct":"Labour bonus (%)","referralMaterialsPct":"Materials bonus (%)","referralEurLek":"Rate: lek per euro","referralEurLekHint":"Workers read their bonuses in euro; the platform stores lek. Keep this rate current — every change is recorded.","svcSub":"The name, the photograph, the page, the rates, the crew standard and the questions — a whole service, in one place.","svcNew":"New service","svcNewSub":"Start with the name and the category. The photograph, the page, the documents and the questions open once the service is saved.","svcTabBasics":"Details","svcTabPhoto":"Photograph","svcTabPage":"Page","svcTabPricing":"Rates and crew","svcTabDocuments":"Documents","svcNames":"The name the customer reads","svcShortDescription":"Short description","svcShortDescriptionHint":"30–50 words. It appears on the card in the service list.","svcIdentifier":"Identifier","svcIdentifierHint":"Leave it empty and it takes the Albanian name.","svcPublished":"Published","svcPublishedHint":"Show it in the service list and open its own page.","svcPublishedOn":"Published","svcPublishedOff":"Draft","svcOpenPage":"Open the page","svcNameRequired":"The Albanian name is required.","svcPhotoSub":"The photograph for the card and the page. Upload a new one or take one from the library.","svcUpload":"Upload a photograph","svcUploading":"Uploading…","svcUploadHint":"JPEG, PNG or WebP, up to 8 MB. We convert it to WebP and make the small card variant too.","svcUploadFailed":"The upload did not go through.","svcPickExisting":"From the library","svcImageAlt":"Alternative text","svcImageAltHint":"What the photograph shows, for readers using a screen reader.","svcPageSub":"The page the customer reads at /services/{slug}.","svcIntro":"Introduction","svcIntroHint":"60–90 words under the heading.","svcIncluded":"What is included","svcIncludedHint":"One line per piece of work.","svcExcluded":"What is not included","svcExcludedHint":"One line per exclusion.","svcAddLine":"Add a line","svcFaq":"Frequent questions","svcFaqQuestion":"Question","svcFaqAnswer":"Answer","svcAddFaq":"Add a question","svcPricingSub":"The inputs to the quote maths, and who may be dispatched to this work.","svcWorkerStandard":"Worker standard","svcWorkerStandardHint":"The floor every job dispatched for this service inherits. The job manager can change it afterwards.","svcMinRating":"Minimum rating","svcMinJobs":"Completed jobs, minimum","svcDocumentsSub":"The papers this work usually needs. Suggestions — nothing is blocked by them.","svcDocLabel":"Document","svcDocNote":"Note","svcDocParty":"Who brings it","svcDocRequired":"Usually needed","svcDocRequiredHint":"Tick it when the work rarely goes ahead without it.","svcAddDoc":"Add a document","svcPartyCustomer":"The customer","svcPartyCompany":"AlbNova","svcPartyWorker":"The worker","svcJourneyLiveHint":"These are exactly the cards the customer answers.","svcJourneyFallbackHint":"With no published cards the customer gets the bathroom questions. Write this service's own cards.","svcJourneyFallback":"Bathroom questions","svcOpenBuilder":"Question cards","svcUnpublishJourney":"Take off the air","svcCopyFrom":"Copy from another service","svcCopyFromHint":"The address, the photographs, the timing and the budget are the same cards for every service. Copy them and change the rest.","svcCopyPick":"Choose the service","svcCopyDo":"Copy the cards","bpAmount":"Amount","bpAmountHint":"The figure this band stands for, in lekë.","navTrades":"Trades","builder":{"crumb":"Service questions","title":"Questions for “{service}”","sub":"The cards the customer sees, in the order they see them. Changes stay a draft until you publish them.","pillLive":"Live · version {n}","pillNotLive":"Not published yet","pillDraft":"Draft · version {n}","pillDraftDirty":"Draft · version {n} · unsaved changes","copyFrom":"Copy from another service","openAsCustomer":"Open as a customer","openAsCustomerHint":"Opens the live form in a new tab. The draft does not show there until you publish it.","saveDraft":"Save draft","publish":"Publish","unpublish":"Unpublish","unpublishTitle":"Take this journey off the site?","unpublishBody":"Customers get the general questions until you publish again. The version is not deleted.","unpublished":"The journey was unpublished.","liveOnlyBody":"This is the journey customers see now. To change it, start a draft: customers keep seeing the live version until you publish.","edit":"Edit","noneTitle":"This service has no questions of its own yet","noneBody":"For now customers get the general questions. Start from scratch or copy another service's cards.","startBlank":"Start from scratch","copyTitle":"Copy the cards of another service","copyBody":"The chosen service's cards replace this service's draft. The live version does not change.","copyPick":"Service","copyPickNone":"Choose the service","copyDo":"Copy the cards","copied":"The cards were copied into the draft.","cardsCount":"{n, plural, one {# card} other {# cards}}","cards":"Cards ({n})","addCard":"Add a card","newCardTitle":"New question","required":"required","optional":"optional","conditional":"only if needed","contactLast":"always last","contactAuto":"added automatically","moveCardUp":"Move up: {title}","moveCardDown":"Move down: {title}","hasProblem":"Something needs fixing","untitled":"Untitled","checksTitle":"Before publishing","checksOk":"Ready to publish.","history":"Versions","statusDraft":"draft","statusLive":"live","statusRetired":"retired","emptyJourney":"No cards yet. Add the first one, or pick a ready-made card on the right.","contactAutoTitle":"The standard contact card","contactAutoBody":"Every customer sees it at the end: name, phone, email (optional) and their preferred way to be reached. To change the wording, customise it.","contactCustomize":"Customise it","contactLocked":"The contact card is always last. If another card already asks for the phone, it is not asked again here.","contactOnlyLast":"The contact card can only be the last card, and only one.","cardN":"Card {n}","languages":"Languages","langSq":"Shqip","langEn":"English","langIt":"Italiano","langDone":"Fully translated","langMissing":"{n, plural, one {# text not translated} other {# texts not translated}}","needsAlbanian":"This card needs an Albanian title before it can be saved.","moveUp":"Up","moveDown":"Down","duplicate":"Duplicate","deleteCard":"Delete card","deleteTitle":"Delete this card?","deleteBody":"“{title}” is removed from the draft. The live version does not change until you publish.","deleteDo":"Delete it","cardType":"Card type","kindPhoto":"Photo choice","kindButtons":"Buttons","kindFields":"Fields to fill in","kindUpload":"Photos","kindDates":"Date / time","kindBudget":"Budget","kindNotes":"Free note","kindInfo":"Information only","kindMeasure":"Measurements","kindReview":"Summary","kindContact":"Contact","unknownLayout":"This card uses a look the builder does not know ({layout}). You can change it, but not edit it here.","look":"Look","lookGrid":"4 in a row","lookLarge":"2 large","lookCards":"Cards with a description","lookChips":"Small buttons","eyebrow":"Eyebrow","optionalMark":"(optional)","question":"Question","heading":"Title","help":"Help text","helpHint":"(under the question)","uploadCopy":"Text in the photo box","uploadCopyHint":"(under the button)","uploadLabel":"Photo button","options":"Options","bands":"Budget ranges","addOption":"Add an option","optionLabelN":"Name of option {n}","optionCopy":"Short description (optional)","optionCopyN":"Description of option {n}","moveOptionUp":"Move option {n} up","moveOptionDown":"Move option {n} down","removeOptionN":"Remove option {n}","addPhoto":"Add a photo","addPhotoShort":"+ photo","changePhoto":"Change the photo","pickPhoto":"Choose the photo","searchPhotos":"Search by file name","noPhoto":"No photo","amountN":"Amount of option {n}","amountPlaceholder":"Amount (ALL)","amountHint":"The amount is the figure each range stands for, in lekë. Leave it empty on “not sure”.","fields":"Fields","addField":"Add a field","fieldLabel":"Field name","fieldLabelN":"Name of field {n}","placeholder":"Example inside the field","fieldHelp":"Help text","fieldOptional":"This field is optional","moveFieldUp":"Move field {n} up","moveFieldDown":"Move field {n} down","removeFieldN":"Remove field {n}","typeText":"Short text","typeTextarea":"Long text","typePhone":"Phone","typeEmail":"Email","typeNumber":"Number","typeCity":"City (list)","typeSingle":"Choice","typeMulti":"Several choices","typeMoney":"Amount (ALL)","typeDate":"Date","typeDates":"Dates","typePhotos":"Photos","typeMeasurement":"Measurement","datesNote":"The customer picks one of the next five working days.","askWindow":"Also ask for the time of day","askWindowBody":"Morning or afternoon","windowLabel":"The time-of-day question","allowAmount":"Allow a typed amount","allowAmountBody":"Besides the ranges, the customer can type an amount","amountLabel":"Text above the amount","notesPlaceholder":"Example inside the box","measureLabels":"Measurement names","lengthLabel":"Length","widthLabel":"Width","heightLabel":"Height","measureNote":"Note under the measurements","infoNote":"This card only explains something — the customer fills in nothing.","reviewNote":"Here the customer sees all their answers and can change them.","rules":"Rules","requiredTitle":"Required","requiredBody":"The customer cannot continue without answering","requiredFieldsBody":"The customer cannot continue without filling in the fields that are not optional","multiTitle":"Allow several choices","multiBody":"The customer can pick more than one","unsureTitle":"Add the “Not sure yet” option","unsureBody":"For customers who have not decided yet","unsure":"Not sure yet","buttonText":"Button text","buttonDefault":"Continue","showIf":"Show only if…","always":"Always","showIfValues":"…the answer is one of these:","showIfMissing":"The question this condition names is not on an earlier card.","advanced":"Advanced","advancedHint":"the field's technical name and where the answer is stored (filled in for you)","advancedNote":"Technical names are made from the Albanian title and stop changing once the card is saved — collected answers are stored under them.","cardKey":"Card's technical name","questionKey":"Question's technical name","slot":"Where the answer is stored","slotNone":"With the request's other answers","optionValues":"Stored option values","optionValue":"Value","slotAddressLine":"Address · street","slotAddressCity":"Address · city","slotAddressArea":"Address · area / postcode","slotAddressFloor":"Address · floor","slotAddressPhone":"Phone","slotContactPref":"Preferred contact","slotContactName":"Customer's name","slotContactEmail":"Customer's email","slotAccess":"Site access","slotSize":"Size (m²)","slotDescription":"Brief for the crew","slotUrgency":"Urgency","slotMaterials":"Materials","slotPhotos":"Request photos","slotDates":"Preferred date","slotBudget":"Budget","slotDropped":"The answer is no longer stored in its previous place, which only takes one choice.","typeChangeTitle":"Change the card type?","typeChangeBody":"“{kind}” cannot hold these questions, so they will be removed: {list}","typeChangeDo":"Change the type","preview":"What the customer sees","previewFrame":"Card preview","phone":"Phone","desktop":"Computer","templates":"Ready-made cards","templatesBody":"Add them in one click — then change them however you like.","tplAddress":"Address","tplPhotos":"Photos","tplTiming":"Timing","tplBudget":"Budget","tplAccess":"Access","tplSize":"Size","tplNotes":"Note","tplInUse":"This card is already in the journey.","tplAdded":"The card was added.","tplSkipped":"The card was added without {n, plural, one {# question} other {# questions}} you already have on another card.","cancel":"Cancel","pSlotMissing":"The journey must ask for: {slot}.","pSlotTwice":"Two questions are stored in “{slot}”. Only one can be.","pAmount":"Type the amount for this range (or leave it empty on “not sure”).","pOptionLabel":"The option needs an Albanian name.","pOptionValue":"The stored value must be unique and not empty.","pOptions":"Add at least one option.","pSlot":"This kind of question cannot be stored in this place.","pKey":"The technical name must start with a letter (letters, digits or _ only) and be unique.","pTitle":"The card needs an Albanian title.","pContactLast":"The contact card must be the last one.","pLayout":"Choose the card type.","pTooMany":"This card holds fewer questions. Remove some, or split it into two cards.","pType":"This kind of question does not fit this card.","pShowIf":"The “Show only if…” condition cannot find the question it names.","pNoCards":"The journey needs at least one card."}},"adminOps":{"loading":"Loading…","save":"Save","cancel":"Cancel","approve":"Approve","reject":"Reject","requestChanges":"Request changes","approved":"Approved","rejected":"Rejected","changesRequested":"Changes requested","status":"Status","products":"Products","orders":"Orders","overview":"Overview","worker":"Worker","customer":"Customer","source":"Source","all":"All","clear":"clear","overviewTitle":"Store overview","overviewSubtitle":"A snapshot across every AlbNova partner store — orders, catalogue and approvals.","partnerStores":"Partner stores","pendingApprovals":"Pending approvals","activeCoupons":"Active coupons","referralCoupons":"Referral coupons","serviceRequests":"Service requests","openTickets":"Open tickets","waitingCount":"{n, plural, one {# waiting} other {# waiting}}","approvalsHint":"Company submissions can't go live until you approve them.","allCaughtUp":"All caught up.","heroThisWeek":"This week","heroGrossSales":"Gross sales · {delta} vs last week","avgOrder":"Avg. order","ordersSubtitle":"Latest orders across all customers. Changing the status updates the customer's tracking page.","statusUpdated":"Status updated","colOrder":"Order","colPlaced":"Placed","colEmail":"Email","colItems":"Items","colTotal":"Total","colShipTo":"Ship to","ordersSearchPlaceholder":"Search order / email / city…","noOrders":"No orders yet.","orderStatusPlaced":"Placed","orderStatusProcessing":"Processing","orderStatusShipped":"Shipped","orderStatusOutForDelivery":"Out for delivery","orderStatusDelivered":"Delivered","orderStatusCancelled":"Cancelled","colTracking":"Tracking","illegalTransition":"That order already moved on — {from} → {to} isn't possible anymore.","statusUpdateFailed":"Couldn't update the status","shipDialogTitle":"Mark order {order} as shipped","shipOptionalHint":"Carrier and tracking code are optional — you can add them later.","fieldCarrier":"Carrier","fieldTrackingCode":"Tracking code","confirmShip":"Confirm shipment","referralsTitle":"Referrals","referralsSubtitleLead":"Worker referral program — attribution and the flat-fee lifecycle","referralsSubtitleFee":"({fee} per new customer, qualifying from {min})","referralsSubtitleMargin":"Fees come from AlbNova margin, never a seller's.","linked":"Linked","qualified":"Qualified","approvedOwed":"Approved · owed","paidAllTime":"Paid · all time","tabCodes":"Codes","tabSettings":"Settings","referralsSearchPlaceholder":"Search customer, worker or code…","filterByStatus":"Filter by status","colCode":"Code","colFee":"Fee","noReferrals":"No referrals yet — codes live on the worker dashboard.","leadLinked":"Attribution recorded. No fee is owed until a qualifying event occurs.","leadQualified":"A qualifying event fired and the fee is frozen. It becomes payable once the return window elapses.","leadApproved":"Return window cleared — this fee is owed and ready for the next payout cycle.","leadPaid":"Fee paid to the worker. This referral is terminal.","leadVoid":"Voided — no fee will be paid. This referral is terminal.","codeLabel":"code {code}","feeFrozen":"Fee (frozen)","qualifyingEvent":"Qualifying event","notYetFrozen":"not yet frozen","markPaid":"Mark paid","voidEllipsis":"Void…","voidReasonLabel":"Reason (mandatory — written to the audit trail)","voidReferral":"Void referral","auditTrail":"Audit trail","actionFailed":"Action failed","feeApproved":"Fee approved","markedPaid":"Marked paid","referralVoided":"Referral voided","programSettings":"Program settings","settingsHint":"Changes apply to future qualifications only — a fee already frozen onto a referral never moves.","feePerCustomer":"Fee per new customer (L)","qualifyingMinimum":"Qualifying order minimum (L)","linkLifetime":"Referral link lifetime (days)","settingsSaveError":"Couldn't save settings","settingsSaved":"Settings saved","saveSettings":"Save settings","codesHint":"One code per worker, created on their first dashboard visit. Suspending stops new attributions; revoking is terminal and voids that code's unqualified referrals — fees already earned are never touched.","suspend":"Suspend","reactivate":"Reactivate","revoke":"Revoke","codeUpdateError":"Couldn't update the code","noCodes":"No codes yet — they're created on a worker's first dashboard visit.","metaTitle":"Merchandising","metaSubtitle":"Raw JSON behind the storefront chrome — nav categories and hero tiles.","savedDot":"Saved.","saved":"Saved","invalidJson":"Invalid JSON: {message}","companiesTitle":"Company stores","companiesSubtitle":"Every partner brand and its store dashboard. Products and coupons need approval before going live.","colCompany":"Company","colCategory":"Category","colLive":"Live","colPending":"Pending","pendingCount":"{n, plural, one {# pending} other {# pending}}","companiesSearchPlaceholder":"Search store / manager…","addStore":"Add store","fieldManagerName":"Manager name","fieldManagerEmail":"Manager email","companyExists":"A store with that name or ID already exists.","errCreatingCompany":"Error creating store","companyHasProducts":"{count, plural, one {This store still has # product — reassign or remove it first.} other {This store still has # products — reassign or remove them first.}}","deleteStore":"Delete store","confirmDeleteStore":"Delete \"{name}\"? This can't be undone.","errDeletingCompany":"Error deleting store","nothingMatches":"Nothing matches.","backToCompanies":"Back to company stores","storeNotFound":"Store not found.","colName":"Name","colPrice":"Price","suspendStore":"Suspend store","reactivateStore":"Reactivate store","storeSuspended":"Store suspended","storeReactivated":"Store reactivated","salesRevenue":"Revenue","fieldTagline":"Tagline","fieldLocation":"Location","fieldSelfOperated":"Self-operated store","errSavingCompany":"Error saving store","productsHint":"Every product this store sells on AlbNova. Click a product for its full management page.","noStoreProducts":"This store has no products yet.","translationsTitle":"Content translations","translationsSubtitle":"The source language is {source} and is edited on the row's own screen. Only the other languages are written here.","contentType":"Content type","choose":"Choose…","rowKey":"Row key","rowKeyPlaceholder":"id or slug","load":"Open","rowNotFound":"No row found with that key.","loadFailed":"Could not load the translations.","saveFailed":"Could not save.","saving":"Saving…","sourceText":"Source text","noSourceText":"(empty)","translationPlaceholder":"Leave empty to remove the translation","entityProduct":"Product","entityDepartment":"Category","entityHelpCategory":"Help topic","entityHelpArticle":"Help article","entityPlannerRoomType":"Room type (planner)","entityPlannerCategory":"Category (planner)","entityPlannerTemplate":"Template (planner)","fieldName":"Name","fieldDescription":"Description","fieldTitle":"Title","fieldBlurb":"Short description","fieldBody":"Body"},"applicants":{"loadError":"The applicant list failed to load.","savedFilterNamePrompt":"Filter name:","savedFilterSharedConfirm":"Should colleagues see it too (shared)? Cancel to keep it private.","listTitle":"Applicants","listSub":"Every applicant — from the site, LinkedIn, WhatsApp or added by hand — in one place.","draftsTitle":"Unfinished applications","draftsSub":"People who started an application, left their email and asked to be reminded. We send them up to two reminders ourselves; you can also call them.","draftsEmpty":"No unfinished applications.","draftsEmptyBody":"Only people who ticked \"Remind me by email\" on the first step appear here. Without that tick nothing is kept.","draftsColContact":"Contact","draftsColReached":"Got as far as","draftsColIdle":"Idle for","draftsColReminders":"Reminders","draftsStep":"Step {step} of {total}","draftsReminders":"{sent} of {max}","draftsApplied":"applied since","draftsDelete":"Delete","draftsDeleteConfirm":"Delete {name}'s unfinished application? No more reminders will be sent.","draftsDeleteError":"It could not be deleted. Try again.","draftsLoadError":"The list of unfinished applications could not be loaded.","draftsFoot":"A row disappears on its own when the person applies, stops the reminders, or 30 days after the last save. Attached files are not kept here.","addApplicant":"Add applicant","importCsv":"Import CSV","exportCsv":"Export CSV","summaryTitle":"Summary","summaryTotal":"Total","summaryNewThisWeek":"New this week","summaryTopProfessions":"Top professions","summaryTopCities":"Top cities","summaryBySource":"By source","searchPlaceholder":"Search by name, phone, email or code…","sortLabel":"Sort by","sortAppliedDesc":"Applied date (newest)","sortUnreviewedFirst":"Not reviewed, oldest first","sortAppliedAsc":"Applied date (oldest)","sortUpdatedDesc":"Last updated","sortContactedDesc":"Last contacted","savedFiltersLabel":"Saved filters","savedFilterDelete":"Delete filter {name}","saveFilter":"Save filter","clearFilters":"Clear filters","filterTrack":"Track","filterAll":"All","filterStage":"Stage","filterPool":"Pool","filterSource":"Source","filterProfession":"Profession","filterCity":"City","filterOperatingArea":"Operating area","filterInAlbania":"In Albania","filterYes":"Yes","filterNo":"No","filterSpeaksAlbanian":"Speaks Albanian","filterEvidence":"Evidence","evidenceCv":"CV","evidenceCertificates":"Certificates","evidencePhotos":"Photos","filterOpenRequest":"Open request","filterDateFrom":"From date","filterDateTo":"To date","loading":"Loading…","emptyAll":"No applicants yet. New submissions from /apply show up here.","emptyFiltered":"No applicant matches these filters.","colName":"Applicant","colStage":"Stage","colPool":"Pool","colSource":"Source","colCity":"City","colApplied":"Applied","openRequestFlag":"Open request","noteCountFlag":"{n} notes","trackFreelancer":"Freelancer","trackProfessional":"Professional position","stageScreening":"Screening","stageInterview":"Interview","stageTrial":"Trial","stageApproved":"Approved","stageRejected":"Rejected","sourceChat":"Website assistant","areasAll":"All of Albania","sourceWebsite":"Website","sourceLinkedin":"LinkedIn","sourceWhatsapp":"WhatsApp","sourceReferral":"Referral","sourceCampaign":"Campaign","sourceManual":"Added by hand","sourceImport":"CSV import","sourceOther":"Other","sourceTalenta":"Talenta","sourcePunesim":"Punësim","actionsTitle":"Actions","terminalNoMoreActions":"This case is closed — no further actions.","startScreening":"Start screening","startScreeningPreview":"We let the applicant know their documents and details are being screened.","startScreeningConfirm":"Confirm screening","poolPickerTitle":"Applicant pool","poolFieldLabel":"Pool","poolReasonPlaceholder":"Reason for the change (optional)…","poolSave":"Save pool","poolApplication":"Application","poolHighPriority":"High priority","poolReady":"Ready","poolSpecialist":"Specialist","poolWaitlist":"Waitlist","poolUnqualified":"Unqualified","poolRejected":"Rejected","poolBlacklisted":"Blacklisted","requestInfoTitle":"Request information","requestMessagePlaceholder":"Your note to the applicant (shown in the email and on the page where they reply)…","requestSend":"Send the request","requestItemCv":"CV","requestItemCertificates":"Certificates","requestItemPortfolioPhotos":"Portfolio photos","requestItemExperience":"Experience","requestItemAvailability":"Availability","requestItemLanguages":"Languages","requestItemDrivingLicence":"Driving licence","requestItemOther":"Other","requestStatusOpen":"Open","requestStatusAnswered":"Answered","requestStatusCancelled":"Cancelled","requestCancel":"Cancel request","blacklistTitle":"Blacklist","blacklistOpen":"Add to blacklist","blacklistReasonFieldLabel":"Reason","blacklistNotePlaceholder":"Note (required)…","blacklistMessagePreview":"The applicant gets a neutral closure — the reason is never named.","blacklistConfirm":"Confirm blacklist","blacklistActiveNote":"Blacklisted — {reason}","blacklistRemoveReasonPlaceholder":"Reason for removal (required)…","blacklistRemove":"Remove from blacklist","blacklistAdminOnly":"Only an administrator can remove this from the blacklist.","blacklistReasonFalseInformation":"False information","blacklistReasonMisconduct":"Misconduct","blacklistReasonNoShow":"No-show","blacklistReasonOther":"Other","blacklistActiveShort":"This applicant is on the blacklist.","messageModeLabel":"Message mode","messageModeTemplate":"Template","messageModeTemplateComment":"Template + comment","messageModeCustom":"Custom","messagePreviewLabel":"Preview:","messageCommentPlaceholder":"Your comment (added to the template)…","messageSubjectPlaceholder":"Message subject…","messageBodyPlaceholder":"Message body…","statusRejectedBlurb":"This application was not approved.","actionFailed":"The action failed ({reason}).","cancel":"Cancel","unknownApplicant":"Unknown applicant","manualAddTitle":"Add applicant","manualAddError":"The applicant could not be added.","fieldTrack":"Track","fieldFirstName":"First name","fieldLastName":"Last name","fieldPhone":"Phone","fieldEmail":"Email","fieldCity":"City","fieldRole":"Role","fieldPositions":"Trades","fieldPositionsPlaceholder":"e.g. plumber, electrician","fieldSource":"Source","fieldAppliedAt":"Applied on","fieldSendConfirmation":"Send a confirmation email to the applicant","fieldNotes":"Notes","manualAddDuplicate":"A live application with this contact already exists.","manualAddDuplicateLink":"Open the existing application →","manualAddSave":"Add applicant","csvImportTitle":"Import CSV","csvImportHint":"Columns: first_name, last_name, phone, email, city, profession, source, date, notes. Paste the text or upload the file, preview, then confirm.","csvPastePlaceholder":"Paste the CSV here…","csvEmpty":"Paste or upload a CSV file first.","csvError":"The import could not be processed.","csvReportSummary":"{ok} valid rows, {errors} with errors.","csvColRow":"Row","csvColStatus":"Status","csvColDetail":"Detail","csvRowOk":"OK","csvRowError":"Error","csvRowDuplicate":"Matches applicant #{id}","csvImportDone":"{count} applicants imported.","csvPreview":"Preview","csvConfirm":"Confirm import","historyPool":"{by} changed the pool","historyNote":"{by} added a note","historyRequest":"{by} requested missing info","historyUpdate":"The applicant sent the requested details","historyBlacklist":"{by} added them to the blacklist","historyUnblacklist":"{by} removed them from the blacklist","historyEdit":"{by} corrected {field}","historyMessage":"Mail sent: {subject}","historyCreated":"{by} added this applicant","historyStatus":"{by} changed the status to {status}","verifiedSave":"Save","verifiedEdit":"Correct","notFound":"This applicant was not found.","actionError":"The action failed.","backToList":"Back to applicants","appliedOn":"Applied on {date}","quickCall":"Call","quickEmail":"Email","quickDossier":"Download the dossier (PDF)","sectionContact":"Contact & location","sectionWork":"Work","sectionDocuments":"Documents","sectionRequests":"Requests","sectionNotes":"Notes","sectionTimeline":"Timeline","sectionDuplicates":"Duplicates / blacklist","fieldDob":"Date of birth","fieldCountry":"Country","fieldOperatingAreas":"Operating areas","fieldInAlbania":"Currently in Albania","fieldSpeaksAlbanian":"Speaks fluent Albanian","fieldMainProfession":"Main profession","fieldSkills":"Skills","fieldAvailability":"Availability","fieldLanguages":"Languages","fieldExperience":"Experience","fieldDrivingLicense":"Driving licence","fieldCallMe":"Asked to be called","fieldLinks":"Links","fieldAdditional":"Additional notes","portfolioLink":"Portfolio","availabilityWeekdays":"Weekdays","availabilityWeekends":"Weekends","availabilityEvenings":"Evenings","noRequests":"No requests for missing info yet.","noNotes":"No notes yet.","noteDelete":"Delete","noteAddLabel":"New note","noteAdd":"Add note","noHistory":"No events yet.","noDuplicates":"No matches found on the same phone or email.","duplicateOpen":"Open","stageNew":"New","stageReviewing":"Reviewing","exportError":"The export failed. Try again.","requestLinkReady":"The link to complete it:","requestLinkCopy":"Copy link","csvErrorFirstNameRequired":"First name missing","csvErrorNameTooLong":"First or last name too long","csvErrorContactRequired":"Phone or email missing","csvErrorEmailInvalid":"Invalid email","csvErrorPhoneInvalid":"Invalid phone","csvErrorProfessionRequired":"Trade or role missing","csvErrorProfessionTooLong":"Trade or role too long","csvErrorDateInvalid":"Invalid applied-on date","csvErrorNotesTooLong":"Notes too long","csvErrorCityTooLong":"City too long","csvErrorBlacklisted":"This contact is on the blacklist","csvErrorDuplicate":"Matches an existing applicant","csvErrorDuplicateInFile":"Repeated in another row of the file","csvErrorGeneric":"Error","requestAnswerLabel":"Reply from {date}","fieldAnswerExperience":"Experience","fieldAnswerAvailability":"Availability","fieldAnswerLanguages":"Languages","fieldAnswerDrivingLicence":"Driving licence","fieldAnswerOther":"Other","activeFilters":"Active filters","ageYears":"{n} years old","blacklistExplain":"This applicant's phone and email will not be able to apply again. The reason stays with staff only.","blacklistNotify":"Tell the applicant with a neutral closing message","clearAll":"Clear all","close":"Close","colDocuments":"Documents","colLocation":"Location","colProfession":"Trade / role","csvErrorHeader":"Required columns are missing: {missing}.","csvErrorTooLarge":"The file is too large. Split it into smaller parts.","csvErrorTooManyRows":"The file has more than {max} rows. Split it into smaller parts.","currentlyAbroad":"currently abroad","dismiss":"Dismiss","docsNone":"None","duplicateMatch":"same {on}","errorAccountEmail":"Enter the company mailbox the applicant will sign in with.","errorAdminOnly":"Only an administrator can do this.","errorAlreadyBlacklisted":"This applicant is already on the blacklist.","errorBlacklisted":"This applicant is on the blacklist.","errorCommentRequired":"Write the note to add under the standard message.","errorCustomNeedsSubjectBody":"A custom message needs a subject and a body.","errorForbidden":"You don't have permission for this.","errorGeneric":"Something went wrong. Try again.","errorIllegalTransition":"This action no longer fits the applicant's stage. Refresh the page.","errorItemsRequired":"Pick at least one thing to ask for.","errorMailboxTaken":"This mailbox is already used by another account — try a different one.","errorNetwork":"Couldn't reach the server. Check the connection and try again.","errorNotBlacklisted":"This applicant is not on the blacklist.","errorNotFound":"Not found. Refresh the page.","errorNoteTooLong":"The note is too long.","errorReasonRequired":"Write the reason.","errorRequestNotOpen":"This request is no longer open.","errorReviewRequired":"Record the review first (info verified + legitimacy confirmed).","errorScheduledAt":"Pick a future date and time, or leave it empty.","errorTrialIncomplete":"Rate every trial job first.","errorWrongTrack":"This action doesn't apply to this kind of application.","exportCsvCount":"Export CSV ({n})","fieldLastNameOptional":"Last name (optional)","filterAllAreas":"All areas","filterAllCities":"All cities","filterAllCountries":"All countries","filterAllProfessions":"All trades and roles","filterApplied":"Date applied","filterCountry":"Country","filterLanguage":"Language","filterLocation":"Location","filtersTitle":"Filters","groupByLabel":"Group by","groupNone":"No grouping","groupCountry":"Country","groupProfession":"Trade / role","groupStage":"Stage","historyByApplicant":"the applicant","historyNoteDeleted":"{by} deleted a note","historyPoolTo":"{by} changed the pool to: {pool}","historyRequestCancelled":"{by} cancelled the information request","historyStatusTo":"{status} — by {by}","interviewTimeOptional":"You can leave it empty — the applicant is told we'll be in touch about the time.","manualAddBlacklisted":"This contact is on the blacklist — the applicant was not added.","manualAddHint":"Required: name, phone or email, and trade or role. You can fill in the rest later.","manualErrorCity":"The city is too long.","manualErrorDate":"The date applied isn't valid (it can't be in the future).","manualErrorEmail":"The email isn't valid.","manualErrorName":"Enter the name (up to 80 characters).","manualErrorPhone":"Enter a phone number or an email.","manualErrorProfession":"Enter the trade or role.","manualErrorSource":"Pick the source.","messageToApplicant":"Message to the applicant","nextStepTitle":"Next step","noEmailHint":"This applicant has no email — no message is sent. Tell them by phone or WhatsApp.","noExperience":"No experience given.","noLanguages":"No other languages given.","noProfession":"No trade / role","notAsked":"Not asked (older application)","noteDeleteConfirm":"Delete this note?","noteError":"The note wasn't saved. Try again.","notePlaceholder":"Internal note — the applicant never sees it…","outsideAlbania":"Outside Albania","poolRejectedHint":"This rejects the application and sends the applicant the rejection notice.","poolWaitlistHint":"The applicant gets a polite note that they're on the waiting list.","rejectReasonHint":"The reason is included in the email to the applicant.","rejectReasonLabel":"Reason","removeFilter":"Remove filter","requestAnother":"Send another request","requestBlacklisted":"The applicant is on the blacklist — nothing can be requested.","requestCopyMessage":"Copy the message","requestCustomLinkHint":"The link to send the details is added at the end automatically.","requestInfoSub":"The applicant gets a link to send them in — without filling in the form again.","requestLinkCopied":"Copied","requestMailed":"Emailed to {email}.","requestMissing":"missing","requestNoEmailHint":"This applicant has no email. After sending you get a link to pass on by WhatsApp.","requestNotMailed":"No email on file — send them the link yourself.","requestOpenNotice":"There is an open request ({items}). A new one replaces it.","requestSelectMissing":"Select everything missing ({n})","requestSendCount":"Send the request ({n})","requestSendWhatsapp":"Send on WhatsApp","requestSent":"Request created","requestStatusExpired":"Expired","requestWhat":"What are you asking for?","requestWhatsappText":"Hi {name}, this is AlbNova about your application. We need a few more things: {items}. You can send them here, without filling in the form again: {link}","savedFilterDeleteConfirm":"Delete the filter {name}?","savedFilterError":"The filter wasn't saved. Try again.","savedFilterSave":"Save","savedFilterShared":"shared","savedFilterSharedLabel":"Colleagues can see it too","savedFiltersEmpty":"No saved filters yet.","sectionContactOnly":"Contact","sectionDuplicatesOnly":"Other applications with the same contact","sectionLocation":"Location","showResults":"Show {n} applicants","showingCount":"{shown} of {total} applicants","speaksAlbanianNo":"Doesn't speak Albanian","speaksAlbanianYes":"Speaks Albanian","summaryByTrack":"By track","summaryWaiting":"Waiting for info","trackProfessionalShort":"Professional","verifiedApplicantSaid":"applicant wrote: {value}","verifiedBadge":"Corrected","verifiedError":"Not saved. Try again.","verifiedListHint":"Separate with commas.","verifiedOriginal":"The applicant's answer: {value}","sortNameAsc":"Name (A–Z)","evidenceHasCv":"Has a CV","evidenceHasCertificates":"Has certificates","evidenceHasPhotos":"Has work photos","countryAlbania":"Albania","countryKosovo":"Kosovo","countryNorthMacedonia":"North Macedonia","countryMontenegro":"Montenegro","countryGreece":"Greece","countryItaly":"Italy","countryGermany":"Germany","countryUnitedKingdom":"United Kingdom","statusSubmitted":"Submitted","statusInReview":"In review","statusScreening":"Screening","statusInterviewScheduled":"Interview scheduled","statusInterviewPassed":"Interview passed","statusTrial":"Trial","statusPermanent":"Taken on","statusHired":"Hired","statusRejected":"Rejected","nextHintSubmitted":"A new application. Start the review once you've read it, or go straight to screening.","nextHintInReview":"Check the details (a call, the documents), record the review, then book an interview or approve for a trial.","nextHintInReviewPro":"Read the CV and the documents, then invite to the second stage or hire.","nextHintScreening":"The details are being checked. When you're ready, record the review and move on to the interview or trial.","nextHintScreeningPro":"The details are being checked. When you're ready, invite to the second stage or hire.","nextHintInterviewScheduled":"After the interview, record whether it went well.","nextHintInterviewPassed":"Interview passed. Approve for a trial when you're ready.","nextHintInterviewPassedPro":"Interview passed. Hire when you're ready.","nextHintTrial":"Score each trial job, then make the decision."},"apply":{"close":"Close","backToHub":"Back to the choice","hubHeading":"Apply to AlbNova","hubIntro":"Two ways in, because it is not the same job: the trade of an independent tradesperson, and the professional position of a design studio. Pick yours — either one takes under five minutes.","hubFreelancerEyebrow":"Freelancers","hubFreelancerTitle":"Independent tradespeople","hubFreelancerWho":"Plumber, electrician, heating and cooling, general contractor — and every other trade, working independently.","hubFreelancerCta":"Apply for a trade","hubFreelancerAlt":"A finished wall with lit timber shelving and a fluted timber panel","hubProfessionalEyebrow":"Professional positions","hubProfessionalTitle":"Design and studio","hubProfessionalWho":"Architect, 3D modeller, interior designer, engineer — the design work, before the build begins.","hubProfessionalCta":"Apply for a professional position","hubProfessionalAlt":"A group of people around a table discussing a project","hubTrackTitle":"Applied before?","hubTrackBody":"Enter the tracking code you were given when you sent the application and see where it got to.","hubTrackCta":"Check","freelancerTitle":"Trade application","professionalTitle":"Professional position application","stepWhoYouAre":"Who you are","stepYourWork":"Your work","stepYourRole":"Role and CV","stepIndicator":"Step {current} of {total} · {label}","doneTitle":"Application sent","doneText":"Thank you, {name}. We will read your application and come back to you as soon as we have. Keep the code below — with it and your email you can check where it got to at any time.","doneTextProfessional":"Thank you, {name}. We have your application and your CV. We will answer by email and carry on from there; the code below lets you check the status in the meantime.","viewStatus":"See the application status","cancel":"Cancel","back":"Back","next":"Continue","submit":"Send the application","submitting":"Sending…","stepErrorSummary":"This step has empty or incorrect fields — see below.","submitError":"Something went wrong — please try again.","firstNameLabel":"First name","lastNameLabel":"Surname","emailLabel":"Email address","dobLabel":"Date of birth","dobDayLabel":"Day","dobMonthLabel":"Month","dobYearLabel":"Year","dobMonthJan":"January","dobMonthFeb":"February","dobMonthMar":"March","dobMonthApr":"April","dobMonthMay":"May","dobMonthJun":"June","dobMonthJul":"July","dobMonthAug":"August","dobMonthSep":"September","dobMonthOct":"October","dobMonthNov":"November","dobMonthDec":"December","dobInvalid":"That date is not right. Pick the day, month and year you were born.","cityLabel":"City you live in","cityPlaceholder":"e.g. Elbasan","phoneLabel":"Phone number","phonePlaceholder":"+355 …","privacyNote":"We use what you write here only to review your application. We do not ask for an identity document at this stage. How we store it and for how long is in the <link>privacy notice</link>.","remindConsentLabel":"Remind me by email if I don't finish my application","remindConsentHint":"We keep what you have typed so far and write to you once or twice, with a link to carry on. It is deleted after 30 days, or as soon as you untick this. More in the <link>privacy notice</link>.","draftRestored":"You are back where you left off. If you had attached files, add them again.","draftGone":"This link no longer works — the application was sent, has expired or was deleted. You can start again.","ssrContinueNote":"The remaining steps — your trade, when you can work, your CV — need a browser with JavaScript. In the meantime message us on WhatsApp or call and we will finish it together.","ssrWait":"One moment — opening…","ssrReceivedTitle":"Your details stayed on this screen","ssrReceivedBody":"Without JavaScript we cannot save them yet. Call or message us on WhatsApp and we will finish the application together.","positionsLabel":"Trades you work in","positionsPlaceholder":"Search or add a trade…","availabilityLabel":"When you can work","availabilityHint":"If you already know. We can also sort it out by phone.","availWeekdays":"Weekdays","availWeekends":"Weekends","availEvenings":"Afternoons and evenings","hoursDisclosure":"Adjust the hours day by day","hoursDisclosureHint":"Only if your week is more specific than that. It is not required.","scheduleLabel":"Working hours","scheduleHint":"the hours for each day","open":"Open","closed":"Closed","opensAt":"Starts at","closesAt":"Ends at","dayMon":"Monday","dayTue":"Tuesday","dayWed":"Wednesday","dayThu":"Thursday","dayFri":"Friday","daySat":"Saturday","daySun":"Sunday","optionalNote":"Nothing here is required. Photos of your work, though, help us more than anything else.","optionalTag":"(if you want)","callMeCta":"I would rather have a call","callMeCtaSub":"I will send the rest on WhatsApp. You send the application now, with nothing more to fill in.","callMeChosenTitle":"We will call you","callMeChosenBody":"There is nothing left to fill in. Send the application and we will ring the number you gave above; we will finish the rest on WhatsApp.","callMeUndo":"I will fill it in myself","skillsLabel":"Skills","skillsPlaceholder":"Search or add a skill…","languagesLabel":"Languages","languagePlaceholder":"Language (e.g. Albanian)","levelPlaceholder":"Level…","removeLanguage":"Remove language","addLanguage":"Add another language","levelBeginner":"Beginner","levelIntermediate":"Intermediate","levelFluent":"Fluent","levelNative":"Native","experienceDisclosure":"Work history","experienceNote":"Add where you have worked before. Leave it empty if you are just starting out.","experienceEntry":"Experience {n}","removeExperience":"Remove experience","rolePlaceholder":"Role / position","employerPlaceholder":"Employer","yearsPlaceholder":"Years (e.g. 2019–2023)","descriptionPlaceholder":"What did you do?","addExperience":"Add another experience","resumeLabel":"CV","resumeHint":"PDF, Word or photo, up to 10MB","resumeButton":"Attach your CV","drivingLicense":"I hold a valid driving licence","additionalLabel":"Anything else","additionalPlaceholder":"Other qualifications, or anything you want us to know","roleLabel":"Which position are you applying for","rolePickPlaceholder":"Pick a position…","roleArchitect":"Architect","roleModeller":"3D modeller","roleInteriorDesigner":"Interior designer","roleCivilEngineer":"Civil engineer","roleElectricalEngineer":"Electrical engineer","roleMechanicalEngineer":"Mechanical engineer","roleOther":"Something else","roleOtherLabel":"Say it in your own words","roleOtherPlaceholder":"e.g. Structural designer","portfolioUrlLabel":"Link to your portfolio","portfolioUrlHint":"Behance, Issuu, Drive — any link that opens without a password.","portfolioLabel":"Portfolio as a file","portfolioHint":"a PDF of your work, if that is easier","portfolioButton":"Attach the portfolio","linkedinLabel":"LinkedIn profile","additionalProfessionalPlaceholder":"The software you use, the projects you worked on, anything else you want us to know","addCustom":"Add “{q}”","removeTag":"Remove {v}","chooseFile":"Choose a file","removeFile":"Remove the file","fileUploading":"Uploading…","fileUploadError":"The upload failed — please try again.","fileTooLarge":"That file is larger than 10MB.","fileWrongType":"We can't take this type of file. Attach a PDF, a Word file (.doc, .docx) or a photo (JPG, PNG).","uploadProgress":"Uploading… {percent}%","trackingCodeLabel":"Your tracking code","trackingCodeHint":"Keep this code — you will need it, together with your email, to check the status of your application.","trackingLink":"Track your application","trackTitle":"Track your application","trackSubtitle":"Enter your tracking code and email to check the status of your application.","trackCodeLabel":"Tracking code","trackCodePlaceholder":"AN-…","trackEmailLabel":"Email address","trackEmailPlaceholder":"you@example.com","trackFormError":"Enter your tracking code and email.","trackSubmit":"Check the status","trackSubmitting":"Checking…","trackNotFound":"No application was found for that code and email.","trackError":"Something went wrong — please try again.","trackCreated":"Sent on {date}","trackUpdated":"Last updated on {date}","errDuplicate":"You already have an application in progress.","errSubmitFailed":"We could not send your application. Please try again.","errRateLimited":"You tried a few times in a row. Wait a minute and try again — nothing you wrote is lost.","fieldInvalid":"Not valid","attachRequired":"You need to attach {label}.","fieldProblem":"The “{field}” field has a problem.","docProblem":"Check {label}: one file was not accepted. Remove it and attach it again.","docProblemGeneric":"One of the attached files was not accepted. Remove it and attach it again.","docCv":"your CV","docPortfolio":"your portfolio","docGeneric":"a required document","reviewName":"Name","reviewPhone":"Phone","reviewEmail":"Email","reviewCity":"City","reviewRole":"Position","reviewPositions":"Trades","reviewAvailability":"When you can work","reviewCallMe":"Phone call","reviewCallMeYes":"Yes, we will call you","reviewDocumentsCount":"{count, plural, =0 {none} one {# file uploaded} other {# files uploaded}}","reviewNotProvided":"—","doneReviewWindow":"Reviewed within 5 working days.","doneContactPrompt":"Questions in the meantime?","shellErrorTitle":"This step did not load","shellErrorBody":"What you have filled in so far is not lost. Try opening this step again, or go back.","shellErrorRetry":"Try again","shellErrorBack":"Go back","valRequired":"Required","valEmail":"Enter a valid email address","valPickPosition":"Pick at least one trade","valClosingAfterOpening":"The end time has to be after the start time","valPickRole":"Pick a position","valRoleTooLong":"Up to {max} characters","valCvRequired":"A CV is required for this position","valUrl":"Enter a full link, starting with http:// or https://","countryLabel":"Country you live in","countryOtherLabel":"Type your country","countryAlbania":"Albania","countryKosovo":"Kosovo","countryNorthMacedonia":"North Macedonia","countryMontenegro":"Montenegro","countryGreece":"Greece","countryItaly":"Italy","countryGermany":"Germany","countryUnitedKingdom":"United Kingdom","countryOther":"Other","cityPickHint":"Type a few letters and pick it from the list. If it isn't there, choose “Other”.","citySearchPlaceholder":"e.g. Elbasan","cityLoading":"Loading towns…","cityOther":"Other — my town isn't listed","cityOtherHint":"Type the name of your town or village.","cityBackToList":"Pick from the list","countyOf":"{county} county","inAlbaniaQuestion":"Are you in Albania right now?","speaksAlbanianQuestion":"Do you speak Albanian fluently?","answerYes":"Yes","answerNo":"No","valPickCity":"Pick your town from the list, or choose “Other” and type it.","valAnswerYesNo":"Choose “Yes” or “No”.","valPickAreas":"Pick at least one municipality, or all of Albania.","areasLabel":"Where you can work","areasHint":"The municipalities you're ready to travel to for work. A whole county takes one tap.","areasAllAlbania":"All of Albania","areasAllAlbaniaSub":"I'll travel for work anywhere in the country.","areasLoading":"Loading municipalities…","areasUnavailable":"The list of municipalities didn't load just now. Choose “All of Albania” and we'll sort out the details by phone.","areasPickedCount":"{count} selected","areasWholeCounty":"Whole county","photosLabel":"Photos of your work","photosHint":"Up to 20 photos of jobs you've finished — a bathroom, a tiled wall, a drywall ceiling. They tell us more than any CV.","photosButton":"Add photos","certificatesLabel":"Certificates","certificatesHint":"Courses, licences or trade certificates — PDF or photo, up to 5.","certificatesButton":"Add a certificate","stronglyRecommended":"Strongly recommended","evidenceLimitNote":"You can add up to {max}. The rest weren't added.","evidenceRetry":"Try again","evidenceRemove":"Remove {name}","evidenceUploading":"Uploading…","evidenceCount":"{count} of {max} uploaded","referralCodeLabel":"Referral code","referralCodeHint":"If someone who works with AlbNova invited you, type the code they gave you.","stepShowYourWork":"Show your work","stepReview":"Check and send","reviewIntro":"Take one more look at what you're sending. To change something, press “Edit” next to that part.","reviewEdit":"Edit","reviewCountry":"Country","reviewInAlbania":"In Albania right now","reviewSpeaksAlbanian":"Fluent in Albanian","reviewAreas":"Where you work","reviewPhotos":"Photos","reviewPhotosCount":"{count, plural, =0 {no photos} one {# photo} other {# photos}}","reviewCertificates":"Certificates","reviewUploadsPending":"Some files are still uploading. Wait a moment and try again.","reviewUploadsFailed":"{count, plural, one {# file didn't upload and won't be sent} other {# files didn't upload and won't be sent}}. You can retry them on the previous step.","reviewConsent":"When you press “Send the application”, AlbNova uses these details only to review your application and to contact you about it. How we keep them is in the <link>privacy notice</link>.","docCertificates":"the certificates","docPhotos":"the work photos","cannotApplyTitle":"We can't take this application online","cannotApplyBody":"We can't accept this application through the website. If you think something's wrong, call us or message us on WhatsApp.","doneNextLabel":"In the meantime, get to know us","doneCardProjectsTitle":"Our projects","doneCardProjectsBody":"Finished work, and how we did it.","doneCardHomeTitle":"Home page","doneCardHomeBody":"Who we are and how we work.","doneCardServicesTitle":"Services","doneCardServicesBody":"What we do for our customers.","updateTitle":"Complete your application","updateLoading":"Opening the request…","updateInvalidTitle":"This link is no longer valid","updateInvalidBody":"The link may have expired or already been used. Call us or message us on WhatsApp and we'll send it again.","updateDoneTitle":"Thank you — we've got it!","updateDoneBody":"Our team will look it over and get back to you. You can follow your application's status any time with your code.","updateGreeting":"Hello, {name}","updateIntro":"To carry on reviewing your application we need a few more things. Add what you have below — even part of it helps.","updateCodeLine":"Application {code}","updateMessageFrom":"Message from the AlbNova team","updateExperienceLabel":"Your experience","updateExperiencePlaceholder":"Where you've worked, for how long, what kind of jobs","updateAvailabilityNote":"Or put it in your own words (e.g. Monday to Friday, after 4 pm)","updateLanguagesPlaceholder":"e.g. Albanian native, Italian intermediate","updateLicenceQuestion":"Do you have a valid driving licence?","updateOtherLabel":"Your answer","updateNothingYet":"Add at least one of the things we asked for before sending.","updateSubmitError":"We couldn't send it. Try again in a moment.","updateSubmit":"Send","updatePrivacy":"These details are added to your application and used only to review it — <link>privacy notice</link>."},"auth":{"signIn":"Sign in","createAccount":"Create account","createAnAccount":"Create an account","welcomeBack":"Welcome back","welcomeName":"Welcome, {name}","friend":"friend","titleSignup":"Create your account","subSignin":"Sign in to pick up your projects, quotes and work in progress.","subSignup":"Open an account to request a quote and follow the work from plan to handover.","takingYouToAccount":"Taking you to your account…","devEmployee":"Quick sign-in (employee)","devUnavailable":"Quick sign-in is not available here.","devFailed":"Quick sign-in did not complete. Please sign in normally.","showcaseHeadline":"From plan to handover, by a single team.","showcaseSub":"Bathrooms, kitchens, pools and solar hot water. Create your account and follow the scope, the quote, the fitting and the handover in one place.","orContinueEmail":"or continue with email","emailLabel":"Email","emailAddressLabel":"Email address","emailPlaceholder":"you@example.com","passwordLabel":"Password","newPasswordLabel":"New password","fullNameLabel":"Full name","namePlaceholder":"e.g. Jane Doe","show":"Show","hide":"Hide","rememberMe":"Remember me","forgotPassword":"Forgot password?","checkingSession":"Checking your session…","verifying":"Verifying…","referralLabel":"Referral code","optional":"(optional)","referralHint":"You were referred by {contact}","referralLinked":"You're now linked with <b>{contact}</b>.","noAccountYet":"Don't have an account yet?","alreadyHaveAccount":"Already have an account?","employeeQuestion":"Are you an employee?","goToStaffLogin":"Go to staff login","nameRequired":"Please enter your name.","emailRequired":"Please enter your email.","emailInvalid":"Please enter a valid email address.","passwordRequired":"Please enter your password.","passwordMin":"At least {min} characters","passwordTooShort":"Password must be at least {min} characters.","tooManyAttempts":"Too many attempts. Please wait a moment and try again.","networkError":"Network error. Please try again.","socialUnavailable":"This sign-in method isn't available right now.","socialCancelled":"Sign-in was cancelled. You can try again or use your email address.","socialNoEmail":"That account didn't share an email address, which we need to create your account. Please sign up with your email instead.","socialError":"Something went wrong during sign-in. Please try again.","socialConnectError":"Could not connect to {provider}. Please try again.","employeePortalTag":"Employee portal","staffSignIn":"Staff sign-in","staffSub":"Staff accounts are <strong>provisioned only</strong>. Use the credentials your administrator gave you.","companyEmailLabel":"Company email","companyEmailPlaceholder":"you@albnova.com","staffForgotIntro":"Enter your work email and we'll send you a link to choose a new password.","backToStaffSignIn":"Back to staff sign-in","inviteTitle":"Set your password","inviteIntro":"Choose a password to activate your AlbNova account.","inviteDone":"Your password is set — you can sign in now.","inviteLinkInvalid":"This invitation has expired or has already been used. Ask an administrator to send a new one.","setPassword":"Set password","signInToPortal":"Sign in to portal","loadingPortal":"Loading your portal…","notOnTeam":"Not on the team yet?","applyNow":"Apply now","justShopping":"Just shopping?","goToClientLogin":"Go to client login","panelHeadline":"The portal built for AlbNova's crews.","staffOnlyEncrypted":"Staff only · encrypted","resetPasswordTitle":"Reset your password","forgotIntro":"Enter your email and we'll send you a link to reset your password.","resetLinkSent":"If an account exists for <strong>{email}</strong>, we've sent a reset link.","sending":"Sending…","sendResetLink":"Send reset link","backToSignIn":"Back to sign in","checkInboxTitle":"Check your inbox","checkInboxSub":"We've sent a verification link to","returnAfterVerify":"Once you verify your email and sign in, you'll be taken back to your project summary. Your answers are saved with your account.","resendVerificationEmail":"Send the link again","resendConfirmation":"If that address still needs verifying, we've sent a new link.","verifyBeforeSignIn":"Verify your email address before signing in. Check your inbox for the link we sent.","chooseNewPassword":"Choose a new password","missingToken":"This reset link is missing or invalid.","resetLinkExpired":"This reset link has expired. Please request a new one.","resetFailed":"Couldn't reset your password. Please try again.","passwordUpdated":"Your password has been updated.","goToSignIn":"Go to sign in","backToApp":"Back to the app","saving":"Saving…","updatePassword":"Update password","emailVerificationTitle":"Email verification","verifyIntro":"To finish, choose the password for your account. It can be the one you typed when you signed up.","verifySubmit":"Confirm and sign in","verifyDone":"Your email is verified. Taking you to your account…","verifyFailed":"We couldn't confirm your account. Please try again.","verifyReferral":"Invited by: {contact}","verifyReferralHint":"Untick this if you don't know this person.","verifyLinkInvalid":"This verification link is invalid or has expired.","errServerUnreachable":"Can’t reach the server. Check your connection.","errEmailTaken":"That email is already registered.","errCredentials":"Incorrect email or password.","passwordResetRequiredForm":"Passwords now need at least 12 characters. Reset yours to continue.","errAccessDenied":"Access denied.","errGeneric":"Something went wrong. Please try again.","errEmployeeProvisioned":"Employee accounts are provisioned by AlbNova staff. Contact your manager.","mfaTitle":"Two-step verification","mfaSub":"Enter the 6-digit code from your authenticator app.","mfaRecoverySub":"Enter one of the recovery codes you saved when you set this up.","mfaCodeLabel":"Authentication code","recoveryCodeLabel":"Recovery code","mfaVerify":"Verify","mfaLostDevice":"Lost your phone? Use a recovery code","mfaUseCodeInstead":"Use my authenticator app instead","mfaInvalidCode":"That code is not right. Try the current one from your app.","enter6Digit":"Enter the 6-digit code.","enterRecoveryCode":"Enter a recovery code.","helpPrompt":"Need help?","helpLink":"Contact us","confirmPasswordLabel":"Repeat the password","passwordRuleMatch":"Both fields match","passwordsDontMatch":"The passwords don't match.","passwordTooLong":"That password is too long.","signInWith":"Sign in with <strong>{email}</strong> and the password you just chose."},"dossier":{"groupCv":"CV","groupCertificates":"Certificates","groupPhotos":"Work photos","groupPortfolio":"Portfolio","groupOther":"Other","kindGovernmentId":"ID document","kindPhoto":"Personal photo","empty":"No documents sent.","untitled":"Untitled document","openNewTab":"Open in a new tab","download":"Download","showPreview":"Show preview","hidePreview":"Hide preview","previewTitle":"Preview of {name}","noPreview":"This file type can't be shown here. Download it to open it.","openImage":"Open photo {name}","lightboxLabel":"Photo {index} of {count}: {name}","counter":"{index} / {count}","close":"Close","previous":"Previous photo","next":"Next photo","dossierButton":"Download dossier (PDF)","dossierHint":"All details, the CV and the photos in one PDF"},"jobs":{"yourFigure":"Your figure","figureFromLead":"the crew lead sets your figure","applyDeadlineLabel":"Application deadline","applyDeadline":"Application deadline: {date}","noDeadline":"no deadline","applicationsClosed":"Applications closed","whyBusy":"You are booked those days","trialBoardNotice":"During the trial we hand you the work","trialBoardSub":"We give you the job and tell you. You read the board like everyone else.","errTrialWorker":"During the trial we hand you the work.","errDeadlinePassed":"Applications for this job have closed.","errUndertakingRequired":"Sign the undertaking under Jobs before applying.","withdrawConfirmTitle":"Withdraw this application?","withdrawPenaltyNote":"Withdrawing is free, but withdrawing often after applying lowers your ranking.","confirmWithdraw":"Yes, withdraw","keepApplication":"Leave it as it is","yourRank":"Your rank","tier":"Tier","thisMonth":"this month","atRisk":"at risk","topTier":"top tier","jobQuality":"Job quality","jobSpeed":"Job speed","reviewsCount":"Reviews · {n}","experience":"Experience","earnedPerMonth":"Earned / mo","applications":"Applications","performanceLabel":"Performance","performanceCounts":"{score} · {customer} customer / {internal} internal","earnings":"Earnings","amountPaid":"{amount} paid","amountDisputed":"{amount} disputed","paid":"Paid","disputed":"Disputed","referrals":"Referrals","amountReadyForPayout":"{amount} ready for payout","yourReferralCode":"Your referral code","copied":"Copied ✓","copyCode":"Copy code","codeNote":"One code per worker — it links new customers to you. It's never a discount.","shareLink":"Share link","copyLink":"Copy link","programPays":"This program pays","feeNote":"flat, per new customer — paid once when they place their first qualifying order or pay a job deposit. You can still quote and do their job yourself.","privacyNote":"You only ever see a referred customer's first name, city and status — never their contact details or what they bought.","allClear":"All clear","activeCount":"Active · {n}","noActiveJobs":"No active jobs right now","noActiveJobsSub":"Apply to an open job below — once a manager confirms your application, it shows up here.","browseOpenJobs":"Browse open jobs","openTeamTasks":"Open team & tasks","viewJob":"View job","statusInProgress":"In progress","statusAssigned":"Assigned","statusCompleted":"Completed","statusAcceptedTeamFormed":"Accepted · team formed","statusClosed":"Closed","statusCancelled":"Cancelled","acceptJob":"Accept job","accepting":"Accepting…","errAcceptJob":"Couldn't accept this job.","readyForReview":"Ready for review","appInReview":"In review","appAccepted":"Accepted","appNotSelected":"Not selected","appWithdrawn":"Withdrawn","crew":"Crew","rankedOf":"Ranked #{pos} of {count}","appliedAgo":"Applied {when}","crewOf":"Crew of {n}","worker":"worker","notEligibleNeeds":"Not eligible — needs {trades} trade","datesWithManager":"Dates set with the manager","stageOfProject":"Stage {seq} of {count} · project","you":"you","estTotalQuota":"est. total quota","applied":"Applied","apply":"Apply","errRankSummary":"Couldn't load your rank summary (error {code}).","errBoard":"Couldn't load the job board (error {code}). Refresh to retry.","network":"network","goodMorning":"Good morning, {name}","activeJobsCount":"{n, plural, one {# active job} other {# active jobs}}","applicationsCount":"{n, plural, one {# application} other {# applications}}","openJobsCount":"{n, plural, one {# open job} other {# open jobs}}","inReviewAnd":"in review, and","youCanApplyFor":"you can apply for.","loadingDashboard":"Loading your dashboard…","yourApplications":"Your applications","managerReviewsRanks":"A manager reviews & ranks all applicants","openJobsHeading":"Open jobs — apply near you","cityOnly":"{city} only","eligibleForMe":"Eligible for me","noOpenJobs":"No open jobs right now — check back soon.","noOpenJobsFilters":"No open jobs match these filters — try turning one off.","youdApplyHere":"you'd apply here","sitePhoto":"site photo","moreMedia":"+{n} more","yourApplication":"Your application","crewLeaderAddedYou":"Your crew leader put you on this application — the manager decides.","applicationSubmittedRanked":"Application submitted — ranked automatically, the manager decides.","withdrawing":"Withdrawing…","withdrawApplication":"Withdraw application","applicationAccepted":"Application accepted — you're on the team for this job.","applicationRejected":"The manager chose other applicants for this one.","applicationWithdrawn":"You withdrew this application.","priorityWithLevel":"{level} priority","kmAway":"km away","jobDescription":"Job description","starts":"Starts","expectedEnd":"Expected end","estimatedTime":"Estimated time","crewNeeded":"Crew needed","workersCount":"{n, plural, one {# worker} other {# workers}}","rolesCount":"{n, plural, one {# role} other {# roles}}","crewBudgetSplit":"Crew & budget split","totalQuota":"Total quota","eachRolePctCompleted":"Each role earns a % cut of the completed work.","noRolesYet":"No roles listed for this job yet.","yourCutIfSelected":"Your cut, if selected","roleOfQuota":"{trade} role · {pct}% of quota","noRolesOpen":"No roles open","applyAs":"Apply as","eligible":"Eligible","notYourTrade":"Not your trade","howYoudRank":"How you'd rank","rankSummary":"With tier <b>{tier}</b> and <b>{km} km</b> distance, you'd likely land in the <accent>top {pct}%</accent> of {trade} applicants. A job manager makes the final call.","matching":"matching","bookedNear":"You're booked near these dates — your priority drops −{penalty} so free workers rank first.","datesOverlap":"These dates overlap with <b>{title}</b> — you can't apply while booked on conflicting work.","anotherBookedJob":"another booked job","availableAuthorize":"I'm available for the full <b>{range}</b> window and authorise AlbNova to share my profile & tier with the job manager.","applying":"Applying…","applyAsTrade":"Apply as {trade}","applyAsCrew":"Apply as crew","applicantsSoFar":"{n, plural, one {# applicant so far} other {# applicants so far}}","closesInDays":"{n, plural, one {closes in # day} other {closes in # days}}","approxDays":"{n, plural, one {~# day} other {~# days}}","stageSubDone":"Done · {date}","stageSubActive":"In progress · now","stageSubOpen":"Open · apply","stageSubUpcoming":"Upcoming","selectStageToApply":"Select a stage to apply","applyStage":"Apply — Stage {seq}","applyStages":"Apply — Stages {list} & {last}","stageCountProject":"{n}-stage project","fullTimeline":"Full timeline","totalProjectBudget":"Total project budget","projectTimeline":"Project timeline","stageOfActive":"Stage {seq} of {count} active","stageOf":"Stage {seq} of {count}","stageDates":"Stage dates","workersNeeded":"Workers needed","stageBudget":"Stage budget","rolesSplitThisStage":"Roles & split · this stage","stageQuota":"Stage quota","eachRolePctStage":"Each role earns a % cut of the stage.","stageStaffed":"This stage is already staffed — no open roles.","noStagesPublished":"No stages published for this project yet.","applyToStages":"Apply to stages","noStagesOpen":"No stages are open for applications.","stageWord":"Stage","tradesNotYours":"{trades} — not your trade","rolesAnnouncedLater":"Roles announced later","applyWholeProject":"Apply for whole remaining project","selectedTotalIfAccepted":"Selected total, if accepted","acceptingReserves":"Accepting reserves <b>{range}</b> in your calendar. Nearby jobs will drop your priority.","availableSelectedStages":"I'm available for the selected stage dates and authorise AlbNova to share my profile & tier with the job manager.","applicantsCount":"{n, plural, one {# applicant} other {# applicants}}","managerReviewsAfterStage":"manager reviews after Stage {seq}","stageStatusDone":"Done","stageStatusActive":"Active","stageStatusOpen":"Open","stageStatusUpcoming":"Upcoming","errApply":"Couldn't submit your application — try again.","errWithdraw":"Couldn't withdraw the application — try again.","openJobs":"Open jobs","loadingJob":"Loading job…","jobNotFound":"This job doesn't exist or is no longer listed.","errLoadJob":"Couldn't load this job — try again shortly.","jobNoLongerListed":"This job is no longer listed.","mainEmployee":"Main employee","coordinatesCloses":"Coordinates & closes the job · {pct}%","sectionDone":"Section done","ownSection":"own section","errUpdateTask":"Couldn't update that task.","errPostProgress":"Couldn't post the progress update.","errSignOffSection":"Couldn't sign off your section.","sectionsPending":"Some sections are still pending.","errCompleteJob":"Couldn't complete the job.","errUpload":"Upload failed — images/video up to 15 MB each.","loadingTeam":"Loading team…","activeJobs":"Active jobs","notOnTeam":"You're not on this job's team.","errLoadTeam":"Couldn't load this job's team.","expectedLower":"expected","yourRolePay":"Your role & pay","submittedForReviewBanner":"<b>Submitted for review.</b> The job manager verifies the work — earnings and ratings are recorded once it's approved.","overallProgress":"Overall job progress","managedByLead":"managed by lead","progressPercent":"Progress percent","progressNotePlaceholder":"Short note for the customer & manager","progressNote":"Progress note","update":"Update","jobTeam":"Job team","noTeamMembers":"No team members on this job yet.","yourTasks":"Your tasks","noTasksAssigned":"No tasks assigned to you yet.","teamTasks":"Team tasks","youLeadJob":"You lead this job","leadPanelCopy":"Highest-rated worker in the largest-share role. You coordinate the team and submit the finished job for review — the job manager verifies completion and releases pay.","verifiedClosed":"Verified & closed by the job manager.","awaitingVerificationLead":"<b>Awaiting manager verification.</b> The work is submitted — you'll be notified once it's verified or sent back.","evidenceOptional":"Evidence (optional)","uploading":"Uploading…","evidence":"evidence","submitForReview":"Submit for review","enabledWhenSectionsSignedOff":"Enabled once all sections are signed off","completeMySection":"Complete my section","memberPanelCopy":"Members complete their own sections — the lead submits the job and the manager verifies it.","sectionSignedOff":"Section signed off","submittedAwaiting":"Submitted — awaiting manager verification.","ifYouWereMember":"If you were a member","whoClosesJob":"Who closes this job","otherLead":"Members see \"Complete my section\" — the lead submits, the job manager verifies.","nameIsMainEmployee":"{name} is the main employee","mainEmployeeCoordinates":"The main employee coordinates the team","leadSubmitsForVerification":"— the lead submits the job for the manager's verification.","coordination":"Coordination","comingWithMessaging":"Coming with messaging","messageTeamManager":"Message team & manager","jumpToProgressForm":"Jump to the progress form","onlyLeadPosts":"Only the lead posts progress updates","postProgressUpdate":"Post a progress update","accepted":"Accepted","ends":"ends","bookedCantApply":"Booked — can't apply here","appliedInReview":"Applied · in review","reserved":"Reserved","available":"Available","errLoadSchedule":"Couldn't load your schedule — please try again.","yourSchedule":"Your schedule","daysBooked":"{n, plural, one {# day booked} other {# days booked}}","availableThisWeek":"{n} available this week","scheduleSubFallback":"Current and upcoming jobs, reserved dates, and conflicts.","previousWeek":"Previous week","nextWeek":"Next week","loadingSchedule":"Loading your schedule…","noSchedule":"No schedule to show yet.","thisWeek":"This week","daysCount":"{n, plural, one {# day} other {# days}}","bookedAccepted":"booked (accepted)","pendingReview":"pending review","availableLower":"available","overlapRules":"Overlap rules","overlapRule1":"You <b>can't apply</b> to a job that overlaps a start you're already booked for.","overlapRule2":"Jobs <b>close but not overlapping</b> can be applied to, but your priority drops <b>−{penalty}</b> so free workers rank first.","reservedAhead":"Reserved ahead","heldForYou":"held for you","youCap":"You","crewAlreadyApplied":"Your crew has already applied to this job.","jobNotAccepting":"This job is no longer accepting applications.","onlyLeaderSubmits":"Only the crew leader submits crew applications.","completeTrialFirst":"Complete the trial before applying for jobs.","leader":"Leader","developing":"developing","errLoadThatJob":"Couldn't load that job.","errLoadBoard":"Couldn't load the job board.","errApplicationFailed":"Application failed — try again.","loadingOpenJobs":"Loading open jobs…","noCrewJobs":"No open jobs a crew can cover right now.","targetJob":"Target job","needs":"Needs","chooseWhoWorks":"Choose who works this one","slotsCount":"{n, plural, one {# slot} other {# slots}}","noMemberCovers":"No crew member covers {trade}.","selectionRanksAs":"This selection ranks as","liftCarried":"lift — carried by the crew","vsYourSolo":"vs your solo {tier}","vsTheirSolo":"vs their solo {tier}","crewApplicationSubmitted":"Crew application submitted — the manager reviews all applicants.","submitting":"Submitting…","submitCrewApplication":"Submit crew application","crewFootNote":"Members can also apply solo · leader picks per job","errLoadCrew":"Couldn't load your crew — try again shortly.","loadingCrew":"Loading crew…","noCrewYet":"You're not part of a crew yet. Crews are formed by workers and approved by management.","approved":"Approved","pendingApproval":"Pending approval","membersCount":"{n, plural, one {# member} other {# members}}","youAre":"you are","crewLeader":"the crew leader","aMember":"a member","approvedByManagementOn":"approved by management on {date}","awaitingManagementApproval":"awaiting management approval","crewAvgRank":"Crew avg rank","members":"Members","onlyLeaderSubmitsNote":"Only the crew leader submits crew applications. You can still apply solo to any job.","aJob":"A job","timeOff":"Time off","timeOffLower":"time off","noTimeOff":"No time off declared.","removing":"Removing…","remove":"Remove","fieldStartDate":"Start date","fieldEndDate":"End date","reasonOptional":"Reason (optional)","reasonPlaceholder":"e.g. Family trip","adding":"Adding…","addTimeOff":"Add time off","errLoadTimeOff":"Couldn't load your time off — try again shortly.","errAddTimeOff":"Couldn't add that time off — try again.","errRemoveTimeOff":"Couldn't remove that time off — try again.","invitations":"Invitations","acceptInvite":"Accept","declineInvite":"Decline","inviteJobClosed":"This job is no longer accepting applications.","inviteRoleGone":"That role no longer exists on this job.","inviteAlreadyApplied":"You've already applied to this job.","inviteTradeMismatch":"This role requires a trade you're not verified for.","inviteOverlap":"You're already booked on conflicting dates.","inviteClosed":"This invitation is no longer open.","inviteRespondFailed":"Couldn't respond to this invitation — try again.","cancel":"Cancel","startCrewTitle":"Start a crew","startCrewSub":"Form a crew to apply for jobs together — management approves it before you can submit as a crew.","crewNamePlaceholder":"Crew name","createCrew":"Create crew","creatingCrew":"Creating…","errCreateCrew":"Couldn't create the crew — try again.","crewExistsErr":"You're already part of a crew.","crewGoneErr":"That crew no longer exists.","crewRejectedNote":"\"{name}\" wasn't approved by management. You can start a new crew below.","invitedToJoin":"{leader} invited you to join {crew}","inviteMemberTitle":"Invite a member","inviteEmailPlaceholder":"Worker's email","sendInvite":"Send invite","sendingInvite":"Sending…","errSendInvite":"Couldn't send the invite — try again.","targetInCrewErr":"That worker is already in a crew.","inviteExistsErr":"You've already invited that worker.","outboundInvitesTitle":"Sent invites","invStatusPending":"Pending","invStatusAccepted":"Accepted","invStatusDeclined":"Declined","invStatusCancelled":"Cancelled","disbandCrewBtn":"Disband crew","disbandConfirm":"Disband this crew? This can't be undone.","confirmDisband":"Confirm disband","disbanding":"Disbanding…","errDisbandCrew":"Couldn't disband the crew — try again.","crewBusyErr":"This crew has an active job application — resolve it before disbanding.","leaveCrewBtn":"Leave crew","leaveCrewConfirm":"Leave this crew?","confirmLeave":"Confirm leave","leaving":"Leaving…","errLeaveCrew":"Couldn't leave the crew — try again.","leaderCannotLeaveErr":"Leaders can't leave — disband the crew instead.","errRemoveMember":"Couldn't remove that member — try again.","boardTitle":"Open jobs","boardSubAreas":"{n} for you in {places}","boardSubNoAreas":"Tell us where you work and the right jobs come first","loadingBoard":"Loading jobs…","band_recommended":"For you","band_recommended_sub":"Your trade, in the places you work","band_further":"A bit further","band_further_sub":"Your trade, outside the areas you chose. Still yours to take.","band_other":"Other work","band_other_sub":"Not a match yet — worth knowing what these ask for","viewCards":"Full view","viewCompact":"Compact view","whyArea":"Outside your areas · {place}","whyAreaPlain":"Outside the areas you chose","whyTrade":"Needs {trades}","whyRating":"Needs {need}★ — you have {have}★","whyNoRating":"Needs {need}★ — no reviews yet","whyJobs":"Needs {need} completed jobs — you have {have}","yourCutFor":"your cut as {role}","totalQuotaLabel":"total job value","morePhotosCount":"{n} photos","noAreasTitle":"You haven't chosen any areas yet","noAreasBody":"Pick the cities you work in and jobs near you come first.","setAreas":"Choose your areas","whyNoRoles":"No roles open on this job yet","openCount":"{n} open","searchPlaceholder":"Search title, city or trade","clearSearch":"Clear search","onlyOpen":"Open jobs only","viewMode":"View","viewFeed":"Feed","filters":"Filters","filtersDone":"Done","filterAny":"Any","filterCity":"City","filterTrade":"Trade","filterDistance":"Distance","filterStarts":"Starts","filterStatus":"Status","filterApplied":"Where I applied","filterNotApplied":"Not applied yet","withinKm":"Within {n} km","startsWithinDays":"Starts within {n} days","statusOpen":"Open","statusNotFound":"Not found","postedToday":"Posted today","postedYesterday":"Posted yesterday","postedDaysAgo":"Posted {n} days ago","noPhoto":"No photo","moreLabel":"more","openDetails":"Open details","saveJob":"Save","savedJob":"Saved","unsaveJob":"Remove from saved","emptyGlobalTitle":"No open jobs right now","emptyGlobalBody":"No work has been published for applications. As soon as a manager opens a new job, it will appear here.","refresh":"Refresh","refreshing":"Refreshing…","seeMyApplications":"See my applications","emptyFilteredTitle":"No jobs match these filters","emptyFilteredBody":"There is open work, but none of it matches what you have selected.","emptyFilteredHint":"Try another city or widen the distance.","clearFilters":"Clear filters","showAllJobs":"Show all jobs","lookupTitle":"Check a job's status","lookupPlaceholder":"Search by title or ID","lookupNote":"The search can tell you whether a job is open, closed, or cannot be found.","lookupSearching":"Searching…","lookupFailed":"The search failed. Try again.","lookupNoMatch":"Nothing found for “{q}”","lookupSubmit":"Search","inReviewShort":"in review","skillsNeeded":"Skills needed","privateUntilConfirmed":"The contact, entry and parking details appear once you are confirmed on the team.","appRejectedHigherRanked":"The manager picked a higher-ranked applicant.","appRejectedOtherCrew":"The manager picked different workers.","scheduleDeclareHint":"Declare your time off as soon as you know. A leave declared late is the same as a no-show.","crewIntro":"If you regularly work with the same people, start a crew and take jobs together.","boardSessionExpired":"Your session has expired. Sign in again to see the jobs.","retry":"Try again","signInAgain":"Sign in again","toErrDateInvalid":"Pick a valid date.","toErrStartPast":"The start date must be today or later.","toErrEndBeforeStart":"The end date can't be before the start date.","toErrSpanTooLong":"Time off can't run longer than 365 days.","toErrReasonTooLong":"Keep the reason under 200 characters.","toErrOverlaps":"That overlaps time off you have already declared.","toErrGeneric":"That value wasn't accepted. Check what you entered and try again.","daysOffThisWeek":"{n, plural, one {# day off} other {# days off}}","backToThisWeek":"Back to this week","crewHowTitle":"How a crew works","crewWhatIs":"A crew is a small group of workers who work together regularly and apply for a job as one. The crew takes the work together, and the pay is split by role.","crewStepCreate":"Create the crew and give it a name.","crewStepInvite":"Invite the workers who'll work with you by email. Each of them accepts for themselves.","crewStepApprove":"Management reviews the crew and approves it.","crewStepApply":"The crew lead applies for work on the crew's behalf and picks who covers each role.","crewStepYouAreHere":"you are here","crewSoloStillYours":"A crew takes nothing away: you can still apply for any job on your own, as before.","crewPendingNoComposer":"Applying as a crew opens as soon as management approves the crew. Until then you can invite members and apply on your own.","crewNameLengthErr":"A crew name must be 3–80 characters.","crewNotEligibleErr":"That email doesn't belong to a worker who can be invited.","errRefreshCrew":"The crew didn't refresh. Try again."},"journey":{"context":"Service request","expectationLine":"Once you choose, we'll tell you how it continues.","ssrChosenTitle":"You chose: {service}","ssrChosenBody":"Continuing the online steps needs a browser with JavaScript enabled. In the meantime, call us or write on WhatsApp and we'll get started together.","contextSaved":"Saved automatically","contextFallback":"Project brief","stepProgress":"Step {step} of {total}","previous":"Previous","next":"Next","back":"← Previous","continue":"Continue →","change":"Change","notAdded":"Not added","notChosen":"Not chosen","sending":"Sending…","uploading":"Uploading…","footerReview":"Nothing is confirmed until you send the brief.","footerQuestion":"One simple decision at a time.","footerOther":"You can change this before sending.","uploadFailed":"The files could not be uploaded.","uploadTooLarge":"A file is too large — images/video up to {max} MB each.","addressRequired":"Add the project address before sending the brief.","step":{"job":{"title":"Choose the work","sub":"What would you like to change?"},"support":{"title":"Choose your support","sub":"How would you like to prepare the project?"},"professional":{"title":"Professional support","sub":"How should AlbNova help first?"},"property":{"title":"Property","sub":"What kind of property is this?"},"address":{"title":"Project address","sub":"Where will the work take place?"},"bathroomLocation":{"title":"Bathroom location","sub":"Where is the bathroom in the property?"},"currentUse":{"title":"Current use","sub":"Can the bathroom be used today?"},"concern":{"title":"Main concern","sub":"What needs attention first?"},"work":{"title":"Work included","sub":"What should be included in the work?"},"problemArea":{"title":"Condition","sub":"What can you already see?"},"photos":{"title":"Photos","sub":"Would you like to show us the space?"},"measurementRoute":{"title":"Measurements","sub":"How should we get the measurements?"},"roomSize":{"title":"Room size","sub":"Add the measurements you know."},"visitDate":{"title":"Site visit","sub":"Choose a day that works for you."},"access":{"title":"Access","sub":"How will the team reach the bathroom?"},"rules":{"title":"Working rules","sub":"Are there any building rules to plan around?"},"timing":{"title":"Timing","sub":"When would you like the work to begin?"},"budget":{"title":"Budget","sub":"What range feels comfortable?"},"notes":{"title":"Final note","sub":"Is there anything else we should know?"},"review":{"title":"Project brief","sub":"Review the information before sending."},"service":{"title":"Choose the service","sub":"Choose the service you need"}},"service":{"eyebrow":"START WITH THE SERVICE","copy":"Choose the service that fits your project.","loading":"Loading services…","reassure":"✓ Not sure which one? Choose the closest option and we will help you refine it."},"jobs":{"eyebrow":"START WITH THE RESULT","copy":"Choose the closest option. AlbNova will confirm the exact work later.","reassure":"✓ Not sure? Choose the closest option and we will refine it with you.","repair":{"title":"Repair a problem","copy":"Fix a leak, blockage, damaged surface or faulty fixture."},"parts":{"title":"Replace selected parts","copy":"Change sanitary ware, storage, fittings or finishes."},"fitout":{"title":"Fit out the bathroom","copy":"Complete an unfinished bathroom with the elements it needs."},"replacement":{"title":"Full replacement","copy":"Remove the existing bathroom and build the new one."},"fallback":"Bathroom work"},"support":{"eyebrow":"CHOOSE YOUR SUPPORT","copy":"Both routes create the same clear AlbNova project brief.","reassure":"You can change routes before sending the brief.","guidedTag":"YOU DESCRIBE IT","guidedTitle":"Guide me through it","guidedCopy":"Answer one simple question at a time. Add only what you know.","guidedNote":"No site-visit fee","proTag":"ALBNOVA HELPS","proTitle":"Assess it with a professional","proCopy":"Start with a live conversation or book a paid visit to the property.","proNote":"Any fee is shown before booking"},"professional":{"eyebrow":"CHOOSE THE FIRST CONTACT","copy":"Speak online first, or choose a date for us to inspect the property.","reassure":"A conversation does not commit you to a visit.","chatTag":"LIVE CONVERSATION","chatTitle":"Talk it through online","chatCopy":"Show us what you are considering and ask what to prepare.","chatCta":"Open live consultation →","chatAlt":"AlbNova project advisers","visitTag":"PAID PROFESSIONAL VISIT","visitTitle":"Visit my property","visitCopy":"AlbNova measures the bathroom, records visible conditions and confirms access.","visitNote":"The exact fee is shown before confirmation"},"property":{"eyebrow":"PROPERTY","copy":"This helps us plan access, protection and working hours.","apartment":{"title":"Apartment","copy":"A flat in a shared building"},"house":{"title":"House","copy":"A private house or villa"},"commercial":{"title":"Commercial space","copy":"Office, hospitality or retail"}},"address":{"eyebrow":"PROJECT ADDRESS","copy":"We use this only to plan the project and any visit.","street":"Street and building","streetPlaceholder":"Street, building or house number","city":"City","cityPlaceholder":"City","postal":"Postal code","floor":"Floor","optional":"Optional"},"location":{"eyebrow":"BATHROOM LOCATION","copy":"Choose the answer that is closest.","ground":"Ground floor","upper":"Upper floor","basement":"Basement","outbuilding":"Separate building","unknown":"Not sure yet"},"currentUse":{"eyebrow":"CURRENT USE","copy":"This tells us whether the problem may be urgent.","usable":{"title":"Yes, it is usable","copy":"The room works but needs changing."},"limited":{"title":"Only partly","copy":"Some fixtures or areas cannot be used."},"closed":{"title":"No, it is out of use","copy":"The room currently cannot be used."}},"concern":{"eyebrow":"MAIN CONCERN","copy":"Choose one or more. You do not need to diagnose the cause.","leak":"Leak or water damage","finishes":"Old or damaged finishes","fixtures":"Fixtures not working","layout":"Poor layout or storage","damp":"Ventilation or damp","newLook":"A complete new look"},"work":{"eyebrow":"WORK INCLUDED","copy":"Choose everything that applies. The work list can be refined later.","shower":"Shower or bath","toilet":"Toilet & plumbing","vanity":"Vanity & storage","surfaces":"Walls & floors","lighting":"Lighting & ventilation"},"condition":{"eyebrow":"VISIBLE CONDITION","copy":"Choose only what you know. AlbNova will verify the technical details.","cracked":"Cracked or loose surfaces","moisture":"Visible moisture","mould":"Mould or poor ventilation","drainage":"Slow drainage","pressure":"Low water pressure","none":"No visible problem","other":"Something else"},"photos":{"eyebrow":"PHOTOS","copy":"Photos are optional. They help us understand the condition before a visit.","add":"Add photos or a short video","limit":"Up to 10 files. You can continue without them.","fallbackAlt":"Project photo","exampleBath":"Bathroom example","exampleVanity":"Vanity example","exampleWc":"WC example"},"measure":{"eyebrow":"MEASUREMENTS","copy":"Approximate measurements are enough for the first review.","selfTag":"NO EXTRA VISIT COST","selfTitle":"I will add what I know","selfCopy":"Enter approximate room measurements. AlbNova verifies them before final work.","visitTag":"PAID SITE VISIT","visitTitle":"Measure it for me","visitCopy":"A professional measures the room and records visible conditions and access."},"size":{"eyebrow":"ROOM SIZE","copy":"Use metres. Leave anything blank if you are unsure.","alt":"Finished bathroom showing the room proportions","length":"Length","width":"Width","height":"Height","lengthPlaceholder":"e.g. 2.4 m","widthPlaceholder":"e.g. 1.8 m","note":"These do not need to be exact. Final quantities use verified measurements."},"visit":{"eyebrow":"PAID SITE VISIT","copy":"The professional and exact arrival window are confirmed before booking.","window":"Preferred window","morning":"Morning","afternoon":"Afternoon","fee":"The exact visit fee is shown and confirmed before any booking or payment."},"access":{"eyebrow":"SITE ACCESS","copy":"Choose everything that may affect carrying tools or materials.","parking":"Street parking available","lift":"Lift available","stairs":"Stairs only","restricted":"Restricted entrance","longCarry":"Long carry from parking","confirm":"Access needs confirming","floorPrefix":"Floor {n}"},"rules":{"eyebrow":"WORKING RULES","copy":"This helps us prepare permissions, working hours and protection.","approval":"Management approval needed","hours":"Restricted working hours","neighbour":"Neighbour notice required","liftBooking":"Lift booking needed","waste":"Waste removal rules","none":"No rules that I know of"},"timing":{"eyebrow":"TIMING","copy":"We will confirm availability after reviewing the project.","flexible":"I am flexible","within_3_months":"Within 3 months","within_month":"Within a month","urgent":"As soon as possible"},"budget":{"eyebrow":"COMFORTABLE RANGE","title":"What budget range feels comfortable?","copy":"This is not a quote. It helps us shape realistic options.","under300":"Under 300,000 ALL","band300600":"300,000–600,000 ALL","band6001000":"600,000–1,000,000 ALL","over1000":"Over 1,000,000 ALL","notSure":"I am not sure yet","amountLabel":"Or add a preferred amount","amountPlaceholder":"ALL · optional"},"notes":{"eyebrow":"FINAL NOTE","copy":"Add a preference, concern or question. This step is optional.","placeholder":"For example: finishes you want to keep, access dates, or a question for the project coordinator.","reassure":"You do not need to write a technical scope. AlbNova prepares that after review."},"review":{"eyebrow":"YOUR PROJECT BRIEF","title":"Everything is ready for review.","copy":"Check the information below. AlbNova handles the technical preparation after you send it.","sectionSpace":"Project and space","sectionScope":"Scope and preparation","lineService":"Service","lineWork":"Bathroom work","lineProperty":"Property","lineAddress":"Address","lineUse":"Current use","lineConcern":"Main concern","lineIncluded":"Work included","lineMeasurements":"Measurements","lineTiming":"Timing and budget","visitOn":"AlbNova site visit · {date}","toVerify":"AlbNova to verify","readyTitle":"Ready for AlbNova review","readyCopy":"We prepare the final work list, specialist requirements, measurements check and quote.","send":"Send project brief →"},"submitted":{"title":"Thank you, {name}. Your request is sent.","copy":"We ring you as soon as we can, within our hours: {days}, {open}–{close}.","codeLabel":"Code","whatsapp":"Message us on WhatsApp","whatsappPrefill":"Hello! I've just sent request {reference} for {service}.","whatsappPrefillPlain":"Hello! I've just sent a request to AlbNova.","titlePlain":"Thank you. Your request is sent.","emailSent":"The confirmation is on its way to the email you gave.","nextLabel":"What happens next","next1Title":"We call you","next1Copy":"We talk the work through and book the visit.","next2Title":"Free visit","next2Copy":"We come to the site, measure and look at the condition.","next3Title":"A written quote","next3Copy":"You get it before any work starts.","openProject":"See it in My project"},"submit":{"invalid":"Something in your answers isn't complete. Check the steps and try again.","network":"No internet connection. Nothing was sent — try again. If the connection doesn't come back, call us and we'll take the details over the phone.","server":"Something went wrong on our side. Your answers are saved — try again in a moment, or call us and we'll start it straight away.","retry":"Try again","reload":"This service has its own questionnaire. Reopening the form — your answers are saved.","contactName":"Add your name so we know who to call.","contactPhone":"Check the phone number — it needs 8 to 15 digits.","contactEmail":"That email doesn't look right. Fix it or leave it empty.","rateLimited":"Too many attempts at once. Wait a minute and try again."},"wizard":{"stepsLabel":"Request steps","stepOf":"Step {step} of {total}","optional":"optional","unsure":"Not sure yet","toServices":"Services","continue":"Continue","send":"Send the request","firstNote":"No account and no payment. The site visit is free.","noAccount":"You don't need an account. If you add your email, we send the confirmation there.","consent":"By sending you accept the <terms>terms</terms> and the <privacy>privacy policy</privacy>.","asideTitle":"Your request","asideSummary":"Summary","asideService":"Service","photoCount":"{count, plural, one {# photo} other {# photos}}","talkTitle":"Rather talk to someone?","talkHours":"{days}, {open}–{close}","call":"Call","whatsapp":"WhatsApp","trustVisit":"Free site visit","trustQuote":"A written quote before any work","trustFree":"No obligation","cityChoose":"Choose the town","cityOther":"Another town","cityOtherPlaceholder":"Type the town","removePhoto":"Remove photo","whatsappPrefill":"Hello! I'm filling in a request for {service} and would like to talk to someone."}},"manage":{"closesAtHint":"The last day applications are accepted. Leave empty for no deadline.","consoleTitle":"Job manager console","tabJobs":"Jobs","tabRequests":"Requests","tabReviews":"Design reviews","backOffice":"Back office","hrQueue":"HR queue","logout":"Log out","roleJobManager":"Job manager","jobListings":"Job listings","jobListingsSub":"Publish work, review ranked applicants, confirm teams.","newJob":"New job","close":"Close","loadingListings":"Loading listings…","emptyListings":"No listings yet — publish the first job.","errLoadListings":"Couldn't load the job listings.","errVerify":"Couldn't verify that job.","errReopen":"Couldn't send that job back.","newJobListing":"New job listing","errPublishListing":"Couldn't publish the listing — try again.","fieldTitle":"Title","fieldCategory":"Category","fieldServiceType":"Service type","fieldCity":"City","fieldArea":"Area","fieldStreet":"Street","fieldPriority":"Priority","fieldBudget":"Budget (ALL)","fieldStartDate":"Start date","fieldEndDate":"End date","fieldStartTime":"Start time","fieldEstTime":"Estimated time","fieldClosesAt":"Applications close","fieldCustomer":"Customer","fieldDescription":"Description","fieldStarts":"Starts","fieldEnds":"Ends","fieldEstDuration":"Est. duration","phTitle":"Bathroom renovation — full fit-out","phServiceType":"Bathroom fitting","phArea":"Center","phEstDays":"~3 days","phDescription":"Scope, sequencing, what the customer ordered…","rolesNeeded":"Roles needed","budgetSplit":"Budget split: {pct}%","mustSum100":" — must sum to 100","ariaTrade":"Trade","phRoleTitleDefault":"Role title (defaults to trade)","ariaRoleTitle":"Role title","ariaSlots":"Slots","ariaPayPct":"Pay %","ariaRemoveRole":"Remove role","addRole":"Add role","saveAsDraft":"Save as Setup draft (publish later)","saving":"Saving…","saveDraft":"Save draft","publishListing":"Publish listing","statusSetup":"Setup · draft","statusOpen":"Open · accepting","statusTeamFormed":"Team formed","statusInProgress":"In progress","statusCompleted":"Completed","readyForReview":"Ready for review","verifyPay":"Verify & pay","sendBack":"Send back","statusClosed":"Closed","statusCancelled":"Cancelled","statusDisputed":"Disputed","cancelJob":"Cancel job","cancelReasonPlaceholder":"Reason for cancelling…","confirmCancelJob":"Confirm cancellation","dispute":"Dispute","disputeReasonPlaceholder":"Reason for the dispute…","confirmDispute":"Confirm dispute","closeDismissDispute":"Close (dismiss dispute)","cancel":"Cancel","errCancelJob":"Couldn't cancel that job.","errCloseJob":"Couldn't close that job.","errDisputeJob":"Couldn't dispute that job.","closeNotePlaceholder":"Optional note for the record…","confirmClose":"Confirm close","disputeDetails":"Dispute details","hideDisputeDetails":"Hide dispute details","loadingDisputeDetails":"Loading dispute details…","errDisputeDetails":"Couldn't load the dispute details.","disputeRaisedBy":"Raised by {role} · {name}","roleCustomer":"Customer","roleStaff":"Staff","unknownUser":"Unknown","evidenceFile":"Evidence {n}","resolutionRedo":"Redo requested","resolutionDismissed":"Dismissed","applicantsCount":"{n, plural, one {# applicant} other {# applicants}}","loadingApplicants":"Loading applicants…","allJobs":"All jobs","errLoadApplicants":"Couldn't load the applicants.","errListingNotFound":"That listing doesn't exist.","errAction":"That action didn't go through — the board may have moved on.","needsLabel":"Needs {needs}","closesInDays":"{n, plural, one {closes in # day} other {closes in # days}}","editStructure":"Edit structure","setupDraftTitle":"Setup draft.","setupDraftBody":"Workers can't see this listing yet — publish it when the structure is ready.","publishing":"Publishing…","publishToBoard":"Publish to board","crews":"Crews","individualRanked":"Individual {trade} · ranked","noApplicationsRole":"No applications yet for this role.","thApplicant":"Applicant","thTier":"Tier","thDist":"Dist.","thAvail":"Avail.","thQual":"Qual.","thMatch":"Match","noRolesDefined":"This listing has no roles defined.","rankAssist":"The system ranks applicants to assist — you make the final hiring decision.","teamConfirmedNote":"Team confirmed — job moved to Assigned.","teamToConfirm":"Team to confirm","noRolesToStaff":"No roles to staff.","removeMemberTitle":"Remove {name}","removeMemberAria":"Remove {name} from the team","notSelectedYet":"Not selected yet","confirming":"Confirming…","confirmTeam":"Confirm team","confirmTeamProgress":"Confirm team · {filled} of {total} filled","confirmMicro":"Fill all roles, or accept the crew to fill at once","confirmedTeam":"Confirmed team","noTeamOnRecord":"No team on record.","teamMember":"Team member","mainEmployee":"Main employee","internalReview":"Internal review","internalAttendance":"Attendance","internalReliability":"Reliability","internalCompliance":"Compliance","internalDocumentation":"Documentation","internalNotePlaceholder":"Note (optional)","internalSubmit":"Save evaluation","internalSaved":"Evaluation saved","errInternalReview":"Could not save the evaluation.","stageTimeline":"Stage timeline","stageStatusAria":"Stage {seq} status","stageUpcoming":"Upcoming","stageOpen":"Open · apply","stageActive":"In progress","stageDone":"Done","stageMicro":"Open stages accept applications; Done stages close their roles.","activity":"Activity","threadTitle":"Messages","threadSubtitle":"The conversation with the team placed on this job.","threadLoading":"Loading…","threadEmpty":"No messages with this job's team yet.","threadNoTeam":"No team placed yet — the message is saved, but there's no one to notify.","threadComposerPlaceholder":"Write a message…","threadSend":"Send","threadSending":"Sending…","threadSendError":"The message didn't send — try again.","threadYou":"You","threadRecipientLabel":"Send to","threadRecipientTeam":"Whole team","acceptCrew":"Accept crew","onTeam":"On team ✓","rejected":"Rejected","accept":"Accept","rejectApplication":"Reject application","matchLabel":"match","perfChip":"Perf {score}","crewFills":"Crew · fills {n, plural, one {# role} other {# roles}}","crewAvgRank":"avg rank {tier} · individual grades:","availNear":"−{penalty} near","availBooked":"Booked","availFree":"Free","hintActiveJobs":"{n, plural, one {# active job} other {# active jobs}}","hintWithdrawals":"{pct}% withdrawals","priorityDamped":"Priority damped: {hints}","evtPublished":"Published to the worker board","evtAcceptedCrew":"Accepted a crew","evtAcceptedWorkers":"Accepted {n, plural, one {# applicant} other {# applicants}}","evtUnacceptedCrew":"Removed a crew before confirming","evtUnacceptedWorkers":"Removed {n, plural, one {# worker} other {# workers}} before confirming","evtRejected":"Rejected an application","evtConfirmed":"Team confirmed ({size})","evtStillHiring":" · still hiring later stages","evtStageStatus":"Stage “{stage}” → {to}","evtClaim":"Submitted Ready for Review","evtVerified":"Verified & paid ({n} workers)","evtCorrections":"Sent back for corrections","evtDisputedPayouts":" · {n} payout(s) disputed","evtRevoked":"Completion revoked","sectionSite":"The site","sectionSiteHint":"What the crew needs before they set off","fieldSiteContact":"Who lets them in","phSiteContact":"Name on the door","fieldSiteContactPhone":"Their number","fieldFloor":"Floor","phFloor":"3rd, no lift","fieldParking":"Parking","phParking":"Courtyard only, before 08:00","fieldEndTime":"Must finish by","fieldHoursNote":"Hours note","phHoursNote":"Not before 9 — the neighbour works nights","fieldAccess":"Getting in","phAccess":"Buzzer broken — ring the mobile. Key safe by the meter.","fieldRisks":"Hazards on site","phRisks":"Asbestos suspected in the ceiling void. Do not drill overhead.","suggestFromRequest":"From the customer request","suggestTrades":"Suggested trades: {trades}","customerPhotos":"{n} photo(s) the customer sent","evtRoleSplit":"Role split changed {from}% → {to}% · {n} worker(s) re-synced","evtReferralQualifyFailed":"Referral credit failed — reconcile by hand","customerRequests":"Customer requests","customerRequestsSub":"Qualify scope, request missing info, and control the quote before work is dispatched.","errLoadRequests":"Couldn't load the request queue.","loadingRequests":"Loading requests…","noRequests":"No customer requests yet.","needsYourAction":"Needs your action · {n}","quotedDispatchedClosed":"Quoted, dispatched & closed","serviceRequest":"Service request","priorityReferral":"Priority · {name}","guest":"Guest","budgetLabel":"budget {amount}","noQuoteYet":"no quote yet","quoteVersionShort":"quote v{n}","jobLinked":"job linked","needsAction":"needs action","errLoadRequest":"Couldn't load this request.","requests":"Requests","loadingRequest":"Loading request…","quoteVersionChip":"Quote v{n}","jobLinkedPill":"Job linked","submittedAgo":"submitted {ago}","errGeneric":"That didn't work — try again.","requestLabel":"Request","dtCategory":"Category","dtService":"Service","dtLocation":"Location","dtAccess":"Access","dtUrgency":"Urgency","urgencyUrgent":"Urgent","urgencyWithinWeek":"Within a week","dtContact":"Contact","prefersContact":"prefers {pref}","dtCustomerBudget":"Customer budget","dtPreferredDates":"Preferred dates","orSep":"or","dtScope":"Scope","dtHeight":"Ceiling height","dtSource":"Source","sourceStandalone":"Standalone","altPhoto":"photo","conversation":"Conversation","customerLabel":"Customer","noMessages":"No messages yet.","qualification":"Qualification","flashInfoReceived":"Info received — back under review.","flashUnderReview":"Marked as under review.","infoReceivedResume":"Info received — resume review","startReview":"Start review","phWhatsMissing":"What's missing? (sent to the customer)","flashNeedsInfo":"Flagged — the customer was asked for more information.","needsInfoBtn":"Needs info","internalNotes":"Internal notes (private)","phInternalNotes":"Site visit needed? Risks, access, assumptions… (not shown to the customer)","saveNotes":"Save notes","flashNotesSaved":"Notes saved.","reviseQuote":"Revise quote (next: v{v})","prepareQuote":"Prepare quote (v1)","revisionNote":"The customer asked for changes — check the conversation, then send a revision.","needsInfoNote":"Flagged “Needs info” — the request can’t be quoted until the customer responds. Use “Info received — resume review” above once it’s here.","thLine":"Line","thQty":"Qty","thRate":"Rate","phLineLabel":"e.g. Bathroom fitting — labour","ariaRemoveLine":"Remove line","addLine":"Add line","phLeadTime":"Lead time (e.g. 1–2 weeks)","validUntil":"Valid until","phScopeIncluded":"What's included (scope)","phScopeExcluded":"What's excluded","phAssumptions":"Assumptions & customer responsibilities","depositOverride":"Deposit override (ALL)","phDefaultDeposit":"default {amount}","subtotal":"Subtotal","vatLabel":"VAT (20%)","total":"Total","deposit":"Deposit","sendRevisedQuote":"Send revised quote","sendQuote":"Send quote","flashQuoteSent":"Quote sent — the customer sees the new version.","dispatchedNote":"This request is dispatched — its status now follows the job through team confirmation, progress and verification.","noIntakeActions":"No intake actions in status “{status}”.","raiseJobFromRequest":"Raise the job","materialsHint":"What this job is built out of, and where it has got to. Editable after the team is confirmed — the moment it matters most is the van at the depot.","materialsEmpty":"Nothing listed yet.","materialsTotal":"Materials total","materialStatus":"Delivery status","matStatus_planned":"Planned","matStatus_ordered":"Ordered","matStatus_received":"At depot","matStatus_delivered":"On site","matStatus_installed":"Installed","matStatus_returned":"Returned","phMaterial":"Porcelain floor tile, 60x60 matt","fieldUnit":"Unit","fieldUnitPrice":"Unit price","fieldSupplier":"Supplier","addMaterial":"Add material","checklistTitle":"Checklist","checklistHint":"What this job needs done. No assignee means the whole team.","checklistEmpty":"No tasks yet.","phTask":"Photograph the substrate before tiling","fieldAssignee":"Assigned to","wholeTeam":"Whole team","addTask":"Add task","ariaRemove":"Remove","materialsTitle":"Materials","fieldQty":"Qty","documentsTitle":"Paperwork","documentsHint":"What this job needs signed. Suggested, never demanded — nothing here stops work starting.","documentsEmpty":"No papers on this job yet.","documentsSuggested":"Usually needed for this kind of work","documentsOutstanding":"{n} still outstanding","documentRequired":"Marked required on this job","documentStatus":"Document status","documentVisible":"Customer sees it","documentVisibleHint":"A contract they signed is theirs. An internal method statement is not.","docStatus_needed":"Needed","docStatus_attached":"Attached","docStatus_signed_in_person":"Signed on paper","docStatus_signed_digitally":"Signed online","docStatus_waived":"Not needed","docParty_customer":"Customer","docParty_company":"AlbNova","docParty_worker":"Freelancer","addDocument":"Add","phDocument":"Another paper this job needs","attach":"Attach","openFile":"Open file","mediaTitle":"Site photos","mediaHint":"What the customer sent, plus anything the office adds. The crew see these on their job page.","mediaEmpty":"No photos on this job yet.","mediaUntitled":"Untitled","addPhoto":"Add a photo","jobsShowAll":"Show all ({n})","jobsShowFewer":"Show fewer","jobStatus_setup":"Draft","jobStatus_open":"On the board","jobStatus_assigned":"Team confirmed","jobStatus_accepted":"Accepted","jobStatus_in_progress":"In progress","jobStatus_completed":"Completed","jobStatus_closed":"Closed","jobStatus_cancelled":"Cancelled","jobStatus_disputed":"Disputed","structureJob":"Structure the job","quoteHistory":"Quote history","thUnit":"Unit","phUnit":"e.g. m²","phLineDescription":"Work description: what is done, with what, and how far","ariaMoveUp":"Move up","ariaMoveDown":"Move down","pricesRemove":"Send without prices","pricesAdd":"Add prices","noPricesNote":"Without prices the document only confirms the scope of work: no totals, no VAT, no payment schedule.","siteVisitDate":"Site visit","plannedStart":"Planned start","phEstDuration":"Estimated duration (e.g. 3 working weeks)","materialsBy":"Materials supplied by","materialsUnset":"— not stated —","materialsCompany":"AlbNova","materialsCustomer":"The customer","materialsMixed":"Partly each","phMaterialsNote":"Note on materials: who buys what","phGuarantee":"Workmanship guarantee (printed only if you fill it in)","phSpecialConditions":"Special conditions (printed only if you fill them in)","paymentSchedule":"Payment schedule","phStageLabel":"Stage","phStageDue":"When due","stageInPercent":"In percent","stageInAmounts":"In amounts (L)","addPayStage":"Add stage","ariaRemovePayStage":"Remove stage","stagesPercentSum":"Total: {sum}%","stagesAmountSum":"Total: {sum} of {total}","defaultStageStart":"At the start of the works","defaultStageHandover":"On handover","errQuoteItems":"Add at least one named line.","errPayLabel":"Every payment stage needs a name.","errPayValue":"Every payment stage needs a value greater than zero.","errPayMixed":"Use either percentages or amounts — not both in one schedule.","errPayPercentTotal":"The stage percentages must add up to 100%.","errPayAmountTotal":"The stage amounts must add up to the quote total.","downloadPdf":"Download PDF","previewPdf":"View the PDF of version {v}","acceptedTag":"accepted by the customer","flashSpecSent":"Specification sent — the customer sees the new version.","current":"current","statusHistory":"Status history","errLoadJob":"Couldn't load this job.","loadingJob":"Loading job…","noteJobSaved":"Job details saved.","errSaveJob":"Couldn't save the job details.","noteRoleAdded":"Role added.","errAddRole":"Couldn't add the role.","errStageTitle":"Give the stage a title.","noteStageAdded":"Stage added.","errAddStage":"Couldn't add the stage.","notePublished":"Published — workers can now apply.","errPublish":"Couldn't publish.","applicants":"Applicants","stageProject":"{n}-stage project","jobStructure":"Job structure","structEditableSub":"Shape the brief, roles and stages — workers see it once published.","structLockedSub":"Team confirmed — structure is locked.","structNotEditable":"Structure editing is available while a job is in Setup or Open.","detailsLabel":"Details","saveDetails":"Save details","rolesBudgetSplit":"Roles & budget split","roleEarnsPct":"Each role earns its % of the quota ({budget}).","topLevelSplit":"Top-level split: {pct}%.","phRoleTitleLead":"Role title (e.g. Lead plumber)","titleWorkersNeeded":"Workers needed","ariaPercentBudget":"Percent of budget","titlePctQuota":"% of the quota","save":"Save","titleWorkersPlaced":"Workers are placed on this role","titleRemoveRole":"Remove role","ariaStageTitle":"Stage title","ariaStageStart":"Stage start","ariaStageEnd":"Stage end","phBudget":"Budget","ariaStageBudget":"Stage budget","phCrew":"Crew","ariaWorkersNeeded":"Workers needed","titleRemoveRolesFirst":"Remove the stage's roles first","titleRemoveStage":"Remove stage","ariaRemoveStage":"Remove stage","noteRoleSaved":"Role saved.","errSaveRole":"Couldn't save the role.","noteRoleRemoved":"Role removed.","errRemoveRole":"Couldn't remove the role.","noteStageSaved":"Stage {seq} saved.","errSaveStage":"Couldn't save the stage.","noteStageRemoved":"Stage removed.","errRemoveStage":"Couldn't remove the stage.","stagesLabel":"Stages","stagesHelp":"Large projects run in stages with their own dates and budgets. Stage status is operated from the applicants page.","phNewStageTitle":"New stage title (e.g. Tiling)","ariaNewStageStart":"New stage start","ariaNewStageEnd":"New stage end","ariaNewStageBudget":"New stage budget","addStage":"Add stage","ariaNewRoleTrade":"New role trade","phRoleTitleOptional":"Role title (optional)","ariaNewRoleSlots":"New role slots","ariaNewRolePercent":"New role percent","ariaStageForRole":"Stage for the new role","wholeJob":"Whole job","stageN":"Stage {seq}","invite":"Invite","invited":"Invited ✓","inviting":"Inviting…","assignDirectly":"Assign directly","assigning":"Assigning…","showShortlist":"Shortlist","hideShortlist":"Hide shortlist","noShortlistCandidates":"No eligible candidates for this role right now.","showingOfTotal":"Showing {shown} of {total}","errInviteExists":"This worker already has a pending invite for this job.","errAlreadyApplied":"This worker has already applied to this job.","errRoleFull":"This role is already full.","errAlreadyOnTeam":"This worker is already on the team.","errScheduleConflict":"Schedule conflict — this worker is already booked.","errScheduleConflictWithTitle":"Schedule conflict — already booked on “{title}”.","reviews":{"queueTitle":"Design reviews","queueSub":"Customer designs awaiting a professional review.","untitledDesign":"Untitled design","guest":"Guest","customerLabel":"Customer","staffAuthor":"AlbNova reviewer","loading":"Loading reviews…","empty":"No design reviews yet.","errLoad":"Couldn't load the review queue.","errLoadOne":"Couldn't load this review.","errGeneric":"Something went wrong. Try again.","needsActionGroup":"Awaiting your review","doneGroup":"Reviewed","back":"Design reviews","designLabel":"The design","roomType":"Room","itemsCount":"{n} items","zonesCount":"{n} tiled areas","noNote":"No specific request.","thread":"Feedback thread","noComments":"No messages yet — start the conversation below.","onItem":"on an item","onZone":"on a tiled area","suggestedProduct":"View suggested product →","statusLabel":"Status","feedbackLabel":"Summary feedback","feedbackPlaceholder":"The headline verdict the customer sees…","saveFeedback":"Save feedback","flashFeedbackSaved":"Feedback saved.","flashStatus":"Status updated.","composerLabel":"Reply in the thread","composerPlaceholder":"Recommend a product, flag a measurement, suggest a change…","anchorGeneral":"The whole design","anchorItemPrefix":"Item:","anchorZonePrefix":"Area:","suggestLabel":"Suggest a product (optional)","suggestSearchPlaceholder":"Search products…","suggestRemove":"Remove","send":"Send","flashCommentSent":"Reply sent.","openInPlanner":"Open in the planner","openInPlannerHint":"Opens this exact design — edit it and save, and the customer gets your version.","revisionsLabel":"Version history","revisionsEmpty":"No edits yet. The customer's own version is the current one.","revisionBy":"Replaced by {name}","revisionByUnknown":"Earlier version","restoreRevision":"Restore","confirmRestore":"Restore this version? The current one is kept in the history.","flashRestored":"Version restored — the customer sees it now.","status":{"Requested":"Requested","In review":"In review","Feedback given":"Feedback given","Approved":"Approved"}},"tabCrews":"Crews","crewsTitle":"Crews","crewsSub":"Approve or reject worker-formed crews before they can apply for jobs together.","loadingCrews":"Loading crews…","emptyCrews":"No crews yet.","errLoadCrews":"Couldn't load crews.","crewStatusPending":"Pending","crewStatusApproved":"Approved","leaderLabel":"Leader","createdOn":"Created {date}","approveCrew":"Approve","rejectCrew":"Reject","confirmRejectCrew":"Confirm rejection","rejectCrewReasonPlaceholder":"Reason for rejecting…","errApproveCrew":"Couldn't approve the crew.","errRejectCrew":"Couldn't reject the crew.","reviewsProfileLink":"View profile ↗","reviewsDefaultRoomType":"Interior project","reviewsOpenDesign":"Open design","reviewsViewThread":"Thread","reviewsCreateQuote":"Create quote","reviewsDraftSaved":"Draft saved on this device.","reviewsAddLineError":"Add at least one line with description and price.","reviewsQuoteSent":"Quote sent to client.","reviewsCreateQuoteLabel":"Create quote –","priorityLow":"Low","priorityMedium":"Medium","priorityHigh":"High","priorityUrgent":"Urgent","jobsColSetupTitle":"Not yet released","jobsColSetupSubtitle":"Draft and preparation","jobsColIssuedTitle":"Work released","jobsColIssuedSubtitle":"Open for applications","jobsColScheduledTitle":"Scheduled","jobsColScheduledSubtitle":"Team assigned","jobsColProgressTitle":"In progress","jobsColProgressSubtitle":"Active and under review","jobsSystemTime":"System time:","jobsViewSetup":"View & release","jobsViewDetails":"View details","jobsViewProgress":"View progress","jobsViewPlan":"View plan","jobsNewListing":"+ New job","jobsArchiveHeader":"Archived work","jobsNoJobsInPhase":"No work in this phase","crewsStatusPending":"Pending","crewsStatusApproved":"Active","crewsStatusRejected":"Rejected","crewsApprovedLabel":"APPROVED","crewsNoLeader":"No leader","crewsChangeLeader":"Change leader ✎","crewsNoTrades":"No trades listed","crewsLeaderSection":"Crew leader","requestsColumnRequested":"Requested","requestsColumnQuoted":"Quoted","requestsColumnAccepted":"Accepted","leadsTitle":"Leads","colNeedsContact":"Needs contact","colNeedsContactSub":"Nobody has answered these yet","colTalking":"In conversation","colTalkingSub":"Someone is speaking to them","colQuotedNow":"Quoted","colQuotedSub":"Waiting on the customer","colWon":"Won","colWonSub":"Accepted, scheduled or done","statPipeline":"Value quoted","statOldest":"Longest wait","statWaiting":"Awaiting reply","statAppointments":"Visits this week","hoursShort":"{n}h","searchLeads":"Search name, phone, service or city…","filterKind":"Lead type","filterAll":"All leads","filterRequests":"Requests","filterDrafts":"Unfinished","filterContact":"Contact","leadRequest":"Request","leadDraft":"Unfinished","leadAppointment":"Visit booked","leadMessage":"Message","leadAssistant":"Assistant","appointmentOn":"Booked for","stoppedAt":"Stopped at","nextStep":"Next step","openLead":"Open","nextContactCustomer":"Contact the customer","nextPrepareQuote":"Prepare the quote","nextAwaitCustomer":"Waiting on their answer","nextChaseInfo":"Chase the missing details","nextDispatch":"Set up the job and crew","nextFollowJob":"Follow the work","nextCallStuck":"Ring them — they got stuck","nextConfirmVisit":"Confirm the visit","nextReply":"Reply to them","claim":"Take this","release":"Release","callThem":"Call them","noLeads":"Nothing has come in yet","columnEmpty":"Nothing at this stage","noContactDetails":"No contact details","noServiceYet":"Service not chosen yet","factQuote":"Quoted","factBudget":"Their budget","factSize":"Area","factPhotos":"Photos","factLastTouch":"Received","newRequest":"New request","requestCode":"Request {code}","panelWhere":"Where the work is","panelHistory":"Their history with AlbNova","badgeGuest":"No account","badgeUnverified":"Email unverified","badgeTrade":"Trade account","badgeReferred":"Referred by {name}","fldSitePhone":"Phone for this job","fldAccountPhone":"Account phone","fldEmail":"Email","fldPrefers":"Prefers","prefUnstated":"Not stated","pref_phone":"A phone call","pref_email":"Email","pref_website":"Messages on the site","pref_message":"Messages on the site","fldLanguage":"Speaks","langUnknown":"Not known","fldCustomerSince":"Customer since","fldAccountCity":"Account city","fldFloor":"Floor","savedAddresses":"Saved addresses","fldMaterials":"Materials chosen","fldDesign":"From design","fldRating":"They rated us","histRequests":"Other requests ({n})","histDrafts":"Started, not sent","histTickets":"Contacted us ({n})","historyNone":"First time they have contacted AlbNova","ticketHandled":"handled","crewsLeaderPrefix":"Crew lead","crewsCreatedOn":"Created","crewsMemberCount":"{n, plural, one {# member} other {# members}}","crewsStatRating":"Rating","crewsStatDone":"Jobs done","crewsStatInProgress":"In progress","crewsStatAvailable":"Available","crewsReady":"Ready","crewsServiceRadius":"Service radius","crewsNoProject":"No project","crewsMainSpecialism":"Main specialism","crewsAssignedCapacity":"Assigned capacity","crewsUndatedJobs":"{n, plural, one {# job with no dates} other {# jobs with no dates}}","crewsCertified":"Certified","crewsSafetyLicences":"Safety & licences","crewsWeeklyCapacity":"Weekly capacity","crewsManageCrew":"Manage crew","crewsAssignJob":"Assign a job","crewsCurrentLeader":"Current crew lead","crewsLeaderRole":"Crew lead","crewsLeaderHelp":"Choose the person responsible for organising the crew and its communication.","crewsWorkerFallback":"Worker","crewsNoTrade":"No trade","crewsSaveLeader":"Save crew lead","crewsMembersSkills":"Members & skills","crewsCurrentLeaderTag":"Current lead","crewsMemberTag":"Member","crewsRemove":"Remove","crewsApproval":"Approval","crewsRejectReason":"Reason for rejection…","crewsCancel":"Cancel","crewsConfirmReject":"Confirm reject","crewsReject":"Reject","crewsApproveCrew":"Approve crew","crewsPageTitle":"Crews","crewsPageSub":"Approve crews, set their leads and manage who is in them.","crewsMetricActive":"Active crews","crewsMetricApproved":"approved","crewsMetricPending":"Pending","crewsMetricDecision":"need a decision","crewsMetricWorkers":"Workers","crewsMetricAcrossAll":"across every crew","crewsMetricAverage":"Average","crewsMetricTier":"crew tier","crewsSearchPlaceholder":"Search a crew or member…","crewsFilterTrade":"Trade: all","crewsFilterStatus":"Status: all","crewsResetFilters":"↻ Reset filters","crewsFlashLeader":"Crew lead updated.","crewsFlashRemoved":"Member removed from the crew.","crewsFlashApproved":"Crew approved.","crewsFlashRejected":"Crew rejected.","crewsConfirmRemove":"Remove {name} from the crew?","crewsThisMember":"this member","peopleNeedsAttention":"Needs attention","peopleSearchPlaceholder":"Search by name, phone, email or trade…","peopleSearchAria":"Search workers","peopleFilterAvailability":"Filter by availability","peopleColAvailability":"Availability","peopleColAttention":"Attention","peopleNoteWhatStays":"What should stay on file?","peopleNoteLinkJob":"Link it to a job (optional)","peopleNoteAttach":"Attach (photo, video, PDF · up to 15 MB)","peopleStatClients":"Clients","peopleStatJobs":"Jobs","peopleStatCompleted":"completed","peopleStatPaid":"paid","peopleRatingsTitle":"Ratings","peopleWithAlbNovaSince":"With AlbNova since","peopleInternalNotes":"Internal notes","peopleTotalJobs":"Jobs in total","peopleRecorded":"recorded","peopleQuality":"Quality","peopleLeftOnJob":"Left on the job: {job}","peopleFilterTrade":"Filter by trade","peopleFilterCity":"Filter by city","peopleGroupBy":"Group by","peopleTradeAll":"Trade: all","peopleCityAll":"City: all","peopleStateAll":"State: all","peopleStateFree":"Free","peopleGroupCity":"Group: city","peopleGroupYear":"Group: year","peopleEveryJobSub":"Every recorded job, with its location, role, customer rating and payment.","peoplePersonByPerson":"Person by person","jobsRolesNeeded":"Roles needed","jobsTeamAria":"Job team","jobsMetricActive":"Active jobs","jobsMetricToRelease":"To release","jobsMetricCrewsOnSite":"Crews on site","jobsSearchPlaceholder":"Search by customer, service, ID…","jobsServiceTypeAria":"Service type","jobsMetricScheduledToday":"Scheduled today","shellErrorTitle":"This screen didn't load","shellErrorBody":"The rest of the console is working. Try opening this screen again, or go back.","shellErrorRetry":"Try again","shellErrorBack":"Go back","reqStatusRequested":"Requested","reqStatusUnderReview":"Under review","reqStatusNeedsInfo":"Needs info","reqStatusQuoted":"Quoted","reqStatusRevisionRequested":"Revision requested","reqStatusScheduled":"Scheduled","reqStatusInProgress":"In progress","reqStatusCompleted":"Completed","reqStatusDeclined":"Declined","reqStatusCancelled":"Cancelled","reqStatusDisputed":"Disputed","reqStatusWithdrawn":"Withdrawn by customer","jobsCentreTitle":"Job centre","jobsCentreSub":"Run every order from intake through to delivery.","jobsIdPrefix":"ID:","jobsCustomerFallback":"AlbNova customer","jobsWindowRequested":"Requested on","jobsWindowIssued":"Issued on","jobsWindowInProgress":"In progress since","jobsWindowScheduled":"Scheduled for","jobsFactApplicants":"Applicants","jobsFactTeam":"Crew","jobsMembersCount":"{n, plural, one {# member} other {# members}}","jobsFactManager":"Manager","jobsManagerUnassigned":"No manager","jobsRolesLabel":"Roles","jobsEvidenceAlt":"Evidence of completed work","suggestionUse":"Use","jobsStatusAria":"Status","jobsAllStatuses":"All statuses","jobsAllServices":"All services","jobsClearFilters":"Clear filters","jobsArchiveToggle":"Archive ({n})","jobsLegendUrgency":"Urgency:","jobsRefresh":"Refresh","peopleSubnavAria":"Crew views","peopleSubnavLabel":"Crews","peopleSubnavCrews":"Crews","peopleSubnavByGroup":"By group","peopleSubnavPeople":"People","peopleLifecycleTrial":"On trial","peopleLifecyclePermanent":"Permanent","peopleAccessDenied":"This view belongs to the workforce area. Only admin and HR accounts can open it.","peopleListLoadFailed":"The staff list didn't load.","peoplePersonNotFound":"Person not found.","peopleDocsMissingPlural":"{count} documents missing","peopleDocsMissingOne":"1 document missing","peopleTrialDecisionOpen":"Trial decision is open","peopleDisputedAmount":"{amount} disputed","peopleBusyUntil":"On a job · until {date}","peopleBusy":"On a job","peopleLeaveUntil":"On leave until {date}","peopleOnLeave":"On leave","peopleFree":"Free","peopleRosterTitle":"People","peopleAddWorker":"Add worker","peopleAddWorkerTitle":"Add a new worker","peopleAddWorkerName":"Name","peopleAddWorkerCancel":"Cancel","peopleAddWorkerError":"The account wasn't created.","peopleRosterSub":"Find who you can assign by trade, location and status. Pick a row to open the full person page.","peopleWithAttention":"Flagged","peopleAttentionDocs":"Documents","peopleAttentionTrial":"Trial decision","peopleAttentionPayments":"Payments","peopleRosterLoading":"Loading staff…","peopleNoMatch":"No one matches these filters.","peopleColPerson":"Person","peopleColTrade":"Trade","peopleColWhere":"Where","peopleColStanding":"Standing","peopleNoTrade":"No trade","peopleOutOf10":"of 10","peopleNoOpenIssues":"No open issues","peopleBreadcrumbAria":"Breadcrumb","peopleAnswerBusyUntil":"Today they're on a job until {date}; schedule them only after that date.","peopleAnswerBusy":"Today they're on a job.","peopleAnswerLeaveUntil":"They're on leave until {date}.","peopleAnswerLeave":"They're on leave.","peopleAnswerFree":"Today they show as free and can be considered for a new job.","peopleAnswerTrialOpen":"They're still on trial — the final decision hasn't been made.","peopleNotePrivacyNotice":"Private file — staff only. {name} cannot see these notes or their attachments.","peopleNotePlaceholder":"Write the note for {name}…","peopleNoteType":"Type","peopleNoteKindNote":"Note","peopleNoteKindWarning":"Warning","peopleNoteKindCommendation":"Commendation","peopleNoteKindDocument":"Document","peopleNoteNoJob":"No job — standalone note","peopleFilesUploadFailed":"The files didn't upload.","peopleNoteSaveFailed":"The note wasn't saved.","peopleSaving":"Saving…","peopleFileNote":"File it","peoplePersonLoading":"Loading…","peopleRetractConfirm":"Retract this note? It stays on record but comes off the list.","peopleCrewLeaderSuffix":"lead","peopleAnswerEyebrow":"The answer","peopleEarnings":"Earnings","peopleSectionWork":"Work","peopleWorkSummary":"{jobs} jobs · {cities} cities","peopleSeeAllJobs":"See all {count} jobs","peopleNoCompletedJobs":"No completed jobs yet.","peopleRatingsSummary":"{avg} / 5 from {count} customers","peopleSeeAllReviews":"See the source of every review","peopleSectionFile":"File","peopleDocsVerifiedSummary":"{verified} of {total} documents verified","peopleColPhone":"Phone","peopleColEmail":"Email","peopleColLocation":"Location","peopleApplicationsAccepted":"Applications → accepted","peopleOpenDoc":"Open","peopleMissingDoc":"Missing","peopleNotesSummary":"{count} notes · staff only","peopleNotesEmptySummary":"Clean record · staff only","peopleNoNotesYet":"Nothing has been filed for {name} yet.","peopleStaffFallback":"Staff","peopleRetractButton":"Retract","peopleNoteAboutJob":"About the job: {job}","peoplePersonFallback":"Person","peopleCities":"Cities","peopleNoJobsYet":"No jobs yet.","peopleJobsCount":"{count} jobs","peopleColPlace":"Place","peopleColRole":"Role","peopleColCompletedDate":"Completed","peopleColRating":"Rating","peopleColPayment":"Payment","peopleRoleLead":"Lead","peopleRoleMember":"Member","peopleReviewsSub":"The average breaks down into the distribution, the three categories and every review with the job it was left on.","peopleReviewsCount":"{count} reviews","peopleCategoryCommunication":"Communication","peopleCategoryProfessionalism":"Professionalism","peopleNoReviewsYet":"No reviews yet.","peopleCustomerFallback":"Customer","crewsDrawerTitle":"Manage crew","crewsFilterArea":"Area: all","crewsFilterSize":"Size: all","crewsSizeSmall":"1–3 members","crewsSizeMedium":"4–6 members","crewsSizeLarge":"7+ members","crewsNotCertified":"Not certified","crewsNoFilterMatch":"No crew matches these filters.","postsAttentionLabel":"Pending posts","postsAttentionOne":"1 post pending","postsAttentionPlural":"{count} posts pending","postsSectionTitle":"Posts","postsSectionSummaryPending":"{count} awaiting review","postsSectionSummaryReviewed":"{count} reviewed","postsSectionSummaryClean":"No posts pending","postsRejectReason":"Reason for rejection…","postsCancel":"Cancel","postsConfirmReject":"Confirm rejection","postsReject":"Reject","postsApprove":"Approve","postsStatusPending":"Pending","postsStatusApproved":"Approved","postsStatusRejected":"Rejected","referrerBadge":"Brought this customer · first in line","errActionFailed":"That did not go through.","peopleColAccount":"Account","peopleFilterAccount":"Filter by account","peopleAccountAll":"Account: All","peopleAcctActive":"Active","peopleAcctInvited":"Invite pending","peopleAcctNotActivated":"Not activated","peopleAcctDisabled":"Disabled","peopleAcctSentDays":"{days, plural, =0 {sent today} =1 {sent yesterday} other {sent # days ago}}","peopleAcctDisabledDays":"{days, plural, =0 {since today} =1 {since yesterday} other {for # days}}","peopleAcctLastLoginDays":"{days, plural, =0 {signed in today} =1 {signed in yesterday} other {signed in # days ago}}","peopleAcctNeverLoggedIn":"Never signed in","peopleRowMenu":"Actions for {name}","peopleActOpen":"Open profile","peopleActResend":"Resend the invite","peopleActPasswordLink":"Send a new-password link","peopleActChangeEmail":"Change email","peopleActDisable":"Disable","peopleActEnable":"Reactivate","peopleActDelete":"Delete permanently","peopleActSentTo":"Sent to {email}.","peopleActMailFailed":"Done, but the email did not go out. Try again shortly.","peopleActDisabledDone":"Account disabled. Every web and app sign-in was closed.","peopleActEnabledDone":"Account reactivated. The new invite went to {email}.","peopleActEmailChanged":"The sign-in email changed and the old sign-ins were closed. The notice went to {email}.","peopleActDeletedDone":"The account was deleted permanently.","peopleActAnonymisedDone":"Personal data deleted; jobs and payments stay in the history.","peopleErrEmailTaken":"This address is already used by another staff or worker account.","peopleErrEmailInvalid":"Enter a valid email address.","peopleErrSameEmail":"That is already the sign-in address.","peopleErrAlreadyActive":"The account is active — send a new-password link instead.","peopleErrNotActivated":"The account isn't activated yet — resend the invite.","peopleErrDisabled":"The account is disabled — reactivate it first.","peopleErrConfirmName":"The name doesn't match. Type it exactly as on the profile.","peopleErrGone":"This account no longer exists.","peopleAcctTitle":"Sign-in account","peopleAcctLogin":"Sign-in email","peopleAcctCompanyMailbox":"Company mailbox","peopleAcctPersonal":"Personal address","peopleAcctLastLoginLabel":"Last sign-in","peopleAcctInviteLabel":"Invite","peopleAcctInviteAccepted":"Accepted — the account is activated","peopleAcctInviteNone":"No valid invite","peopleAcctErased":"This account was deleted. Its jobs, payments and reviews stay in the history.","peopleEmailNewLabel":"New sign-in email","peopleUseMailbox":"Use the company mailbox: {email}","peopleEmailHintActive":"The password stays the same. Every sign-in (web and app) is closed, and the new address gets a notice.","peopleEmailHintInvite":"The account isn't activated yet: the old invite is cancelled and the new address gets a fresh one.","peopleEmailSubmit":"Save email","peopleDisableTitle":"Disable {name}'s account?","peopleDisableEffect":"No more sign-ins. Every web and app session is closed, the phones stop getting notifications, open job applications are withdrawn, invites are cancelled and no job is offered. The work history stays. You can reactivate it whenever you like.","peopleDisableConfirm":"Yes, disable it","peopleDeleteTitle":"Delete permanently: {name}","peopleDeleteModeDelete":"This account has no jobs, payments or reviews, so everything goes: the account, the profile, the areas, the application and the documents.","peopleDeleteModeAnonymise":"This account has history ({summary}), so it is not removed outright: the jobs, payments and reviews stay. The personal data goes — the name becomes “Punëtor i fshirë”, the email, phone, photo and documents are removed, and the public profile is closed.","peopleDeleteHistJobs":"{n, plural, one {# job} other {# jobs}}","peopleDeleteHistPayments":"{n, plural, one {# payment} other {# payments}}","peopleDeleteHistReviews":"{n, plural, one {# review} other {# reviews}}","peopleDeleteHistMessages":"{n, plural, one {# message} other {# messages}}","peopleDeleteHistCrews":"{n, plural, one {# crew} other {# crews}}","peopleDeleteIrreversible":"This cannot be undone.","peopleDeleteTypeName":"Type {name} to confirm","peopleDeleteConfirm":"Delete permanently","peopleAnonymiseConfirm":"Delete the personal data","peopleAddStepOf":"Step {n} of 3","peopleAddStep1":"Who","peopleAddStep2":"Work","peopleAddStep3":"Invite","peopleAddNamePlaceholder":"First and last name","peopleAddPhone":"Phone","peopleAddLoginEmail":"Sign-in email","peopleAddEmailPlaceholder":"name@gmail.com","peopleAddEmailHint":"This is the address for signing in to the portal and the app. It can be a personal address (e.g. gmail) or the company mailbox.","peopleAddContactEmail":"Personal email — where the invite goes","peopleAddContactHint":"The company mailbox must already exist in cPanel. Without a personal address, the invite goes to the mailbox.","peopleAddTrack":"Track","peopleTrackFreelancer":"Freelancer","peopleTrackProfessional":"Professional","peopleAddProNote":"Professionals have no trial and take no jobs from the board; the account gives them the portal.","peopleAddStatus":"Status","peopleStatusTrial":"On trial · 3 reviewed jobs","peopleAddTrades":"Trades","peopleAddTradesLoading":"Loading trades…","peopleAddCity":"City","peopleAddCityPick":"Choose the city","peopleAddAreas":"Areas worked","peopleAddAreasPick":"Add an area","peopleAddAreaRemove":"Remove {area}","peopleAddAreasHint":"They can change their areas later from the app.","peopleAddPreviewTo":"To: {email}","peopleAddPreviewLoading":"Preparing the email…","peopleAddPreviewTitle":"Invite email preview","peopleAddBack":"Back","peopleAddNext":"Continue","peopleAddSend":"Create the account and send the invite","peopleAddSending":"Sending…","peopleAddSentTitle":"Invite sent","peopleAddSentBody":"{name} gets an email at {email} to choose a password and activate the account. The link expires in 7 days; if it doesn't arrive, resend it from the profile.","peopleAddSentMailFailed":"The account was created, but the invite email did not go out. Open the profile and resend the invite.","peopleAddClose":"Close","peopleAddAnother":"Add another","peopleAddOpenProfile":"Open the profile","peopleEmailOwnerOnly":"The account is active: only the super admin can change its sign-in email.","peopleEmailContactHint":"Invites and password links go here. Leave it empty to send them to the company mailbox; the old address stops receiving anything.","peopleActDisabledActiveJobs":"Account disabled. {count, plural, one {They are still on one active job} other {They are still on # active jobs}}: {jobs}. Let the jobs manager know.","peopleErrSuperAdminOnly":"Only the super admin can do this.","peopleErrInvalidContact":"The personal address must be outside the company."},"notFound":{"heading":"This page doesn't exist","body":"The link may be old, or the page has moved. Try one of these instead.","ctaServices":"See services","ctaBlog":"See projects","ctaContact":"Contact us","ctaCall":"Call","ctaWhatsapp":"WhatsApp"},"portal":{"navDashboard":"Dashboard","navSchedule":"Schedule","navCrew":"Crew","navReviewQueue":"Review queue","navJobConsole":"Job console","navStoreAdmin":"Store admin","accountInformation":"Account information","settings":"Settings","signOut":"Sign out","account":"Account","accountSubtitle":"Your worker profile and verification.","fieldFullName":"Full name","fieldEmail":"Email","fieldPhone":"Phone","fieldCity":"City","fieldMemberSince":"Member since","editProfile":"Edit profile","tradeVerification":"Trade & verification","verifiedTrade":"Verified trade","verified":"Verified","workerStatus":"Worker status","governmentId":"Government ID","onFile":"On file","tradeLicence":"Trade licence","manageDocuments":"Manage documents","statusTrial":"Trial","statusPermanent":"Permanent","statusNone":"Not applied","trialAccess":"Trial period — limited job access","permanentAccess":"Permanent — full job access","settingsSubtitle":"Control notifications, visibility, and your account.","preferences":"Preferences","toggleEarningsName":"Show earnings in nav","toggleEarningsDesc":"Display the green “Money earned” pill in the top bar.","toggleJobAlertsName":"Job notifications","toggleJobAlertsDesc":"Get notified when matching work appears near you.","toggleEmailName":"Email alerts","toggleEmailDesc":"Receive job and payout updates by email.","togglePushName":"Phone notifications","togglePushDesc":"Push notifications on your phone when work appears or one of your jobs changes.","jobsCompletedCounter":"Jobs-completed counter","counterMode":"Counter mode","counterModeDesc":"How the “jobs completed” total in your nav behaves.","counterOptPermanent":"Permanent","counterOptMonthly":"Monthly","settingsSaving":"Saving…","settingsSaved":"Saved","settingsError":"Something went wrong. Try again.","deactivateAccount":"Request account deactivation","deactivateConfirmTitle":"Confirm deactivation request","deactivateConfirmBody":"Our team will review the request and reach out to you. Your account stays active until then — deactivation doesn't happen automatically.","deactivateConfirmSubmit":"Yes, send the request","deactivateCancel":"Cancel","deactivateRequested":"Request sent. The team will reach out to you soon.","notifications":"Notifications","notificationsSubtitle":"Job applications, team updates, and account news.","unreadCount":"{n, plural, one {# unread} other {# unread}}","markAllRead":"Mark all as read","markingAllRead":"Marking…","notificationsMarkFailed":"That was not marked as read. Try again.","loading":"Loading…","allCaughtUp":"You’re all caught up.","nearbyWork":"Nearby & recommended work","starsLabel":"{value} out of 5","ratingsReviews":"Ratings & reviews","ratingsReviewsSubtitle":"What customers say about your completed work.","averageRating":"Average rating","totalReviews":"Total reviews","jobsCompleted":"Jobs completed","recentReviews":"Recent reviews","noReviews":"No reviews yet.","active":"Active","noActiveJob":"No active job","earned":"Earned","jobsDone":"Jobs done","jobsDoneMonthlySuffix":" (mo.)","reset":"reset","resetCounterTitle":"Reset your completed-jobs counter","ratingsBadgeTitle":"{avg} average over {n, plural, one {# review} other {# reviews}}","tier":"Tier","tierRankTitle":"Your rank: {tier} / 10","navFeed":"Home","navJobs":"Jobs","navProfile":"Profile","navPerformance":"My performance","perfTitle":"My performance","perfSubtitle":"Yours and the company's. No customer and no other freelancer sees this.","perfPrivate":"Private","perfRating":"Rating","perfReviews":"{n} reviews","perfNoReviews":"No reviews yet","perfJobsDone":"Jobs completed","perfTier":"Tier","perfEarned":"Paid to you","perfQuality":"Quality","perfSpeed":"Speed","perfExperience":"Experience","perfBestJobs":"Your best work","perfLedger":"Payments","perfNoLedger":"Nothing paid out yet","perfDisputed":"Disputed","perfPaid":"Paid","profileTitle":"My profile","profileSubtitle":"Your trade, your areas and your work. Built to be shown.","profileTrades":"Verified trades","profileAreas":"Where I work","profileEditAreas":"Change areas","profileSaveAreas":"Save areas","profileCancel":"Cancel","profileSaving":"Saving…","profileNoAreas":"No areas chosen yet","profileExperience":"Experience","profileLanguages":"Languages","profileSkills":"Skills","profileCerts":"Certificates","profileDriving":"Driving licence","profileJobsDone":"{n} jobs with AlbNova","profileWork":"My work","profileAddWork":"Add a project","profileNoWork":"Nothing posted yet. Add the work you're proudest of — from before us too.","profilePostTitle":"What was the job?","profilePostBody":"Describe it","profilePostPlace":"Where","profilePostWhen":"When","profilePostSave":"Post it","profilePostPending":"Waiting for review","profilePostRejected":"Not approved","profilePostApproved":"Approved","profileDelete":"Delete","profileClaimed":"As given on your application — not verified by us.","undertakingTitle":"Before you apply","undertakingBody":"Work you find here stays here. You may not take a job listed on AlbNova privately, or offer the customer a price outside us. Work you find your own way is your own.","undertakingAgree":"I agree","undertakingAgreed":"Agreed on {date}","navPayments":"Payments","navMessages":"Messages","menu":"Menu","messagesTitle":"Messages","messagesSubtitle":"The conversation with the company, tied to your work.","messagesEmpty":"No conversations yet — once you're placed on a job, the conversation with the company shows up here.","messagesThreadEmpty":"The conversation with the company, tied to this job. Write something below.","messagesBack":"All conversations","messagesYou":"You","messagesCompany":"The company","messagesComposerPlaceholder":"Write a message…","messagesSend":"Send","messagesSending":"Sending…","messagesSendError":"The message didn't send — try again.","messagesLoadError":"Couldn't load this conversation.","profileTradeVerified":"{trade} — verified by AlbNova","profilePrivateData":"Private data","pushPromptTitle":"Get a notification when work opens in your trade","pushPromptBody":"Your phone tells you the moment a job is published that matches your trade and your area.","pushEnable":"Turn on notifications","pushEnabling":"Turning on…","pushActive":"Notifications are on","pushDisable":"Turn off","pushDenied":"Notifications are blocked for this site. Only you can undo that, in your phone's settings.","pushInstallFirst":"On iPhone, notifications only work from the app on your home screen. Install it once, then turn them on.","pushInstallCta":"How to install it","pushUnsupported":"This browser does not support notifications.","pushFailed":"That didn't work. Try again.","installNudgeTitle":"Put AlbNova Work on your home screen","installNudgeBody":"It opens like an app and brings you notifications about new work.","installNudgeCta":"Install","installNudgeLater":"Not now","shellErrorTitle":"This screen didn't load","shellErrorBody":"The rest of the portal is working. Try opening this screen again, or go back.","shellErrorRetry":"Try again","shellErrorBack":"Go back","reviewsLoading":"Loading reviews…","reviewsErrorTitle":"Couldn't load your reviews","reviewsErrorBody":"The connection failed. Try again in a moment.","reviewsRetry":"Try again","reviewsEmptyBody":"Once you finish your first job and the customer rates it, their comment appears here.","reviewsAnonymous":"Customer","pushDeniedShort":"Notifications are blocked on this device.","pushInstallShort":"On iPhone, notifications only work from the app on your home screen.","pushPromptShort":"Get a notification the moment work opens in your trade.","pushHowToEnable":"How do I turn these on?","pushDismiss":"Dismiss this notice","roleFieldTechnician":"Field technician","roleHiringManager":"Hiring manager","roleAdministrator":"Administrator","navReviews":"Reviews","navNotifications":"Notifications","navMore":"More","moreSheetClose":"Close","homeTitle":"What's waiting for you today","homeSubtitle":"Your invites, notifications and jobs in hand, in one place.","homeInvitesTitle":"Job invites","homeInviteAccept":"Accept","homeInviteDecline":"Decline","homeInviteAccepting":"Accepting…","homeInviteDeclining":"Declining…","homeNotificationsTitle":"Recent notifications","homeSeeAllNotifications":"See all","homeJobsTitle":"Jobs in hand","homeNoJobsInHand":"No jobs in hand yet. Check the jobs board.","homeSeeAllJobs":"See Jobs","homeNextTitle":"Coming up next","homeNoNext":"Nothing scheduled yet.","homeLoadFailed":"We could not load this part.","homeRetry":"Try again","homeRespondFailed":"Your answer was not recorded. Try again.","bottomNav":"Main navigation","homeReferralTitle":"Brought in a customer?","homeReferralBody":"Your invite code is on Profile — give it to the customer and the job links to you.","homeReferralCta":"Go to Profile","undertakingProtects":"This protects you too: payment, warranty and legal liability stay with the company, not on your shoulders.","undertakingOnce":"Whoever tries it once, is out.","undertakingSign":"Sign","undertakingSigning":"Signing…","undertakingError":"Couldn't record your acceptance. Try again.","undertakingStale":"The terms were updated in the meantime. Reload the page and read the new version.","undertakingVersionNote":"Version {version}","undertakingCheckboxRequired":"You need to tick the box before you can sign.","undertakingLoading":"Checking…","profileDocuments":"Documents","profileDocCv":"CV","profileDocOnFile":"On file","profileDocMissing":"Missing","profileDocsNote":"You submit them once, at the start. We never ask again.","bellHeading":"Notifications","bellLabel":"Notifications, {n, plural, =0 {none unread} one {# unread} other {# unread}}","bellEmpty":"Nothing new right now.","bellSeeAll":"See all","messagesListHeading":"Conversations","messagesPickThread":"Pick a conversation on the left to open it here.","messagesUnreadLabel":"{n, plural, one {# unread message} other {# unread messages}}","messagesSendHint":"Enter sends · Shift+Enter starts a new line","messagesRetry":"Try again","messagesLogLabel":"Conversation about {job}","messagesToday":"Today","messagesYesterday":"Yesterday","homeGreeting":"Hello, {name}","homeOpenWorkTitle":"Open work for you","homeOpenWorkEmpty":"No open jobs for your trade yet. Take a look at the whole board.","homeSeeAllWork":"See all","profileEdit":"Edit profile","profileEditTitle":"Edit profile","profileEditClose":"Close","profileHeadline":"One line about you","profileHeadlineHint":"For example “Plumber, 12 years in Tirana”. Up to 80 characters.","profileHeadlineEmpty":"Add a line that describes you.","profileBio":"About me","profileBioHint":"What you do, how you work and why they should pick you. Up to 600 characters.","profileBioEmpty":"Add a few words about your work.","profileSlug":"Profile address","profileSlugHint":"This is the link you send customers. Lowercase letters, numbers and hyphens only.","profileSlugTaken":"That address is taken. Try another one.","profileSlugInvalid":"Lowercase letters, numbers and hyphens only — at least 3 characters.","profileFieldTooLong":"That is too long.","profilePublicSwitch":"My profile is public","profilePublicHint":"Switched off, the link opens for nobody.","profileAreasSwitch":"Show where I work","profileAreasSwitchHint":"The areas appear on the profile a customer sees.","profileSave":"Save","profileSaveFailed":"Not saved. Try again.","profileViewPublic":"View as a customer","profileCopyLink":"Copy link","profileLinkCopied":"Copied","profileChangeCover":"Change cover","profileChangePhoto":"Change photo","profileUploading":"Uploading…","profileUploadFailed":"The photo did not upload. Try a JPG or PNG under 8 MB.","profileHiddenBanner":"Your profile is hidden — the link opens for nobody.","profilePublicNote":"Your profile is public — anyone with the link can see it.","profilePublicNoteAction":"Change visibility","profileCounterJobs":"jobs done","profileCounterRating":"rating","profileCounterPosts":"posts","profileNoRating":"no rating yet","profilePendingNote":"{n} waiting on review","undertakingNetwork":"We couldn't reach the server. Check your connection and try again.","undertakingSession":"Your session has expired. Sign in again and carry on from here.","undertakingWorkersOnly":"This page is for registered workers only.","undertakingUnknown":"The server doesn't recognise this undertaking. Reload the page to read the current text.","undertakingServer":"The server did not answer (error {code}). Try again in a moment.","undertakingSigned":"Your signature is on file. The jobs board is open.","undertakingLoadFailedTitle":"We couldn't check your signature","undertakingReady":"Ready to sign.","undertakingSignIn":"Sign in again","undertakingReload":"Reload the page","undertakingRetry":"Try again","perfLoadFailedTitle":"Your performance didn't load","perfLoadFailedBody":"The server did not answer (error {code}). Your record is fine — try again in a moment.","perfSessionExpired":"Your session has expired. Sign in again to see your performance.","perfEmptyTitle":"Nothing to show yet","perfEmptyBody":"Customer reviews, finished jobs and payouts appear here as soon as you complete your first job.","perfHeld":"{amount} disputed","perfOwed":"{amount} owed","perfScoresSource":"Quality comes from your customer reviews, speed from on-time delivery, experience from the jobs you have finished.","perfSource":"Every figure here comes from your customer reviews, your finished jobs and the payment ledger."},"referral":{"dialogLabel":"Referral code","invalidLink":"This referral link is not active. You can continue to AlbNova without it.","kicker":"Welcome to AlbNova","dismiss":"Dismiss","titleWithContact":"You arrived through {contact}'s link","titleGeneric":"Were you referred by someone from AlbNova?","subWithContact":"Connect {contact} as your AlbNova contact — it applies no discount, it just puts a named specialist behind your projects.","subGeneric":"If a tiler, installer or AlbNova team member gave you a code, add it to connect with them. It's optional and applies no discount — it just puts a named specialist behind your projects.","codeLabel":"Referral code","hintConnected":"You'll be connected with {contact}.","connecting":"Connecting…","connect":"Connect my AlbNova contact","notNow":"Not now — maybe later","fine":"You can add a code anytime from <b>Your account</b>, until your first order or job deposit.","doneTitle":"You're connected","doneSub":"Your referral has been saved to your account.","contactLabel":"Your AlbNova contact","perk1":"Your service requests get priority quotation.","perk2":"No discount is applied — your prices don't change.","continue":"Continue shopping","readAloudNote":"The code uses letters that don't get misheard — no zero, no one. Say it out loud on site; the customer writes it once, when they get in touch.","noPriceChange":"The code doesn't lower the customer's price. It isn't a discount — it's the mark that this person came from you.","neverExpires":"The link never expires. On every future job that customer does with us, you stay their tradesperson.","rewardsTitle":"What you get when you bring the customer","rewardPriorityTitle":"First in the queue","rewardPriorityBody":"For your trade on that job, the first place in the queue is yours — as crew lead or inside the crew.","rewardLabourTitle":"{pct}% on your own work","rewardLabourBody":"On top of the share you earn for the work you do. If your share grows, so does this.","rewardMaterialsTitle":"{pct}% of the materials","rewardMaterialsBody":"On the materials that go into that project — worked out on what they cost, not on our margin.","rewardStillYours":"Can't work it? The materials share is still yours. You brought the customer.","linkedCustomers":"Customers linked to you","bonusesTitle":"Your bonuses","bonusLabour":"Referral bonus — work","bonusMaterials":"Referral bonus — materials","bonusStatus":{"accrued":"Owed","paid":"Paid","disputed":"In dispute","void":"Cancelled"},"noBonusesYet":"No bonuses yet. As soon as a job for a customer you brought is verified, it shows up here.","totalAccrued":"{amount} owed","totalPaid":"{amount} paid"},"review":{"statusSubmittedLabel":"Submitted","statusSubmittedBlurb":"Your application has been received and is queued for review.","statusInReviewLabel":"In review","statusInReviewBlurb":"An administrator is verifying your identity and qualifications.","statusTrialLabel":"Trial period","statusTrialBlurb":"Complete 3 reviewed jobs to earn permanent access.","statusPermanentLabel":"Permanent","statusPermanentBlurb":"You have full access to jobs on the platform.","statusRejectedLabel":"Not approved","statusRejectedBlurb":"This application was not approved.","applicationStatus":"Application status","trialProgress":"Trial progress","jobsReviewed":"{rated} / {total} jobs reviewed","awaitingAssignment":"Awaiting assignment","averageRating":"Average rating","needsAbove":" / needs > {gate}","gateNoteIncomplete":"Complete all {total} reviewed jobs to be evaluated for permanent access.","gateNotePass":"Trial passed — eligible for permanent access.","gateNoteFail":"Trial average did not clear the permanent threshold.","rateAria":"Rate {title} {n} of 5","unknownApplicant":"Unknown applicant","drivingLicense":"Driving license","appliedOn":"Applied {date}","reject":"Reject","startReview":"Start review","approveToTrial":"Approve to trial","evaluateTrial":"Evaluate trial","evaluateTitleReady":"Promote or reject based on the trial average","evaluateTitleWaiting":"Rate all {total} trial jobs first","trialScoreQuality":"Work quality","trialScoreCommunication":"Communication","trialScoreReliability":"Reliability","trialScoreProfessionalism":"Professionalism","trialSaveRating":"Save rating","loadError":"Couldn't load the review queue.","actionFailed":"Action failed ({reason}).","applicationReview":"Application review","panelSub":"Verify identity and qualifications, run the trial, and activate workers. Approving to trial verifies the applicant's trades for the job board.","storeAdmin":"Store admin","loading":"Loading applications…","emptyAll":"No applications yet. New submissions from /apply land here.","needsAttention":"Needs attention","decided":"Decided","queueClear":"Queue is clear.","nothingDecided":"Nothing decided yet.","rejectReasonPlaceholder":"Reason for rejection…","cancel":"Cancel","confirmReject":"Confirm reject","rejectedReason":"Reason: {reason}","trackingCodeLabel":"Tracking: {code}","guestApplicantTag":"Guest applicant","docKindCv":"CV","docKindCertification":"Certification","docKindPortfolio":"Portfolio","recordReview":"Record review","editReview":"Edit review","reviewInfoVerifiedCheckbox":"Information verified","reviewLegitimateCheckbox":"Legitimacy confirmed","reviewTruthfulnessFieldLabel":"Truthfulness","reviewNotePlaceholder":"Notes (optional)…","saveReview":"Save review","reviewTruthfulnessSummary":"Truthfulness {truthfulness}/5","reviewInfoVerifiedYes":"Info verified","reviewInfoVerifiedNo":"Info not verified","reviewLegitimateYes":"Legitimate","reviewLegitimateNo":"Not legitimate","reviewedBy":"Reviewed by {by}","reviewRequiredTooltip":"Record the review (info verified + legitimacy confirmed) first.","scheduleInterview":"Schedule interview","rescheduleInterview":"Reschedule","interviewDateTimeLabel":"Date & time","interviewModeLabel":"Mode","interviewModeInPerson":"In person","interviewModeVideo":"Video","interviewModePhone":"Phone","interviewLocationPlaceholder":"Location (optional)…","interviewNotePlaceholder":"Note (optional)…","saveInterview":"Save interview","interviewDetailsLabel":"Interview: {date} at {time} ({mode})","interviewPassed":"Passed","interviewFailed":"Failed","interviewFailNotePlaceholder":"Reason (optional)…","confirmInterviewFailed":"Confirm failed","statusInterviewScheduledLabel":"Interview scheduled","statusInterviewScheduledBlurb":"An interview has been scheduled — check your invitation for the details.","statusInterviewPassedLabel":"Interview passed","statusInterviewPassedBlurb":"You cleared the interview and are queued for the trial phase.","statusHiredLabel":"Hired","statusHiredBlurb":"Your application was accepted. AlbNova will contact you about next steps.","interviewDetailsLabelNoDate":"Interview: {mode} — we'll be in touch about the time","interviewModeVideoProfessional":"Online","inviteSecondStage":"Invite to the second stage","hireApplicant":"Accept","trackBadgeFreelancer":"Freelancer","trackBadgeProfessional":"Professional position","trackFilterLabel":"Filter by application type","trackFilterAll":"All","trackFilterFreelancer":"Freelancer","trackFilterProfessional":"Professional position","portfolioLink":"Portfolio","availabilityWeekdays":"Weekdays","availabilityWeekends":"Weekends","availabilityEvenings":"Evenings","wantsCallFlag":"Wants a call","callAction":"Call","callAria":"Call {phone}","whatsappAria":"Message on WhatsApp","accountEmailLabel":"Sign-in email","accountEmailHint":"The company mailbox (it must already exist in cPanel) or the applicant's own address. The invite always goes to an address the applicant reads.","confirmApproveTrial":"Confirm trial approval","errorMailboxTaken":"That mailbox is already used by another account — try a different one.","errorWrongTrack":"This action doesn't apply to this application type.","messageModeLabel":"Message mode","messageModeTemplate":"Template","messageModeTemplateComment":"Template + comment","messageModeCustom":"Custom","messagePreviewLabel":"Preview:","messageCommentPlaceholder":"Your comment (added to the template)…","messageSubjectPlaceholder":"Message subject…","messageBodyPlaceholder":"Message body…","statusScreeningLabel":"Screening","statusScreeningBlurb":"Your documents and details are being screened before the next stage.","accountEmailUseMailbox":"Use the company mailbox","accountEmailUsePersonal":"Use {email}"},"services":{"crumbHome":"Home","crumbServices":"Services","heroEyebrow":"AlbNova Services","heroTitle":"Design it. We'll install it.","heroBody":"From a single tile to a full bathroom fit-out — request a service and get an itemised quote from vetted, rated professionals near you. Buy the materials, design the room, and have a pro finish the job, all in one place.","requestService":"Request a service","myProjects":"My projects","browseServicesTitle":"Browse services","browseServicesSub":"Pick a service to start a request — or tell us about a custom job.","stepN":"STEP {n}","trustBody":"Workers go through application, review and a rated trial before taking paid jobs. You rate every completed job.","categoryBlurbConstruction":"Masonry, plastering, painting and drywall for bigger jobs.","categoryBlurbDesign":"Talk to a designer — consultations, room reviews and layout help.","categoryBlurbSpecialist":"Licensed electricians, plumbers and HVAC technicians.","fromRateM2":"from {rate}/m²","fromRateFixture":"from {rate}/fixture","fromRateDay":"from {rate}/day","fromRate":"from {rate}","projectsLede":"Your service requests, quotes and jobs — from first request to a rated, finished job.","projectCount":"{count, plural, one {# project} other {# projects}}","newRequest":"New request","emptyTitle":"No projects yet","emptyBody":"Request your first service and we'll prepare a quote right away.","browseServices":"Browse services","locationTbc":"Location TBC","requestedOn":"Requested {date}","jobRef":"Job {id}","yourRequests":"Service requests","yourDesigns":"Your designs","untitledDesign":"Untitled design","designItems":"{count} items","designUpdated":"Updated {date}","designShared":"Shared","reportProblem":"Report a problem","complaintLede":"Something wrong with an order or finished work? Our job manager reviews it and comes back with the corrective plan.","serviceLede":"Tell us about the job and we'll prepare an itemised quote right away.","restoredTitle":"You're signed in — welcome back.","restoredBody":"Your request is just as you left it. Review the details and submit.","newService":"New service","complaintTab":"Complaint / corrective work","contextProductTitle":"Installation for {name}","contextProductBody":"Pre-filled from the product page — adjust anything below.","contextDesignTitle":"From your saved design","contextDesignBody":"Estimated materials {amount} carried into the quote.","whatWrongTitle":"What went wrong?","whatNeededTitle":"What do you need done?","aboutLabel":"About","aboutHint":"(the order or finished job this concerns)","aboutNoneOption":"Not tied to a specific order","orderOption":"Order {id} · {total}","finishedJobOption":"Finished job · {serviceType} ({ref}…)","signIn":"Sign in","signInToLinkComplaint":"to link the order or job this complaint is about.","categoryLabel":"Category","serviceLabel":"Service","errChooseService":"Choose a service.","phScopeExample":"e.g. 20","errEnterScope":"Enter the scope.","budgetLabel":"Budget","budgetHint":"(optional, ALL)","phBudgetExample":"e.g. 40000","describeProblemLabel":"Describe the problem","describeWorkLabel":"Describe the work","optionalHint":"(optional)","phDescribeProblem":"What's wrong, when it appeared, and what outcome you expect — photos below help a lot.","phDescribeWork":"Anything the pro should know — surfaces, access, condition, finish…","errDescribeProblem":"Describe what's wrong.","whereWhenTitle":"Where & when","streetLabel":"Street address","phStreet":"Street, building, apartment","cityLabel":"City","cityPlaceholderOption":"Select a city…","errCityRequired":"City is required.","areaLabel":"Neighbourhood / area","phArea":"e.g. Qendër","phoneLabel":"Phone","errPhone":"Add a phone number (or switch to email).","contactPrefLabel":"Preferred contact","optPhoneCall":"Phone call","optEmail":"Email","optWebsiteMessages":"Website messages","preferredDateLabel":"Preferred date","altDateLabel":"Alternative date","urgencyLabel":"Urgency","optFlexible":"Flexible","optWithinWeek":"Within a week","optUrgent":"Urgent","accessLabel":"Access notes","phAccess":"Floor / gate code / parking / when someone's home…","photosTitle":"Photos & video","photosBody":"Add photos or a short video of the space so the pro can prepare (optional).","uploading":"Uploading…","uploadFailed":"Upload failed — images/video up to 15 MB each.","removeMedia":"Remove {name}","whatNextTitle":"What happens next","whatNextBody":"No instant estimate for corrective work — our job manager reviews the problem (and the linked order or job), may call you or arrange an inspection, and responds here with the corrective plan. Warranty work can come back at no cost.","submitComplaint":"Submit complaint","complaintSubmitNote":"You'll see status updates and any manager questions on the request page.","estimatedQuoteTitle":"Estimated quote","vat":"VAT (20%)","estimatedTotal":"Estimated total","leadTime":"Typical lead time {time}","getQuote":"Get my quote","estimateNote":"This is an automated estimate. The final quote is confirmed after a pro reviews your details, and may change after an optional site visit. No payment is taken now.","scheduleFailed":"We couldn't schedule this job — please try again.","loadingRequest":"Loading your request…","notFoundTitle":"We couldn't find that request","notFoundBody":"The link may be out of date, or it was created in another browser.","backToServices":"Back to Services","declinedBanner":"You declined this quote. Need it after all? Start a new request any time.","withdrawnBanner":"You withdrew this request. Need it again? Start a new request any time.","withdrawRequest":"Withdraw the request","withdrawConfirmTitle":"Withdraw this request?","withdrawConfirmBody":"The request closes and no offer will be prepared. You owe nothing. If you change your mind, start a new request.","withdrawReasonPlaceholder":"Reason (optional) — it helps us improve","withdrawKeep":"Keep the request","withdrawConfirm":"Yes, withdraw it","withdrawSubmitting":"Withdrawing…","withdrawTooLate":"This request can no longer be withdrawn — the offer was accepted or the work has started. Call us and we'll sort it out together.","withdrawFailed":"The request could not be withdrawn. Try again in a moment.","quoteTitle":"Quote","managerReviewingComplaint":"Our job manager is reviewing this complaint — the corrective plan and any quote (warranty work can be free) will appear here. Watch the messages below for questions in the meantime.","managerReviewingRequest":"Our job manager is reviewing this request — the corrective plan and any quote (warranty work can be free) will appear here. Watch the messages below for questions in the meantime.","needsInfoLead":"We need a bit more information","needsInfoRest":"— check the messages below and reply there.","needsInfoQuoteRest":"before this quote can be finalised — check the messages below and reply there.","yourQuoteTitle":"Your quote","quoteVersion":"version {n}","thItem":"Item","thQty":"Qty","thRate":"Rate","thAmount":"Amount","subtotal":"Subtotal","total":"Total","depositToStart":"Deposit to start","scopeIncluded":"Included","scopeExcluded":"Not included","assumptions":"Assumptions & your responsibilities","validUntil":"Valid until","quoteHistoryTitle":"Quote history","yourSpecTitle":"Works specification","quoteSiteVisit":"Based on the site visit of","quotePlannedStart":"Planned start","quoteDuration":"Estimated duration","quoteMaterials":"Materials","quoteMaterialsCompany":"AlbNova supplies the materials.","quoteMaterialsCustomer":"You supply the materials.","quoteMaterialsMixed":"You supply part of the materials, AlbNova the rest.","quoteGuarantee":"Workmanship guarantee","quoteSpecialConditions":"Special conditions","quotePaymentSchedule":"Payment schedule","quoteDownloadPdf":"Download PDF","quoteDownloadPdfVersion":"Download version {n} as a PDF","quoteAcceptedOn":"You accepted version {n} on {date}.","quoteAcceptedTag":"accepted","current":"current","scheduling":"Scheduling…","acceptQuote":"Accept quote","signInToAccept":"Sign in to accept","requestChanges":"Request changes","decline":"Decline","revisionRequestedNote":"Revision requested — we're preparing a new quote version. You can still accept the current one above.","requestChangesTip":"Tip: type what you'd like changed in the message box below before hitting “Request changes”.","acceptDispatchNote":"Accepting dispatches a real job to our workforce, so it's tied to your account.","teamTitle":"Who is working on this","teamRepRole":"Looking after your project","teamHint":"The people who will be on site.","teamLead":"lead","teamProgress":"{pct}% done","docsTitle":"Your paperwork","docsHint":"What we have asked you to sign, and where each has got to.","docsOpen":"Open","docsStatus_needed":"Not yet sent","docsStatus_attached":"Ready for you","docsStatus_signed_in_person":"Signed","docsStatus_signed_digitally":"Signed","docsStatus_waived":"Not needed","yourJobTitle":"Your job","jobBody":"Quote accepted — this is now job {jobId} on the AlbNova workforce board. Qualified pros near {city} apply, our job manager confirms the team, and this page follows along: Scheduled when the team is set, In progress once work starts, and Completed after the finished work passes the job manager's verification.","youGeneric":"you","rateTitle":"How did it go? Rate the work.","ratedThanks":"You rated this {rating}/5 — thank you.","rateAria":"Rate {n} of 5","rateQuality":"Work quality","rateCommunication":"Communication","rateProfessionalism":"Professionalism","rateOverall":"Overall","rateCommentPlaceholder":"Anything to add? (optional)","rateSubmit":"Submit rating","disputeTheWork":"Dispute the work","disputeReasonPlaceholder":"What went wrong with the finished work?","disputeEvidenceHint":"Add photos or a short video as evidence (optional, up to 8).","cancel":"Cancel","disputeSubmit":"Submit dispute","disputeSubmitting":"Submitting…","disputeNotDisputable":"This job can no longer be disputed — its status has moved on.","disputeAlreadyOpen":"A dispute is already open on this job.","disputeFailed":"We couldn't submit the dispute — please try again.","disputedStatusLine":"This job is under dispute — our team is reviewing it. We'll follow up here.","messagesTitle":"Messages","noMessagesJob":"No messages yet — say hello to your pro.","noMessagesRequest":"No messages yet — questions about your request or quote go here.","youLabel":"You","yourProLabel":"Your pro","phMessagePro":"Message your pro…","phMessageAlbNova":"Message AlbNova about this request…","send":"Send","requestDetailsTitle":"Request details","areaShort":"Area","scopeLabel":"Scope","sourceLabel":"Source","createdLabel":"Created","prefersDates":"Prefers {dates}","orWord":"or","viewProduct":"View {name}","photoAlt":"photo","allMyProjects":"All my projects","srStatusRequested":"Requested","srStatusUnderReview":"Under review","srStatusNeedsInfo":"Needs info","srStatusQuoted":"Quote ready","srStatusRevisionRequested":"Revision requested","srStatusScheduled":"Scheduled","srStatusInProgress":"In progress","srStatusCompleted":"Completed","srStatusDeclined":"Declined","srStatusDisputed":"Disputed","srStatusCancelled":"Cancelled","srStatusWithdrawn":"Withdrawn","quoteLineSiteVisit":"Site visit & project setup","quoteLineLabour":"{serviceType} — labour","quoteLineMaterials":"Materials (estimated from design)","primaryBathroom":"Complete bathroom renovation","primaryKitchen":"Kitchenette fitting & upgrades","primaryPool":"Pool installation & renovation","specialistRepairs":"Repairs & replacements","specialistSingle":"Single installations","specialistSolar":"Solar hot water","specialistShowers":"Solar showers & outdoor systems","landingHeroEyebrow":"AlbNova services","landingHeroTitle":"What can we do for you?","landingHeroBody":"Choose the job you need and tell us a little about it. We call you, come and see it in person, and send you a written quote.","landingHeroMediaAlt":"Private villa with pool and terrace – from our own projects","landingCallSpecialist":"Call us at {phone}","landingFilterLabel":"Filter services by category","landingFilterAll":"All services","landingCategoryInstallation":"Installation","landingCategoryConstruction":"Construction & finishing","landingCategoryDesign":"Design & planning","landingCategorySpecialist":"Specialist trades","landingFeaturedBadge":"Most complete service","landingFeaturedTitle":"Complete apartment and house renovation","landingFeaturedBody":"Planning, sourcing, fitting and finishing — managed as one complete service.","requestThisService":"Request this service","requestServiceShort":"Request service","landingCatalogueUnavailableTitle":"The service list isn’t showing","landingCatalogueUnavailableBody":"Something went wrong on our side and the full list of services didn’t come through. The work carries on as normal — call us, or describe your project and we’ll come back with a quote.","landingDescTile":"Wall and floor tiling, preparation and grouting.","landingDescFlooring":"Laminate and hardwood fitting with clean finishing.","landingDescBathroom":"Shower, vanity, WC and fixture installation.","landingDescKitchen":"Cabinetry, worktops, appliances and finishing.","landingDescMasonry":"Structural blockwork and careful masonry for renovation projects.","landingDescPlastering":"Smooth wall preparation and plaster finishing.","landingDescPainting":"Interior painting with thorough preparation and a clean finish.","landingDescDrywall":"Partitions, ceilings and drywall finishing.","landingDescArchitecture":"Plans and technical direction shaped around your space.","landingDescInteriorDesign":"Material, layout and finish advice from an interior specialist.","landingDescRoomReview":"A focused expert review of one room and its possibilities.","landingDescLayout":"Practical layout guidance before you commit to the work.","landingDescElectrician":"Safe electrical installation, upgrades and fault finding.","landingDescPlumber":"Plumbing installation, repairs and replacements.","landingDescHvac":"Heating, cooling and ventilation support from a specialist.","landingDescFallback":"Tell us what you need and our team will confirm the right scope.","landingGuidanceTitle":"Can't find the job you need?","landingGuidanceBody":"Tell us in your own words and we'll tell you who does it and how.","landingCardPageLink":"Read about this service","landingCardCtaNote":"A site visit, then a written quote.","pageCrumbLabel":"Services","pageIncludedTitle":"What is included","pageExcludedTitle":"What is not included, or is done as needed","pageProcessTitle":"How we work","pageProcessLink":"See the whole process","pageDurationTitle":"How long it takes","pageDurationCaveat":"An indication only. The dated programme follows the site measurement and the agreed scope of work.","pagePriceTitle":"Price orientation","pagePriceFrom":"From {price}","pageQuoteTitle":"What it costs","pageQuoteBody":"We do not price from a desk. We come and measure on site, and after that you get a written quote with labour, materials and VAT set out separately.","pageFaqTitle":"Questions we are asked","pageProjectsTitle":"Our projects","pageProjectsBody":"Work carried out by professionals we have verified ourselves, documented in photographs. Open one to see the scope of work and the pictures.","pageCtaTitle":"Shall we start?","pageCtaBody":"Tell us about the room and what you have in mind. We come and measure, and come back with a written quote.","pageAlsoTitle":"Ask for one part only","pageCallCta":"Call {phone}","pageWhatsappCta":"Message on WhatsApp","pageWhatsappText":"Hello! I have a question about this service: {service}.","pageBackToServices":"All services","chooseService":"Choose a service","bathroomDetailAlt":"AlbNova bathroom detail","viewProjects":"View past projects","smallerJobs":"Smaller jobs & specialist work","showFewServices":"Show fewer services","viewAllServices":"View all services","handledStart":"Handled from<br></br>start to finish","clearProcess":"A clear process. One team. Complete peace of mind.","journeyListen":"We listen","journeyListenDesc":"We understand your needs, ideas and budget.","journeyMeasure":"We measure","journeyMeasureDesc":"On-site survey for accurate planning and advice.","journeyPlan":"We plan","journeyPlanDesc":"Smart layouts and details tailored to you.","journeySource":"We source","journeySourceDesc":"Quality materials selected for beauty and durability.","journeyBuild":"We build","journeyBuildDesc":"Skilled fitting and careful project management.","journeyInspect":"We inspect","journeyInspectDesc":"Every detail checked to meet our standards.","journeyHandover":"We hand over","journeyHandoverDesc":"A beautiful space, ready for you to enjoy.","meditterraneanHomeAlt":"Mediterranean home and sea view","notSureProject":"Not sure what your project needs?","helpYouStep":"We're here to help you take the right next step.","speakTeam":"Speak directly with our team.","expertAdvice":"Get expert advice from anywhere.","sendDetails":"Send us a few details and we'll reply.","realProjects":"Real projects, real results","viewMoreProjects":"View more projects","projectBathroomAlt":"Finished bathroom","projectKitchenAlt":"Finished kitchenette","projectPoolAlt":"Finished pool","projectSolarAlt":"Solar installation","projectBathroomRenovAlt":"Bathroom renovation","myProject":"My project","myProjectDesc":"All your requests, plans, conversations, and project progress live here.","bathroomRenovDefault":"Bathroom renovation","projectActive":"Project active","reviewPlan":"Review the proposed plan","openProject":"Open project","serviceRequests":"Service requests","savedDesigns":"Saved 3D plans","untitledRoom":"Untitled room","lastUpdated":"Last updated","readyStart":"Ready to start something new?","helpShape":"We're here to help shape your next space.","startProject":"Request a service","openPlanner":"Open the 3D planner","activeProjectCount":"{count} active","activeProjects":"Active projects","available":"Available","currentProject":"Current project","loadingProjects":"Loading your projects","openRequest":"Open request","pending":"Pending","photosCount":"{count, plural, one {# photo} other {# photos}}","projectProgress":"Project progress","requestCount":"{count} total","serviceRequest":"Service request","progressLabel":"Project request progress","progressDetails":"Project details","progressTiming":"Place & timing","progressReview":"Review","tellWrong":"Tell us what went wrong","tellProject":"Tell us about your project","shareDetails":"Share a few details and we'll review your request. AlbNova will coordinate the complete work from planning to handover.","selectedService":"Selected service","chooseWork":"Choose the main type of work.","formBathroom":"Bathroom renovation","formKitchen":"Kitchenette fitting","formPool":"Pool fitting","projectSize":"Project size","helpScale":"Help us understand the scale.","sizeSmall":"Small (up to 5 m²)","sizeMedium":"Medium (5–12 m²)","sizeLarge":"Large (12–25 m²)","sizeExtraLarge":"Extra large (25+ m²)","notSureSize":"Not sure? We'll confirm this during the review.","whatWrong":"What happened?","whatNeeded":"What needs to be done?","describeProblem":"Describe the problem.","selectAll":"Select all that apply.","phDescribeIssue":"Describe the issue and when you first noticed it…","workOptionDemolition":"Demolition","workOptionPlumbing":"Plumbing","workOptionElectrical":"Electrical","workOptionTiling":"Tiling","workOptionPainting":"Painting","workOptionOther":"Other","address":"Address","whereProject":"Where is the project located?","phCity":"City or area","phPostal":"ZIP / Postal code","preferredTiming":"Preferred timing","whenStart":"When would you like to start?","timingFlexible":"Flexible","timingMonths":"Within 1–3 months","timingMonth":"Within one month","timingUrgent":"As soon as possible","confirmAvailability":"We'll confirm availability after reviewing details.","addPhotos":"Add photos or a short video","photosHelp":"This helps us understand the space and your ideas.","dragDropFiles":"Drag and drop files here or click to upload","photoHint":"Add up to 10 photos or a short video (max 60 seconds) JPG, PNG, MP4 up to 200 MB","addMore":"+ Add more","privacyNote":"Your information is safe with us and will only be used to prepare your project.","specialistMeasuringAlt":"AlbNova specialist measuring a project","preferSpeak":"Prefer to speak first?","speakHelp":"Our specialists are here to help you shape the right plan.","seeAvailability":"See availability","replyQuickly":"We'll reply quickly","projectSummary":"Project summary","change":"Change","scopeTitle":"Scope (based on your choices)","scopeConfirm":"Scope to be confirmed","approxTimeline":"Approximate timeline","confirmReview":"We'll confirm after the review.","investment":"Investment","estimatePrepared":"Estimate prepared after review","estimateProvide":"We'll provide a clear estimate once we understand your project.","ourProcess":"Our process","processPlanning":"Planning","processSourcing":"Sourcing","processFitting":"Fitting","processInspection":"Inspection","processHandover":"Handover","sendProblem":"Send problem report","sendRequest":"Send project request","savedLater":"Saved for later ✓","saveContinue":"Save and continue later","noCommitment":"No commitment. You can update details anytime.","callUs":"Call us","messageUs":"Message us","saved":"Saved","heroFinishedRoomAlt":"A finished interior — joinery, stone and lighting completed together, from our own projects","landingCategoryIntroInstallation":"Fitting work in a space that already exists — tiling, flooring, bathrooms and kitchens.","landingCategoryIntroConstruction":"Wall and finishing work: masonry, plastering, painting and drywall.","landingCategoryIntroDesign":"The decisions taken before work starts: layout, materials and the technical plan.","landingCategoryIntroSpecialist":"Licensed installations: electrics, plumbing, heating and cooling.","pageDocumentsTitle":"What we will need from you","pageDocumentsBody":"These are the papers this work usually needs. They are not a condition of starting — we say so up front so the work does not stop halfway.","documents":{"workAgreement":{"label":"Work agreement","note":"Scope, price and dates, signed before the crew starts."},"accessConsent":{"label":"Access consent","note":"Written permission to enter, from whoever holds the property — a tenant is not always the owner."},"photoPublicationConsent":{"label":"Photo and publication consent","note":"Whether we may use before/after photos of this property in our own materials. Refusing changes nothing else."},"handoverSignOff":{"label":"Handover sign-off","note":"Signed at the end: the work is done and you have seen it."},"electricalSafetyCertificate":{"label":"Electrical safety certificate","note":"Issued by the electrician on completion."},"pressureTestRecord":{"label":"Pressure test record","note":"For any job that opens a supply or waste run."},"commissioningRecord":{"label":"Commissioning record","note":"Unit, settings and readings at handover."},"structuralSignOff":{"label":"Structural sign-off","note":"Where anything load-bearing is touched."},"methodStatement":{"label":"Method statement","note":"How the work will be sequenced and made safe. Internal."}},"landingPromiseVisit":"Free site visit","landingPromiseQuote":"Written quote before any work","landingPromiseCrew":"One crew from start to finish","landingBoxSub":"No obligation. Then we call you.","landingBoxSelectLabel":"The service you need","landingBoxPlaceholder":"Choose a service…","landingBoxContinue":"Continue your request","landingBoxOr":"or talk to us now","landingBoxHours":"{phone} · {days}, {open}–{close}","landingFeaturedCta":"Request a renovation","landingGroupCount":"{count, plural, one {# service} other {# services}}","mpEyebrow":"My project","mpEmptyTitle":"Your request and your work, in one place.","mpEmptyBody":"Here you can see where your request stands, when we are coming for the visit, the written quote and how the work is going.","mpWelcomeName":"Welcome back, {name}.","mpWelcome":"Welcome back.","mpActiveBody":"Your request is moving. Here you can see the next step, the documents and who to call.","mpClosedBody":"Here are your requests and everything that has happened with them.","mpNewRequest":"New request","mpSignInTitle":"Already sent a request?","mpSignInBody":"Sign in with the email you used for the request and you will see it here, with every update.","mpSignInCta":"Sign in","mpSignInHelp":"Can't find it? Call us and we will look it up for you.","mpStartTitle":"No request yet?","mpStartBody":"Pick the job you need and tell us a little about it. We call you, and the site visit is free.","mpStartCta":"Request a service","mpCall":"Call us","mpWhatsappAria":"Message us on WhatsApp","mpWhatsappPrefill":"Hello! I would like to talk about a project.","mpWhatsappPrefillRef":"Hello! I have a question about request {reference} ({service}).","mpHowTitle":"How a request moves","mpStep1":"Request","mpStep2":"Phone call","mpStep3":"Free visit","mpStep4":"Written quote","mpStep5":"The work","mpStep1Hint":"You tell us what you need","mpStep2Hint":"We call you","mpStep3Hint":"We come and measure","mpStep4Hint":"You approve it","mpStep5Hint":"Through to handover","mpShowcaseEyebrow":"Inspiration","mpShowcaseTitle":"See what we have built","mpShowcaseBody":"Villas, hotels and homes, with photographs from every stage of the work.","mpShowcaseProjects":"See the projects","mpShowcaseServices":"Browse the services","mpRequestMeta":"{city} · Request {reference} · sent on {date}","mpNextLabel":"Next step","mpOpenQuote":"See the quote","mpNextCallTitle":"We will call you","mpNextCallBody":"Someone from AlbNova calls you to talk about the job and to set up the free visit.","mpNextInfoTitle":"We need a few details","mpNextInfoBody":"Open the request to see what is missing, or call us.","mpNextVisitTitle":"The free site visit","mpNextVisitBody":"Free of charge. The crew lead comes, measures and checks the condition of the place.","mpNextQuoteTitle":"Your written quote is ready","mpNextQuoteBody":"Read it at your own pace and approve it when you want. For any question, call us.","mpNextRevisionTitle":"We are preparing the new quote","mpNextRevisionBody":"We will let you know as soon as it is ready.","mpNextScheduledTitle":"The work is scheduled","mpNextScheduledTitleDate":"The work starts on {date}","mpNextScheduledBody":"If anything changes on your side, call us.","mpNextProgressTitle":"The work is under way","mpNextProgressBody":"Open the request to see the progress and the crew.","mpNextDoneTitle":"The work is finished","mpNextDoneBody":"Thank you for choosing us. If anything is not right, call us.","mpNextDisputedTitle":"We are looking into your dispute","mpNextDisputedBody":"We will call you to sort it out together.","mpNextClosedTitle":"This request is closed","mpNextClosedBody":"If you still need the work, send a new request or call us.","mpWhereTitle":"Where we are","mpNow":"now","mpAfterCall":"after the call","mpAfterVisit":"after the visit","mpAfterApproval":"after approval","mpOthersTitle":"Your other requests","mpOtherMeta":"{city} · sent on {date}","mpContactTitle":"Who to contact","mpContactName":"The AlbNova crew","mpContactHours":"{days}, {open}–{close}","mpCallShort":"Call","mpWhatsapp":"WhatsApp","mpDocsTitle":"Documents","mpDocQuote":"Written quote","mpDocQuoteReady":"Ready · PDF","mpDocPhotos":"Your photos ({count})","mpDocPhotosOpen":"View","mpLogTitle":"What has happened","mpLogSubmitted":"You sent the request","mpLogSubmittedPhotos":"You sent the request with {count, plural, one {# photo} other {# photos}}","mpLogStatus":"Status: {status}","mpLogMessageUs":"Message from AlbNova","mpLogMessageYou":"You sent us a message","mpYouInitials":"You","mpLoadError":"Your requests could not be loaded.","mpLoadErrorBody":"Try again in a moment, or call us.","mpRetry":"Try again"},"shell":{"loading":"Opening the page…","fallbackTitle":"Not opening?","fallbackBody":"This page needs JavaScript. If it does not open within a few seconds, call us or send a WhatsApp message — we will pick it up from there.","call":"Call {phone}","whatsapp":"Message on WhatsApp","serviceRequestTitle":"Request a service","serviceRequestIntent":"Answer a few questions about the work you need. We quote after the site visit, and nothing is confirmed until you send it.","applyTitle":"Apply to AlbNova","applyIntent":"Choose how you are applying: as an independent tradesperson, or for a professional position in the studio. You don't need an account to apply.","applyFreelancerTitle":"Trade application","applyFreelancerIntent":"Tell us which trade you work in, where you can work and how to reach you. Three short steps and a summary, no identity documents.","applyProfessionalTitle":"Professional position application","applyProfessionalIntent":"Architect, 3D modeller, interior designer or engineer: your CV and your work, then a summary. We answer by email.","signInTitle":"Sign in","signInIntent":"Sign in to follow your requests, quotes and work. The account is free and it is the same one for every project you open with AlbNova.","employeeSignInTitle":"Staff sign-in","employeeSignInIntent":"For AlbNova crews and staff only. If you are a customer, sign in on the normal sign-in page with your own email and password.","applyTrackTitle":"Track your application","applyTrackIntent":"Enter the tracking code you received when you sent your application, together with your email, and see where it stands. If the page does not open, refresh it or message us on WhatsApp.","portalTitle":"Your area","portalIntent":"Opening the panel with your requests, projects and documents. If it does not open, refresh the page or sign in again with your account.","applyUpdateTitle":"Complete your application","applyUpdateIntent":"Add what the AlbNova team asked you for: your CV, photos of your work, certificates or a few lines. If the page does not open, message us on WhatsApp."},"staff":{"home":"Home","staf":"Staff","brandLabel":"AlbNova Staff, Home","loading":"Loading…","loadFailed":"This didn't load. Try again in a moment.","retry":"Try again","shellErrorTitle":"This page didn't open","shellErrorBody":"Something went wrong inside this box. The rest of the staff area works as usual.","shellErrorRetry":"Try again","shellErrorBack":"Go back","box":{"calls":"Call centre","jobs":"Jobs","hr":"People","builder":"Builder","content":"Content","shop":"Shop","access":"Access","analytics":"Analytics"},"boxPurpose":{"calls":"From the first request to the accepted offer.","jobs":"Crews, sites and deadlines, through to handover.","hr":"Finds, checks and trials the people who join the crews.","builder":"What a customer can ask for, and how.","content":"The blog and the site's translations in Albanian, English and Italian.","shop":"Orders for materials and products for customers.","access":"Who opens which box. Only the owner changes it.","analytics":"Who visits, where they come from, what they click and where requests stall."},"section":{"calls":{"requests":"Queue","today":"For today","offers":"Quotes","help":"Help requests","closed":"Closed"},"jobs":{"jobs":"Board","today":"Needs you today","crew":"Need a crew","work":"In progress","handover":"Handovers","archive":"Archive","timeline":"Timeline"},"hr":{"applicants":"Applications","drafts":"Unfinished","people":"Workers","crews":"Crews"},"builder":{"services":"Services","forms":"Forms","trades":"Trades","referrals":"Referrals","rules":"Rules","categories":"Categories","prices":"Labour prices"},"content":{"blog":"Blog","translations":"Translations"},"access":{"people":"People"},"analytics":{"overview":"Overview","pages":"Pages","sources":"Sources","clicks":"Clicks","funnel":"Funnel","now":"Now"}},"group":{"calls":{"contact":"Outside the queue"},"hr":{"workforce":"For Jobs"},"builder":{"control":"Control"},"jobs":{"planning":"Planning"},"analytics":{"behaviour":"Behaviour","live":"Live"}},"station":{"new":"New request","call":"Call","visit":"Visit","offer":"Offer","accepted":"Accepted","crew":"Crew","work":"In progress","handover":"Handover","review":"Review"},"duration":{"hours":"{n, plural, one {# hour} other {# hours}}","days":"{n, plural, one {# day} other {# days}}"},"flag":{"needsInfo":"{n} waiting on the customer","waitingOverHours":"{n} waiting > {hours} h","callbacksDue":"{n, plural, one {# callback due now} other {# callbacks due now}}","visitsToday":"{n} today","waitingCrew":"{n} waiting for a crew","shortCrew":"{n} starting short-handed","noLead":"{n} without a crew lead","openSeats":"{n, plural, one {# open seat} other {# open seats}}","late":"{n} late, up to {days} days","disputed":"{n, plural, one {# dispute} other {# disputes}}","awaitingClose":"{n} waiting to close","lowRating":"{n} at 2 stars or less"},"flow":{"title":"The flow","meta":"{n} requests on the way · {stuck} stuck · avg. = how long it usually takes","avg":"avg. {time}","avgRating":"avg. ★ {rating}","here":"You are here","openStation":"Open the list: {station}","bandCalls":"takes the request to an accepted offer","bandJobs":"takes the job to handover and review","readOnly":"read only","legendLate":"late","legendRisk":"at risk"},"switch":{"title":"Your boxes","sub":"The number shows what is waiting inside each.","homeHint":"The flow and every box","homeAll":"Home · all boxes","button":"Switch box (now: {current})","soon":"coming soon","open":"Open","hint":{"calls":"{n} in the queue","jobs":"{n} in progress","hr":"{n, plural, one {# new application} other {# new applications}}","builder":"{n} in draft","content":"{n, plural, one {# draft post} other {# draft posts}}","access":"{n} active accounts","analytics":"{n, plural, one {# page view today} other {# page views today}}"}},"quickJump":{"title":"Quick jump","placeholder":"Go to a box or a page…","button":"Open quick jump","kbd":"Ctrl K","empty":"Nothing by that name.","move":"move","open":"open"},"bell":{"label":"{n, plural, =0 {Notifications} one {Notifications, # unread} other {Notifications, # unread}}","title":"Notifications","empty":"No notifications.","all":"All notifications"},"me":{"label":"Account menu: {name}","publicSite":"Public site","logout":"Sign out","owner":"Owner · every box","noBoxes":"No boxes"},"nav":{"label":"Staff navigation","needsYou":"Needs you","yourBoxes":"Your boxes","allBoxes":"All boxes","tabs":"Tabs","forYou":"For you","boxes":"Boxes","search":"Search","expand":"Expand menu","collapse":"Collapse menu"},"hello":{"morning":"Good morning, {name}.","afternoon":"Good afternoon, {name}.","evening":"Good evening, {name}."},"status":{"today":"Today:","and":" and ","calm":"Nothing is late today.","calls":"{n, plural, one {# call} other {# calls}} to make","jobsStarting":"{n, plural, one {# job starts} other {# jobs start}}","offersLate":"{n, plural, one {# offer is late} other {# offers are late}}","interviews":"{n, plural, one {# interview} other {# interviews}}","applications":"{n, plural, one {# new application} other {# new applications}}","unreviewed":"{n, plural, one {# application not yet reviewed} other {# applications not yet reviewed}}{days, plural, =0 {} one {, the oldest waiting # day} other {, the oldest waiting # days}}","openSeats":"{n, plural, one {# open seat} other {# open seats}} in crews"},"why":{"requestNoCall":"Nobody has phoned them yet. Waiting for {time}.","requestNew":"New request, no call yet. Came in {time} ago.","offerWaiting":"The offer has waited {days, plural, one {# day} other {# days}} for an answer. Phone the customer.","revisionAsked":"The customer asked for changes to the offer. Prepare the new version.","appointmentToday":"Appointment booked for today at {time}.","ticketOpen":"Message from the site, unanswered for {time}.","jobLate":"Past its handover date by {days, plural, one {# day} other {# days}}.","disputed":"The customer has opened a dispute. Review it before the job closes.","awaitingClose":"Verified {days, plural, one {# day} other {# days}} ago and still not closed.","crewShort":"Starts {days, plural, =0 {today} =1 {tomorrow} other {in # days}} and the crew is {missing, plural, one {# person} other {# people}} short.","noLead":"The crew is forming, but there is no crew lead.","acceptedNoJob":"The customer accepted the offer; the job has not been created yet.","lowReview":"A {rating, plural, one {#-star} other {#-star}} review from the customer.","applicationWaiting":"{days, plural, =0 {New application, not reviewed yet.} one {Waiting for review for # day.} other {Waiting for review for # days.}}","interviewToday":"Interview today at {time}.","trialComplete":"Finished the 3 trial jobs with an average of {rating}. Decide what comes next.","serviceDrafts":"{count, plural, one {# service is in draft and hidden} other {# services are in draft and hidden}} from customers.","blogDrafts":"{count, plural, one {# post is waiting to be published} other {# posts are waiting to be published}}.","inviteUnused":"The invite went out {days} days ago and has not been used.","callbackDue":"The customer asked to be called back at {time}.","visitToday":"Site visit today at {time}.","crewShortLate":"Was due to start {days, plural, one {# day} other {# days}} ago and the crew is {missing, plural, one {# person} other {# people}} short."},"action":{"open":"Open","call":"Call","openOffer":"See the offer","openQueue":"Open the queue","openJob":"Open the job","fillCrew":"Fill the crew","setLead":"Pick a crew lead","createJob":"Create the job","readReview":"Read the review","reviewApplication":"Review the application","openApplicant":"Open the applicant","decideTrial":"Decide","openBuilder":"Open services","openBlog":"Open the blog","openAccess":"Open access","openRequest":"Open the request"},"feed":{"title":"Needs you","meta":"{n, plural, one {# thing} other {# things}} that won't move without you, most urgent first","now":"Now · past their deadline","today":"Today","week":"This week","emptyTitle":"Nothing is waiting for you.","emptyBody":"When something in your boxes gets stuck or passes its deadline, it shows up here with a name and the step that fixes it.","more":"{n} more inside the boxes."},"feedTitle":{"serviceDrafts":"Unpublished services","blogDrafts":"Draft posts"},"team":{"title":"Team today","meta":"{n} at work","empty":"Nobody has signed in yet today.","you":"{name} (you)","youShort":"you","owner":"Owner · every box","since":"Signed in at {time}"},"accessLog":{"title":"Recent changes","open":"Access","empty":"No changes yet.","invite":"You invited {who} with: {boxes}","workspaces":"New boxes for {who}: {boxes}","disable":"You switched off the account: {who}","enable":"You switched the account back on: {who}","other":"A change to the account: {who}","none":"no boxes"},"week":{"title":"This week","sub":"compared with last week","in":"requests came in","accepted":"offers accepted","handedOver":"jobs handed over","same":"same as last week","delta":"{d} on last week","noRate":"No offer acceptance data yet.","rate":"of the last 30 days' requests were accepted ({accepted} of {created})"},"boxNum":{"newRequests":"new requests","openTickets":"unanswered messages","offersLate":"late offers","inProgress":"in progress","startingThisWeek":"start this week","late":"late","newApplications":"new applications","inTrial":"on trial","tradesMissing":"trades short","published":"published","drafts":"in draft","services":"services in all","postDrafts":"draft posts","active":"active accounts","disabled":"switched off","requestsToday":"requests today","pageviewsToday":"page views today","consentToday":"accepted statistics"},"boxes":{"title":"Boxes","sub":"Each box has its own stations in the flow. The number in the corner is the shortcut: press G, then the number.","onlyYou":"Only you","shortcut":"Shortcut: G, then this number","feeds":"feeds: {station}","from":"gets from: {station}","nothingWaiting":"Nothing is waiting here right now.","nobodyToday":"Nobody today","open":"Open"},"direct":{"title":"Open my box directly","body":"You have one box. Next time you go straight to {section}; Home stays in the menu on the left."},"feeder":{"builder":"decides what can be requested: {n} published services, {drafts} in draft.","content":"brings people to the site: {n} draft posts.","hr":"supplies the crews: {workers} active workers, {trial} on trial.","reviewBack":"Every review goes back to People and closes the worker's trial (3 jobs, above 4 stars).","hrYou":"<b>You</b> send people here: {workers} active workers, {trial} on trial.","reviewYou":"Comes back to <b>you</b>: every review counts toward the trial (3 jobs, above 4 stars)."},"hr":{"flowTitle":"Where your work comes in","readOnly":"Jobs · read only","flowHeadline":"{n, plural, =0 {You supply the crews: no job needs people right now.} one {You supply the crews: # job needs people.} other {You supply the crews: # jobs need people.}}","flowSub":"The people you accept become the crew; every job's review comes back to you and closes the trial.","leadingTitle":"Stations 1–4","leadingBody":"Request, call, visit and offer. The call centre does these.","needsTitle":"Jobs that need people","needsMeta":"from Jobs, the next 14 days","needsEmpty":"No job in the next 14 days needs people.","starts":"Starts {date}","noDate":"No start date","hasLead":"has a crew lead","noLead":"no crew lead","inCrew":"in the crew","missingTrade":"{n} {trade}","coverageTitle":"Coverage by trade","coverageMeta":"for these jobs","coverageEmpty":"No trade is short for the coming jobs.","colTrade":"Trade","colNeeded":"Needed","colReady":"Ready","colTrial":"On trial","colCandidates":"Candidates","gap":"{n} short","covered":"covered","coverageFoot":"“Ready” means active workers with this trade. Workers on trial don't count until they pass 3 jobs rated above 4 stars.","queueTitle":"Your queue","queueMeta":"Whoever has waited longest comes first","queueAll":"All applications","queueEmpty":"No application is waiting.","unreviewedTitle":"{n, plural, one {# application is waiting to be reviewed} other {# applications are waiting to be reviewed}}","unreviewedOldest":"{days, plural, =0 {the oldest came in today} one {the oldest has waited # day} other {the oldest has waited # days}}","unreviewedCta":"See the oldest first","colPerson":"Person","colStage":"Stage","colWaiting":"Waiting","stageNew":"New","stageReview":"Checking","stageInterview":"Interview","missing":"short","review":"Review","trialsTitle":"Trials ending","trialsMeta":"3 jobs, above 4 stars","trialsEmpty":"Nobody is on trial.","trialDone":"{done} of {of} jobs","todayTitle":"Today","todayMeta":"{n, plural, one {# interview} other {# interviews}}","todayEmpty":"No interviews today.","yourBox":"Your box","hereToday":"Here today: {names}","openBox":"Open the box","otherBoxes":"The owner opens the other boxes. If you need one, ask him.","kpiNew":"new applications","kpiReview":"being checked","kpiInterviews":"interviews today","kpiTrial":"on trial","kpiWorkers":"active workers","demandTitle":"People requests","demandFrom":"from Jobs, this week","demandEmpty":"No job needs people this week.","demandNoCandidates":"Nobody in the queue with this trade.","demandSee":"See","trialsPanelTitle":"Trials ending soon","trialsPanelMeta":"4★ threshold","trialsPanelEmpty":"Nobody is on trial.","trialDecide":"Decide","trialOpen":"See","trialAboveThreshold":"· cleared the threshold","trialBelowThreshold":"· below the threshold"},"access":{"title":"Access","sub":"Who opens which box. A change applies from the person's next page load and is written to the log.","you":"YOU","lastSeen":"signed in {when}","disabledSince":"disabled {when}","toggleLabel":"{box} for {name}","reactivate":"Reactivate","resend":"Resend","owner":"Owner","presetHr":"HR","presetJobsManager":"Jobs manager","presetCallCentre":"Call centre","presetContent":"Content","presetShop":"Shop","presetAdmin":"Admin","presetCustom":"Custom","today":"today {time}","yesterday":"yesterday {time}","loadError":"The people list did not load.","saveError":"That change was not saved. Try again.","resendError":"The invite was not resent. Try again.","inviteError":"The invite was not sent. Check the name and email.","auditLabel":"Recent","colPerson":"Person","headcount":"{n, plural, one {# person} other {# people}}","lockedCol":"locked","colProfile":"Profile","pendingGroup":"Pending invites","pendingGroupSub":"not signed in yet","disabledGroup":"Disabled","disabledGroupSub":"nobody can sign in with these accounts","empty":"Nobody else has a staff account.","grantsTitle":"What each box grants","inviteTitle":"Invite someone","inviteStep":"Step {n} of 3","step1":"1 · Who","step2":"2 · Boxes","step3":"3 · Send","fieldName":"Name","fieldNamePlaceholder":"First and last name","fieldEmail":"Company email","fieldPreset":"Profile","next":"Continue","back":"Back","previewLabel":"{name} will get","previewBody":"“Marin is inviting you to AlbNova Staff. You'll hold the {boxes} box. Set your password with this link; it's valid for 7 days.”","send":"Send the invite","sending":"Sending…","close":"Close","statusOff":"Disabled","statusOn":"Active","boxCount":"{n, plural, one {# box} other {# boxes}}","boxesTitle":"Boxes","ownerOnly":"the owner only","presetLabel":"Profile:","loginTitle":"Sign-in","lastLogin":"Last seen","never":"Has not signed in yet","invite":"Invite","inviteAccepted":"Accepted on {when}","invitePending":"Pending, sent {when}","sendReset":"Send a new password link","disable":"Disable the account","disableEffect":"Sessions close right away. The account's work and history stay, under the person's name.","disableConfirm":"Yes, disable it"},"rules":{"title":"Rules","sub":"The Builder's permissions and rules: who changes prices, who publishes a service, what needs approval.","emptyTitle":"This is where you will set the rules","emptyBody":"The tab is ready; its content comes in the next step. Until then, services and prices change as before."},"shop":{"title":"Shop","sub":"Orders for materials and products for customers.","emptyTitle":"Coming soon","emptyBody":"The shop isn't open yet. When it is, orders will link to Jobs: a job's materials get ordered from here."},"login":{"title":"Staff sign-in","sub":"With your own personal AlbNova account.","emailLabel":"Email","emailPlaceholder":"name@albnova.com or your own email","passwordLabel":"Password","forgot":"Forgot your password?","show":"Show","hide":"Hide","remember":"Keep me signed in on this device for 30 days","submit":"Sign in","submitting":"Checking…","noteStrong":"Everyone has their own account.","note":"The shared accounts admin@, hr@, work@ and manager@ no longer open. If you used one of them, ask Marin for an invite in your own name.","customer":"A customer?","customerLink":"Sign in to your account","apply":"Looking for work as a tradesperson?","applyLink":"Apply","artTitle":"Every request, from the first call to handover.","artBody":"The call centre, Jobs and People work on one flow. Sign in and see where you are in it.","artHelp":"Trouble signing in? Write to Marin","artNew":"new people","dev":"Quick sign-in (local only)","welcome":"Welcome back","opening":"Opening…"},"weekday":{"0":"Sunday","1":"Monday","2":"Tuesday","3":"Wednesday","4":"Thursday","5":"Friday","6":"Saturday"},"calls":{"title":"Call queue","sub":"{open} open requests · {today} to call today","newPhoneRequest":"Request by phone","search":"Search by name, phone, K-code or city…","whoLabel":"Show","whoAll":"All","whoMine":"Mine","whoUnowned":"No owner","groupsNav":"Queue groups","tabOpen":"Open","group":{"today":"Call today","waiting":"Waiting on customer","visit":"Visit booked","offer":"Quote sent","closed":"Closed"},"groupSub":{"today":"oldest and most urgent first","waiting":"we are waiting on the customer","visit":"free site visits","offer":"the customer decides; we call after {h} hours"},"groupEmpty":"Nothing here right now.","moreInGroup":"+ {n} more in “{group}”","closedLink":"Closed: {n} requests →","tile":{"todayLate":"{n} past due"},"flow":{"phoneLabel":"Flow · Call centre","phoneOut":"→ to Jobs"},"row":{"new":"New","noAnswerAt":"No answer · {when}","photos":"{n, plural, one {# photo} other {# photos}}","size":"{n} m²"},"attemptsNone":"0 attempts","attemptsSpoke":"{n} · spoke","attemptsNoAnswer":"{n} unanswered","sla":{"callbackAsked":"they asked","callbackMissed":"callback missed","waitingInfo":"waiting for info"},"next":{"firstCall":"First call","firstCallSub":"the script comes from the form","tryAgain":"Try again","attemptN":"attempt {n}","callback":"Call back at {time}","callbackSub":"the customer asked","chaseInfo":"Get the missing info","chaseInfoSub":"something is missing from the customer","bookVisit":"Book the visit","bookVisitSub":"the visit is free","visit":"Do the visit","visitSub":"then the written quote","awaitDecision":"Awaiting decision","followUpAt":"call {when}","callForDecision":"Call for a decision","offerVersion":"quote v{v}","revise":"Revise the quote","reviseSub":"the customer asked for changes","handedOver":"Handed to Jobs","handedOverSub":"the job was created","closedOnCall":"Closed on the phone"},"side":{"label":"The day at a glance","todayTitle":"Today","todayMeta":"from the queue","called":"requests called","spoke":"spoke","visitsToday":"visits today","visitsTitle":"Booked visits","visitsNone":"No visits booked.","freeSlotsUntracked":"Managers' free slots are not kept in the system yet — confirm with them.","rulesTitle":"Deadlines","ruleFirstCall":"New request → call within <b>{h} hours</b>","ruleFollowUp":"Quote sent → call after <b>{h} hours</b>","rulesSource":"From the Builder's Rules.","helpTitle":"Help requests","helpOpen":"Open","helpLine":"{tickets} from the contact page and the assistant · {drafts} forms left half-way"},"help":{"title":"Help requests","ticketsTitle":"From the contact page and the assistant","ticketsMeta":"{n} open","ticketsNone":"No open requests.","claimHint":"When you take it, it leaves the queue under your name.","draftsTitle":"Forms left half-way","draftsMeta":"{n}","draftsNone":"Nobody has left a form half-way.","draftHint":"Not a request — only a call to make."},"noPhone":"No number","call":"Call","callAria":"Call {name}","callNumber":"Call {phone}","whatsapp":"WhatsApp","whatsappAria":"WhatsApp {name}","when":{"today":"today {time}","tomorrow":"tomorrow {time}","yesterday":"yesterday {time}","date":"{weekday}, {date} · {time}","todayDay":"today","tomorrowDay":"tomorrow","yesterdayDay":"yesterday","dateDay":"{weekday}, {date}"},"dur":{"minutes":"{n} min","hours":"{n} h","days":"{n, plural, one {# day} other {# days}}"},"source":{"web":"Site · form","planner":"Planner","phone":"Phone"},"urgency":{"withinMonth":"Within a month","within3Months":"Within 3 months","flexible":"No rush"},"outcome":{"answered":"Answered","no_answer":"No answer","callback":"Call later","visit_booked":"Visit booked","not_for_us":"Not for us"},"desk":{"callWith":"Call with {name}","notCalledYet":"Not called yet","attempts":"{n, plural, one {# attempt} other {# attempts}} · last {when}: {outcome}","closedOnCall":"Closed on the phone — no deadline any more.","dueFirst":"First call due {when}","dueCallback":"Callback: {when}","dueFollowUp":"Quote follow-up: {when}","overdue":"past due","scriptLabel":"Call script","note":"Note from the call","noteReason":"Reason (required)","notePh":"What did the customer say? It goes into the history.","howDidItEnd":"How did it end?","btn":{"answered":"Answered","no_answer":"No answer","callback":"Call later","visit_booked":"Book visit","not_for_us":"Not for us"},"oAnsweredSub":"Spoke, no visit yet","oNoAnswerSub":"Attempt {n}","oCallbackSub":"The customer picks the time","oVisitSub":"Free site visit","oNotForUsSub":"Closed with a reason","whenCallback":"When to call back?","whenVisit":"When is the visit?","inOneHour":"In 1 hour","todayAt":"Today {time}","tomorrowAt":"Tomorrow {time}","dayAfterAt":"Day after {time}","slotsUntracked":"The manager's free slots are not kept yet — confirm the time with them.","pickOutcome":"Pick how it ended","pickTime":"Pick the time","save":"Save: {outcome}","saveCallback":"Call back {when}","saveVisit":"Book the visit {when}","saveNotForUs":"Close: not for us","saving":"Saving…","errReason":"Write the reason in the note.","errTime":"Pick the time.","logged":"Saved: {outcome}.","moved":"The request moved to “{status}”.","waConfirm":"Send the confirmation on WhatsApp","waConfirmText":"Hello {name}, this is AlbNova. We confirm your free site visit: {when}. Thank you!","untracked":"Not recorded yet: call length and WhatsApp messages.","askTitle":"What to ask","askCount":"{done} of {n}","tagOpen":"unanswered","openOffer":"Go to the quote"},"hist":{"title":"History","call":"{who}: {outcome}","callbackAt":"callback {when}","visitAt":"visit {when}","status":"Status: {status}","msgCustomer":"Message from the customer","msgUs":"Message from AlbNova","arrived":"The request came in from {source}","meta":"{n, plural, one {# event} other {# events}}"},"qualify":{"title":"Qualification","claimed":"This customer is now yours.","released":"Back in the queue with no owner.","reviewHint":"Read the request and reviewing it?","resumeHint":"Has the customer sent what was missing?","infoHint":"Something missing? Write it — the customer receives it."},"request":{"notFound":"This request was not found.","back":"Back to the queue","crumbs":"You are here","arrived":"Came in {when} from {source}","pillFirst":"Not called yet","pillLast":"{outcome} · {n, plural, one {# attempt} other {# attempts}}","pillClosed":"Closed on the phone","owner":"Owner: <b>{name}</b>","ownerNobody":"No owner yet"},"ans":{"height":"height {n} m","floor":"floor {n}","unsure":"Not sure yet"},"photos":{"title":"Photos","meta":"{n} from the customer","alt":"Photo {n}","close":"Close","previous":"Previous photo","next":"Next photo","video":"Video"},"customer":{"title":"Customer"},"script":{"scope":"Confirm the scope of work","scopeWithSize":"{answer} · about {size} m²","scopeSizeOnly":"About {size} m² — ask exactly what needs doing","scopeAsk":"Ask exactly what needs doing","unsure":"Ask: {question}","unsureSub":"They left this open on the form","fromForm":"from the form","photos":"Go through the photos","photosSub":"Ask about what each one shows","fromPhotos":"{n, plural, one {# photo} other {# photos}}","urgency":"How urgent is it?","access":"Confirm access to the site","timing":"Confirm the dates","answer":"Confirm: {question}","said":"They said: {answer}","decisionMaker":"Who decides, and who will be home for the visit?","explainSteps":"Explain the steps","explainStepsSub":"The visit is free · the quote comes in writing after the visit · no prices on the phone"},"offer":{"title":"Quote","stateDraft":"Draft","stateDraftNoVisit":"Draft · no visit yet","stateSent":"Sent · v{v}","stateRevision":"Changes asked · v{v}","stateAccepted":"Accepted · v{v}","colWork":"Work","colRate":"Rate","colAmount":"Amount","addLine":"Line","versions":"Versions","noPrices":"no prices","superseded":"Superseded","acceptedOn":"Accepted {when}","downloadPdfAria":"Download the PDF of v{v}","viewPdf":"View PDF (v{v})","pdfAfterSave":"The PDF is made when you save the first version.","pdfHint":"The PDF is the written document the customer receives.","sendFirst":"Send quote v1","sendVersion":"Send v{v}","noneSent":"No quote sent.","shortDraft":"draft","shortSent":"v{v} sent","shortRevision":"changes","shortAccepted":"accepted","linesTitle":"The work","linesMeta":"{n, plural, one {# line} other {# lines}} · v{v}","linesSub":"Each row is a line in the PDF: what is done, how much, at what price.","pricesLabel":"With or without prices","withPrices":"With prices","withoutPrices":"Without prices","colWorkDesc":"Work and description","termsTitle":"Document terms","termsSub":"Dates, guarantee, materials — only what you fill in appears in the PDF.","termsFilled":"{n, plural, one {# term filled in} other {# terms filled in}}","railLabel":"The quote document","visitOn":"Visit: {when}","specOnly":"Specification without prices","linesCount":"{n, plural, one {# line} other {# lines}}"},"hand":{"title":"Hand over to Jobs","locked":"Opens by itself when the customer accepts a version of the quote: the job is created in Jobs with the accepted quote, the address and the photos of this request.","manual":"Customer accepted on the phone? Open the job by hand","doneTitle":"Handed to Jobs","doneAccepted":"The customer accepted v{v} ({when}). The job was created in Jobs, in preparation.","doneByHand":"The job was opened by hand from this request.","open":"Open in Jobs"},"story":{"title":"What the customer wants","lead":"{name} wants <b>{service}</b> in {place}.","leadNoPlace":"{name} wants <b>{service}</b>.","urgency":"{u, select, urgent {They need it urgently.} within_week {They want it within a week.} within_month {They want it within a month.} within_3_months {They want it within 3 months.} flexible {No rush to start.} other {}}","pref":"{p, select, phone {Prefers a phone call.} whatsapp {Prefers a WhatsApp message.} email {Prefers email.} website {Prefers messages on the site.} message {Prefers messages on the site.} other {}}","quoteBy":"— {name}, in their own words","visitDay":"Visit: {when}","newCustomer":"New customer","returning":"{n, plural, one {# earlier request} other {# earlier requests}}","facts":"In short"},"fact":{"service":"Service","size":"Size","budget":"Budget","address":"Address","floorAccess":"Floor and access","urgency":"How soon","dates":"Dates they suggested","name":"Name","phone":"Phone","accountPhone":"Account phone","email":"Email","prefers":"Prefers","language":"Language","prefWhatsapp":"WhatsApp"},"topics":{"title":"All the answers","meta":"{n, plural, one {# answer} other {# answers}} from the form","work":"The work","site":"The site","time":"Timing","contact":"Contact"},"tabs":{"label":"Parts of the request","call":"The call","offer":"Quote","file":"History","late":"late","toCall":"to call"},"pill":{"lateMin":"{n} min late","lateHours":"{n} h late","lateDays":"{n, plural, one {# day late} other {# days late}}","leftMin":"within {n} min","leftHours":"within {n} h","leftDays":"{n, plural, one {within # day} other {within # days}}","visit":"visit {when}","visitPast":"visit has passed","subVisit":"free site visit","callback":"call back {when}","subFirst":"for the first call","subOffer":"for the quote decision","followUp":"call {when}","waiting":"waiting {time}","idle":"{time} without a move"},"hero":{"eyebrow":"Call next","open":"Open the request","after":"{n, plural, one {After this: # more for today} other {After this: # more for today}}"},"band":{"label":"Flow","in":"In","inText":"from <b>the site</b> · the form, WhatsApp, the phone","out":"Out","outText":"to <b>Jobs</b> · as soon as the customer accepts the quote"}},"jobs":{"flow":{"label":"Flow","in":"In","inText":"from <b>Call centre</b> · accepted quote","out":"Out","outText":"to the <b>customer</b> · review request","takes":"Takes","hrText":"people from <b>HR</b>","phoneSpan":"from Calls → to review"},"view":{"label":"View","board":"Board","timeline":"Timeline"},"board":{"title":"Jobs","sub":"{date} · {active, plural, one {# active job} other {# active jobs}} in {cities, plural, one {# city} other {# cities}} · {crews, plural, one {# crew} other {# crews}}","new":"New job","loadError":"The jobs did not load. Refresh the page.","emptyTitle":"No jobs yet","empty":"When the call centre hands over an accepted quote, or when you create a job yourself, it appears here."},"kpi":{"active":"Active jobs","activeSub":"+{n} in the last 7 days","short":"Crew not complete","shortSub":"{ref} starts in {n, plural, one {# day} other {# days}}","shortNone":"none at risk","shortStarted":"{ref} started without a full crew","week":"Starting this week","weekSub":"{range}","site":"Crews on site today","siteSub":"{n, plural, one {# worker} other {# workers}}","late":"Running late","lateSub":"{ref} · {n, plural, one {# day} other {# days}}","lateNone":"none","rating":"Rating · 30 days","ratingSub":"{n, plural, one {# review} other {# reviews}}","ratingNone":"no data yet"},"now":{"title":"Needs you today","sub":"Most urgent first","pageSub":"Everything that cannot wait: empty seats before a start, clashes, delays, handovers and disputes.","more":"+{n} more","empty":"Nothing is waiting today. When a job is short of people before it starts, someone is on two sites, or a handover waits to be verified, it shows here.","shortCrew":"<b>{ref} {title}</b> starts on {date} without {who}.","shortCrewStarted":"<b>{ref} {title}</b> started on {date} without {who}.","cands":"{n, plural, one {# free candidate} other {# free candidates}}, best {match}% match, {km} km away.","noCands":"No candidate is free on the days needed.","readyBy":"The crew was due by {date}.","clash":"<b>{name}</b> is on two sites on {dates}: {refA} and {refB}.","timeOff":"<b>{name}</b> asked for time off on {dates} but is on {ref}.","disputed":"<b>{ref} {title}</b> has an open dispute.","late":"<b>{ref} {title}</b> was due to finish on {date} — {n, plural, one {# day} other {# days}} late.","verify":"<b>{ref} {title}</b> — the crew lead handed the work in and it is waiting for you to verify it.","handoverToday":"<b>{ref} {title}</b> is due to finish today.","actAssign":"Assign {who}","actTimeline":"See on the timeline","actReplace":"Replace on {ref}","actDispute":"Resolve the dispute","actOpen":"Open the job","actVerify":"Verify","actHandover":"Check the handover"},"filter":{"city":"City:","manager":"Manager:","trade":"Trade:","all":"All","me":"Me","noManager":"No manager","risk":"At risk only","clear":"Clear filters","count":"{n, plural, one {# job} other {# jobs}}"},"col":{"prep":"Being prepared","prepDesc":"The quote was accepted. Stages, roles and materials are being set up.","crew":"Needs a crew","crewDesc":"Roles are open. People are missing before the start date.","planned":"Planned","plannedDesc":"The crew is chosen. Waiting for the start date.","work":"In progress","workDesc":"The crew is on site.","handover":"Handover","handoverDesc":"The work is handed in. Verification, closing, review.","archive":"Archive","archiveDesc":"Closed and cancelled jobs.","empty":"No jobs here.","emptyTitle":"No jobs at this stage","emptyBody":"When a job gets here it shows as a card with its next step.","more":"+{n} more","fewer":"Show fewer","toArchive":"After closing → Archive"},"stack":{"title":"By stage","active":"{n, plural, one {# active} other {# active}}","risk":"{n, plural, one {# at risk} other {# at risk}}"},"archive":{"emptyTitle":"The archive is empty","empty":"Closed and cancelled jobs are kept here.","ref":"Code","job":"Job","customer":"Customer","dates":"Dates","value":"Value","status":"Status"},"status":{"setup":"Being prepared","open":"Needs a crew","assigned":"Crew chosen","accepted":"Crew lead accepted","in_progress":"In progress","completed":"Completed","closed":"Closed","cancelled":"Cancelled","disputed":"Dispute"},"pill":{"disputed":"Dispute","shortCrew":"Crew missing","startedShort":"Started short","startsToday":"Starts today","startsTomorrow":"Starts tomorrow","startsIn":"Starts in {n, plural, one {# day} other {# days}}","startsOn":"Starts {date}","clash":"Clash","late":"{n, plural, one {# day} other {# days}} late","verify":"Awaiting verification","today":"Today","newToday":"New · today","newYesterday":"New · yesterday","newDays":"New · {n} days"},"flag":{"disputed":"Open dispute","shortCrew":"No {who} — needed on {date}","clash":"{name} also on {ref} on {dates}","timeOff":"{name} is off on {dates}","late":"Was due to finish on {date}","claim":"The crew lead handed the work in","claimNote":"The crew lead handed it in: “{note}”","handoverToday":"Handover today","leadPending":"Waiting for the crew lead to accept","leadAccepted":"The crew lead accepted","prepBrief":"The job description is missing","prepPlace":"The site address is missing","prepDates":"The dates are missing","prepRoles":"The roles are missing","prepSplit":"The pay split does not add up to 100%"},"next":{"now":"Now","then":"Next","today":"Today","structure":"Complete the structure","publish":"Open the roles for applications","assign":"Assign {who}","review":"Review applications","fill":"Fill the crew","clash":"Resolve the clash","waitLead":"Write to the crew lead","readiness":"Check readiness","dispute":"Resolve the dispute","late":"Look at the delay","handover":"Check the handover","progress":"See the work","verify":"Verify the handover","close":"Close the job","open":"Open the job"},"card":{"lead":"Crew lead","ends":"Ends","applications":"Applications","applicationsNew":"{n, plural, one {# new} other {# new}}","seatFilled":"Seat taken","seatEmpty":"Empty seat","dates":"{range} · {n, plural, one {# day} other {# days}}","noDate":"Start date: not set","budget":"Budget · {amount}","prep":"Preparation","stage":"Stage {k}/{n} · {title}","work":"The work","day":"Day {x}/{y}"},"create":{"fromRequest":"The first fields come from the customer's request. You accept the suggestions one by one."},"tl":{"title":"Timeline","sub":"{range} · {crews, plural, one {# crew} other {# crews}} · {jobs, plural, one {# job} other {# jobs}} in this period","prev":"Previous week","next":"Next week","today":"Today","group":"Group by:","byCrew":"Crew","byJob":"Job","byPerson":"Worker","legendRun":"In progress","legendPlan":"Planned","legendNeed":"Someone missing","legendClash":"Clash","legendLate":"Late","hint":"Click a bar to open the job","headCrew":"Crew","headJob":"Job","headPerson":"Worker","week":"Week {w} · {range}","secUnfilled":"Crew not complete · {n}","secCrews":"Crews · {n}","secJobs":"Jobs · {n}","secPeople":"Workers · {n}","secLoad":"Daily load","loadLabel":"People on site, of {n} on the plan","missing":"Missing: {who}","missingN":"{filled}/{slots} · missing {who}","crewWith":"{city} · with {names}","clashTag":"{name} twice","offTag":"{name} off","lateTag":"+{n, plural, one {# day} other {# days}}","free":"Free from {date} — {n, plural, one {# day} other {# days}} without work","empty":"No dated jobs in this period.","undated":"{n, plural, one {# job without dates is not} other {# jobs without dates are not}} on the timeline — set the dates in the structure.","issueClashTitle":"{name} on two sites","issueClashBody":"{dates}: {refA} and {refB}.","issueOffTitle":"{name} is off","issueOffBody":"{dates}, but is on {ref}.","issueShortTitle":"{ref} without {who}","issueShortBody":"Starts on {date}. The crew was due by {readyBy}.","issueLateTitle":"{ref} running late","issueLateBody":"Was due to finish on {date} — {n, plural, one {# day} other {# days}} late.","issueFreeTitle":"Free capacity","issueFreeBody":"{name}: no work from {date}, {n, plural, one {# day} other {# days}} in a row.","issueFreeAct":"See jobs without a crew","openRef":"Open {ref}","assign":"Assign people","issueNone":"Nothing to resolve in this period."},"crew":{"title":"Crew","sub":"{filled} of {slots} seats taken · pay split as quoted","addRole":"Add role","noRoles":"This job has no roles yet. Add them in the structure.","lead":"Crew lead","slotMeta":"{n, plural, one {# seat} other {# seats}} · {pct}% of the work","slotStage":"stage {seq}","pay":"{pct}% of the pay","stateChosen":"Chosen","stateConfirmed":"Confirmed","stateLeadPending":"Waiting to accept","stateLeadAccepted":"Accepted","remove":"Take {name} off the crew","empty":"Empty seat","emptyNeeded":"Needed {range}","emptyNoDates":"No dates yet","showCands":"See candidates","publishFirst":"Open the roles first","candHead":"<b>{n, plural, one {# candidate} other {# candidates}}</b> for {role}, ranked by match · availability {range}, the days needed are underlined","thCand":"Candidate","thMatch":"Match","thDays":"Days · {range}","thLead":"With {name}","thLeadNone":"With the crew lead","thActions":"Actions","availFree":"Days needed: free","availBusy":"Busy on {ref} on {dates}","availOff":"Off on {dates}","availNone":"No dates to compare","togetherN":"{n, plural, one {# job together} other {# jobs together}}","together":"{n, plural, one {# job} other {# jobs}} with {name}","matchShort":"{n}% match","km":"{km} km","applied":"Applied","referrer":"Brought the customer","accept":"Accept","reject":"Reject {name}","invite":"Invite","invited":"Invited","assign":"Assign","onCrew":"On the crew","closed":"People are assigned only while the role is open for applications.","closedSetup":"The job is still being prepared: open the roles, then assign people.","noCands":"No candidates for this seat yet.","footer":"Nobody convincing?","footerHr":"Ask HR for a {who}","footerNoHr":"Ask HR for someone for this seat.","shortTotal":"showing {shown} of {total} possible","full":"Every seat is taken."},"ready":{"title":"Ready to start","titleOn":"Ready to start · {date}","offer":"Quote accepted","deposit":"First instalment","lead":"Crew lead confirmed","dates":"Stages dated","materials":"Materials at the depot","roles":"Every seat taken","access":"Keys and entry time","untracked":"not recorded yet — check it by hand","offerNone":"raised by staff, no quote","offerDone":"v{v} · {date}","offerWaiting":"the customer has not accepted yet","leadNone":"no crew lead yet","leadWaiting":"{name} has not accepted yet","datesMissing":"{n, plural, one {# stage without dates} other {# stages without dates}}","materialsNone":"no materials on this job","materialsSub":"{onHand} of {total} ready","rolesMissing":"missing: {who}","actAssign":"Assign","actDates":"Set dates","actMaterials":"See","actConfirm":"Confirm","atRisk":"The crew was due by {date}","foot":"{n, plural, one {# item is} other {# items are}} not recorded in the system yet and not counted — check them by hand before the start."},"plan":{"title":"Stage plan","sub":"{n, plural, one {# stage} other {# stages}} · {days, plural, one {# working day} other {# working days}}","edit":"Edit stages","noDates":"This job has no dates yet. Set them in the structure.","whole":"The whole job","missing":"{who} (missing)","missingShort":"Missing","days":"{n, plural, one {# day} other {# days}}","undated":"no dates"},"mat":{"title":"Materials","sub":"{n, plural, one {# item} other {# items}} · {total} · {onHand} ready","edit":"Edit","none":"No materials recorded for this job."},"cust":{"title":"Customer","none":"This job has no linked customer request — staff raised it.","noneNamed":"{name} · raised by staff, no linked request.","guest":"Customer","call":"Call","whatsapp":"WhatsApp","prefers":"prefers {ch}","prefPhone":"phone","prefEmail":"email","prefWebsite":"the website","prefMessage":"messages","address":"Address","access":"Access","floor":"floor {n}","came":"Came from","sourceSite":"website","offer":"Quote","offerValue":"v{v} · {amount}","accepted":"accepted {date}","rep":"Representative","paymentsUntracked":"Payments as quoted — whether they were paid is not recorded yet.","photo":"Photo from the customer","openRequest":"Open the request"},"msg":{"title":"Messages","sub":"with this job's crew","loadError":"The messages did not load.","noTeam":"This job has no crew yet — messages reach people once they are assigned.","empty":"No messages yet.","you":"You","notify":"Notify:","everyone":"The whole crew","placeholder":"Write to the crew… (Ctrl+Enter sends)","send":"Send","sendError":"The message was not sent. Try again."},"life":{"title":"Actions","setupNote":"Workers cannot see this job yet. Open the roles when the structure is ready.","publish":"Open the roles for applications","structure":"Edit the structure","confirmReady":"Every seat is taken. Confirm the crew and choose the crew lead.","confirmNotYet":"The crew is confirmed once every seat is taken.","confirmPartial":"The seats of the stage that starts are taken. Confirm the crew and choose the crew lead; the other stages' seats stay open.","leadPick":"Crew lead:","leadAuto":"Pick by ranking","confirm":"Confirm the crew","claimTitle":"The crew lead handed the work in on {date}","verify":"Verify and pay","sendBack":"Send back for corrections","close":"Close the job","closeDismiss":"Close and dismiss the dispute","redo":"Order the work redone","dispute":"Open a dispute","cancel":"Cancel the job","back":"Back","none":"No other action at this stage.","gap":"{title}: {filled} of {slots} places filled"},"more":{"title":"More","apps":"Applications · {n}","crews":"Crews that applied · {n}","review":"Internal evaluation","stages":"Stages","history":"History · {n}","byRole":"By role","applied":"Applied","status":"Status","pending":"Pending","reject":"Reject","noApps":"No applications for this role.","crewMatch":"{n}% match","crewAvg":"Average ranking {tier} ·","stagesNote":"Each stage moves on its own: upcoming → open → in progress → done.","noHistory":"No events yet.","evtStarted":"The work started","evtInvited":"An invitation was sent","evtAssigned":"Someone was assigned directly"},"path":{"title":"This job's path","sub":"what has happened and what comes next","byHand":"raised by staff","calls":"{date} · {n, plural, one {# call} other {# calls}}","offerV":"Quote v{v}","offerSub":"{amount}","crew":"Crew {filled}/{slots}","crewMissing":"{n} missing","crewFull":"complete","fromCustomer":"from the customer","manager":"Representative: {name}","caller":"Calls: {name}"},"detail":{"crumb":"You are here","back":"To the jobs","notFound":"This job does not exist.","loadError":"The job did not load. Refresh the page.","risk":"Starts in {n, plural, one {# day} other {# days}} · missing {who}","riskNow":"Starts today · missing {who}","dates":"{range} · {n, plural, one {# working day} other {# working days}}","noDates":"No dates","offer":"Quote v{v} · {amount}","budget":"Budget · {amount}","size":"{n} m²","write":"Write to the crew","structure":"Edit the structure","start":"Start the work","startLeft":"Start the work · {n} left","startHint":"Turns on when every item under “Ready to start” is done.","starting":"Starting…","startNotReady":"The work did not start: some items under “Ready to start” are still missing.","startError":"The work did not start. Try again."},"struct":{"crumb":"Structure","title":"Job structure","live":"Open","toCrew":"To the crew","sections":"Parts of the structure"}},"builder":{"services":{"title":"Services","sub":"{total} services · {ready} ready · {missing} missing something","newService":"New service","viewPublic":"Public page","kpiRequests":"Requests from the forms · 30 days","kpiReady":"Services ready","kpiMissingItalian":"No Italian translation","kpiDraftForms":"Forms with unpublished changes","filterAll":"All {n}","filterMissing":"Missing something {n}","filterDraft":"Draft {n}","sortLabel":"Sorted by:","sortCategory":"Category","dragHint":"This is the order on the public page","colService":"Service","colPhoto":"Photo","colCopy":"Page copy","colPrice":"Pricing","colForm":"Form","colRequests":"Requests · 30 days","colMissing":"What is missing","requestsUnit":"requests","priceLines":"{n} line","formLive":"v{n} · live","formDraft":"v{n} draft","formNone":"no form","ready":"Ready","fixPhoto":"Add a photo","changePhoto":"Change photo","fixTranslateIt":"Italian text","translate":"Translate","fixPrice":"Add a price","publishForm":"Publish","continueSetup":"Continue","draftBadge":"Draft","noPublicAddress":"no public address yet","missingCount":"{n} of {total}","searchPlaceholder":"Search a service, a category…","noMatches":"No service matches.","needsYou":"Need you","topRequested":"Most requested · 30 days","fixTrades":"Trades","notFoundTitle":"This service was not found","notFoundBody":"The address may be wrong, or the service was deleted. Go back to the services list."},"categories":{"title":"Categories","sub":"This order is the order on the \"Services\" page and the form's first step.","newCategory":"New category","selected":"selected","fieldName":"Name","fieldDescription":"Description","fieldColor":"Colour","fieldPublished":"Published","servicesInside":"Services inside","serviceCount":"{n} services","requestCount":"{n} requests","deleteHint":"A category with services in it cannot be deleted — move the services first.","missingName":"missing","moveUp":"Up","moveDown":"Down","draft":"Draft","published":"Published","keyLabel":"Key","keyHint":"A letter first, then letters, digits, _ or -. It cannot change afterwards.","inUseError":"This category has {n} services — move them to another category before deleting it.","existsError":"A category with this key already exists.","delete":"Delete","confirmDelete":"Delete category \"{name}\"?"},"prices":{"title":"Labour prices","sub":"{n} work lines","colWorkLine":"Work line","colTrade":"Trade","colUnit":"Unit","colPrice":"Price, L","colUsage":"On quotes · 30 days","note":"Every service has ONE price (rate/base/unit) — there are no separate work lines. \"On quotes\" shows how many quotes used this price and how often it was overridden by hand; it is an approximation (same unit and same list rate), not an exact count.","manualChanges":"{n} by hand","rare":"rare","save":"Save","unpublishedChange":"1 price changed"},"editor":{"tabBasics":"Basics","tabPhoto":"Photo","tabPage":"Page","tabPricing":"Pricing","tabDocuments":"Documents","tabForm":"Form","previewPublic":"Public page · live preview","previewForm":"Form · step {n} of {total}","previewFormHint":"Answers from this step land in the Call Centre and fill the quote's lines.","previewNoForm":"This service has no published form yet — the customer gets the general questions.","currentlyEditing":"editing this"},"rules":{"title":"Rules","sub":"What each rule changes on Kreu and in the Call Centre / Jobs.","saved":"The rules were saved","offerApprovalThreshold":"Approve quotes above","offerApprovalThresholdHint":"When a quote's price passes this amount, it will need approval before it goes to the customer. Not enforced yet — it will be turned on later.","offerApprovalOff":"Off — every quote goes out without approval","requestCallSla":"First-call deadline","requestCallSlaHint":"Past this time with no call made, the request is flagged late on Kreu and in the Call Centre's queue.","offerFollowUp":"Quote follow-up deadline","offerFollowUpHint":"Past this time with no answer, the quote shows as \"needs follow-up\" on Kreu and in the Call Centre.","crewReadyDays":"Crew-risk window before start","crewReadyDaysHint":"When work starts within this window and the crew is not full, it is flagged \"at risk\" on Kreu and in Jobs.","unitHours":"hours","unitDays":"days","unitLek":"lek","toggleOn":"On","toggleOff":"Off","save":"Save the rules"},"trades":{"title":"Trades","sub":"The trades applicants pick from — add, rename, retire or reorder.","newTrade":"New trade","createTrade":"Add the trade","renameTradeTitle":"Rename {id}","fieldLabel":"Name (Albanian)","fieldId":"Code","fieldIdHint":"The code is stored on every application with this trade and never changes afterwards — the English name, up to 64 characters.","colLabel":"Name","colId":"Code","colStatus":"Status","colOrder":"Order","statusActive":"Active","statusRetired":"Retired","rename":"Rename","retire":"Retire","restore":"Restore","moveUp":"Move up","moveDown":"Move down","created":"The trade was added.","saveError":"Could not be saved.","empty":"No trades yet."}},"content":{"blog":{"kpiTotal":"total","kpiPublished":"published","kpiDraft":"in draft","coverageTitle":"Translation coverage","coverageNote":"Based on {n} article projects paired across languages; an article with no pair counts only in its own language.","coverageLink":"See the full matrix","coverageEmpty":"No articles yet to measure coverage from."},"translations":{"lookupTitle":"Look up and translate a row","matrixTitle":"Translation coverage","matrixSub":"Each row is a content area, each column a language. The blog and the service catalogue are measured from real data; everything else still needs checking, row by row, with the tool below.","colPage":"Area","groupMeasured":"Measured from real data","groupUnmeasured":"Not measured yet","groupFormal":"In the formal register — always complete","rowBlog":"Blog","rowServices":"Service catalogue","unmeasured":"No data","fixLink":"Check here","fixBlog":"Go to the blog","fixServices":"Go to services","legalRow":"Terms, privacy and cookies","footnote":"Blog: how many articles (paired across languages by project_key) exist in that language — not the text inside them. Services: how many services have a name and a page in that language, the same check the builder box uses. Help topics and articles have no cheap real source for an actual number yet — check them one by one with the tool below."}},"analytics":{"card":{"activeNow":"{n, plural, one {# visitor on the site now} other {# visitors on the site now}}","activeNowSub":"active in the last 5 minutes","topPage":"most-read page today","noPageYet":"No visits yet today","views":"{n, plural, one {# view} other {# views}}"},"fmt":{"seconds":"{s}s","minSec":"{m}m {s}s","minutes":"{m} min"},"range":{"label":"Period","days":"{n} days","custom":"Dates","compare":"Compare with the period before","from":"From","to":"To","apply":"Show"},"eyebrow":"Analytics · {range}","eyebrowPlain":"Analytics","eyebrowLive":"Analytics · live","loadFailed":"The data did not load","loadFailedBody":"The server did not answer. Try again in a moment.","empty":{"title":"No data yet","body":"Counting starts on the day this box was published. Every visitor is counted anonymously; the detail comes only from those who accept statistics in the cookie banner. Staff and bots are never counted. The first numbers appear here with the first visits."},"partial":"Counting began on {since}. Days before that are empty, not quiet.","consentFoot":"Two tiers: the anonymous count includes every visitor, with no identifier; the detail comes only from those who accepted statistics. A consenting visitor is one person on one day — the next day we no longer recognise them. Staff and bots are not counted.","same":"no change","all":"All","none":"Nothing here yet.","other":"Other","channel":{"direct":"Direct","search":"Search","social":"Social","referral":"Other sites","campaign":"Campaigns"},"channelHint":{"direct":"typed the address or used a saved link","search":"Google, Bing and others","social":"Facebook, Instagram, WhatsApp…","referral":"a link on another site","campaign":"links with utm tags"},"device":{"mobile":"Mobile","tablet":"Tablet","desktop":"Desktop"},"cta":{"call":"Call","whatsapp":"WhatsApp","request":"Request a service","service":"Service card","nav":"Menu","outbound":"Outbound link","email":"Email"},"event":{"view_service":"Viewed a service page","view_project":"Viewed a project","start_request":"Started a request","request_step_complete":"Completed a request step","upload_project_photo":"Uploaded a photo","submit_request":"Sent a request","schedule_consultation":"Booked a meeting","contact_phone_click":"Tapped the phone number","contact_whatsapp_click":"Opened WhatsApp","contact_message_submit":"Sent a message","careers_start":"Started a job application","careers_submit":"Sent a job application","apply_path_select":"Chose an application path","apply_step_complete":"Completed an application step","apply_step_error":"Hit an application error","apply_call_me":"Asked us to call","apply_photo_upload":"Uploaded work photos","apply_status_check":"Checked an application's status","apply_update_submit":"Completed an application","careers_cta_click":"Clicked through to Careers","pageview":"Opened a page","click":"Click"},"locale":{"sq":"Albanian","en":"English","it":"Italian"},"page":{"home":"Home page","services":"Services","howItWorks":"How it works","about":"About us","contact":"Contact","help":"Help","careers":"Careers","blog":"Blog","apply":"Apply for work","submitted":"Request sent"},"metric":{"visitors":"Visitors","visits":"Visits","pageviews":"Page views","requests":"Requests","pick":"Choose what the chart shows","pagesPerVisit":"Pages per visit","bounceRate":"Bounce rate","bounceHint":"Visits shorter than 10 seconds, with a single page and no action.","avgVisit":"Visit duration","conversion":"Conversion","conversionHint":"Requests sent per 100 visits.","offersAccepted":"Offers accepted","callsLogged":"Calls logged","calls":"Call and WhatsApp","requestsStarted":"Requests started","requestsSent":"Requests sent","serviceConversion":"Service page to request","serviceConversionHint":"Requests sent from the form per 100 service page views.","consentedConversion":"Visits with a request","consentedConversionHint":"Of the consented visits, how many ended with a request sent."},"legend":{"now":"{metric} this period","before":"The period before","beforeShort":"Before","requests":"Requests per day"},"overview":{"sub":"{views} page views from all visitors and {requests} requests. {conversion} of service page views ended in a request sent.","topPages":"Most-read pages","pageSub":"{visitors} visitors · {time} on average","devices":"Devices","channels":"Where they come from","hours":"When they come","hoursMeta":"page views by hour","noPeak":"No busiest hour yet.","peak":"Busiest hour: {from}–{to}.","services":"What they ask for","servicesMeta":"{n} requests in this period","noRequests":"No requests in this period.","ctas":"Calls to action","allGroup":"What everyone does","consentedGroup":"How those who accepted move","ourData":"Requests, offers, calls","ourDataMeta":"requests, offers and calls","requests":"requests in total","offersAccepted":"offers accepted","callsLogged":"calls logged","devicesMeta":"page views by device"},"col":{"page":"Page","views":"Views","visitors":"Visitors","avgTime":"Avg. time","entries":"Entries","exitRate":"Exits","scroll":"Read ¾","scrollHint":"Share of views that reached at least three quarters of the page (the squares: 25, 50, 75 and 100%).","change":"Change","channel":"Source","service":"Service","ctaClicks":"Button clicks"},"pages":{"sub":"{n, plural, one {# page read in this period.} other {# pages read in this period.}}","search":"Search a page…","showing":"{n} pages","openMap":"Open the click map","new":"new","noMatch":"No page matches the search.","notFound":"Pages that do not exist (404)","notFoundMeta":"broken links or mistyped addresses","noNotFound":"No 404s in this period.","how":"How to read these numbers","howVisitors":"Daily visitors: someone who opens a page twice in one day counts once.","howTime":"The time the page was actually in front of them, not while it sat in another tab.","howExit":"How many views were the last page of the visit.","howScroll":"Share of views that reached three quarters of the page.","scrollTip":"{s}%: {pct}","groupAll":"All visitors","groupConsented":"With consent only","howViews":"Every time the page is opened, by anyone — without knowing who."},"sources":{"sub":"{channel} brings the most: {share} of visits.","channels":"Channels","channelsMeta":"{n} visits","search":"Search engines","social":"Social networks","referrers":"Sites that link to you","campaigns":"Campaigns","campaignsMeta":"links tagged utm_source, utm_medium, utm_campaign","noCampaigns":"No visits from a utm-tagged link. When you put a link in an ad, add ?utm_source=… and it will show up here.","devices":"Devices","devicesMeta":"daily visitors","browsers":"Browsers","languages":"Site language","consentedNote":"We only know where visitors came from if they accepted statistics — {rate} of page views in this period."},"clicks":{"sub":"{n} taps on Call or WhatsApp and {requests} on “Request a service” in this period.","mostOn":"most on {page}","conversions":"The steps we count","conversionsMeta":"requests, contact and job applications","outbound":"Where they go when they leave","outboundMeta":"links to other sites","mapTitle":"Click map","mapSub":"The real page, with every click as a dot. Hover a row in the list to see only those clicks.","page":"Page","device":"Device","noClicksHere":"No clicks recorded here for this device.","spaOnly":"This page is drawn in the browser (the request form, the application), so it cannot be shown here. The list shows what was clicked.","mapFoot":"{n} clicks · page drawn {width}px wide, without its scripts","ranked":"Most clicked","noText":"(no text)","dead":"not a link","frameFailed":"The page could not be opened for the map. The list has every click.","frameTitle":"Click map for {path}","ctaGroup":"The buttons people press","mapConsented":"Click positions are recorded only for visitors who accepted statistics."},"funnel":{"view":"Saw the service","start":"Started a request","submitted":"Sent the request","step":"Step {n}","viewHint":"opened a service page","startHint":"opened the form","submittedHint":"the request reached us","stepHint":"filled it in and went on","subEmpty":"No visits to service pages in this period yet.","sub":"{pct} of service page views end in a request sent — {name}.","allServices":"All services","filter":"Filter by service","conversion":"from service page to request","was":"period before: {pct}","explain":"Each bar counts how often that step was reached. Between two bars: how many did not go on. The step where most people stop is marked.","dropOff":"{pct} did not go on ({n})","noDrop":"—","worst":"most people stop here","byService":"By service","noServices":"No service viewed in this period yet.","eventsNote":"It counts steps, not people: someone who goes back passes a step twice. Only this way can everyone be counted, with no identifier.","startedCol":"Started","viewsCol":"Page views"},"now":{"minAgo":"−{n} min","nowShort":"now","updated":"updated {time}","sub":"The last 30 minutes. Refreshes itself every 15 seconds.","active5":"visitors on the site now","active30":"{n} in the last 30 minutes","perMinute":"Visitors per minute","pages":"Where they are now","nobody":"Nobody right now.","channels":"How they came","devices":"On what","feed":"What just happened","quiet":"No activity in the last 30 minutes.","onlyConsented":"Only visitors who accepted statistics. For everyone else there is no “now” — only daily totals."},"tier":{"all":"All visitors · anonymous","consented":"With consent only","business":"From our own records","allHint":"Everyone is counted, with no identifier — including those who did not accept statistics.","consentedHint":"Only visitors who accepted statistics in the cookie banner.","businessHint":"From recorded requests, offers and calls, not from site traffic.","allShort":"Everyone","consentedShort":"With consent","businessShort":"Our records"},"consent":{"title":"Accepted statistics","rate":"of page views came from visitors who accepted statistics.","body":"Numbers marked “with consent only” cover only this share of visitors. Numbers marked “all visitors” cover everyone, but with no detail that tells one person from another.","chip":"Consent {rate}","chipHint":"Share of page views from visitors who accepted statistics","none":"No page views in this period yet.","was":"period before: {rate}"}}}}