{
  "common.offline": "Can't reach the local service. Check that it is running.",
  "status.saved": "Saved",
  "status.applied": "Applied",
  "status.interviewing": "Interviewing",
  "status.offer": "Offer",
  "status.rejected": "Rejected",
  "status.withdrawn": "Withdrawn",
  "list.docTitle": "Shortlist",
  "list.eyebrow": "Shortlist from your agent",
  "list.loading": "Loading the shortlist…",
  "list.hint": "Your agent’s notes show what still needs you. Click “Go to filled form” to open the existing Chrome tab and follow that job’s note. Keep the tab open until your agent confirms submission; the job then shows “Applied” here.",
  "list.finishText": "When you're done, click “I'm done”. A waiting agent continues right away.",
  "list.finishButton": "I'm done",
  "list.sendPicks": "Send {n} picks to your agent",
  "list.sendPick": "Send 1 pick to your agent",
  "list.sendNone": "None of these fit",
  "list.finished": "Agent notified ({time}). If you change your picks, click again.",
  "list.finishAgain": "Notify again",
  "list.finishFailed": "Couldn't notify the agent. Check that the local service is running, then click again.",
  "list.scoreLabel": "match",
  "list.reasonLabel": "Why it fits:",
  "list.todoLabel": "Progress",
  "list.interest": "Interested",
  "list.interestOn": "✓ Interested",
  "list.markAll": "Mark all interested",
  "list.sortLabel": "Order",
  "list.sortMatch": "Best match",
  "list.sortNewest": "Newest",
  "list.goto": "Go to filled form",
  "list.official": "Job posting ↗",
  "list.salaryUnknown": "Salary unknown",
  "list.salaryOne": "${amount} a year",
  "list.salaryRange": "${min}–{max} a year",
  "list.remote": "Remote",
  "list.placeSep": ", ",
  "list.noState": "No state given",
  "list.countMarked": "{n} marked interested",
  "list.countOf": "{n} of {total} marked interested",
  "list.countApplied": "{n} applied",
  "list.countSep": ", ",
  "list.countNone": "Nothing marked yet",
  "list.gotoMissing": "The {company} form isn't open; it may have been closed. Ask your agent to fill it again, or open “Job posting” and fill it yourself.",
  "list.gotoFailed": "Couldn't switch Chrome. The first time, macOS asks whether to allow controlling Google Chrome; click OK and try again.",
  "list.saveFailed": "Not saved. Check that the local service is running, then click again.",
  "list.notFound": "This shortlist wasn't found. Ask your agent for a new link.",
  "list.intro": "{n} jobs from your agent, best match first. Mark the ones you want and your agent prepares those applications next.",
  "list.loadFailed": "Couldn't load the shortlist. Check that the local service is running, then reload the page.",
  "ask.docTitle": "Questions",
  "ask.eyebrow": "Questions from your agent",
  "ask.loading": "Loading the questions…",
  "ask.privacy": "Your answers go only to the agent on your computer. The local service doesn't store them in its database and deletes them once the agent has them.",
  "ask.finishText": "When you're done, click “Send to agent”. A waiting agent gets them right away.",
  "ask.answered": "{done} of {n} answered",
  "ask.submit": "Send answers to your agent",
  "ask.submitAgain": "Send answers again",
  "ask.sent": "Sent to the agent ({time}). Until it picks them up, you can still change answers and send again.",
  "ask.sendFailed": "Not sent. Check that the local service is running, then click again.",
  "ask.gone": "These questions weren't found. The agent may already have your answers; if not, ask it to send them again.",
  "ask.missing": "{n} still unanswered: {list}",
  "ask.listSep": "; ",
  "ask.intro": "Your agent has {n} questions.",
  "ask.introFilled": "Your agent has {n} questions. It filled in {filled} from what it already knows; please check them.",
  "ask.loadFailed": "Couldn't load the questions. Check that the local service is running, then reload the page.",
  "ask.multiple": "You can pick more than one.",
  "ask.files": "Chosen: {names}",
  "ask.tooLarge": "Those files are too large; the limit is {mb} MB at a time.",
  "source.direct_post": "LinkedIn hiring post",
  "source.linkedin_job": "LinkedIn Jobs",
  "source.company_discovery": "Company careers site",
  "source.unknown": "Source not recorded",
  "workplace.remote": "Remote",
  "workplace.hybrid": "Hybrid",
  "workplace.onsite": "On-site",
  "role.author": "Poster",
  "role.resharer": "Resharer",
  "role.company_contact": "Company contact",
  "role.unknown": "Related contact",
  "filter.q": "Keyword",
  "filter.location": "Location",
  "filter.company": "Company",
  "filter.employmentType": "Job type",
  "filter.seniority": "Level",
  "filter.degree": "Degree",
  "home.metaDescription": "US full-time jobs and internships from company career sites, with short summaries. Built for AI agents such as Claude Code and Codex.",
  "home.docTitleDiscover": "Find your next job",
  "home.skip": "Skip to the job list",
  "home.brandLabel": "Drimva home",
  "home.navLabel": "Main navigation",
  "home.saved": "Saved",
  "home.agentTitle": "Let your AI agent find jobs for you",
  "home.agentText": "Send this line to your AI. It can compare jobs against your resume and prepare application materials; agents with browser tools can also help fill forms.",
  "home.agentPrompt": "Read {origin}/llms.txt and follow its job-search workflow to help me find a job.",
  "connection.loading": "Loading your AI connections…",
  "connection.guestText": "Copy this instruction to your AI to search jobs. Sign in to save jobs, shortlists, and application progress in your account.",
  "connection.memberText": "Connect your AI to save jobs, shortlists, and application progress in your account. Manage its access in Account.",
  "connection.manageText": "Manage which AI agents can access your saved jobs, shortlists, and application progress.",
  "connection.copy": "Copy instruction",
  "connection.signIn": "Sign in to save progress",
  "connection.connect": "Connect my AI",
  "connection.manage": "Manage AI connections",
  "connection.openAccount": "Open Account",
  "connection.create": "Create connection",
  "connection.createAnother": "Connect another AI",
  "connection.waiting": "Waiting for AI to use this connection",
  "connection.lastUsed": "Last used {when}",
  "connection.expired": "Connection expired",
  "connection.empty": "No AI connections yet. Create one, then copy the full instruction to your AI.",
  "connection.loadError": "Couldn't load your AI connections. Open Account to check them.",
  "home.copy": "Copy",
  "home.discoveryLabel": "Find jobs",
  "home.searchPlaceholder": "Search jobs, companies or skills",
  "home.locationPlaceholder": "City or region",
  "home.search": "Search",
  "home.workplace": "Workplace",
  "home.anyTime": "Date posted",
  "home.last7": "Last 7 days",
  "home.last30": "Last 30 days",
  "home.last90": "Last 90 days",
  "home.resetFilters": "Reset",
  "home.back": "Back to jobs",
  "home.selectJob": "Select a job to see its details.",
  "home.withPosts": "With hiring post",
  "home.sort": "Sort by",
  "home.sortPublished": "Newest posted",
  "home.sortCompany": "Company name",
  "home.loadingJobs": "Loading jobs…",
  "home.verificationNote": "Missing posting dates show as unknown",
  "home.verified": "Last verified · {date}",
  "home.notVerified": "Verification time not recorded",
  "home.savedNote": "Saved jobs are shared with your AI agent. Closed or hidden jobs don't appear in this list; My search keeps them.",
  "home.pagination": "Job pages",
  "home.importedSaved": "Moved {n} saved jobs from this browser to the local service",
  "home.savedSyncFailed": "Saved jobs can't sync right now. Check the local service, then reload the page.",
  "home.after": "After {date}",
  "home.metadataFailed": "Some counts or filters didn't load.",
  "home.reload": "Reload",
  "home.found": "<strong>{n}</strong> jobs found",
  "home.foundSaved": "<strong>{n}</strong> saved jobs found",
  "home.pageOf": " <span>· page {page} of {pages}</span>",
  "home.jobsFailed": "Jobs can't be loaded right now",
  "home.offlineTitle": "Can't reach the job catalog",
  "home.offlineText": "Your saved jobs are still there. Check the local service and try again.",
  "home.offlineTextPublic": "The job catalog is busy or out of reach. Try again in a moment.",
  "home.emptySavedTitle": "Save the jobs you're interested in",
  "home.emptyTitle": "No matching jobs yet",
  "home.emptySavedText": "Click the bookmark on a job to build your own list.",
  "home.emptySavedClosed": "Your saved jobs are closed or no longer shown. Go discover more.",
  "home.emptyText": "Try a shorter keyword or fewer filters.",
  "home.clearFilters": "Clear filters",
  "home.browseJobs": "Browse jobs",
  "home.unknown": "Unknown",
  "home.postedAgo": "Posted {when}",
  "home.addedAgo": "Added {when}",
  "home.fullTime": "Full-time",
  "home.saveJob": "Save job",
  "home.unsave": "Remove from saved",
  "home.removeStatus": "Remove the “{status}” record",
  "home.locationUnknown": "Location not stated",
  "home.payNotListed": "Pay not listed",
  "home.pageN": "Page {n}",
  "home.prevPage": "Previous page",
  "home.nextPage": "Next page",
  "home.saveFailed": "Couldn't save. Check your connection and try again.",
  "home.savedToast": "Saved",
  "home.unsavedToast": "Removed from saved",
  "home.removedToast": "Removed the “{status}” record",
  "detail.loading": "Loading job details",
  "detail.missingTitle": "This job is no longer shown",
  "detail.failedTitle": "Job details can't be loaded right now",
  "detail.missingText": "It may have closed or be under review. You can keep browsing other jobs.",
  "detail.failedText": "Reload later; your saved jobs won't be lost.",
  "detail.retry": "Retry",
  "detail.compensation": "Pay",
  "detail.level": "Level",
  "detail.location": "Location",
  "detail.workplace": "Workplace",
  "detail.experience": "Experience",
  "detail.education": "Education",
  "detail.visa": "Visa sponsorship",
  "detail.postedAt": "Posted",
  "detail.postedOn": "Posted {date}",
  "detail.verifiedChip": "Verified {when}",
  "detail.meta": "First seen {first} · Last verified {verified} (UTC) · Source: {source}",
  "detail.metaPublic": "First seen {first} · Last verified {verified} (UTC)",
  "detail.tabsLabel": "Job detail sections",
  "detail.overview": "Overview",
  "detail.aboutJob": "About the job",
  "detail.summaryView": "Summary",
  "detail.postingView": "Full posting",
  "detail.connections": "People",
  "detail.summaryPending": "Summary not ready; see the original posting.",
  "detail.summaryNote": "Model-written summary · the original posting is authoritative",
  "detail.noDescription": "No posting text is stored for this job. Open the original posting.",
  "detail.duties": "What you'll do",
  "detail.requirements": "What they ask for",
  "detail.preferred": "Nice to have",
  "detail.techStack": "Tools",
  "detail.notStated": "Not stated",
  "detail.aiDirection": "AI focus",
  "detail.viewOriginal": "View original posting",
  "detail.applyOn": "Apply on {company}'s site",
  "detail.noOriginal": "Original link unavailable",
  "detail.contactsIntro": "People found through public hiring posts who may know more about the job. Roles follow the recorded evidence and don't mean they can refer you.",
  "detail.noContactsTitle": "No hiring contacts recorded for this job",
  "detail.noContactsText": "Knowing the company source doesn't mean a personal hiring connection. See the original posting for how to apply.",
  "detail.noName": "Name not recorded",
  "detail.linkedinProfile": "LinkedIn profile",
  "detail.relatedPost": "Related post",
  "detail.relatedPostN": "Related post {n}",
  "detail.postsTitle": "Hiring posts",
  "detail.noPosts": "No hiring post recorded for this job.",
  "detail.linkedPosts": "Linked hiring posts",
  "detail.viewPost": "View hiring post {n}",
  "detail.postTime": "Post time: {time}",
  "detail.rawTime": "Time as written: {text}",
  "common.undo": "Undo",
  "common.copied": "Copied",
  "common.selected": "Selected",
  "common.skip": "Skip to content",
  "nav.jobs": "Jobs",
  "nav.my": "My search",
  "nav.agent": "For AI agents",
  "nav.agentShort": "Agents",
  "nav.needsLabel": "{n} waiting for you",
  "theme.label": "Theme",
  "theme.tip": "Color theme",
  "theme.indigo": "Indigo",
  "theme.forest": "Forest",
  "theme.orange": "Orange",
  "theme.ink": "Ink",
  "home.howItWorks": "How it works",
  "home.useWithAgent": "Use these with your AI agent",
  "home.clearFilter": "Clear {name}",
  "home.filtersLabel": "Filters",
  "my.title": "My search",
  "my.lede": "What your agent is waiting on, and where each application stands.",
  "my.connected": "{name} is connected, last active {when}",
  "my.connectedNew": "{name} is connected, not used yet",
  "my.notConnected": "No AI connected yet",
  "my.manage": "Manage",
  "my.connectAI": "Connect your AI",
  "my.needs": "Needs you",
  "my.progress": "Applications",
  "my.shortlists": "Shortlists",
  "my.shortlistsNote": "From your agent, newest first",
  "my.kindAsk": "Questions from your agent",
  "my.kindShortlist": "Shortlist",
  "my.kindReady": "Ready to submit",
  "my.askMeta": "{n} questions · asked {when}",
  "my.listMeta": "{jobs} jobs · you picked {picked} so far",
  "my.answer": "Answer",
  "my.answerOne": "Answer 1 question",
  "my.answerN": "Answer {n} questions",
  "my.review": "Review",
  "my.reviewOne": "Review 1 job",
  "my.reviewN": "Review {n} jobs",
  "my.openForm": "Open the form",
  "my.markApplied": "Mark as applied",
  "my.appliedNote": "Marked as applied on My search.",
  "my.formElsewhere": "Open the form in the browser your agent used. Drimva can bring a Chrome tab to the front only when it runs on your Mac.",
  "my.formMissing": "That form isn't open anymore. Ask your agent to fill it again.",
  "my.formFailed": "Couldn't switch to the form. Try again.",
  "my.emptyTitle": "Nothing here yet",
  "my.emptyText": "Connect your AI agent. Its questions, shortlists and filled-in forms show up here.",
  "my.connect": "Connect your agent",
  "my.caughtUp": "You're all caught up",
  "my.caughtUpText": "New questions and shortlists from your agent show up here.",
  "my.closed": "Closed",
  "my.none.saved": "Jobs you save show up here.",
  "my.none.applied": "Jobs you apply to show up here.",
  "my.none.interviewing": "No interviews yet.",
  "my.none.offer": "No offers yet.",
  "my.none.closed": "Rejected and withdrawn applications show up here.",
  "my.unlisted": "No longer listed",
  "my.statusOf": "Status of {title}",
  "my.remove": "Remove from tracker",
  "my.moved": "Moved to {status}",
  "my.removed": "Removed from your tracker",
  "my.writeFailed": "Couldn't save the change. Check the service, then try again.",
  "my.listWaiting": "{jobs} jobs · waiting for you",
  "my.listDone": "{jobs} jobs · done, {picked} picked",
  "my.noShortlists": "Your agent's shortlists will be listed here.",
  "my.loadFailed": "Can't load your search right now.",
  "agent.title": "Let your AI agent run your job search",
  "agent.lede": "Your AI searches and scores jobs, asks for missing details, and prepares application materials. With browser tools, it can also fill forms. You choose the jobs and whether to submit them yourself or authorize your agent to submit the selected batch.",
  "agent.compatibilityTitle": "Use the AI you already have",
  "agent.compatibilityText": "Use the same instruction with Codex CLI, Codex app, Codex-based bots, Claude, Claude Code, Muse, Grok, Grok Bot, or another agent.",
  "agent.compatibilityTools": "An AI that can read websites can help you compare jobs and prepare answers. Agents with browser control can also fill applications and submit the jobs you authorize. Saving progress to Drimva requires tools that can connect to your account. Available actions depend on the tools enabled in your AI.",
  "agent.step2": "Optional: install the skill",
  "agent.skillText": "An optional shortcut for local Claude Code sessions. All agents can use the instruction above without installing a skill.",
  "agent.skillCommand": "mkdir -p ~/.claude/skills/job-hub && curl -s {origin}/skill.md -o ~/.claude/skills/job-hub/SKILL.md",
  "agent.flowTitle": "What your agent does",
  "agent.flow1": "<b>Reads your resume</b> and keeps a short profile in your agent workspace, or in chat when file tools are unavailable.",
  "agent.flow2": "<b>Searches the catalog</b> with keywords from your resume and drops clear mismatches.",
  "agent.flow3": "<b>Scores each job</b> from 0 to 100 on skills, level, field and other conditions.",
  "agent.flow4": "<b>Asks your preferences</b>, such as places and minimum pay, on a question page when supported, or in chat.",
  "agent.flow5": "<b>Gives you a shortlist.</b> You mark the jobs you want.",
  "agent.flow6": "<b>Prepares each application:</b> your chosen resume and answers, then fills the form when browser tools are available. You choose manual review or automatic submission once for the selected batch.",
  "agent.flow7": "<b>Submits your way:</b> review and submit yourself, or let your agent submit the selected jobs. It confirms the results and records them in My search; missing answers or verification steps come back to you.",
  "agent.localTitle": "Where your materials stay",
  "agent.localText": "Keep your resume and application materials in your chosen agent workspace. A local agent can use a folder on your computer; a cloud agent uses its provider's environment. Your agent's data practices apply. Drimva stores shortlist reasons and progress notes; question answers are deleted when collected.",
  "agent.publicLede": "Your AI searches this catalog, compares jobs against your resume and prepares application materials. With browser tools, it can also fill forms on company sites. You choose the jobs and whether to submit them yourself or authorize your agent to submit the selected batch.",
  "agent.publicFlow4": "<b>Asks your preferences</b>, such as places and minimum pay. With an invitation code, you can answer on private question pages.",
  "agent.publicFlow5": "<b>Gives you a shortlist.</b> Connect your account to review it on Drimva and mark the jobs you want, or keep a copy with your agent.",
  "agent.publicFlow6": "<b>Prepares each application:</b> asks for missing answers, shows you each tailored resume before using it, and fills the form, in your own browser when it can control it. Your shortlist page shows each job's progress. Without browser tools, it gives you the materials to use yourself. You choose manual review or automatic submission once for the selected batch.",
  "agent.publicFlow7": "<b>Submits your way:</b> review and submit yourself, or let your agent submit the selected jobs. Your connected agent records confirmed applications in My search; missing answers or verification steps come back to you.",
  "agent.publicLocalText": "Keep your resume and application materials in your chosen agent workspace: on your computer for local agents, or with the provider for cloud agents. Your agent's data practices apply. A connected account stores saved jobs, shortlist reasons and progress notes on Drimva. Private question pages pass answers and files to your agent; they remain in server memory for up to 24 hours and are deleted when collected. Optional saved resume processing is a separate choice in My search.",
  "resume.title": "Resume and matches",
  "resume.uploadNote": "Optional: save a resume for reusable job matching. PDF with selectable text, DOCX or TXT; at most 10 MiB. Your existing resume stays available until a replacement is ready.",
  "resume.file": "Resume file",
  "resume.paste": "Or paste a text version",
  "resume.text": "Resume text (use instead of a file)",
  "resume.consent": "I agree to save my resume and extracted profile on Drimva's cloud server, and have them processed by OpenAI Codex, sent from the operator's home PC or, as a fallback, from Drimva's cloud server. Matching results are also saved. This is separate from one-time question uploads. My current ready resume and profile stay until I replace or delete them. Failed or cancelled uploads that never became current are removed during routine cleanup after seven days without another processing attempt.",
  "resume.privacy": "Read about processing, deletion and backup retention",
  "resume.upload": "Save and process resume",
  "resume.matchTitle": "Match jobs to your saved resume",
  "resume.filterNote": "Use the same filters as job search. When you arrive from a filtered job-search page, its filters are copied here. Matches consider up to 200 candidates; they do not cover every job.",
  "resume.q": "Keywords",
  "resume.location": "Location",
  "resume.company": "Company (exact name)",
  "resume.seniority": "Seniority (as listed)",
  "resume.workplace": "Workplace (as listed)",
  "resume.posted": "Posted on or after",
  "resume.moreFilters": "More filters",
  "resume.industry": "Industry (as listed)",
  "resume.occupation": "Occupation (as listed)",
  "resume.ai": "AI relevance (as listed)",
  "resume.source": "Source",
  "resume.anySource": "Any source",
  "resume.match": "Find matches",
  "resume.matchRefresh": "Recalculate matches",
  "resume.recalculateNote": "Find matches reuses saved work when possible. Recalculate starts a new attempt and may use the cloud model again.",
  "resume.shortlist": "Create shortlist from selected jobs",
  "resume.refreshStatus": "Refresh status",
  "resume.viewTask": "View current task",
  "resume.cancel": "Cancel task",
  "resume.retry": "Retry processing",
  "resume.retryNote": "Retry starts a new attempt and may call the cloud model again.",
  "resume.preparing": "Resume preparation",
  "resume.matching": "Job matching",
  "resume.status.pending": "Queued",
  "resume.status.running": "Processing",
  "resume.status.done": "Ready",
  "resume.status.failed": "Could not finish",
  "resume.status.cancelled": "Cancelled",
  "resume.profile.skills": "Skills",
  "resume.profile.experience": "Experience",
  "resume.profile.education": "Education",
  "resume.profile.preferences": "Stated preferences",
  "resume.notStated": "Not stated in the resume.",
  "resume.pending": "New resume",
  "resume.current": "Saved resume",
  "resume.oldAvailable": "Your saved resume remains available for matching until this replacement is ready.",
  "resume.deleteNote": "Delete removes current and pending resumes, their online originals, extracted profiles and matching results, and cancels their tasks. Existing shortlists and application progress stay separate.",
  "resume.delete": "Delete saved resume and results",
  "resume.deleteConfirm": "Delete current and pending resumes, profiles and matching results, and cancel their tasks? Existing shortlists and application progress will remain. Encrypted backups expire within 7 days.",
  "resume.disabled": "New processing is currently unavailable. You can still view or delete your saved data.",
  "resume.coverage": "Candidate snapshot: {candidates} jobs. Detailed analysis: {detailed}. Still-listed results shown: {shown}. Removed jobs are omitted; scores are guidance, not a hiring prediction.",
  "resume.noCandidates": "No candidates matched these filters. Try broader filters.",
  "resume.noVisibleMatches": "No saved matches remain available. Adjust the filters or recalculate to check current jobs.",
  "resume.job": "Job",
  "resume.score": "Match score: {score}/100",
  "resume.changed": "This job has changed since analysis. Recalculate before adding it to a shortlist.",
  "resume.missing": "Not evidenced:",
  "resume.evidence": "View supporting excerpts",
  "resume.resumeQuote": "From your resume",
  "resume.jobQuote": "From the job listing",
  "resume.viewJob": "View current job",
  "resume.chooseOne": "Choose one resume file or paste a text version, but not both.",
  "resume.saved": "Resume saved. Processing continues when you leave this page.",
  "resume.deleted": "Resume and online results deleted.",
  "resume.selectJobs": "Select at least one current job first.",
  "resume.shortlistTitle": "Resume matches",
  "resume.shortlistReason": "Selected from saved resume matches. Review the current job requirements before applying.",
  "resume.shortlistCreated": "Shortlist created.",
  "resume.openShortlist": "Open new shortlist",
  "resume.error.signIn": "Sign in again to view your saved resume.",
  "resume.error.invitation": "An invitation is needed for saved resume processing. Open Account to enter your code.",
  "resume.error.tooLarge": "Use a resume of at most 10 MiB.",
  "resume.error.fileType": "Choose a PDF, DOCX or TXT file with its original extension and a filename of at most 200 characters.",
  "resume.error.invalidInput": "Check the file and filter values, then try again.",
  "resume.error.rateLimit": "Too many requests. Wait a minute, then refresh the status.",
  "resume.error.unavailable": "New processing is temporarily unavailable. Your saved data is still available.",
  "resume.error.gone": "This item was deleted or is no longer listed. Refresh to see the current state.",
  "resume.error.conflict": "The saved resume or task has changed. Refresh its status before trying again.",
  "resume.error.busy": "Another task is already in progress. Wait for it or cancel it below; your chosen filters have been kept.",
  "resume.error.connection": "Could not load the latest status. Check your connection and refresh; processing may still be continuing.",
  "resume.error.encrypted": "This document is password-protected. Upload an unlocked copy or paste a text version.",
  "resume.error.textVersion": "The document needs a text version. Upload a PDF with selectable text, a DOCX or TXT file, or paste its text above.",
  "resume.error.unreadable": "The document could not be read. Try another copy or paste a text version above.",
  "resume.error.complex": "The document is too large or complex to process. Upload a shorter text version or paste its text above.",
  "resume.error.candidates": "Narrow the search filters and try again.",
  "resume.error.ungrounded": "The analysis could not be checked against the source text. No unverified result was saved. You can retry.",
  "resume.error.interrupted": "Processing was interrupted and automatic recovery could not finish. Your saved resume is unchanged. You can retry.",
  "resume.error.processing": "Processing could not finish, including the cloud fallback where available. Your saved resume is unchanged. You can retry.",
  "resume.uploadOptions": "Upload or replace a resume",
  "resume.shortlistStale": "The selected jobs changed or are no longer listed. No shortlist was created. Recalculate matches to review current jobs.",
  "resume.shortlistPartial": "Shortlist created. Selected jobs added: {saved}; changed or unlisted jobs skipped: {skipped}. Recalculate to review skipped jobs."
}
