1const e={feedback:{question:"Was this suggestion helpful?",helpful:"Helpful",unhelpful:"Not helpful",correction:"Correction",correctionPlaceholder:"What should the AI do better? (e.g. wrong focus, missed risk, unsuitable action â¦)",sendCorrection:"Send correction",addCorrection:"Add correction",saved:"Feedback saved",thanks:"Thanks for your feedback!",saveError:"Feedback could not be saved.",loginRequired:"Please sign in to give feedback."}},t={assistantMemory:{title:"What Shifu remembers",description:"Shifu takes these notes into account for your requests. You can remove each note individually. Notes are only visible to you.",loading:"Loading notes â¦",empty:"Shifu has not remembered anything yet. Just say âRemember â¦â in a conversation.",deleted:"Note removed.",delete:"Remove note",deleteError:"The note could not be removed.",sourceExplicit:"From you",sourceAuto:"Detected",categories:{preference:"Preference",fact:"Fact",role:"Role"}},groups:{account:"My Account",teamAccess:"Team & Access",workspace:"Workspace",dataIntegrations:"Data & Integrations",dataAutomation:"Data & Automation",aiAgents:"AI Agents"},tabs:{profile:"Profile",password:"Password",notifications:"Notifications",calendar:"Outlook Calendar",team:"Team",platformUsers:"Platform Users",permissions:"Permissions",branding:"Branding",integrations:"Integrations",agents:"Agents Overview",strategyAgent:"Strategy Agent",chiefAgent:"Chief Agent",improvements:"Improvements",promptEditor:"Prompt & Model Editor",companyData:"Company Data",bookingHosts:"Booking Hosts",performance:"Performance",teams:"Teams",leaveApprovals:"Leave requests"},leaveApprovals:{title:"Leave requests to approve",rejectLabel:"Reject",rejectDesc:"Request is set to âRejectedâ, the leave balance stays unchanged. Please add a short reason â the employee sees it in their request overview.",rejectPlaceholder:"e.g. âTwo colleagues in the team are already away during the requested period. Please suggest an alternative date.â"},appInstall:{title:"App on home screen",subtitle:"Add the employee area as its own app on your phone or computer.",statusTitle:"Status",statusInstalled:"Already installed",statusReady:"Installation available",statusManual:"Manual setup only",installedHint:"The app is already set up on this device. It opens the employee area in full screen.",readyHint:"Your browser can set up the app directly. One click is enough.",installButton:"Install now",manualHint:"This browser does not offer an automatic setup dialog. Set the app up yourself in a few steps.",manualTitle:"Step by step",iosTitle:"iPhone and iPad (Safari)",iosStep1:"1. Tap the share icon at the bottom.",iosStep2:"2. Choose âAdd to Home Screenâ.",iosStep3:"3. Confirm with âAddâ.",androidTitle:"Android and desktop (Chrome, Edge)",androidStep1:"1. Open the browser menu.",androidStep2:"2. Choose âInstall appâ or âAdd to home screenâ.",androidStep3:"3. Confirm â the app appears as its own icon.",offlineNote:"Note: without an internet connection only the last loaded screen is visible. Live data still needs a connection.",shifuTitle:"Shifu as its own app",shifuHint:"In addition to the employee app you can set up Shifu as a separate icon. There you only use the written and spoken dialogue.",shifuLink:"Open Shifu app"}},a={dashboard:"Dashboard",contacts:"Contacts",companies:"Companies",deals:"Deals",tickets:"Tickets",segments:"Segments / Lists",inbox:"Inbox",calls:"Calls",meetings:"Meetings",tasks:"Tasks",playbooks:"Playbooks",settings:"Settings",crm:"CRM",support:"Support",planning:"Planning",marketing:"Marketing",campaigns:"Campaigns",ads:"Ads",videos:"Videos",logout:"Sign out",aeo:"AEO",seo:"SEO"},n={crm:"CRM",sales:"Sales",marketing:"Marketing",service:"Service",data:"Data & Automation",reports:"Reports",pipeline:"Pipeline",agents:"Agents",operations:"Operations",cs:"Customer Success",mkt:"Marketing Attribution",revops:"RevOps Cockpit",berichte:"Reports & Analytics",commerce:"Commerce"},o={cockpit:{title:"Revenue Operations Cockpit",description:"ARR · Pipeline · Forecast · Quota attainment â one console for management, sales and marketing leads.",manageTargets:"Manage targets",refreshNow:"Refresh n
1ow",emptyHint:'No snapshot yet â click "Refresh now" or wait for the nightly run (03:00 UTC).',topReps:"Top 5 reps (quarter)",toastUpdated:"Snapshots updated",toastError:"Error during snapshot run",kpis:{pipelineCoverage:"Pipeline coverage",winRate90d:"Win rate (90 days)",blendedCac:"Blended CAC"},tabs:{overview:"Overview"}},reps:{title:"Rep Performance",description:"Snapshot of the current quarter â quota, closed-won, attainment and win-rate per sales rep.",allReps:"All reps"},targets:{title:"RevOps targets",description:"Quarterly and yearly targets for ARR, win-rate and coverage. Owner targets = quotas.",create:"Create target",period:"Period",timespan:"Timespan",metric:"Metric",target:"Target",owner:"Owner",team:"Team",empty:"No targets created yet.",edit:"Edit target",metrics:{arr:"ARR (â¬)",mrr:"MRR (â¬)",new_arr:"New ARR (â¬)",win_rate:"Win-Rate (%)",pipeline_coverage:"Coverage (Ã)",pipeline_coverage_long:"Pipeline coverage (Ã)"},periods:{month:"Month",quarter:"Quarter",year:"Year"},start:"Start",end:"End",targetValue:"Target value",ownerLabel:"Owner user ID (empty = team target)",ownerPh:"UUID of the rep, optional",notes:"Notes",cancel:"Cancel",save:"Save",saving:"Savingâ¦"},leaderboard:{defaultTitle:"Rep Leaderboard",repsCount:"{{count}} reps",empty:"No rep-Performance data yet. Create quarterly quotas and trigger the calculation.",rep:"Rep",quota:"Quota",closed:"Closed",attainment:"Attainment",winRate:"Win-Rate"},trends:{title:"RevOps trends (180 days)",arrCourse:"ARR over time",pipelineValue:"Pipeline value",winRatePct:"Win rate (90d) %",avgCycleDays:"Avg. sales cycle (days)"},charts:{forecastVsActual:"Forecast vs. actual",weightedForecast:"Weighted forecast",actualNewArr30d:"Actual new ARR (30d)"}},i={cockpit:"Cockpit",attribution:"Attribution",touchpoints:"Touchpoints",costs:"Spend",tabTitle:"Attribution",tabContact:"Touchpoints",attributionTitle:"Attribution per Deal",attributionDesc:"Pick a deal to see the conversion path.",wonDeals:"Won deals with attribution",noAttributionData:'No attribution data yet. Trigger: a deal must move to "won".',pickDealLeft:"Pick a deal on the left.",costsTitle:"Marketing Spend",costsDesc:"Manually maintained spend data per channel/source/period.",newCost:"New spend",noCosts:"No spend data yet.",deleted:"Deleted",touchpointsTitle:"Touchpoints",touchpointsDesc:"All recorded marketing touchpoints (max 500).",noTouchpoints:"No touchpoints recorded yet.",noTouchpointsContact:"No touchpoints for this contact yet.",cockpitTitle:"Marketing Attribution",cockpitDesc:"ROI per channel · last 90 days",spend90:"Spend (90d)",attributedArr:"Attributed ARR",blendedRoas:"Blended ROAS",activeChannels:"Active channels",saved:"Saved",saveError:"Error",costSheet:{editTitle:"Edit spend",newTitle:"New marketing spend",channel:"Channel",source:"Source",from:"From",to:"To",amount:"Amount (EUR)",notes:"Notes",save:"Save",confirmDelete:"Delete?"},table:{time:"Time",channel:"Channel",source:"Source",campaign:"Campaign",landingPage:"Landing page",contact:"Contact",period:"Period",amount:"Amount",notes:"Notes",deal:"Deal",arr:"ARR",touchpoints:"Touchpoints",filterPlaceholder:"Filter channel, source, campaign, landing pageâ¦"},conversionPath:"Conversion path",noTouchpointsDeal:"No touchpoints for this deal.",won:"Won",loading:"Loadingâ¦",entriesCount:"{{count}} entries",touchpointsCount:"{{count}} touchpoints",channelRoi:{title:"ROI per channel · {{model}} · last {{days}} days",loading:"Loading â¦",noData:"No data.",channel:"Channel",source:"Source",spend:"Spend",attributedArr:"Attributed ARR",roas:"ROAS",roi:"ROI"},attributionAvgTouchpoints:"Avg. Touchpoints / Deal"},s={cockpit:"CS Cockpit",customers:"Customers",renewals:"Renewals",playbooks:"Playbooks",powerhouse:{label:"AI Powerhouse",cta:"Generate",aiError:"AI error"},agentPanel:{ragBadge:"With context data",clearHistory:"Clear history",hint:"Streaming agent with access to your CS data.",thinking:"Thinking â¦",inputPlaceholder:"Ask a question â¦",emptyState:"Ask a question about your area: {{scope}}.",scope:{cockpit:"risk cockpit",customers:"customers",renewals:"renewals pipeline"},labels:{cockpit:"Cockpit coach",customers:"Customers coach",renewals:"Renewals coach"}},powerhouseSections:{cockpit:{kpi:{atRisk:"At-risk accounts",avgHealth:"Avg health",playbookRuns7d:"Playbooks 7d",trendDelta:"Trend Î"},risk:{title:"Risk briefing",desc:"Triages top-risk accounts with a 3-bullet diagnosis."},save:{title:"Save strategy",desc:"Drafts a 14-day save plan for a risk account."},qbr:{title:"QBR agenda",desc:"Provides a 5-point agenda for the next QBR."}},customers:{kpi:{activeAccounts:"Active accounts",green:"Green",yellow:"Yellow",red:"Red"},summary:{title:"Account summary",desc:"5-line summary for internal handovers."},diagnose:{title:"Health diagnosis",desc:"Explains which component drags the score down."},nextTouch:{title:"Next best touch",desc:"Recommends exactly one next outreach."}},renewals:{kpi:{dueIn30d:"Due 30d",dueIn90d:"Due 90d",atRiskValue:"ARR at risk",winRate90d:"Win rate 90
1d"},pitch:{title:"Renewal pitch",desc:"Renewal email with ROI argument and CTA."},expansion:{title:"Expansion brief",desc:"2â3 cross-/up-sell levers with rationale."},saveMail:{title:"Save email",desc:"Save email for a churn-risk customer."}}}},r={cockpit:"Operations Cockpit",suppliers:"Suppliers",audits:"Audits",qc:"Quality Control",logistics:"Logistics",riskScore:"Risk Score",active:"Active",blacklisted:"Blacklisted",observation:"Observation",newSupplier:"New Supplier",newAudit:"New Audit",newInspection:"New Inspection",newShipment:"New Shipment",evaluate:"AI Evaluate",analyze:"AI Analyze",cockpitTitle:"Operations Cockpit",cockpitDesc:"Daily briefing for the China team and Berlin leads.",noBriefingYet:"No briefing yet â generated daily at 22:30 UTC.",generateNow:"Generate briefing now",latestBrief:"Latest briefing",actions:"Recommended actions",supplierStatus:"Status",supplierCity:"City",supplierCategory:"Category",auditScore:"Score",defectRate:"Defect rate",etaDays:"ETA",delayDays:"Delay (days)",tasks:"Tasks",inbox:"Inbox",reports:"Reports",groups:{commerce:"Sales & Billing"}},l={cockpit:{approvals:{title:"Approval Inbox",desc:"Approve, reject or override stage actions, AI suggestions and QC-veto cases.",empty:"No open actions.",openDeal:"Open deal",approve:"Approve",reject:"Reject",execute:"Execute",unblock:"Lift QC veto",qcBlocked:"Blocked by QC veto",approved:"Approved",rejected:"Rejected",executed:"Action executed",unblocked:"Block lifted"},title:"Operations Cockpit",desc:"Daily briefing for the China team and Berlin leads.",empty:"No briefing yet â generated daily at 22:30 UTC.",generate:"Generate briefing now",latestBrief:"Latest briefing",actions:"Recommended actions"},suppliers:{title:"Suppliers",desc:"All China suppliers with risk score, status and links to audits, QC and logistics.",new:"New supplier",created:"Supplier + company created",name:"Name",category:"Category",city:"City",province:"Province",location:"Location",risk:"Risk",status:"Status",openProfile:"Open operations profile",openRiskAnalysis:"Run full risk analysis",riskAlertHigh:"High risk â immediate action recommended",riskAlertHighDesc:"Current data shows significant risk factors. Prioritise audit, contract review and backup supplier before further orders.",riskAlertMedium:"Medium risk â monitoring recommended",riskAlertMediumDesc:"Supplier shows isolated
1weaknesses. Continue regular audits and QC sampling, close contractual gaps.",riskAlertLow:"Low risk",riskAlertLowDesc:"Supplier currently stable. Continue routine monitoring and keep certificates up to date.",statuses:{active:"Active",blacklisted:"Blacklisted"}},documents:{upload:"Upload",name:"Name",type:"Type",issuedAt:"Issued on",expiresAt:"Valid until",expired:"Expired",expiresIn:"Expires in {{n}}d",valid:"Valid",dropHint:"Drop file here or click",complianceTitle:"Certificates expiring",type_certificate:"Certificate",type_contract:"Contract",type_report:"Report",type_test_report:"Test report",type_invoice:"Invoice",type_other:"Other",title:"Documents",desc:"AI-powered document management across all suppliers",search:"Full-text search over name, type and content â¦",aiExtracted:"AI extraction",notAnalyzed:"No AI analysis yet.",confidence:"Confidence",classification:"Classification",certNumber:"Certificate no.",issuer:"Issuer",scope:"Scope",issuedAtDetected:"Detected issue date",expiresAtDetected:"Detected expiry date",versions:"Versions",newVersion:"New version",reanalyze:"Re-analyze",analyzing:"Analyzing â¦",supplier:"Supplier",filterAll:"All types",filterStatus:"All statuses",noResults:"No results.",openFile:"Open file",validation:{match:"Match",mismatch:"Mismatch",error:"Error",unchecked:"Unchecked"}},detail:{language:"Language",newAudit:"New audit",newShipment:"New shipment",documentsHint:"Document upload (certificates, contracts) will be enabled in the next sprint.",tabs:{overview:"Overview",contacts:"Contacts",audits:"Audits",qc:"QC",shipments:"Logistics",documents:"Documents"},kpi:{auditScore:"Audit Ã",defectRate:"Defect rate Ã",onTime:"On-time",openFindings:"Open findings"},audit:{type:"Type",date:"Date",auditor:"Auditor"},editAudit:"Edit Audit",editShipment:"Edit Shipment"},score:{title:"Supplier Scorecard",score:"Score",trend:"Trend",recompute:"Recompute",explain:"AI explanation",aiExplanation:"AI explanation",empty:"No scorecard yet. Click âRecomputeâ to create the first one.",peerBenchmark:"Peer benchmark",vsPeers:"vs. Peers",lowAlerts:"At-risk suppliers (score < 50)",component:{audit:"Audit",qc:"QC",shipment:"Logistics",document:"Documents",task:"Tasks"}},shipment:{mode:"Mode",orderRef:"Order ref",carrier:"Carrier",portOrigin:"Port of origin",portDest:"Port of destination"},audits:{title:"Audits",desc:"Supplier audits (factory, social, quality) with AI evaluation.",new:"New audit",supplier:"Supplier",type:"Type",date:"Date",score:"Score",status:"Status",auditor:"Auditor",notes:"Notes",aiRecommendation:"AI recommendation",detailTitle:"Audit Detail",detailDesc:"AI suggests findings â add or adjust manually",findings:"Findings",suggestFindings:"Suggest findings with AI",addFinding:"Add finding",severity:"Severity",category:"Category",description:"Description",noFindings:"No findings yet",aiSuggested:"AI suggested",generateReport:"Generate PDF report",aiSummary:"AI summary",newFinding:"New finding",notAnalyzed:"Not analysed yet",recommendation:"Recommendation",suggest:"Generate suggestion",deal:"Linked deal",company:"Linked company",none:"No selection",types:{factory:"Factory audit",social:"Social audit",quality:"Quality audit"},statuses:{planned:"Planned",in_progress:"In progress",completed:"Completed",failed:"Failed"}},qc:{title:"Quality control",desc:"Pre-shipment inspections (PSI, DUPRO) with defect rate and AI analysis.",new:"New inspection",supplier:"Supplier",order:"Order ref",date:"Inspection date",defectRate:"Defect rate",status:"Status",sampleSize:"Sample size",defectCount:"Defects",inspector:"Inspector",notes:"Notes",detailTitle:"QC Inspection",detailDesc:"Upload photos â AI detects defects automatically",caption:"Caption (optional)",uploadPhoto:"Upload photo",reanalyze:"Re-analyze",noPhotos:"No photos yet",severity:"Severity",defectsFound:"Defects detected",company:"Company",deal:"Deal",statuses:{planned:"Planned",in_progress:"In progress",defects_found:"Defects found",rework:"Rework",passed:"Passed",rejected:"Rejected"}},logistik:{title:"Logistics & shipments",desc:"Sea, air, rail and truck shipments with ETD/ETA tracking.",new:"New shipment",supplier:"Supplier",mode:"Mode",reference:"Reference",route:"Route",status:"Status",container:"Container no.",awb:"AWB no.",carrier:"Carrier",orderRef:"Order ref",origin:"Origin",destination:"Destination",aiEta:"AI ETA",delayRisk:"Delay risk",timeline:"Event timeline",addEvent:"Add event",predictEta:"Predict ETA with AI",etaReasoning:"Reasoning",noEvents:"No events yet",eventLocation:"Location",eventStatus:"Status",eventNotes:"Notes",etaConfidence:"Confidence",riskHigh:"High risk",riskMedium:"Medium risk",riskLow:"Low risk",location:"Location",newEvent:"New event",n
1otes:"Notes",plannedEta:"Planned ETA",recompute:"Recompute",company:"Company",deal:"Deal",modes:{sea:"Sea",air:"Air",rail:"Rail",truck:"Truck"},statuses:{booked:"Booked",in_transit:"In transit",customs:"Customs",delivered:"Delivered",delayed:"Delayed"}},tasks:{title:"Operations tasks",desc:"Compliance tasks from documents, audits, QC, and logistics",new:"New task",sync:"Sync",empty:"No tasks",complete:"Complete",openSupplier:"Open supplier",createdAt:"Created",source:"Source",titleLabel:"Title",description:"Description",type:"Type",priority:"Priority",status:"Status",dueDate:"Due",supplier:"Supplier",newAssigned:"New task assigned",tabs:{all:"All",mine:"Mine",overdue:"Overdue",done:"Done"},summary:{open:"Open",overdue:"Overdue",today:"Due today",mine:"Mine"},types:{manual:"Manual",document_expiry:"Document expiring",audit_finding:"Audit finding",qc_followup:"QC follow-up",shipment_delay:"Shipment delayed",compliance:"Compliance",document_renewal:"Document renewal",audit_followup:"Audit follow-up",shipment_followup:"Shipment follow-up"},priorities:{low:"Low",medium:"Medium",high:"High"},statuses:{open:"Open",in_progress:"In progress",done:"Done",dismissed:"Dismissed"}},reports:{title:"Reports",desc:"AI-powered supplier reports with insights, risks and recommendations",generate:"Create weekly report",downloadPdf:"Download PDF",createTask:"Create task",kpis:"KPIs",aiSummary:"AI summary",risks:"Risks",recommendations:"Recommendations",supplier:"Supplier",period:"Period",type:"Type",summary:"Summary",status:"Status",empty:"No reports",multi:"Multi-supplier",newSupplierReport:"New Report",latestReport:"Latest Report",tabs:{all:"All",weekly:"Weekly",monthly:"Monthly",quarterly:"Quarterly",ad_hoc:"Ad-hoc"},statusDraft:"Drafts",statusFinalized:"Finalized"},ai:{suggest:"AI suggestion",subject:"Subject",body:"Message",recommendation:"Action",category:"Category",severity:"Severity",title:"Title",disclaimer:"AI suggestion â please review before use.",assist:{suggestAction:"AI suggestion: action",categorize:"AI categorize",escalation:"Escalation email (AI)",taskSuggest:"AI suggestion"}},inbox:{title:"Operations Inbox",desc:"Central supplier communication â translation & AI replies",threads:"Threads",messages:"Messages",aiPanel:"AI Assistant",translate:"Translate",suggestReply:"Suggest reply",noThreads:"No threads",noMessages:"No messages",channel:"Channel",intent:"Intent",actionRequired:"Action required",summary:"Summary",original:"Original",translated:"Translated",reply:"Reply",send:"Send",aiSuggest:"Suggest AI reply",hide:"Hide",replyPlaceholder:"Write a reply â¦",selectThread:"Select a thread on the left."},pdfNotReachable:"PDF not reachable",fx:{title:"FX reporting",desc:"Current exchange rates, 90-day history and outstanding receivables per currency.",exposureTotal:"Open receivables (EUR)",invoices:"Invoices",history:"90-day history",exposureTitle:"FX exposure by currency",empty:"No open invoices.",currency:"Currency",openNative:"Open (native)",openEur:"Open (EUR)",topExposure:"Top foreign-currency receivables",invoiceNumber:"Invoice",company:"Company",dueDate:"Due"},zoll:{title:"Customs & import",desc:"Manage customs value, HS codes and import charges per shipment.",add:"Add entry",kpi:{total:"Entries",open:"Open",value:"Total customs value",charges:"Duty + VAT"},tableTitle:"Customs entries",empty:"No customs entries yet.",shipment:"Shipment",customsValue:"Customs value",dutyRate:"Duty rate",duty:"Duty",vat:"Import VAT",vatRate:"Import VAT rate",status:"Status",statuses:{offen:"Open",verzollt:"Cleared",freigegeben:"Released"},editEntry:"Edit entry",newEntry:"New customs entry",selectShipment:"Select shipment",clearedAt:"Cleared on",description:"Goods description",notes:"Notes",totalLanded:"Total landed"},bestellungen:{title:"Supplier orders",desc:"Purchase orders (POs) in CNY/USD/EUR including payment plan and FX snapshot.",new:"New order",newTitle:"New order",editTitle:"Edit order",list:"All orders",empty:"No orders yet.",kpi:{total:"Orders",open:"Open",totalEur:"Open volume (EUR)",paid:"Already paid"},tabs:{general:"General",items:"Items",payment:"Payment plan"},number:"Number",supplier:"Supplier",selectSupplier:"Select supplier",currency:"Currency",status:"Status",orderDate:"Order date",expected:"Expected delivery",notes:"Notes",items:"Items",addItem:"Item",itemName:"Description",qty:"Qty",unitPrice:"Unit price",lineTotal:"Total",itemsEmpty:"No items yet.",subtotal:"Subtotal",total:"Total",paid:"Paid",splits:"Payment tranches",addSplit:"Tranche",splitLabel:"Label",percent:"Share %",dueOffset:"Due (+days)",amount:"Amount",splitSum:"Sum",splitMust
1100:"must equal exactly 100 %",fxSnapshot:"Take FX snapshot",fxSnapshotTitle:"FX snapshot",fxSnapshotTaken:"FX snapshot saved",fxNotReady:"Exchange rates not loaded yet.",errNoSupplier:"Supplier missing",errNoNumber:"Number missing",errSplits:"Tranches must equal 100 %",statuses:{entwurf:"Draft",bestaetigt:"Confirmed",produktion:"In production",versendet:"Shipped",erhalten:"Received",storniert:"Cancelled"},product:"Product / Variant",selectProduct:"Product ..."},approvals:{title:"Approvals",desc:"Stage actions that need manual approval before execution.",empty:"No pending approvals.",openDeal:"Open deal",qcBlocked:"Blocked by QC",unblock:"Unblock",approve:"Approve",reject:"Reject",execute:"Execute",unblocked:"Unblocked",approved:"Approved",rejected:"Rejected",executed:"Executed"},agentPanel:{labels:{po:"Purchase Orders Agent",supplier:"Supplier Agent",shipment:"Shipments Agent",qc:"Quality Agent",customs:"Customs Agent",cockpit:"Cockpit Coach",approvals:"Approvals Coach",audits:"Audit Coach",documents:"Documents Coach",fx:"FX Coach",reports:"Reports Coach",tasks:"Tasks Coach"},badge:"RAG · Streaming",clearHistory:"Clear history",intro:"Ask the agent about current data â top 30 are loaded as context.",emptyHint:"Ask a question about the {{area}} area.",thinking:"Thinkingâ¦",placeholder:"Enter questionâ¦"},powerhouse:{approvals:{kpi:{open:"Open",slaBreached:"SLA breached",avgWait:"Avg wait",volume7d:"Volume 7 days"},cards:{summary:{title:"Approvals overview",desc:"Open requests with wait time and status."},risk:{title:"Risk assessment",desc:"Risk class per request with rationale."},decision:{title:"Decision draft",desc:"Brief rationale for or against the request."}}},fx:{kpi:{currencies:"Currencies",usd:"USD",cny:"CNY",updates7d:"Updates 7 days"},cards:{exposure:{title:"Exposure brief",desc:"Open receivables per currency in EUR."},hedging:{title:"Hedging suggestions",desc:"Forward, natural hedge or option."},variance:{title:"Variance explanation",desc:"Drivers of FX movements + EUR impact."}}},reports:{kpi:{days30:"30 days",drafts:"Drafts",suppliers:"Suppliers",total:"Total"},cards:{exec:{title:"Executive summary",desc:"4-sentence condensation for management."},anomaly:{title:"Anomaly callout",desc:"Top 3 deviations with cause."},next:{title:"Next actions",desc:"3 concrete actions with owner."}}},cockpit:{kpi:{openAlerts:"Open alerts",critical:"Critical",tasksToday:"Tasks today",alerts7d:"Alerts 7 days"},cards:{daily:{title:"Daily briefing",desc:"Top 3 risks, deliveries and next actions."},triage:{title:"Alert triage",desc:"Sort open alerts by urgency."},capacity:{title:"Capacity outlook",desc:"Utilisation for the next 14 days."}}},customs:{kpi:{open:"Open customs cases",cleared:"Cleared",value:"Total customs value",noHs:"Without HS code"},cards:{hs:{title:"HS code suggestion",desc:"EU CN code with alternatives."},compliance:{title:"Compliance check",desc:"Check EUDR, CBAM, sanctions lists."},duty:{title:"Duty preview",desc:"Duty + import VAT estimate."}}},documents:{kpi:{total:"Total documents",pending:"Pending",expiring:"Expiring soon",unchecked:"Unchecked"},cards:{summary:{title:"Document summary",desc:"3-sentence summary + 3 keywords for filing."},compliance:{title:"Compliance check",desc:"EUDR / CBAM / CE / REACH check."},expiry:{title:"Expiry action",desc:"3 next steps for expiring documents."}}},po:{kpi:{open:"Open orders",overdue:"Overdue",volumeCny:"Volume (CNY)",avgLead:"Avg lead time",days:"days"},cards:{eta:{title:"ETA forecast",desc:"Estimate expected delivery time."},chat:{title:"Supplier message (CN)",desc:"Draft a polite-firm message in Chinese."},anomaly:{title:"Anomaly detection",desc:"Check quantity/price deviations."}}},supplier:{kpi:{active:"Active suppliers",highRisk:"High risk (â¥70)",avgScore:"Avg score",openAudits:"Open audits"},cards:{risk:{title:"Risk score",desc:"Assess overall risk and name levers."},alternatives:{title:"Alternatives suggestion",desc:"Suggest three alternative suppliers."},audit:{title:"Audit briefing",desc:"Preparation briefing for the next audit."},payment:{title:"Payment optimisation",desc:"Optimise discount, terms and deposit."}}},audits:{kpi:{openFindings:"Open findings",critical:"Critical",audits90d:"Audits 90 days",passRate:"Pass rate"},cards:{summary:{title:"Findings summary",desc:"Findings grouped by severity."},capa:{title:"CAPA draft",desc:"Corrective & preventive actions per finding."},next:{title:"Next steps",desc:"3 next audit steps with rationale."}}},shipment:{kpi:{inTransit:"In transit",delayed:"Delayed",total:"Total shipments",avgTransit:"Avg transit",days:"days"},cards:{eta:{title:"ETA correction",desc:"Updated ETA based on latest events."},mode:{title:"Mode optimisation",desc:"Compare sea / air / rail."},consolidation:{title:"Consolidation",desc:"Bundle open orders."}}},qc:{kpi:{inspections30:"Inspections 30 days",defectRate:"Defect rate",passed:"Passed",samples:"Total samples"},cards:{photo:{title:"Photo analysis",desc:"Classify defects from photo captions."},trend:{title:"Defect trends",desc:"Trend detection per supplier."},report:{title:"Inspection report (DE/EN/ZH)",desc:"Draft a multilingual report."}}},tasks:{kpi:{open:"Open",overdue:"Overdue",dueToday:"Due today",done7d:"Done 7 days"},cards:{prio:{title:"Prioritisation",desc:"Sort tasks by urgency à impact."},delegate:{title:"Delegation suggestion",desc:"Suggest a suitable owner."},completion:{title:"Completion summary",desc:"Completed tasks of the last 7 days."}}}}},c={all:"All",kunde:"Customers",lieferant:"Suppliers",logistiker:"Logistics providers",partner:"Partners",interessent:"Prospects",intern:"Internal",sonstiges:"Other"},d={coaching:{title:"Coaching",kicker:"Sales",description:"Deal coach + AI call reviews. Notes turn into summary, concerns and follow-up tasks.",tabs:{coach:"Deal coach",reviews:"Call reviews"},selectDeal:"Select deal",chooseOption:"â Please select â",nbaTitle:"Next-Best-Actions",nbaDescription:"Stage-specific recommendation + early warning.",choosePlaceholder:"Select a deal above",newReview:"New call review",dealOptional:"Deal (optional)",titleLabel:"Title",titlePlaceholder:"e.g. Discovery call with Acme",notesLabel:"Call notes",notesPlaceholder:"What was discussed, objections, next steps â¦",generateAi:"Generate AI summary",save:"Save",previousReviews:"Previous reviews",no
1Reviews:"No call reviews saved yet.",callReviewFallback:"Call review",deleteAria:"Delete",originalNotes:"Original notes",toastNoNotes:"Please enter notes first.",toastNotesMissing:"Notes missing.",toastError:"Error"},winloss:{kicker:"Sales · Revenue Intelligence",title:"Win/Loss analyzer",description:"What drives closes, what costs them? Required fields on every close feed this analysis and the battle cards.",days:{d30:"30 days",d90:"90 days",d180:"6 months",d365:"12 months"},running:"Running â¦",runAi:"AI analysis",winRate:"Win rate",won:"Won",lost:"Lost",dealsCount:"{{count}} deals",ratio:"Lost / Won ratio",tabs:{reasons:"Reasons",competitors:"Competitors",battlecards:"Battle cards",deals:"Deal list"},topLossReasons:"Top loss reasons",topWinReasons:"Top win reasons",noLossData:"No data yet â reasons are captured when closing deals.",noWinData:"No data yet.",competitorsLost:"Competitors in lost deals",noCompetitors:"No competitors recorded.",lossesCount:"{{count}} losses",battleCards:"Battle cards",noBattleCards:"No battle cards yet. They are auto-generated by AI when a competitor appears ⥠2Ã.",weaknesses:"Weaknesses",counterArgs:"Counter-arguments",pricing:"Pricing",date:"Date",deal:"Deal",outcome:"Outcome",reason:"Reason",competitor:"Competitor",value:"Value",toastAiRunning:"AI analysis running â result will appear in the director brief.",toastError:"Error: {{message}}"},forecast:{title:"Sales forecast",description:"Funnel, trend, scenarios and AI explanation â win-probability weighted.",loadError:"Forecast could not be loaded.",currentBadge:"(current)",weightedRevenue:"Expected revenue (weighted)",pipelineValue:"Pipeline value",dealCount:"Deal count",explainTitle:"Forecast explanation",explainDescription:"Drivers, risks and best/worst/likely scenarios for the current pipeline change.",explainCta:"Generate explanation",funnelTitle:"Funnel: stage â stage",funnelEmpty:"No open deals.",weeklyTrend:"Weekly trend (weighted pipeline)",scenariosTitle:'Scenarios â "What if?"',scenariosHint:"Adjust the levers and instantly see how the weighted forecast changes.",winRateAdj:"Win-rate adjustment",winRatePoints:"%-points",cycleAdj:"Cycle-time adjustment",cycleHint:"Negative = close faster.",baseWeighted:"Base (weighted)",scenario:"Scenario",delta:"Î",ungweightedRef:"Pipeline value (unweighted) for reference: {{value}}",stages:{neu:"New",qualifiziert:"Qualified",angebot:"Proposal",verhandlung:"Negotiation",geschlossen_gewonnen:"Won",geschlossen_verloren:"Lost"},pipelineHistory:{title:"Pipeline history",description:"Daily snapshots of the full pipeline (weighted vs. unweighted).",total:"Pipeline (unweighted)",weighted:"Weighted",empty:"No pipeline snapshots yet."}},pipeline:{kicker:"Sales",title:"Pipeline analysis",description:"Forecast, velocity and stuck deals â operational work happens in the CRM.",openPipeline:"Open pipeline",dealsCount:"{{count}} deals",weighted:"Weighted",weightedSub:"à probability",winRate90d:"Win rate (90 d.)",avgVelocity:"à velocity",velocitySub:"until close",velocityDays:"{{days}} d.",stuckRate:"Stuck rate",stuckSub:"{{count}} deals > 30 d.",funnelTitle:"Funnel: stage â stage",funnelEmpty:"No open deals.",velocityTrend:"Velocity trend (à days to close)",velocityEmpty:"No velocity data available yet.",forecastTitle:"Forecast (weighted, by close date)",days30:"⤠30 days",days60:"31â60 days",days90:"61â90 days",daysLater:"> 90 days",undated:"No date",healthTitle:"Pipeline health (AI)",healthDescription:"AI analysis of stage dwell-time, bottlenecks and stuck deals.",stuckTitle:"Stuck deals (> 30 days in stage)",noStuck:"No stuck deals â pipeline is moving. ð",deal:"Deal",stage:"Stage",health:"Health",value:"Value",days:"Days",crm:"CRM",probability:"Probability",daysInStage:"Days in stage",notes:"Notes",editInCrm:"Edit in CRM",won:"Won",lost:"Lost",coachTitle:"Deal coach",coachDescription:"Next best actions for this deal."},forecastCockpit:{kicker:"Sales · Revenue Intelligence",title:"Forecast cockpit",description:"Commit / Best Case / Pipeline per quarter â with drift vs. last snapshot and live deal-health score.",allPipelines:"All pipelines",refresh:"Refresh snapshot",commit:"Commit",commitSub:"{{count}} deals · certain",bestCase:"Best Case",bestCaseSub:"{{count}} deals · likely",pipelineTotal:"Pipeline (total)",pipelineSub:"{{count}} deals · weighted {{weighted}}",driftSince:"Drift compared to snapshot from {{date}}.",dealsInQuarter:"Deals in {{quarter}}",noOpen:"No open deals expected to close this quarter.",health:"Health",deal:"Deal",stage:"Stage",value:"Value",prob:"Prob.",category:"Forecast c
1ategory",snapshotsHint:"Snapshots are created weekly automatically. Manual refresh via the button above.",toastUpdated:"Snapshot & health score updated",toastError:"Error: {{message}}",categories:{commit:"Commit",best_case:"Best Case",pipeline:"Pipeline",omitted:"Excluded"}},leads:{kicker:"Sales",title:"Leads",description:"Inbox of incoming leads â AI qualification, routing and conversion.",total:"Total",new:"New",qualified:"Qualified",avgScore:"à score",qualifierTitle:"Lead qualifier",qualifierDescription:"Pick a lead from the list and use BANT/MEDDIC scoring + next-step suggestion.",choosePlaceholder:"Please pick a lead on the left",noLeads:"No leads yet â they will appear here once marketing forms or campaigns deliver.",lead:"Lead",company:"Company",source:"Source",score:"Score",status:"Status",open:"Open",email:"Email",message:"Message",aiReasoning:"AI reasoning",qualify:"Qualify",inProgress:"In progress",reject:"Reject"},sequences:{title:"Email sequences",description:"3-step cadences with AI drafts and A/B variants. Hourly delivery.",new:"New sequence",cadenceTitle:"Cadence writer",cadenceDescription:"3-step email cadence (day 0/3/7) incl. A/B variants per step â based on persona, pain, industry.",cadenceCta:"Generate cadence + A/B",persona:"Persona",personaPh:"e.g. Procurement lead, mid-market",pain:"Pain",painPh:"e.g. unreliable China suppliers",industry:"Industry",industryPh:"e.g. Electronics",product:"Product / offer",productPh:"e.g. Sourcing-as-a-Service",loading:"Loadingâ¦",emptyHint:'No sequences yet. Click <strong>"New sequence"</strong> above to start.',active:"active",paused:"paused",kpi:{sent:"Sent",open:"Open",reply:"Reply",active:"Active",totalSuffix:"{{count}} total"}},workspace:{kicker:"Sales",title:"Workspace",description:"Your daily cockpit. What first, what waits.",kpi:{activitiesToday:"Activities today",activitiesHint:"Last 24h",openQuotes:"Open quotes",openQuotesHint:"Draft & sent",mtdRevenue:"MTD revenue",mtdRevenueHint:"Won deals",dueTasks:"Due tasks",dueTasksHint:"Today & overdue"},actions:{task:"Task",logCall:"Log call",note:"Note",followMail:"Follow-up mail",quote:"Quote"},briefingTitle:"Daily briefing",briefingDescription:"Top focus, risks and next actions for today â based on your open deals, meetings and tasks.",briefingCta:"Generate briefing",cards:{focus:"Top focus",risks:"Risks",actions:"Next actions"},actionRequired:"Action required",noOpen:"No open risks or due tasks.",dealRisk:"Deal risk detected",view:"View",start:"Start",due:"Due: {{date}}",openTask:"Open",last24h:"Last 24 hours",noActivities:"No activities.",stageArrow:"Stage â",dueToday:"Due today ({{count}})",nothingDue:"Nothing due â good."},closeDealDialog:{won:"won",lost:"lost",titlePrefix:"Deal",description:"Please record the close data â it feeds the win/loss analysis and battle cards.",mainReason:"Main reason *",reasonPlaceholder:"Choose reason",competitor:"Competitor",competitorRecommended:"(recommended)",competitorPh:"e.g. Alibaba Direct, local importer â¦",priceRange:"Price range",priceRangePh:"Choose range",notes:"Notes",notesPh:"Context, lessons learned, â¦",cancel:"Cancel",markAs:"Mark as {{outcome}}",saving:"Saving â¦",toastChooseReason:"Please choose a close reason.",toastWon:"Deal marked as won.",toastLost:"Deal marked as lost.",toastError:"Error: {{message}}",reasonsWon:{Preis:"Price",Qualität:"Quality",Beziehung:"Relationship",Lieferzeit:"Delivery time",Referenzen:"References",Sonstiges:"Other"},reasonsLost:{"Preis zu hoch":"Price too high","Wettbewerber gewonnen":"Competitor won","Kein Budget":"No budget","Falsches Timing":"Wrong timing","Anforderungen nicht erfüllt":"Requirements not met","Kein Entscheider erreicht":"No decision-maker reached",Sonstiges:"Other"}},healthBadge:{ariaLabel:"Deal health {{score}}: {{label}}",unknown:"unknown",title:"Deal health: {{label}} ({{score}}/100)",activityRecency:"Activity recency",stageVelocity:"Stage velocity",stakeholder:"Stakeholder",sequence:"Sequence",responseLatency:"Response latency",flags:"Flags",noSnapshot:"No snapshot yet â score will be created on the next run."},powerhouse:{cta:"Generate AI suggestion",eyebrow:"Sales Powerhouse",errorFallback:"Error",label:"Powerhouse",aiError:"AI error"},briefing:{dealRisksAi:"Deal risks (AI)",dealRisksAiInfo:"About AI deal risks"},powerhouseSections:{workspace:{kpi:{openDeals:"Open deals",stuck:"Stuck > 14 days",newLeads:"New leads (7 days)",sql:"SQL"},dailyBriefing:{title:"Daily briefing",desc:"Top-3 focus, risks, next actions."},focusBoard:{title:"Top 5 today",desc:"Prioritised actions with time estimates."}},pipeline:{kpi:{openDeals:"Open deals",weighted:"Weighted value (EUR)",avgAge:"Avg. stage age",avgAgeValue:"{{n}} days",stuck:"Stuck > 14 days"},health:{title:"Pipeline health",desc:"Analyse stage distribution and bottlenecks."},stageAdvance:{title:"Suggest stage moves",desc:"Concrete moves for stuck deals."},nba:{title:"Next best action",desc:"Highest-impact action for the top deal."}},forecast:{kpi:{commit:"Commit (EUR)",best:"Best case (EUR)",pipeline:"Pipeline (EUR)",coverage:"Coverage"},explain:{title:"Explain forecast",desc:"Drivers and risks of pipeline change."},whatIf:{title:"Simulate what-if",desc:"3 scenarios with EUR impact."}}
1,leads:{kpi:{last7:"New leads (7 days)",mql:"MQL",sql:"SQL",conv:"Conversion"},qualify:{title:"Qualify lead",desc:"BANT/MEDDIC evaluation for the latest lead."},score:{title:"Score reasoning",desc:"Why did the lead get this score?"}},sequences:{kpi:{active:"Active sequences",enrolled:"Enrollments",reply:"Reply rate",unsub:"Unsubscribes"},writer:{title:"Write new cadence",desc:"3-step email cadence (A/B)."},ab:{title:"Suggest A/B variant",desc:"B variant for an existing sequence."}},coaching:{kpi:{calls:"Calls (7 days)",topObjection:"Top objection"},callReview:{title:"Call review",desc:"Summarise notes, risks and follow-ups."},actionPlan:{title:"Coaching action plan",desc:"3 concrete to-dos from recent calls."}}},agentPanel:{labels:{pipeline:"Pipeline agent",forecast:"Forecast agent",leads:"Leads agent",sequences:"Sequences agent",coaching:"Coaching agent"},scope:{pipeline:"Pipeline",forecast:"Forecast",leads:"Leads",sequences:"Sequences",coaching:"Coaching"},ragBadge:"RAG · Streaming",clearHistory:"Clear history",hint:"Ask the agent about current data â top 40 records are loaded as context.",emptyState:"Ask a question about the {{scope}} area.",thinking:"Thinkingâ¦",inputPlaceholder:"Type a questionâ¦"}},p={studio:"Marketing Studio",email:"Email Campaigns",social:"Social Media",events:"Events & Webinars",forms:"Forms",formsAndCtas:"Forms & CTAs",ctas:"CTAs",intent:"Buying Intent",personalization:"Personalization",caseStudies:"Case Study Editor",assets:"Asset Library",analytics:"Marketing Analytics",content:"Content",leads:"Lead Inbox",insights:"Channel Insights",calendar:"Editorial Calendar",websites:"Websites",bookingFunnel:"Booking Funnel",meetingStatus:"Meeting Delivery",contentDesc:"Generate LinkedIn, ad, email & blog content from a single brief.",leadsDesc:"All incoming leads with AI scoring and routing recommendation.",insightsDesc:"Cross-channel Performance + AI weekly briefing with concrete actions.",calendarDesc:"Monthly grid for all planned marketing activities.",newBrief:"New brief",generate:"Generate",topic:"Topic",pain:"Pain / hook",audience:"Audience",tone:"Tone",channels:"Channels",status:"Status",draft:"Draft",approved:"Approved",published:"Published",approve:"Approve",publish:"Publish",leadScore:"Score",leadRouting:"Routing recommendation",convertLead:"Create contact + task",weeklyBriefing:"Weekly briefing",noBriefingYet:"No briefing yet â generated Sunday 23:00 UTC.",generateBriefingNow:"Generate briefing now",calendarMonth:"Month",newCalendarEntry:"New entry",connectorStatus:"Platform connections",connected:"Connected",available:"Available to connect",connectInstructions:"How to connect?",connectorHelp:"This platform is set up as a stub. Once credentials are stored as a secret, sync runs automatically.",groups:{planCreate:"Plan & Create",channels:"Channels",discover:"Discover",attribution:"Attribution & ROI"},socialDesc:"Schedule posts for LinkedIn, Instagram, Facebook & more â with AI caption generator.",emailDesc:"Send personalized campaigns to segments and track opens, clicks, and bounces.",eventsDesc:"Plan webinars, barcamps and offline events â manage registrations and attendance.",intentDesc:"AI score per contact from email clicks, event attendance, lifecycle stage and website activity.",websitesDesc:"All project URLs at a glance â grouped by type, with direct link to the live page.",weeklyKpis:"KPIs of the last 7 days",recommendedActions:"Recommended actions",weekFrom:"Week starting",newPost:"New post",editPost:"Edit post",newSocialPost:"New social post",noPosts:"No posts yet.",drafts:"Drafts",scheduled:"Scheduled",all:"All",platforms:"Platforms",internalTitle:"Title (internal)",internalTitlePlaceholder:"e.g. Supplier audit reel",contentPlaceholder:"Your post textâ¦",scheduledFor:"Scheduled for",cancel:"Cancel",save:"Save",topicPlaceholder:"e.g. Audit service Q4",audiencePlaceholder:"e.g. E-com brands DE",audienceOptional:"Audience (optional)",threeSubjectIdeas:"Generate 3 ideas",copy:"Copy",copied:"Copied",aiCaptionGenerator:"AI caption generator",subjectGenerator:"Subject line generator",recipientsCount:"Recipients",noRecipients:"No recipients yet. Add contacts from a segment.",noCampaign:"No campaign yet â create one in Marketing Studio.",campaigns:"Campaigns",topicRequired:"Please specify a topic.",contentAndPlatformRequired:"Content and at least one platform required.",sent:"Sent",opened:"Opened",clicked:"Clicked",failed:"Failed",copyTab:"AI Copy",recipientsTab:"Recipients",newEvent:"New event",editEvent:"Edit event",n
1oEventsCategory:"No events in this category.",upcoming:"Upcoming",past:"Past",type:"Type",start:"Start",end:"End",endBeforeStart:"End cannot be before start.",onlineLink:"Online link",location:"Location",locationPlaceholder:"e.g. Munich, Barcamp Hub",maxAttendees:"Max attendees",host:"Host",registrationUrl:"Registration URL",name:"Name",description:"Description",edit:"Edit",webinar:"Webinar",offline:"Offline",hybrid:"Hybrid",registrations:"Registrations",noRegistrations:"No registrations yet.",firstName:"First name",lastName:"Last name",emailAddress:"Email",company:"Company",register:"Register",attended:"Attended?",nameAndStartRequired:"Name and start time are required.",hot:"Hot",warm:"Warm",rising:"Rising",total:"Total",hotRange:"Hot (â¥75)",warmRange:"Warm (55-74)",recompute:"Recompute scores",noScores:'No scores yet â click "Recompute scores" in the top right.',search:"Searchâ¦",cold:"Cold",lukewarm:"Lukewarm",unknown:"Unknown",ungescored:"Score unrated",rate:"Rate",newLabel:"New",inProgress:"In progress",converted:"Converted",noLeadsStatus:"No leads in this status.",unnamed:"Unnamed",dismiss:"Dismiss",noAssetsCreate:"No assets yet â create the first brief.",newCalendarEntryTitle:"New calendar entry",allChannels:"All channels",more:"more",create:"Create",titleField:"Title",channelField:"Channel",titlePlaceholder:"e.g. LinkedIn post: Supplier audit",weekdays:{mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat",sun:"Sun"},pageTypes:{blog:"Blog & Knowledge",landing:"Landing pages",page:"Regular pages"},pageTable:{path:"Path",url:"URL",sitemap:"Sitemap",robots:"Robots",lastChecked:"Last checked",noPages:"No pages found."},searchUrl:"Search path or URLâ¦",notLoggedIn:"Not logged in",syncFailed:"Sync failed",syncedSummary:"Synced: {{campaigns}} campaigns, {{metrics}} metrics, {{ads}} ads",syncError:"Sync error",loading:"Loadingâ¦",delete:"Delete",abbrechen:"Cancel",filterUpcoming:"Upcoming",filterPast:"Past",filterAllCount:"All ({{count}})",newEventTitle:"New event",editEventTitle:"Edit event",typeWebinar:"Webinar",typeOffline:"Offline",typeHybrid:"Hybrid",statusGeplant:"Planned",statusLive:"Live",statusAbgeschlossen:"Completed",statusAbgesagt:"Cancelled",descriptionPlaceholder:"Short description",onlineLinkPlaceholder:"https://zoom.us/...",registrationsCount:"Registrations ({{count}})",registrationsCountMax:"Registrations ({{count}}/{{max}})",noRegistrationsYet:"No registrations yet.",attendedShort:"â",attendedQuestion:"Attended?",intentTileHot:"Hot (â¥75)",intentTileWarm:"Warm (55-74)",intentTileRising:"Rising",intentTileTotal:"Total",intentSearchPlaceholder:"Searchâ¦",intentNoScores:'No scores yet â click "Recompute scores" in the top right.',trendRising:"Rising",trendFalling:"Falling",trendStable:"Stable",unknownContact:"Unknown",tileRecipients:"Recipients",tileSent:"Sent",tileOpened:"Opened",tileClicked:"Clicked",tileFailed:"Failed",aiCopyTab:"AI Copy",recipientsCountTab:"Recipients ({{count}})",tonalityB2BSie:"B2B â formal",tonalityB2BDu:"B2B â casual",tonalityCasual:"Casual",tonalityUrgent:"Urgent",leadsListTabNew:"New",leadsListTabInProgress:"In progress",leadsListTabConverted:"Converted",leadsListTabAll:"All",scoreUnscored:"Score unrated",noAssetsCreateFirst:"No assets yet â create the first brief.",kpisLast7d:"KPIs of the last 7 days",tabsAll:"All",contentEmpty:"No assets yet â create the first brief.",kpis7d:"KPIs of the last 7 days",insightsPage:{weekFrom:"Week from {{date}}",recommendedActions:"Recommended actions",clicksConversions:"{{clicks}} clicks · {{conversions}} conv."},tabs:{pages:"Pages",traffic:"Traffic"},powerhouse:{label:"AI Powerhouse",cta:"Generate",aiError:"AI error"},agentPanel:{ragBadge:"With context data",clearHistory:"Clear history",hint:"Streaming agent with access to your marketing data.",thinking:"Thinking â¦",inputPlaceholder:"Ask a question â¦",emptyState:"Ask a question about your area: {{scope}}.",scope:{leads:"leads",content:"content",email:"email campaigns",social:"social posts"},labels:{leads:"Leads coach",content:"Content coach",email:"Email coach",social:"Social coach"}},powerhouseSections:{leads:{kpi:{hot:"Hot leads",newLast24:"New (24h)",unscored:"Unscored",avgScore:"Avg score"},icp:{title:"ICP score",desc:"Scores unscored leads against your ideal-customer profile."},routing:{title:"Routing suggestion",desc:"Suggests who should pick up hot leads."},enrich:{title:"Enrichment brief",desc:"Builds a research brief for open leads."}}
1,content:{kpi:{drafts:"Drafts",published30:"Published (30d)",total:"Total",daysSinceLast:"Days since last"},brief:{title:"Brief generator",desc:"Produces a full content brief from a topic."},outline:{title:"Outline",desc:"Writes a clean H2/H3 outline for your next piece."},seo:{title:"SEO rewrite",desc:"Rewrites existing copy with search intent in mind."}},email:{kpi:{active:"Active campaigns",planned:"Planned",recent30:"30 days",avgBudget:"Avg budget"},subject:{title:"Subject A/B",desc:"Proposes three subject variants with hypothesis."},personalize:{title:"Personalization",desc:"Returns variable blocks for segment tuning."},deliverability:{title:"Deliverability check",desc:"Rates spam risk and readability."}},social:{kpi:{scheduled:"Scheduled",drafts:"Drafts",published30:"Published (30d)",topPlatform:"Top channel"},post:{title:"Post draft",desc:"Writes a post matching channel and tone."},thread:{title:"Thread outline",desc:"Builds a 5-7 step thread idea."},hashtag:{title:"Hashtag research",desc:"Returns 10 relevant hashtags with reach hint."}}},whatsapp:{kicker:"Marketing",title:"WhatsApp inbox",description:"Pre-chat qualifications from the WhatsApp funnel. Each entry is a request that completed the pre-chat form.",shortId:"Short ID",intent:"Intent",businessModel:"Business model",budget:"Budget",timeframe:"Timeframe",source:"Source",status:"Status",statusNew:"New",created:"Received",total:"Total",last7d:"Last 7 days",qualified:"Qualified",deflected:"Deflected",empty:"No WhatsApp requests yet.",detailTitle:"Request",deflectedTo:"Deflected to",medium:"Medium (UTM)",campaign:"Campaign (UTM)",landing:"Landing page",referrer:"Referrer",completedAt:"Completed at",linkedContact:"Linked contact"},leadBriefings:{title:"Lead briefings",description:"AI research and prospect answers gathered before the discovery call.",total:"Total",last7d:"Last 7 days",answered:"Answered",booked:"Booked",created:"Created",contact:"Contact",company:"Company",industry:"Industry",status:"Status",host:"Host",website:"Website",research:"AI research",questions:"AI questions",answers:"Answers",empty:"No lead briefings yet.",statusValues:{researching:"Researching",questions_ready:"Questions ready",answered:"Answered",booked:"Booked",expired:"Expired"}},leadsKpiHot:"Hot",publicLanding:"Public registration page",shortLink:"Short link",linkCopied:"Link copied",registrationDeadline:"Registration deadline",confirmationText:"Confirmation text",confirmationTextPlaceholder:"Thank you! You will receive the access details by email.",dueNow:"Due for publishing",visitors:{title:"Website visitors",subtitle:"Sessions from the last {{days}} days, grouped per visitor.",infoTitle:"Company detection via reverse DNS",infoBody:"Companies are derived from the hostname of the IP address (hit rate for B2B office IPs is roughly 25â35%). Connect Leadinfo later for a higher hit rate â the page is prepared for it.",daysSuffix:"{{count}} days",searchPlaceholder:"Company, hostname, city or page â¦",onlyWithCompany:"Only with company hint",totalSessions:"Total sessions",withCompany:"With company hint",matchedInCrm:"Matched in CRM",loading:"Loading visitors â¦",empty:"No visitor sessions in the selected period.",colTime:"Time",colCompany:"Company / hostname",colLocation:"Location",colDevice:"Device",colFirstPage:"First page",colPages:"Pages",colSource:"Source",colIp:"IP",inCrmBadge:"In CRM",unknown:"Unknown",direct:"direct",unknownVisitor:"Unknown visitor",firstSession:"First session",lastActivity:"Last activity",pageViews:"Page views ({{count}})"},editorial:{title:"Editorial plan",desc:"Topic suggestions from Search Console and answer-engine visibility â assess, schedule, complete.",analyze:"Analyse topics",kpiOpen:"Open suggestions",kpiPotential:"Click potential per 28 days",kpiScheduled:"Scheduled",all:"All",search:"Search topic",empty:"No suggestions yet. Start the topic analysis.",clicks:"clicks",schedule:"Schedule",scheduleTitle:"Schedule topic",done:"Done",dateField:"Date",channelField:"Channel"},reengagement:{title:"Re-engagement",desc:"Inactive contacts, lost and stalled opportunities â score, schedule, reach out again.",analyze:"Analyse candidates",kpiOpen:"Open candidates",kpiValue:"Value at stake",kpiScheduled:"Scheduled",all:"All",search:"Search â¦",loading:"Loading â¦",empty:"No candidates yet. Run the analysis to create suggestions.",score:"Score",daysInactive:"{{count}} days inactive",task:"Follow-up",reason:{inaktiver_kontakt:"Inactive contact",verlorener_deal:"Lost opportunity",liegengebliebener_deal:"Stalled opportunity",fallback:"Suggestion"},channel:{email:"Email",telefon:"Phone",whatsapp:"WhatsApp"},status:{neu:"New",eingeplant:"Scheduled",erledigt:"Done",verworfen:"Dismissed"}},visibility:{title:"Visibility",desc:"Publishing cadence of the last {{weeks}} weeks, weekly gaps and channel mix.",target:"Target per week",kpiPosts:"Posts in period",kpiCoverage:"Weeks meeting target",kpiGaps:"Gap weeks",cadence:"Weekly cadence",channels:"Channels",gapsTitle:"Close open gaps",noGaps:"All weeks meet the target.",gapDetail:"{{have}} of {{target}} posts · week of {{date}}",schedule:"Schedule",loading:"Loading â¦",postTitle:"Post {{week}}",gapNote:"Created automatically from a visibility gap."},adsReadiness:{title:"Ads readiness",desc:"Check before restarting paid ads: accounts, measurement, feedback, costs and impact.",toAds:"Go to ads",score:"Readiness",summary:"{{done}} of {{total}} checks passed · {{spend}} ⬠spend in 30 days · {{campaigns}} active campaigns",loading:"Loading â¦"},visitorCompanies:{title:"Visiting companies",desc:"Companies identified from website traffic, aggregated per domain and scored by interest.",days:"{{count}} days",searchPlaceholder:"Search domain â¦",kpiCompanies:"Identified companies",kpiKnown:"Already in CRM",kpiUnknown:"Still unknown",loading:"Loading â¦",empty:"No company identified in the selected period.",inCrm:"In CRM",unknown:"Unknown",interest:"Interest",counts:"{{views}} page views · {{sessions}} visits",lastSeen:"Last seen {{date}}",createTask:"Create sales task",emailTemplate:"Shifu email template",taskCreated:"Sales task created",taskTitle:"Contact website visitor: {{name}}",taskDesc:"{{views}} page views in {{sessions}} visits. Topics viewed: {{topics}}"},overview:{title:"Marketing overview",subtitle:"Campaigns, radar and audiences at a glance.",activeCampaigns:"Active campaigns",radarSignals:"Radar signals (14 days)",highRelevance:"High relevance",allCampaigns:"Campaigns total",runningPlans:"Ru
1nning campaign plans",whatMatters:"What matters now"},radar:{title:"Radar",subtitle:"Observations on competition, visibility and market.",days7:"7 days",days14:"14 days",days30:"30 days",emptyTitle:"No signals in this period",emptyHint:"New observations will appear here.",reason:"Why it matters",recommendation:"Recommendation",openSource:"Open source",dismiss:"Dismiss",relevance:{hoch:"High",mittel:"Medium",gering:"Low",unbewertet:"Unrated"}},shifuStrip:{title:"Campaign plan: {{name}}",blocked:"Blocked",waiting:"{{count}} approval pending",running:"Running",progress:"{{done}} of {{total}} steps done ({{percent}} %)",needsApproval:"Approval needed",blockedReason:"Reason: {{reason}}"},conversionFunnel:"Conversion funnel",filterOnsite:"On-site events",filterWebinars:"Webinars",startLiveQuiz:"Live quiz",openBeamer:"Open projector view & QR code",postSeries:"Test series: 3 posts with images",postSeriesRunning:"Shifu is creating posts and images â¦",firstComment:"First comment",copyFirstComment:"Copy",firstCommentCopied:"First comment copied",firstCommentHint:"Post as the first comment right after publishing.",metricsTitle:"LinkedIn metrics",metricsHint:"Shifu uses these values to learn the best weekdays and times.",metric_impressions:"Impressions",metric_reactions:"Reactions",metric_comments:"Comments",metric_clicks:"Link clicks",commentClicks:{tab:"Intro call clicks",hint:"Clicks on the intro call link from first comments in the last 90 days.",total:"Clicks",unique:"Unique visitors",booked:"Booked intro calls",rate:"Booking rate",byVariant:"Clicks per variant",byPost:"Clicks per post",post:"Post",variant:"Variant",empty:"No clicks recorded yet.",last:"Last click"}},u={helpdesk:"Helpdesk",success:"Customer Success",agent:"Customer Agent",chatflows:"Chatflows",knowledgeBase:"Knowledge Base",feedback:"Feedback Surveys",analytics:"Service Analytics"},m={overview:{since:"ago",title:"Data hub",subtitle:"Status of agents, workflows and open data-quality issues.",actionRequired:"Action required",allGood:"All clear",failedRuns:"Failed runs (24 h)",openIssues:"Open data issues",agentsTitle:"Agent status",runsErrors:"{{runs}} runs · {{errors}} errors",noLogs:"No agent runs yet.",workflowsTitle:"Workflows",total:"Total",active:"Active",paused:"Paused"},reminderPerformance:{title:"Reminder Performance",subtitle:"Analytics for booking reminder emails sent by the cron job.",refresh:"Refresh",loading:"Loading data â¦",empty:"No data in the selected range.",range:{"24h":"24 hours","7d":"7 days","30d":"30 days"},filter:{channel:"Channel",status:"Status",all:"All"},status:{sent:"Sent",failed:"Failed"},channels:{reminder_24h:"24 h reminder",reminder_1h:"1 h reminder",reschedule:"Reschedule",cancellation:"Cancellation",graph:"Microsoft Graph"},stats:{total:"Total sent",successRate:"Success rate",failed:"Failures",topChannel:"Top channel"},charts:{byDay:"Sends per day",byChannel:"Distribution by channel"},table:{title:"Send log",timestamp:"Time",channel:"Channel",recipient:"Recipient",meeting:"Meeting",status:"Status",error:"Error",truncated:"Showing {{shown}} of {{total}} entries."}},agent:{headerTitle:"Data Agent",subtitle:"Ask a question in plain language â the agent builds the SQL and returns rows.",placeholder:'e.g. "Top 10 deals in the last 30 days"',result:"Result",rowsCount:"{{count}}
1 rows",moreRows:"+ {{count}} more rows",noResults:"No results."},integrations:{connectors:{googleAds:"Google Ads",gsc:"Google Search Console",firecrawl:"Firecrawl",outlook:"Outlook Calendar",stripe:"Stripe",metaAds:"Meta Ads",linkedinAds:"LinkedIn Ads"},title:"Integrations",subtitle:"Connected systems, webhooks and events.",tabConnectors:"Connectors",tabEvents:"Events",eventsTitle:"Recent events",eventActive:"Active",status:{connected:"Connected",planned:"Planned",error:"Error"}},tabs:{cleanupPanel:{title:"Data cleanup",subtitle:"Detects common quality issues. Suggested values can be applied directly.",normalizeAll:"Normalize all {{count}} phone numbers",noIssues:"No data quality issues found ð",colRecord:"Record",colCurrent:"Current",colSuggestion:"Suggestion",colAction:"Action",apply:"Apply",manual:"manual",more:"⦠+{{count}} more",entityContact:"Contact",entityCompany:"Company",types:{invalid_email:"Invalid email",unnormalized_phone:"Phone format",missing_email:"No email/phone",missing_phone:"No phone",missing_company:"No company",company_without_country:"No country"}},duplicatesPanel:{title:"Duplicate detection",subtitleContacts:"Match strategies: email, phone, name+company. Limit: 5,000 records.",subtitleCompanies:"Match strategies: domain, name+city. Limit: 5,000 records.",contacts:"Contacts",companies:"Companies",noDuplicates:"No duplicates found ð",summary:"<strong>{{groups}}</strong> groups · <strong>{{dupes}}</strong> potential duplicates",merge:"Merge",matches:{email:"Email",phone:"Phone",name:"Name",domain:"Domain"},createdAt:"created {{date}}",recordCount:"{{count}} potential duplicates",fields:{first_name:"First name",last_name:"Last name",email:"Email",mobile_phone:"Phone",whatsapp_phone:"WhatsApp number",position:"Position",salutation:"Salutation",preferred_language:"Language",notes:"Notes",name:"Company name",domain:"Website",city:"City",country:"Country",industry:"Industry",phone:"Phone",fallback:"Additional field",company_id:"Company",owner_id:"Owner"},mergeDialog:{title:"Merge records",description:"{{count}} record(s) will be merged into the primary record and then archived. Choose the value to keep for each field.",conflict:"Differing values",empty:"No value available",changes:"{{count}} field(s) will change on the primary record",confirm:"Merge"}},importPanel:{title:"CSV import",subtitle:"UTF-8, comma as separator. First row = column names. Maximum 10,000 rows recommended.",selectCsv:"Select CSV",rowsCount:"{{filename}} · {{count}} rows",allowedColumns:"Allowed columns:",ignored:"(ignored)",moreRows:"⦠+{{count}} more rows",importing:"Importingâ¦",importBtn:"Import {{count}} records",resultTitle:"Import result",resultSummary:"<strong>{{inserted}}</strong> inserted · <strong>{{skipped}}</strong> skipped",rowError:"Row {{row}}: {{reason}}",moreErrors:"⦠+{{count}} more",csvEmpty:"CSV is empty or invalid",fileError:"File could not be read",toastImported:"{{inserted}} imported · {{skipped}} skipped",contacts:"Contacts",companies:"Companies",template:"Download template"}},management:{title:"Data management",description:"Duplicates, import/export, trash and cleanup",tabDuplicates:"Duplicates",tabImport:"Import",tabExport:"Export",tabTrash:"Trash",tabCleanup:"Cleanup",trash:{title:"Trash",subtitle:"Soft-deleted records. Restorable or permanently deletable.",allTypes:"All types",contacts:"Contacts",companies:"Companies",deals:"Deals",empty:"Trash is empty",colType:"Type",colLabel:"Label",colDeletedAt:"Deleted on",colActions:"Actions",restore:"Restore",purge:"Delete",confirmPurge:'Permanently delete "{{label}}"? Cannot be undone.',entity:{crm_contacts:"Contact",crm_companies:"Company",crm_deals:"Deal"}},export:{title:"CSV export",subtitle:"Exports active (non-deleted) records as CSV. Limit: 10,000 rows.",contacts:"Contacts",companies:"Companies",deals:"Deals",exporting:"Exportingâ¦",download:"Download CSV",noRecords:"No records to export",exportedToast:"{{count}} records exported",errorFallback:"Export failed"}},workflows:{title:"Workflows",subtitle:"Automate recurring tasks with triggers, filters and actions.",newBtn:"New workflow",templatesTitle:"Templates",yourTitle:"Your workflows",activeTab:"Active",templatesTab:"Templates",cronsTab:"System crons",add:"Add",edit:"Edit",loading:"Loadingâ¦",empty:"No workflows yet.",runs:"{{runs}} runs · {{success}} successful",confirmDelete:'Really delete workflow "{{name}}"?',templates:{stale_deal_reminder:{name:"Stale deal reminder",description:"Reminds owners of deals with no activity for 14 days."},new_lead_welcome:{name:"New lead welcome email",description:"Automatically emails newly created contacts."},task_overdue_alert:{name:"Overdue task alert",description:"Notifies the assignee when tasks become overdue."}},dialog:{title:"Quick create (legacy)",name:"Name",namePh:"e.g. Lead follow-up",description:"Description",trigger:"Trigger",cancel:"Cancel",create:"Create",triggers:{cron:{schedule:"Schedule (cron)"},deal:{stage_changed:"Deal stage changed"},contact:{created:"Contact created"},task:{overdue:"Task overdue"}}},builder:{titleNew:"New workflow",titleEdit:"Edit workflow",tabBuild:"Build",tabHistory:"History",workflowName:"Name",workflowNamePh:"e.g. Won-deal notification",descriptionLabel:"Description",step1Title:"When (trigger)",step2Title:"Filter",step3Title:"Then (actions)",event:"Event",optional:"(optional)",addFilter:"Add filter",addAction:"Add action",noFilters:"No filters â trigger always fires.",noActions:"No actions yet. At least one required.",cronFrequency:"Frequency",cronTime:"Time (UTC)",daily:"Daily",weekly:"Weekly",availableTokens:"Available tokens:",save:"Save",test:"Run test",testDone:"Test complete ({{count}} actions would run).",errorNameRequired:"Please enter a name.",errorNoActions:"Please add at least one action.",errorSaveBeforeTest:"Please save before testing.",legacyTemplateNote:"This workflow uses a hardcoded template. You can edit it, but the trigger stays fixed.",noHistory:"No runs yet.",triggers:{deal_stage_changed:"Deal: stage changed",deal_created:"Deal: created",deal_value_changed:"Deal: value changed",contact_created:"Contact: created",task_overdue:"Task: overdue",cron_schedule:"Schedule (cron)",cs_score_drop:"Customer Success: health score dropped",cs_risk_level_trigger:"Customer Success: risk level reached",cs_renewal_window:"Customer Success: renew
1al window",cs_no_activity:"Customer Success: no activity",survey_response_created:"Survey: response received"},actions:{send_email:"Send email",create_task:"Create task",notify_user:"Notify user",update_field:"Update field",webhook:"Call webhook"},operators:{eq:"equals",ne:"not equals",gt:"greater than",gte:"â¥",lt:"less than",lte:"â¤",contains:"contains",is_empty:"is empty",is_filled:"is filled"},fields:{deal_stage:"Deal stage",deal_stage_new:"New stage",deal_stage_old:"Old stage",deal_value:"Deal value",deal_value_new:"New value",deal_value_old:"Old value",contact_email:"Email",survey_type:"Survey type",survey_score:"Score",survey_channel:"Channel",survey_language:"Language"},priorities:{low:"Low",medium:"Medium",high:"High"},fieldRecipient:"Recipient",fieldSubject:"Subject",fieldBody:"Body",fieldTaskTitle:"Task title",fieldDueInDays:"Due in (days)",fieldPriority:"Priority",fieldAssignee:"Assignee",fieldUser:"User ID / token",fieldMessage:"Message",fieldTable:"Table",fieldField:"Field",fieldValue:"Value"},crons:{title:"System cron jobs",subtitle:"Hardcoded Postgres cron jobs (read-only).",colName:"Name",colSchedule:"Schedule",colActive:"Active",colLastRun:"Last run",colStatus:"Status",empty:"No cron jobs visible (admin required)."}},care:{title:"Data care",subtitle:"Find duplicates, merge records and review enrichments.",tabDuplicates:"Duplicates",tabEnrichment:"Enrichment",scanTitle:"Scan records",scanContacts:"Scan contacts",scanCompanies:"Scan companies",entityContact:"Contact",entityCompany:"Company",merge:"Merge",mergeWith:'Merge with "{{name}}"',apply:"Apply",reject:"Reject",noDuplicates:"No duplicates found.",noEnrichment:"No pending enrichments."},automationCockpit:{title:"Automation cockpit",subtitle:"See how reliably the AI works today â and decide when it may run without a click.",range:{7:"7 days",30:"30 days",90:"90 days",365:"12 months"},tabs:{pending:"Today",reliability:"Retrospective",simulator:"What if?",audit:"Live audit",effectiveness:"Effectiveness",handover:"Handovers"}},fieldRules:{emailInvalid:"Email address is not valid",phoneInvalid:"{{label}} is not a valid number",contactNameRequired:"Please enter a last name or email address",placeholderName:"Please enter a real name",companyNameRequired:"Please enter a company name",domainInvalid:"Website address is not valid",zipInvalid:"Postal code is not valid",labelMobile:"Mobile number",labelWhatsapp:"WhatsApp number",labelPhone:"Phone number"}},g={dashboards:{title:"Dashboards",subtitle:"Create and save your own widget layouts.",new:"New dashboard",newName:"New dashboard",empty:"No dashboard yet. Create your first.",save:"Save",addWidgets:"Add widgets:",noWidgets:"No widgets. Add some from the list above.",specialReports:"Special reports in other hubs",opsTitle:"Operations reports",opsDesc:"Supplier Performance, QC rates, logistics KPIs.",salesTitle:"Sales forecast",salesDesc:"Pipeline forecast, win-rate trends, deal velocity.",goalsTitle:"Goals",goalsDesc:"Personal & team goals with target-vs-actual.",widget:{deals_kpi:"Pipeline value",revenue_month:"Revenue (month)",tasks_open:"Open tasks",tickets_open:"Open tickets",leads_new:"New leads (30d)",intent_hot:"Hot contacts"}},reports:"Reports",goals:{title:"Goals & forecast",subtitle:"Set personal goals and track the pipeline forecast.",new:"New goal",newSheetTitle:"New goal",period:"Period",metric:"Metric",target:"Target",targetPh:"e.g. 50000",notes:"Note (optional)",save:"Save goal",pipelineTotal:"Pipeline total",dealsCount:"{{count}} deals",forecastWeighted:"Forecast (weighted)",forecastDesc:"Value à probability",alreadyWon:"Already won",myGoals:"My goals",empty:"No goals yet. Create your first.",start:"Start: {{date}}",progress:"{{actual}} / {{target}}",metricLabels:{revenue:"Revenue (â¬)",deals_won:"Deals won",new_leads:"New leads",meetings:"Meetings"},periodLabels:{monthly:"Monthly",quarterly:"Quarterly",yearly:"Yearly"}},nav:{dashboards:"Dashboards",forecast:"Pipeline reporting",goals:"Goals & forecast",velocity:"Pipeline velocity"},common:{kicker:"Reports",loading:"Loadingâ¦",noData:"No data to export",open:"Open"}
1,forecast:{title:"Pipeline reporting",subtitle:"Funnel, cycle time and win rate across all open + closed deals.",all:"All",allPipelines:"All pipelines",csv:"CSV",pdf:"PDF",kpiPipelineOpen:"Pipeline value (open)",kpiWeighted:"Weighted",kpiWinRate:"Win rate",kpiWonValue:"Won volume",wonLost:"{{won}} W / {{lost}} L",funnelTitle:"Funnel â deals per stage",cycleTitle:"Cycle time â avg. days per stage",cycleEmpty:"No measurable stage transitions yet.",cycleSamples:"{{count}} samples",cycleDays:"{{days}} d",lostTitle:"Lost analysis",lostNone:"No lost deals â well done.",lostSome:"{{count}} lost deals. Detailed lost-reason analysis will follow once reasons are captured structurally.",dealsCount:"{{count}} deals · {{value}}",csvHeader:"Pipeline reporting",csvDate:"Date",csvPipeline:"Pipeline",csvKpi:"KPI;Value",csvFunnel:"Funnel",csvCycle:"Cycle time",pdfFilter:"Filter: {{filter}} · Pipeline: {{pipeline}} · Date: {{date}}",pdfFunnelTitle:"Funnel per stage",pdfCycleTitle:"Cycle time per stage",csvExported:"CSV exported",pdfExported:"PDF exp
1orted"},velocity:{title:"Pipeline velocity",aiBadge:"AI-powered forecast",subtitle:"How long do deals take from creation to close? Are we getting faster or slower? Compared against the baseline from Q4/2025âQ1/2026 ({{days}} days avg).",kpiCurrent:"Current month",kpiCurrentDesc:"Avg. deal duration",kpiVsPrev:"vs. previous month",kpiVs6m:"vs. 6-month avg.",kpiAccuracy:"Forecast accuracy",kpiAccuracyDesc:"Avg. AI â reality deviation",stable:"stable",faster:"{{days}} d faster",slower:"{{days}} d slower",days:"{{days}} d",accuracyValue:"± {{days}} d",chartTitle:"Closing duration over time",noClosed:"No closures recorded yet.",reliabilityTitle:"How reliable is the AI forecast?",reliabilityP1:"<bold>Forecast accuracy</bold> shows the average deviation in days between the latest AI estimate and the actual closing date. The smaller, the better calibrated the agent is.",reliabilityP2:"The agent <bold>learns automatically</bold> from every new closure. Initially it uses the baseline (48 deals, avg {{days}} days); from â¥10 own closures per pipeline the live data takes over.",refreshBadge:"Refresh: on stage change · weekly Mon 06:00 · on demand"},builder:{title:"Report builder",subtitle:"Create, save and share your own analyses without a developer.",new:"New report",newName:"New report",save:"Save",export:"Export as spreadsheet",saved:"Saved reports",noSaved:"No reports saved yet.",sharedBadge:"Shared",templatesTitle:"Templates",configTitle:"Settings",resultTitle:"Result: {{entity}}",entities:{deals:"Deals",contacts:"Contacts",companies:"Companies",tasks:"Tasks"},fields:{stage:"Stage",dealType:"Deal type",priority:"Priority",currency:"Currency",source:"Source",createdAt:"Created on",expectedClose:"Expected close",value:"Deal value",probability:"Probability",type:"Type",lifecycle:"Lifecycle stage",language:"Language",leadScore:"Lead score",industry:"Industry",country:"Country",city:"City",taskType:"Task type",dueDate:"Due on",status:"Status"},aggregates:{count:"Count",sum:"Sum",avg:"Average"},charts:{bar:"Bar",line:"Line",pie:"Pie",table:"Table"},ops:{eq:"equals",neq:"does not equal",gte:"at least",lte:"at most"},form:{name:"Name",entity:"Data area",groupBy:"Group by",noGrouping:"No grouping",aggregate:"Calculation",metric:"Measure",chart:"Display",filters:"Filters",addFilter:"Add filter",noFilters:"No filters set.",valuePlaceholder:"Value",shared:"Share with the team"},result:{group:"Group",value:"Value",empty:"No data for these settings."},templates:{pipelineByStage:"Deal value by stage",dealsByStage:"Deal count by stage",avgDealValue:"Average deal value",contactsBySource:"Contacts by source",companiesByCountry:"Companies by country",tasksByStatus:"Tasks by status"},toast:{saved:"Report saved",deleted:"Report deleted"}}},h={firstName:"First name",lastName:"Last name",search:"Search",create:"Create",edit:"Edit",delete:"Delete",save:"Save",cancel:"Cancel",clickToEdit:"Click to edit",openDetail:"Open detail page",loading:"Loadingâ¦",noData:"No data available",actions:"Actions",back:"Back",language:"Language",german:"German",english:"English",chinese:"Chinese",all:"All",none:"None",yes:"Yes",no:"No",description:"Description",title:"Title",status:"Status",type:"Type",resetFilters:"Reset filters",noResults:"No results found",confirmDelete:"Really delete?",saved:"Saved successfully",error:"Error",errorSaving:"Error while saving",errorDeleting:"Error while deleting",updated:"Updated",created:"Created",deleted:"Deleted",errorTitle:"Something went wrong",retry:"Retry",add:"Add",duplicate:"Duplicate",export:"Export",import:"Import",filter:"Filter",confirm:"Confirm",close:"Close",next:"Next",open:"Open",refresh:"Refresh",reset:"Reset",copy:"Copy",download:"Download",upload:"Upload",send:"Send",submit:"Submit",apply:"Apply",more:"More",showMore:"Show more",showLess:"Show less",selectAll:"Select all",clear:"Clear",active:"Active",inactive:"Inactive",pending:"Pending",completed:"Completed",cancelled:"Cancelled",failed:"Failed",inProgress:"In Progress",draft:"Draft",archived:"Archived",paused:"Paused",noEntries:"No entries yet",errorLoading:"Error while loading",deletedToast:"Entry deleted",duplicatedToast:"Entry duplicated",copiedToast:"Copied to clipboard",required:"Required",invali
1dEmail:"Invalid email address",invalidPhone:"Invalid phone number",invalidUrl:"Invalid URL",tooShort:"Too short",tooLong:"Too long",optional:"Optional",details:"Details",notes:"Notes",name:"Name",email:"Email",phone:"Phone",date:"Date",createdAt:"Created at",updatedAt:"Updated at",owner:"Owner",total:"Total",englishLang:"English",example:"e.g.",mustBeNumber:"Value is not a valid number",adminOnlyBulkDelete:"Only administrators can delete multiple entries at once.",titleEmpty:"Title cannot be empty",invalidAmount:"Invalid amount",clickToEditLong:"Click to edit",pickDate:"Pick date",clearDate:"Clear date",addNotes:"Add notesâ¦",newEstimate:"Re-estimate",pleaseEnterMessage:"Please enter a message.",noMatch:"No match",markAllRead:"Mark all read",removeAll:"Remove all",searchOrType:"Search existingâ¦",searchExisting:"Search existingâ¦",noLinks:"No relationships yet.",noMeetings:"No meetings yet",nextStep:"Next step:",notConnected:"Not connected",linkCopyFailed:"Could not copy link",openMenu:"Open menu",searchOrCommand:"Search or run command (âK)",later:"Later",noBackend:"No permission for this AI action",tooManyAiRequests:"Too many AI requests in a short time. Please wait 30 seconds and try again.",aiInsightsUnavailable:"AI insights unavailable",newLeads7d:"New leads (7d)",performanceOverview:"Performance Overview",allChannels:"All channels",deleteAreAbout:"You are about to",deleteSuffix:"delete.",deleteTrashHint:"The entry will be moved to trash and can be restored from there.",deleteCancelStrong:"No, cancel",deleteConfirmStrong:"Yes, delete",deleting:"Deletingâ¦",primaryRecord:"Primary record:",openPrimary:"Open primary",noMeetingsHelp:"Keep meetings and conversation outcomes attached to the record.",noAiInsights:"No AI insights available.",duplicateDetected:"Possible duplicate record detected",requiredFieldMissing:"Required field missing",pleaseCheck:"Please check",done:"Done",ignore:"Ignore",addName:"Add name",selectedCompanies:"{{count}} companies selected",adminOnlyBulkDeleteCompanies:"Only administrators may delete multiple companies at once.",editAccount:"Edit account",connectAccount:"Connect account",platform:"Platform",accountName:"Account name",accountId:"Account ID",reply:"Reply",filterPlaceholder:"Filter...",noValues:"No values",unauthorizedAi:"Not authorized for this AI action",missingVariable:"Variable not set",copied:"Copied",errorDownloading:"Download failed",markDone:"Mark as done",openAll:"Open all",unnamed:"Unnamed",clearSelection:"Clear selection",localeBcp47:"en-US",remove:"Remove",clearAll:"Clear all",unknownUser:"Unknown user",empty:"â empty â",published:"Published",preview:"Preview",deal:"Deal",meeting:"Meeting",contact:"Contact",account:"Account",deleteConfirm:"Really delete?",city:"City",confirmDeleteGeneric:"The entry will be permanently deleted. This action cannot be undone.",confirmDeleteNamed:"Really delete â{{name}}â? This action cannot be undone.",days:"Days",discard:"Discard",errorOccurred:"An error occurred.",saving:"Saving...",qualityTitle:"Data quality",qualityScore:"Quality score {{score}} of 100",qualityMissing:"Missing:"},y={comingSoon:"In development",description:"This module is being rolled out in the next phases â we ship step by step.",eta:"Planned",tryInstead:"Useful in the meantime:"},v={title:"Keyboard shortcuts",help:"Open this help",search:"Focus global search",gotoDashboard:"Go to dashboard",gotoContacts:"Go to contacts",gotoCompanies:"Go to companies",gotoDeals:"Go to deals",gotoTasks:"Go to tasks",newContact:"New contact",close:"Close dialog/sheet",newOnPage:"Create new entry (contact/company)"},f={label:"Browser notifications",enable:"Enable notifications",disable:"Pause notifications",enabled:"Push notifications enabled",deniedHint:"Blocked in your browser. Please allow in browser settings."},b={hot:"Hot Leads",stale:"Waiting >24h",today:"Due Today",mine:"Mine"},k={contactsTitle:"No contacts yet",contactsDesc:"Add your first contact to start a relationship â every contact is a potential deal.",dealsTitle:"No deals in this pipeline yet",dealsDesc:"Create your first deal and track it from inquiry to close.",tasksTitle:"No open tasks",tasksDesc:"All done â or add the next task now to keep momentum."},w={title:"Dashboard",welcome:"Welcome back",openDeals:"Open Deals",dueTasks:"Due Tasks",upcomingMeetings:"Upcoming Meetings",recentActivity:"Recent Activity",activeDeals:"Active Deals",pipelineValue:"Pipeline Value",conversionRate:"Conversion Rate",contacts:"Contacts",pipelineTrend:"Pipeline Trend",deal
1sPerStage:"Deals per Stage",topContacts:"Top Contacts by Score",weighted:"Weighted",ofTotal:"of {{count}} total",won:"won",closed:"closed",topByLeadScore:"Top by Lead Score",noScoresYet:"No scores assigned yet",scoring:{salesTitle:"Hottest sales opportunities",salesEmpty:"Active leads will rank here once they engage.",customerTitle:"Most important customers",customerEmpty:"Once existing customers place orders, their health appears here.",salesFormulaTitle:"Sales-opportunity score (0â100)",salesFormulaBody:`⢠Sales stage: 5â85 points 2⢠Email clicks: 3 points each, max. 20 3⢠Last activity: <7 days +15, <30 days +8, <90 days +3 4Existing customers and evangelists are not ranked here â see the section below.`,customerFormulaTitle:"Customer health (0â100)",customerFormulaBody:`⢠Last order: <30 d = 40, <90 = 25, <180 = 15, <365 = 5 5⢠Order frequency (log-scaled): up to 25 6⢠Open tickets: â5 each 7⢠Evangelist bonus: +15 8Refreshed nightly at 04:00.`},timeFilters:{"7days":"7 Days","30days":"30 Days","90days":"90 Days",total:"All Time"},ttsUnavailable:"Read-aloud temporarily unavailable",audioPlaybackFailed:"Audio could not be played."},C={title:"Contacts",newContact:"New Contact",createInline:'+ Create contact "{{name}}"',firstName:"First Name",lastName:"Last Name",email:"Email",phone:"Phone",position:"Position",company:"Company",contactUpdated:"Contact updated",contactCreated:"Contact created",contactDeleted:"Contact deleted",whatsappPhone:"WhatsApp Number",wechatId:"WeChat ID",autoFromMobile:"Auto-filled from mobile â click to override.",wechatIdPlaceholder:"e.g. wx_zhang123",englishName:"English Name",englishNamePlaceholder:"e.g. Kate, Tom",mobilePhone:"Mobile Phone",leadScore:"Lead Score",lifecycleStage:"Lifecycle Stage",trafficSource:"Traffic Source",notes:"Notes",crmMarketing:"CRM & Marketing",editContact:"Edit Contact",deleteConfirm:'"{{name}}" will be permanently deleted.',lifecycleStages:{subscriber:"Subscriber",lead:"Lead",marketing_qualified:"Marketing Qualified Lead",sales_qualified:"Sales Qualified Lead",opportunity:"Opportunity",customer:"Customer",evangelist:"Evangelist",other:"Other"},mobile:"Mobile",whatsapp:"WhatsApp",preferredLanguage:"Preferred language",notesPlaceholder:"Short note, e.g. factory contact for packaging",supplierContactToggle:"Manufacturer contact (China)",supplierContactHint:"WeChat instead of WhatsApp, language Chinese",supplierBadge:"Manufacturer",changeLifecycle:"Change lifecycle stage",invalidEmail:"Invalid email",ownerFilter:{triggerLabel:"Owner",searchPlaceholder:"Search employeesâ¦",myContacts:"My contacts",unassigned:"Unassigned",selectedCount:"{{count}} selected",reset:"Reset",noEmployees:"No employees found"},owner:"Owner",scoreShort:"Score",contactType:"Type",dedup:{existsEmail:"A contact with this email already exists: {{label}}",existsPhone:"A contact with this phone number already exists: {{label}}",useExisting:"Use existing contact",linked:"Existing contact linked",submitBlocked:"Creation blocked â contact already exists",useExistingShort:"Use as is",mergeAndUse:"Use and fill blanks",mergePreviewTitle:"These fields will be added to the existing contact:",mergeNothingToFill:"No additional fields to fill.",mergeSuccess:"Existing contact linked and {{count}} field(s) filled",createAnyway:"Create as new contact anyway"},kindLabel:"Contact type",kind:{kunde:"Customer",lieferant:"Supplier",partner:"Partner",intern:"Internal",sonstiges:"Other"}},S={title:"Companies",newCompany:"New Company",createInline:'+ Create company "{{name}}"',name:"Name",domain:"Domain",industry:"Industry",city:"City",country:"Country",province:"Province",openDetail:"Open detail page",companyUpdated:"Company updated",companyCreated:"Company created",companyDeleted:"Company deleted",street:"Street",zip:"Zip Code",phone:"Phone",notes:"Notes",type:"Type",deleteConfirm:'"{{name}}" will be permanently deleted.',zipAutoFilled:"Zip code {{zip}} auto-filled",zipNotFound:"Could not determine zip code",zipLookupError:"Zip code lookup failed",zipLookupAi:"Lookup zip via AI",enrich:{loading:"Loading data from website â¦",success:"Fields prefilled from website â please review.",successCount:"{{count}} fields prefilled from website",empty:"No additional data found.",error:"Enrichment failed.",refresh:"Reload data",byNameLoading:"Searching data via AI â¦",byNameSuccess:"{{count}} fields filled via AI",byNameEmpty:"No data found for this name.",invalidDomain:"Invalid domain"},dedup:{existsDomain:"A company with this domain already exists: {{label}}",existsPhone:"A company with this phone number already exists: {{label}}",useExisting:"Use existing company",linked:"Existing company linked",submitBlocked:"Creation blocked â company already exists",useExistingShort:"Use as is",mergeAndUse:"Use and fill blanks",mergePreviewTitle:"These fields will be added to the existing company:",mergeNothingToFill:"No additional fields to fill.",mergeSuccess:"Existing company linked and {{count}} field(s) filled"},errors:{duplicate:"This company already exists."}
8,types:{kunde:"Customer",potenzieller_kunde:"Potential Customer",lieferant:"Supplier",logistiker:"Logistics provider",partner:"Partner",sonstige:"Other",sonstiges:"Other"},exampleDomain:"e.g. acme.com",selectedCount:"{{count}} companies selected",bulkDeleteAdminOnly:"Only administrators may delete multiple companies at once.",industryPlaceholder:"Select industry",countryPlaceholder:"Select country",supplier:{nameInvalid:"Supplier name incomplete â please enter the full Chinese company name including legal form (e.g. 宿³¢å¸ç¾é·çµå¨å·¥å
·æéå
¬å¸).",suffixHint:"Required: Chinese company name ending in æéå
¬å¸, è¡ä»½æéå
¬å¸, é墿éå
¬å¸ or similar.",blockedToast:"Save blocked: supplier name does not meet requirements.",legacyBadge:"Name incomplete",cityUnknown:"City not in directory â saved as free text.",industryOverridden:"Industry overridden manually â AI suggestion discarded.",primaryContactMissing:"No primary contact set.",invalid:{tooShort:"Name too short (minimum 6 characters).",missingSuffix:"Name must end with a valid legal form (e.g. æéå
¬å¸).",notChinese:"Name must consist mostly of Chinese characters."}},primaryContact:"Primary Contact",cityPlaceholder:"Search or enter city â¦",cityNoMatch:"No catalogue city found.",cityUseFreeText:"Use free text: â{{value}}â",provincePlaceholder:"Select province",contactsEditHint:"Contacts are managed on the detail page.",tabs:{address:"Address",relations:"Related Parties & Deals"}},A={title:"Deals",newDeal:"New Deal",additionalContacts:"Additional contacts",contactsAutoLoaded:"{{n}} contacts from {{company}} added automatically â remove if not needed.",daysInStage:"Days in Stage",amount:"Amount",stage:"Stage",pipeline:"Pipeline",closeDate:"Close Date",dealUpdated:"Deal updated",dealCreated:"Deal created",dealDeleted:"Deal deleted",dealCreatedNote:"Deal created",stageChangeError:"Could not change stage",value:"Value",probability:"Probability",currency:"Currency",expectedCloseDate:"Expected Close Date",contact:"Contact",company:"Company",owner:"Owner",notes:"Notes",weightedAmount:"Weighted Amount",tableView:"Table View",boardView:"Board View",editDeal:"Edit Deal",deleteConfirm:'"{{title}}" will be permanently deleted.',stageChanged:"Stage updated: {{stage}}",quickFollowupAdd:"+ Follow-up",followupCreated:"Follow-up created",followupUpdated:"Follow-up updated",stages:{request_received:"Request Received",requirements_clarified:"Requirements Clarified",supplier_found:"Supplier Found",eu_standards_met:"EU Standards Met",offer_sent:"Offer Sent",sample_payment_received:"Sample Payment Received",sample_on_way:"Sample in Transit / Under Clarification",offer_accepted:"Offer Accepted",deposit_received:"Deposit Received",production_underway:"Production Underway",quality_control:"Quality Control",final_payment_received:"Final Payment Received",logistics_running:"Logistics Running",delivery_completed:"Delivery Completed",completed_won:"Completed â Won",completed_lost:"Completed â Lost",needs_analysis:"Needs Analysis",discovery_call_scheduled:"Discovery Call Scheduled",package_sold_starter:"Starter Package Sold",package_sold_professional:"Professional Package Sold",package_sold_enterprise:"Enterprise Package Sold",contract_sent:"Contract & Invoice Sent"},unassigned:"Unassigned",assignedTo:"Owner:",addContactPlaceholder:"Write reply⦠@ for mentions",addCommentPlaceholder:"Add comment⦠type @ for mentions",filters:{allStaff:"All staff",unassigned:"Unassigned",allStages:"All stages",allStatus:"All statuses",statusLabels:{open:"Open",won:"Won",lost:"Lost"},allValues:"All values",valueLabels:{lt10:"< â¬10k","10to50":"â¬10â50k","50to100":"â¬50â100k",gt100:"> â¬100k"},allCloses:"All close dates",closeLabels:{week:"This week",month:"This month",overdue:"Overdue",none:"No date"},allActivities:"All activity",activityLabels:{active:"Active (⤠7 d)",stalling:"Stalling (8â20 d)",stuck:"Stuck (⥠21 d)"},chipPhase:"Stage"},noTasksTitle:"No tasks for this deal yet",noTasksDescription:"Create a task to track follow-ups, calls or to-dos for this deal.",kpi:{allStages:"All stages",allOwners:"All owners",noOwner:"No owner",openDeal:"Open deal",empty:"No deals match the current filters."},packageHandover:{sourcingProjectFailed:"Sourcing project could not be created:",sourcingProjectCreatedWithErrors:"Sourcing project created â {{count}} attachment(s) could not be copied",responsible:"Responsible",chooseStaff:"Choose staff member",title:"Create sourcing project",intro:'The package "{{deal}}" has been sold. Set up the sourcing project with all the relevant information for the operator now. All fields are editable.',projectName:"Project name",projectNamePh:"Company â Product",valueEur:"Value (EUR)",expectedClose:"Expected close date",briefing:"Briefing / project goal",attachmentsTake:"Carry over attachments ({{selected}}/{{total}})",submitting:"Creatingâ¦",sourcingProjectCreated:"Sourcing project created",unexpectedError:"Unexpected error: {{msg}}",briefingAiLoading:"AI is drafting a briefing from the package dealâ¦",briefingAiError:"AI suggestion failed â please write the briefing manually."},packageHandoverQuestions:{title:"Handover to sourcing â open questions",intro:'Before the sourcing project from "{{deal}}" is created: please answer the key points so the operator can start without follow-up questions.',products:"Which products or categories?",productsPh:"e.g. stainless-steel water bottles 750 ml, multiple colors",volume:"Target volume and ordering cadence",volumePh:"e.g. 5,000 units, one-
8off",quality:"Quality requirements / certifications",qualityPh:"e.g. food-grade, BPA-free, CE, REACH",targetPrice:"Target unit price (EUR)",targetPricePh:"e.g. EUR 2.40 FOB",desiredDelivery:"Desired first delivery date",customerContact:"Main customer contact",risks:"Known risks or special requests",risksPh:"e.g. custom logo, bespoke packaging, tight deadline",note:"Your answers are saved on the package deal and automatically copied into the new sourcing project's briefing.",cta:"Save answers and continue",submitting:"Savingâ¦",saveFailed:"Answers could not be saved:",briefingHeading:"Handover briefing from sales"},tasksForDeal:"Tasks for this deal",newTask:"New task",hideCompletedTasks:"Hide completed",showCompletedTasks:"Show completed ({{count}})",taskAutoLinked:"This task will be automatically linked to the current deal.",taskAttachmentsAfterSaveHint:"Attachments will be uploaded after saving.",taskAttachmentsUploadFailed:"Task saved, but some attachments failed to upload.",savedAsNote:"Saved as a note on the new sourcing project.",noPackageAttachments:"No attachments on the package deal.",noDealsMatch:"No deals match the current filters.",responsibleColon:"Responsible:",estimatedCloseHint:"ð
Estimated close date is set automatically by the AI agent â no manual entry needed.",closeAutoHint:"Managed automatically by the AI agent â no manual editing.",ownerLabel:"Responsible employee",expectedCloseAiHint:"ð
Expected close date is estimated automatically by the AI agent â no manual entry needed.",kpis:{pipelineOpen:"Pipeline open",weighted:"Weighted",weightedPipeline:"Weighted pipeline",weightedDescription:"Open deals à stage probability.",stuck:"Stuck",stuckTitle:"Stuck deals (> 21 days)",inactiveTooltip:"Open deals with no activity in the past 21 days.",over21Days:"> 21 days",won:"Won",lost:"Lost",wonDeals:"Won deals",lostDeals:"Lost deals",discoveryReached:"Discovery reached",discoveryReachedDescription:"Deals that reached at least the discovery stage (or were won).",discoveryConv:"Discovery conv.",discoverySub:"Lead â discovery call",closedTitle:"Closed deals",closedDescription:"Won + lost",winRate:"Win rate",winRateSub:"{{won}}/{{closed}} closed",packagesThisWeek:"Packages this week",packagesLast30:"Packages last 30 days",dealsCount:"{{count}} deals",activeLeads:"{{count}} active leads",probability:"Probability"},closeDateSource:{heuristic:"Heuristic",seed:"Seed",ai:"AI"},stageActions:{title:"Stage actions",description:"Auto-generated follow-up actions from pipeline stage recipes. Approve, execute or discard.",empty:"No stage actions for this deal.",sections:{open:"Open",openEmpty:"Nothing open.",done:"Completed"},status:{pending:"Open",approved:"Approved",executed:"Done",rejected:"Discarded",failed:"Failed",blocked:"Blocked"},kind:{create_task:"Create task",create_reminder:"Reminder",notify_owner:"Notify owner",notify_manager:"Notify manager",send_email:"Send email"},badges:{overdue:"Overdue"},meta:{due:"Due",created:"Created",reason:"Reason",error:"Error"},actions:{unblock:"Unblock",approve:"Approve",execute:"Execute",reject:"Discard"},toasts:{approved:"Approved",rejected:"Discarded",executed:"Executed",unblocked:"Unblocked",executeError:"Execution error"}},clone:{action:"Duplicate",toReorder:"Create as reorder",success:"Clone created: {{title}}",alreadyExists:"A reorder already exists for this deal â switching to it.",error:"Cloning failed",dialogTitle:"Clone deal",dialogHint:"The clone is created in the selected pipeline and stage.",pipelineLabel:"Target pipeline",stageLabel:"Target stage",confirm:"Clone"},searchPlaceholder:"Search deal, contact or companyâ¦",draftHint:"This deal is a draft and only visible to you.",titlePlaceholder:"e.g. First Order Q3",untitled:"Untitled",startDate:"Start date",endDate:"End date",cycleDuration:"Duration",cycleDays:"{{count}} days"},T={noteSaved:"Note saved",editNote:"Edit note",addNote:"Add note",commentAdded:"Comment added",commentPlaceholder:"Add a comment⦠Type @ to mention",notLoggedIn:"Not logged in",uploadError:"Upload error",downloadError:"Download error",documentDeleted:"Document deleted",deleteError:"Error deleting",previewError:"Error opening preview",dropFiles:"Drop files here",clickOrDrop:"Click or drag here",buyerGoals:"Buyer Goals",nextSteps:"Next Steps",detailsAbout:"Details about: {{title}}",amount:"Amount",probability:"Probability",weightedAmount:"Weighted Amount",closeDate:"Close Date",currency:"Currency",timestamps:"Timestamps",created:"Created",updated:"Updated",notes:"Notes",catchup:"Catch-up",overview:"Overview",activities:"Activities",noAiInsights:"No AI insights available.",noAiInsightsCreditsExhausted:"No AI insights available â AI credits exhausted.",noAiInsightsRateLimited:"No AI insights available â rate limit reached. Please try again later.",weighted:"Weighted",stageHistory:"Stage History",noStageChanges:"No stage changes yet",noActivities:"No activities",dealCreated:"Deal created",comment:"Comment",contactLabel:"Contact",companyLabel:"Company",noContact:"No contact linked",noCompany:"No company",companyCustomer:"Company (customer)",companySupplier:"Company (supplier)",noSupplierLinked:"No supplier linked",partyCustomer:"Customer",partySupplier:"Supplier",partyAddCustomerCompany:"Add customer company",partyAddCustomerContact:"Add customer contact",partyAddSupplierCompany:"Add supplier company",partyAddSupplierContact:"Add supplier contact",partyNoCompanyYet:"No company linked yet",partyNoContactYet:"No contact linked yet",sectionContact:"Contact",sectionCompany:"Company",slotCreateNew:"Create new",slotLinkExisting:"Link existing",contactChannelWhatsapp:"WhatsApp",contactChannelWechat:"WeChat",contactWechatIdMissing:"Add WeChat ID",pickCustomerCompanyPlaceholder:"Search customer company â¦",pickSupplierCompanyPlaceholder:"Search supplier â¦",pickContactPlaceholder:"Search contact â¦",makePrimary:"Set as primary contact",primaryContact:"Primary contact",companyWithoutContactWarning:"This company has no contact linked to the deal yet.",addContactToCompany:"Add contact",at:"at",attachments:"Attachments",upload:"Upload",documentsUploaded:"{{count}} document(s) uploaded",preview:"Preview",download:"Download",dates:"Dates",close:"Close",send:"Send",save:"Save",cancel:"Cancel",edit:"Edit",delete:"Delete",email:"Email",mentionedInDeal:'You were mentioned in deal "{{title}}"',zoomIn:"Zoom in",zoomOut:"Zoom out",resetZoom:"Reset",fullscreen:"Fullscreen",exitFullscreen:"Exit fullscreen",pdfPreview:"PDF Preview",dropHere:"Drop files here"},P={title:"Tickets",newTicket:"New Ticket",subject:"Subject",status:"Status",priority:"Priority",assignedTo:"Assigned to",quickCreate:{title:"New ticket",subject:"Subject",subjectPlaceholder:"Short summary",description:"Description",priority:"Priority",status:"Status",category:"Category",categoryPlaceholder:"e.g. Complaint",dueDate:"Due date",cancel:"Cancel",create:"Create",createdToast:"Ticket created",priorities:{low:"Low",medium:"Medium",high:"High",urgent:"Urgent"},statuses:{open:"Open",in_progress:"In progress",waiting:"Waiting",resolved:"Resolved"}},statuses:{open:"Open",inProgress:"In Progress",waiting:"Waiting",resolved:"Resolved",offen:"Open",in_bearbeitung:"In progress",warten_auf_kunde:"Waiting on customer",geloest:"Resolved",geschlossen:"Closed"},priorities:{low:"Low",medium:"Medium",high:"High",urgent:"Urgent",niedrig:"Low",normal:"Normal",hoch:"High",dringend:"Urgent"},subtitle:"Support requests, complaints and QC issues in one place.",kpiTotal:"Total",kpiOpen:"Open",kpiInProgress:"In progress",kpiResolved:"Resolved",searchPlaceholder:"Searchâ¦",allStatus:"All statuses",colSubject:"Subject",colStatus:"Status",colPriority:"Priority",colCategory:"Category",colCompany:"Company",colContact:"Contact",colCreated:"Created",colActions:"Actions",emptyTitle:"No tickets",emptyDescription:"Create your first ticket to capture complaints or QC issues.",edit:"Edit",delete:"Delete",editTitle:"Edit ticket",dialogDescription:"Link the ticket to a contact, company or deal.",subjectRequired:"Subject *",
8subjectPlaceholder:"Short description of the problem",description:"Description",descriptionPlaceholder:"Details, steps to reproduce, expectationâ¦",category:"Category",company:"Company",contact:"Contact",deal:"Deal",none:"â",noneCompany:"â None â",noneContact:"â None â",cancel:"Cancel",save:"Save",create:"Create",deleteTitle:"Delete ticket?",deleteConfirm:'"{{subject}}" will be permanently removed.',categories:{qc_issue:"QC issue",reklamation:"Complaint",logistik:"Logistics",abrechnung:"Billing",anfrage:"General inquiry",sonstiges:"Other"}},D={title:"Meetings",newMeeting:"New Meeting",newAppointment:"New meeting",today:"Today",views:{month:"Month",week:"Week"},calendar:{header:"Calendar",createAria:"Create meeting",moreCount:"+{{count}} more",busy:"busy",conflictTooltip:"â Conflicts with one of your meetings",weekdaysShort:{mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat",sun:"Sun"}},dayOverview:{empty:"No appointments on this day.",newAppointment:"New appointment",allDay:"All day"},aiPrep:{tab:"AI Prep",generate:"Create briefing",generating:"Generatingâ¦",regenerate:"Regenerate",regenerating:"Regeneratingâ¦",generated:"AI briefing created",loadedExisting:"Loaded existing briefing",failed:"Briefing failed",copied:"Copied to clipboard",generatedAt:"Generated at",background:"Backgroun
8d",goals:"Goals",agenda:"Agenda",keyQuestions:"Key questions",hotTopics:"Hot topics",risks:"Risks",nextSteps:"Recommended next steps",empty:{title:"Create AI prep briefing",description:"Let the AI generate a complete briefing in seconds from contact, company, and deal data â including agenda, key questions, and risks."}},date:"Date",time:"Time",location:"Location",attendees:"Attendees",edit:"Edit",cancel:"Cancel",cancelConfirmGraph:"Cancel meeting? All participants will receive an Outlook cancellation.",cancelConfirm:"Cancel meeting?",overview:"Overview",participantsTab:"Participants ({{count}})",notesTab:"Notes ({{count}})",transcript:"Transcript",aiSummary:"AI summary",openConference:"Open conference",invitations:"Invitations",onCalendar:"Created in Outlook calendar",icsReady:"Ready for .ics send (no Outlook connected)",notOnCalendar:"Not yet on calendar",teamsLinkActive:"Teams link active",sending:"Sendingâ¦",inviteAgain:"Invite again",sendMeeting:"Send meeting",addEmailHint:'Add at least one email in the "Participants" tab to send invitations.',openTeams:"Open Teams meeting",send:{history:"Send history",summary:"{{sent}} sent · {{failed}} failed{{cancel}}",channel:{graph:"Outlook",ics:"Email (.ics)",cancel:"Cancellation"}},namePlaceholder:"Name (optional)",emailPlaceholder:"Email",add:"Add",nameOrEmailRequired:"Please provide a name or email",noParticipants:"No participants yet",noNotes:"No notes yet",noTranscript:"No transcript yet",noTranscriptHint:"In phase 4, the meeting taker will record or process audio here.",noSummary:"No AI summary yet",noSummaryHint:"Once a transcript exists, AI can extract decisions, tasks and risks.",actionItems:"Action items",noteAddPlaceholder:"Add a noteâ¦",save:"Save",remove:"Remove",unknown:"Unknown",response:{accepted:"Accepted",declined:"Declined",tentative:"Tentative",pending:"Pending"},locationPlaceholder:"Address or room",noContact:"â No contact â",noCompany:"â No company â",noDeal:"â No deal â",descriptionPlaceholder:"What should be discussed?",filters:{searchPlaceholder:"Title, location, company, deal or colleagueâ¦",allPeople:"All people",onlyMine:"Only my meetings",inactiveSuffix:"(inactive)"},taker:{consentRequired:"Please confirm participantsâ consent first.",consentRequiredShort:"Please confirm consent first.",title:"Meeting recording",sentiment:"Sentiment: {{value}}",consentText:"All participants have been informed about the recording and AI processing and have consented (GDPR Art. 6(1)(a)).",sourceMic:"Microphone only",sourceMicSystem:"Microphone and audio of the shared window",start:"Start recording",stop:"Stop recording",pause:"Pause",resume:"Resume",upload:"Upload audio",pausedHint:"Paused",processingSegments:"Segments being transcribed: {{count}}",segmentFailed:"A segment could not be transcribed: {{msg}}",captureEnded:"The capture source has ended.",noSystemAudio:"No audio was shared. Please enable audio sharing when selecting the window.",longRecordingWarning:"The recording has been running for 90 minutes. Please check whether it is still needed.",speakerHint:"Browser recording does not separate speakers. Use the conference assistant for speaker mapping.",lastTranscript:"Latest transcript: {{chars}} characters · {{date}}",summarize:"Summarize",suggestedTasks:"Suggested tasks",dueHint:"Due: {{value}}"}
8,noMeetings:"No meetings yet",noMeetingsHelp:"Keep meetings and conversation outcomes attached to the record.",noMeetingsSuggestion:"Create the first meeting â notes and tasks land here automatically.",createFirst:"Create meeting",newMeetingShort:"New meeting",upcoming:"Upcoming",past:"Past",until:"until",untilShort:"until",sync:{banner:{connected:"Outlook calendar connected",notConnected:"Outlook calendar not connected",connectNow:"Connect now",lastSync:"Last sync",syncNow:"Sync now",syncing:"Syncing â¦",error:"Synchronization error",reauth:"Re-authorize Outlook connection"},crmOnly:"CRM Only",fromOutlook:"From Outlook",lastError:"Last Sync Error",onCalendar:"On Calendar",retrySync:"Retry Sync",syncError:"Sync Error"},transcribing:"Transcribingâ¦",apply:"Apply",planMeetingHelp:"Plan an internal or customer meeting and link it to your CRM context.",planMeetingHelpLong:"Plan meetings, capture notes and link them to contacts, companies and deals.",outlook:{notConnected:"Not connected",connect:"Connect Outlook",synchronized:"In sync",staleSync:"Sync stale",syncing:"Syncingâ¦",error:"Error",title:"Outlook sync",statusLabel:"Status",lastSynced:"Last synced",never:"never",justNow:"just now",syncStarted:"Sync started",syncing2:"Syncingâ¦",syncNow:"Sync now",minutesAgo:"{{count}} min ago",hoursAgo:"{{count}} h ago",daysAgo:"{{count}} d ago",reauth:"Sign in again",longStale:"No sync for over 48 hours",longStaleHint:"The calendar has not been synced for more than 48 hours. The listed meetings may be outdated. Please sync now or reconnect Outlook."},subtitle:"Plan meetings, capture notes and link them to contacts, companies and deals.",clearSearch:"Clear search",rescheduleFailed:"Reschedule failed",rescheduledTo:"Meeting moved to {{date}}",external:{title:"External events",loading:"Loading â¦",empty:"No external events in the next 14 days.",untitled:"Untitled",conflict:"Conflict",join:"Join"},untitled:"(Untitled)",todayPanel:{heading:"Today · {{date}}",tomorrow:"Tomorrow",emptyMore:"No more meetings today.",emptyFiltered:"No meetings in the current filter.",toastTitle:"No meetings today",toastDescription:"The current filter shows no meetings for today.",toastReset:"Show all"},toolbar:{legend:"Color legend",legendOwn:"Your meetings"},holiday:{badge:"Holiday",tooltipBavaria:"Public holiday (Bavaria): {{name}}",tooltipChina:"Public holiday (China): {{name}}",bookingBlocked:"No bookings available on public holidays."},next:"Next",noteEditOwnOnly:"You can only edit your own notes.",previous:"Previous",responseStatus:"Responses",syncedReadonly:"Synced (Read-only)",titlePlaceholder:"Add title"},R={title:"Tasks",newTask:"New Task",sync:"Sync",syncHint:"Sync compliance tasks from documents, audits, QC, and logistics",dueDate:"Due Date",assignedTo:"Assigned to",unassigned:"Unassigned",myTasks:"My Tasks",teamTasks:"Team Tasks",allTasks:"All Tasks",editTask:"Edit Task",taskUpdated:"Task updated",taskCreated:"Task created",taskDeleted:"Task deleted",deleteTitle:"Delete task?",deleteConfirm:'Permanently delete task "{{title}}"?',searchPlaceholder:"Search tasks...",fillAndSave:"Fill in the fields and save.",noTasksFound:"No tasks found",task:"Task",deal:"Deal",noDeal:"No Deal",linkDeal:"Link Deal",today:"Today",overdue:"Overdue",upcoming:"Upcoming",completed:"Completed",tableView:"Table",kanbanView:"Kanban",recurrence:"Recurrence",recurrenceCreated:"Recurring task automatically created",comments:"Comments",noComments:"No comments yet",commentPlaceholder:"Write a comment... (@mention)",mentionedInTask:'mentioned you in task "{{task}}"',allTypes:"All Types",allPriorities:"All Priorities",allEmployees:"All Employees",types:{"to-do":"To-do",call:"Call",email:"Email","follow-up":"Follow-up",compliance:"Compliance",audit_followup:"Audit follow-up",qc_followup:"QC follow-up",shipment_followup:"Shipment follow-up",document_renewal:"Document renewal",lead_outreach:"Sales & Marketing"},priorities:{keine:"None",niedrig:"Low",mittel:"Medium",hoch:"High"},statuses:{offen:"Open",in_bearbeitung:"In Progress",erledigt:"Completed"},recurrences:{none:"No Recurrence",taeglich:"Daily",woechentlich:"Weekly",monatlich:"Monthly"},ai:{assistant:"AI Assistant",prioritize:"Optimize Priorities",digest:"Create Daily Plan",suggest:"Suggest Follow-ups",categorize:"Categorize Tasks",prioritizeDesc:"AI analyzes your open tasks and recommends optimal priorities.",digestDesc:"AI creates a structured daily plan with reasoning.",suggestDesc:"AI identifies deals without active tasks and suggests follow-ups.",categorizeDesc:"AI automatically assigns the correct type to uncategorized tasks.",startAnalysis:"Start Analysis",analyzing:"Analyzing...",applyAll:"Apply All",apply:"Apply",applied:"Applied",allApplied:"All changes applied",createSuggestion:"Create",suggestionCreated:'"{{title}}" created',error:"AI Error"},parentTask:"Parent task",parentTaskNone:"None",quickFill:{title:"AI quick capture",hint:"Describe the task in one sentence â the assistant will ask if anything is missing.",placeholder:"e.g. Call Bertil tomorrow 3 pm about the sample check",replyPlaceholder:"Reply and press Enter â¦",send:"Send",thinking:"Thinking â¦",askFallback:"Please describe it a bit more precisely.",stillMissing:"Still open: {{fields}} â please add.",lowConfidence:"I'm not sure yet â can you describe it more precisely?",doneMessage:"Done â {{count}} fields filled. Please review and save.",filledCount:"{{count}} fields filled",maxTurns:"We've hit the limit â please check the fields manually.",rateLimit:"AI is busy right now. Please try again in a moment.",creditsExhausted:"AI credits are exhausted. Please top up the workspace.",error:"The AI couldn't respond right now. You can also fill the fields manually."}
8,followUp:{toastTitle:"Task completed",toastDesc:'Create a follow-up task for "{{title}}"?',action:"Create follow-up",titlePrefix:"Follow-up: {{title}}"},markDone:"Mark as done",priority:{keine:"None",niedrig:"Low",mittel:"Medium",hoch:"High",low:"Low",medium:"Medium",high:"High"},reminder:{label:"Reminder",help:"When do you want to be reminded?",needDueDate:"Pick a due date to enable reminders",options:{0:"On the due date",1:"1 business day before",3:"3 business days before",7:"1 week before",none:"No reminder"}},groupBy:{label:"Group by",none:"No grouping",company:"By company"},noCompany:"No company assigned",noCompanyHint:"These tasks are not linked to a company â e.g. internal tasks.",openCount:"{{count}} open",overdueCount:"{{count}} overdue",doneColumn:"Done",markDoneOne:"Mark as done",markOpen:"Reopen",salesMarketing:"Sales & Marketing",salesMarketingHint:"Open prospecting tasks, e.g. from company website visits"},N={title:"Segments",newSegment:"New Segment",static:"Static",dynamic:"Dynamic",members:"Members"},E={title:"Employees",invite:"Invite Employee",role:"Role",team:"Team",active:"Active",inactive:"Inactive",roles:{admin:"Administrator",teamleiter:"Team Lead",mitarbeiter:"Employee"}},L={selected:"selected",deleteSelected:"Delete",confirmBatchDelete:"permanently delete selected entries?",batchUpdated:"{{count}} entries updated",batchDeleted:"{{count}} entries deleted",changeStatus:"Change Status",changePriority:"Change Priority",changeStage:"Change Stage",changeLifecycle:"Change Lifecycle",changeType:"Change Type",changeContactType:"Change Type",changeOwner:"Change Owner",assignTag:"Assign tag",changePipeline:"Change pipeline",bulkDeleteAdminOnly:"No permission â please contact an admin.",more:"More",selectAll:"Select all",changeTaskType:"Change type",changeAssignee:"Change assignee"},I={title:"Ads",subtitle:"Manage your ad campaigns across all platforms.",sync:"Sync",connectAccount:"Connect Account",totalSpend:"Total Spend",impressions:"Impressions",clicks:"Clicks",conversions:"Conversions",overview:"Overview",platformComparison:"Platform Comparison",noAccountsYet:"No ad accounts connected yet. Connect your first account to see data.",connectToSee:"Connect your account to see campaign data.",manage:"Manage",analyze:"Analyze",accountsTab:"Accounts",loadingAnalysis:"Loading analysisâ¦",days:"Days",deleted:"Deleted",allStatus:"All statuses",addAdGroup:"Add ad group",adGroupNamePlaceholder:"Ad group name",noMetricsForRange:"No metrics for the selected period.",filters:{allPlatforms:"All platforms",activePausedDeleted:"Active + Paused + Deleted",allAccounts:"All accounts",searchPlaceholder:"Search campaignâ¦",onlyActive:"Active only",activePaused:"Active + paused"},deletedShort:"Deleted",noAdGroupsSynced:"No ad groups synced yet.",addKeywords:"Add keywords",addNegativeKeyword:"Add negative keyword",performanceOverview:"Performance Overview",allChannels:"All channels",channelLabel:"Channel:",conversionLoop:{tab:"Conversion loop",title:"Google Ads conversion loop",subtitle:"Send offline conversions to Google Ads",lastSetup:"Last setup",recent:"Last 100 uploads",recentEmpty:"No uploads yet.",stages:{wa_qualified_lead:"WhatsApp qualified lead",meeting_booked:"First meeting booked",wa_sql:"WhatsApp SQL",meeting_sql:"Meeting SQL",revenue_won:"Revenue won",lead_unqualified:"Unqualified"},status:{queued:"Queued",ok:"Uploaded",validated:"Validated",failed:"Failed",skipped:"Skipped",configured:"Fully configured",notConfigured:"Setup incomplete"},kpi:{queued:"Queued",failed:"Failed"},table:{created:"Created",stage:"Stage",status:"Status",value:"Value",entity:"Entity",error:"Error"},actions:{setup:"Create conversion actions",flush:"Force upload now"},validateOnly:{label:"Test mode (no upload)",help:"First 24h: no live upload, just validation",helpOn:"Test mode active â nothing is sent to Google.",helpOff:"Live mode â conversions are sent to Google."},attribution:{heading:"Ad attribution",empty:"No conversion uploads for this record.",utmSource:"UTM source",utmCampaign:"UTM campaign",landingPage:"Landing page"},timeline:{heading:"Conversion timeline",summary:"{{done}} of {{total}} uploaded",events:{occurred:"Occurred",queued:"Queued",uploaded:"Sent to Google"},attempts:"{{count}} attempts",showResponse:"Show Google response",hideResponse:"Hide Google response"},meetingSource:{heading:"Meeting source",openMeeting:"Open meeting",kind:{bookingFunnel:"Booked via /erstgespraech",manual:"Created manually",external:"External calendar"}},toasts:{setupOk:"Conversion actions set up",setupFail:"Setup failed: {{err}}
8",flushOk:"Upload done â {{ok}} ok / {{err}} errors",flushFail:"Upload failed: {{err}}",validateOn:"Validate-only on",validateOff:"Validate-only off â live uploads"},prereq:{title:"Requirements",subtitle:"These conditions must be met before conversions are reported to Google.",account:"Ad account linked",accountOk:"Customer account is linked.",accountMissing:"No Google Ads customer account is linked yet.",actions:"Conversion actions created",actionsOk:"All six stages exist in Google.",actionsMissing:"Run âCreate conversion actionsâ once.",clickIds:"Click identifiers from ads",clickIdsHint:"{{count}} of {{total}} booking events in the last 90 days came from an ad.",mode:"Upload mode",modeTest:"Test mode â nothing is sent to Google.",modeLive:"Live â conversions are uploaded.",queue:"Queue",queueHint:"{{count}} entries waiting to be uploaded."}},dailyReport:{title:"Daily reports",subtitle:"Generated automatically every day at 09:00 â last 14 days",runNow:"Run report now",runSuccess:"Report updated",runError:"Report run failed",empty:"No reports yet. Click 'Run report now'.",days7:"Last 7 days",reports:"reports",revenue7d:"Revenue 7d",uploaded:"uploaded",failed:"errors",anomalies:"anomalies",queue:"Queue",oldest:"Oldest item",errorRate:"Error rate",processed:"Processed",byStage:"By stage",legend:"Success / Errors / Queued",status:{ok:"Healthy",warn:"Watch",critical:"Critical"}},periodAll:"All time",resetFilters:"Reset filters",emptyPeriod:"No campaign data in the selected period. Try a longer period.",emptyFiltered:"No campaign matches the active filters.",freshness:{never:"no data",upToDate:"Data as of {{date}}",staleTitle:"Latest campaign data from {{date}}.",campaignCounts:"{{active}} active · {{paused}} paused · {{removed}} removed",noActiveHint:"No active campaign is running â that is why table and analysis stay empty."},connector:{notAvailable:"Not available yet",connectedHelp:"Connected â campaigns, ad groups and metrics sync daily.",plannedHelp:"This platform is not connected yet. No data is loaded.",onlyGoogleHint:"Only Google Ads accounts are synchronised at the moment."},analyzeCards:{topConversions:"Most conversions",lowestCpc:"Lowest cost per click",bestCpa:"Best cost per conversion"}},x={title:"Campaigns",subtitle:"Bundle your marketing activities into campaigns.",newCampaign:"New Campaign",empty:"No campaigns yet",emptyDesc:"Create your first campaign to bundle ads, emails, and assets.",audiencePlaceholder:"e.g. E-commerce founders DACH"},O={title:"Video Library",subtitle:"Manage your marketing videos.",upload:"Upload Video",empty:"No videos yet",emptyDesc:"Upload your first marketing video.",uploadTitle:"Upload video",dragHint:"Click or drag video here",titleField:"Title",descriptionField:"Description",status:{processing:"Processing",ready:"Ready",failed:"Failed",uploading:"Uploading",queued:"Queued"}},M={startAgent:"Start Agent",recentRuns:"Recent Runs",noRunsYet:"No runs yet.",category:{sales:"Sales",ops:"Operations",marketing:"Marketing",cs:"Customer Success",finance:"Finance",admin:"Admin",service:"Service",general:"General"},status:{active:"Active",inactive:"Inactive",beta:"Beta",draft:"Draft",deprecated:"Deprecated"},fxDriftWatch:{title:"FX Drift Watch",subtitle:"Monitors CNY/USD drift against 30-day average.",alertOpen:"Open drift alert",noAlerts:"No open drift alerts."},dunningEscalation:{title:"Dunning Escalation",subtitle:"Proposes the next dunning level for overdue invoices.",proposedLevel:"Proposed level",noProposals:"No open proposals."},prospecting:{title:"Prospecting Agent",subtitle:"AI automatically finds potential customers based on your existing patterns.",configure:"Configure Agent",industry:"Target Industry",industryPlaceholder:"e.g. Electronics, Automotive",region:"Target Region",regionPlaceholder:"e.g. DACH, Europe",keywords:"Keywords",keywordsPlaceholder:"e.g. OEM, Private Label",companySize:"Company size",contactCreated:"Contact created"},dealCoach:{title:"Deal Coach",subtitle:"AI-powered recommendations for your active deals.",analyze:"Analyze Deals",analyzeDesc:"The agent analyzes all active deals and provides recommendations on
8next steps, risks, and opportunities.",allDeals:"All deals"},taskPrioritizer:{title:"Task Prioritizer",subtitle:"AI optimizes the order of your tasks.",optimize:"Optimize Tasks",optimizeDesc:"Analyzes open tasks by urgency, deal value, and inactivity and suggests the optimal order."},runComplete:"Run complete",translator:{toolTab:"Tool",translate:"Translate",translating:"Translatingâ¦",cancel:"Cancel",swap:"Swap languages",regenerate:"Regenerate",copy:"Copy",copied:"Copied",save:"Save to record",clear:"Clear",applyToField:"Apply to field",empty:"Select or paste text, then translate.",chars:"chars",tone:"Tone",context:"Context",useGlossary:"Apply glossary",shortcuts:"ââµ translate · ââ§S swap · Esc cancel",sourcePlaceholder:"Paste source textâ¦",targetPlaceholder:"Translation appears hereâ¦",history:"History",ai:"AI",historyEmpty:"No translations yet.",quickTitle:"Quick Translator",commandLabel:"Translateâ¦",targetLang:"Target language",lang:{auto:"Detect",de:"German",en:"English",zh:"Chinese"},tones:{formal:"Formal",friendly:"Friendly",concise:"Concise"},contexts:{supplier:"Supplier",customer:"Customer",internal:"Internal"},errors:{title:"Translation failed",generic:"Please try again.",rateLimit:"Rate limit reached, please retry shortly.",payment:"Credits exhausted, please top up."},workspaceTab:"Translator",feedback:{thumbsUp:"Thumbs up",thumbsDown:"Thumbs down",thanks:"Thanks for the feedback",thanksNegative:"Feeds back into your style rules.",tagsLabel:"What was wrong",addCorrection:"Edit translation",correctionPlaceholder:"Your preferred translationâ¦",saveCorrection:"Save",cancel:"Cancel",tags:{too_formal:"too formal",too_literal:"too literal",wrong_glossary:"wrong glossary",tone_missed:"tone missed",wrong_term:"wrong term",other:"other"},rules:{tab:"Style rules",pending:"Proposed",active:"Active",rejected:"Rejected",approve:"Approve",reject:"Reject",edit:"Edit",loading:"Loadingâ¦",empty:"No rules in this view.",appliedTimes:"Applied {{count}}Ã"}}},tools:{loading:"Loading tool permissionsâ¦",intro:"Decide which tools this agent may use in each channel. âConfirmationâ requires a prompt before every write action.",col:{tool:"Tool",type:"Type",chat:"Chat",voice:"Voice",confirm:"Confirmation"},kind:{read:"Read",write:"Write"},create_task:{label:"Create task",description:"Creates a new task for an employee."},create_note:{label:"Write note",description:"Attaches a note to a contact, company or deal."},draft_message:{label:"Draft message",description:"Creates an email or chat draft to send."},search_crm:{label:"Search CRM",description:"Finds contacts, companies, deals or tasks by query."},find_document:{label:"Find document",description:"Searches uploaded documents (quotes, invoices, contracts, certificates) by content and metadata."},assign_document:{label:"Assign document",description:"Links a document to a deal â only with at least two independent pieces of evidence and after confirmation."},decide_pending_action:{label:"Apply approval",description:"Executes a pending action after your approval or discards it on rejection â Shifu understands your decision from your own words."},assign_attachment:{label:"Assign files",description:"Adds uploaded files to an existing record after confirmation."},create_contact:{label:"Create contact",description:"Creates a new contact in the CRM."},create_deal:{label:"Create deal",description:"Creates a new deal, optionally linked to contact and company."},create_company:{label:"Create company",description:"Creates a new company in the CRM."},search_products:{label:"Search products",description:"Finds products by name, revenue or sales."},search_communications:{label:"Search communications",description:"Finds emails and notes for a record."},search_knowledge:{label:"Search knowledge base",description:"Searches the internal knowledge base."},semantic_search:{label:"Semantic search",description:"Finds semantically similar content."},find_similar_deals:{label:"Find similar deals",description:"Finds comparable earlier deals."},list_team_members:{label:"List team members",description:"Lists team members with role."},get_contact_protocol:{label:"Get contact protocol",description:"Reads the condensed contact protocol of a contact or company."},list_modules:{label:"List modules",description:"Lists the available system modules."}
8,lookup_module:{label:"Look up areas",description:"Lists the app areas, optionally a single category."},web_search:{label:"Web search",description:"Searches the web for current information."},web_fetch:{label:"Fetch web page",description:"Fetches a web page."},open_form:{label:"Open form",description:"Opens a prepared form for review."},remember_fact:{label:"Remember fact",description:"Stores a short working preference."},report_unknown:{label:"Report knowledge gap",description:"Reports an internal knowledge gap."},create_quote:{label:"Create quote",description:"Creates a quote for a deal with items priced from the price list â as a draft."},create_dunning_notice:{label:"Create payment reminder",description:"Creates a draft payment reminder for an overdue invoice."},render_document_pdf:{label:"Create document preview",description:"Generates the PDF preview of a quote or invoice â without sending."},business_simulation:{label:"Business simulation",description:"Calculates revenue, workload and liquidity scenarios from live data."},self_report:{label:"Self report",description:"Reports the assistantâs hit rate, acceptance rate and reversal share."},read_inbox:{label:"Read inbox",description:"Reads assigned emails and summarises them â optionally only the unanswered ones."},translate_text:{label:"Translate text",description:"Translates text into the desired language with a matching tone. Sends nothing."},read_calendar:{label:"View appointments",description:"Shows upcoming appointments from the connected calendar."},create_campaign:{label:"Create campaign",description:"Creates a marketing campaign with goal, audience, budget and period."},save_campaign_retro:{label:"Save review",description:"Records what worked and what did not work in a campaign."},read_radar_signals:{label:"Read market radar",description:"Shows competitor and market signals with assessment and recommendation."},search_attachments:{label:"Search attachments",description:"Finds matching passages in the files uploaded in this conversation."},fetch_attachment_chunk:{label:"Load file section",description:"Loads a specific text section of an uploaded file."},create_credit_note:{label:"Create credit note",description:"Creates a credit note draft."},create_expense:{label:"Record expense",description:"Records a business expense."},create_sourcing_project:{label:"Create sourcing project",description:"Creates a new sourcing project."},record_payment:{label:"Record payment",description:"Records a payment on an invoice."},describe_records:{label:"Show fields",description:"Shows available tables and fields."},query_records:{label:"Read records",description:"Reads records with chosen fields and filters."},aggregate_records:{label:"Analyse records",description:"Counts, sums and averages records, optionally grouped."},update_record:{label:"Update record",description:"Changes allowed fields of a record after your approval."},create_record:{label:"Create record",description:"Creates a new record such as a contact, task or ticket after your approval in the chat."},close_deal:{label:"Close deal",description:"Records a deal as won or lost."},manage_tag:{label:"Manage tag",description:"Adds or removes a tag on a record."},manage_calendar:{label:"Manage calendar",description:"Plans, reschedules or cancels meetings and sends invitations after your approval in the chat."},send_communication:{label:"Send communication",description:"Sends messages and documents or schedules reminders after your approval in the chat."},manage_document:{label:"Edit document",description:"Changes items, discounts and status of quotes and invoices or converts quotes into invoices."},navigate_ui:{label:"Open view",description:"Opens a record, a list or an area of the app."},manage_form:{label:"Open or fill form",description:"Opens a form, optionally prefilled, or fills an open form. Only you save it."},manage_campaign:{label:"Manage campaign",description:"Creates a campaign or saves its retrospective after your approval in chat."}},pending:{back:"Back",title:"Approval queue",subtitle:"Write actions from agents that need manual confirmation.",entries:"{{count}} entries",filter:{pending:"Open",executed:"Executed",rejected:"Rejected",failed:"Failed",all:"All"},loading:"Loadingâ¦",empty:"No entries.",reject:"Reject",approve:"Approve",showArgs:"Show arguments",errorLabel:"Error: {{message}}",status:{pending:"Pending",approved:"Approved",rejected:"Rejected",executed:"Executed",failed:"Failed"}},overview:{exportTitle:"Export all agents as CSV (model, bundles, triggers, KPIs)"},toasts:{error:"Error",triggerCreated:"Trigger created",triggerRemoved:"Trigger removed",triggerFired:"Trigger executed",triggerFiredDesc:"Run has been started.",executeFailed:"Execution failed",capabilitySaved:"Permission saved",saveFailed:"Save failed",toolPermSaveFailed:"Could not save tool permission."},stream:{rateLimit:"Rate limit reached, please try again later.",creditsExhausted:"AI credits exhausted.",errorPrefix:"Error: {{msg}}",streamError:"Stream error"},bundles:{sales_crm:"Sales · CRM (contacts, deals, tasks)",sales_outreach:"Sales · Outreach (email drafts)",ops_docs:"Operations · Documents",ops_shipping:"Operations · Shipping & logistics",ops_quality:"Operations · Quality assurance",ops_audit:"Operations · Audit & compliance",ops_supplier:"Operations · Suppliers",mkt_content:"Marketing · Content",mkt_seo:"Marketing · SEO",mkt_lead:"Marketing · Lead nurturing",data_enrich:"Data · Enrichment",data_quality:"Data · Quality & cleansing",universal:"Universal · all bundles (wildcard)"},capabilities:{saved:"Setting saved",saveFailed:"Saving failed"}},F={daysInStage:"Days in Stage",openDeals:"Open Deals",dealValue:"Deal Value"},_={title:"Sharing",sharedWith:"Shared with",addPerson:"Add person",noShares:"Not shared yet",shareWith:"Share with",searchUsers:"Search team membersâ¦",sharedCount:"{{count}} shared",removeShare:"Remove share",noUsers:"No other team members",added:"Share added",removed:"Share removed",helper:"Share with colleagues â read access.",note:"Shared items appear in the recipient's inbox."}
8,q={title:"Attachments",upload:"Upload",preview:"Preview",openInNewTab:"Open in new tab",previewUnsupported:"No preview available for this file type.",previewUnavailable:"Preview not available for this file.",noAttachments:"No attachments",fileUploaded:"File uploaded",fileDeleted:"File deleted",dropFiles:"Drop files here or click",empty:"No attachments",uploading:"Uploadingâ¦",uploadedCount:"{{count}} file uploaded",add:"Attach",download:"Download",dropHere:"Drag files here (max. 10, 100 MB each)",dropFailed:"File could not be read - please pick it via the paperclip",rejectedType:"File type not allowed (archives such as ZIP and RAR are allowed)",rejectedSize:"File too large (max. 100 MB)",rejectedCount:"Maximum 10 files",uploadNewVersion:"Upload new version",versionHistory:"Show versions",versionLabel:"Version {{version}}",deleteConfirmTitle:"Delete file?",deleteConfirmDescription:"â{{name}}â will be permanently removed.",current:"Current",fromNote:"from note",fromTicket:"from ticket",fromMeeting:"from meeting",fromTask:"from task",fromDeal:"On the deal",sectionLinked:"From linked activities",tabAll:"All",aiAnalyzing:"AI analyzing â¦",aiRetry:"Re-analyze",renameHint:"Click to rename",dropOverlay:"Drop files here",dropHintLong:"Drag files here, click, or paste (Ctrl+V)",pasteEmpty:"No file in the clipboard",sourcePill:{deal:"Direct",note:"From notes",ticket:"From tickets",meeting:"From meetings",task:"From tasks"},originBadge:{note:"From note on {{date}}",ticket:"From ticket on {{date}}",meeting:"From meeting on {{date}}",task:"From task on {{date}}",readOnly:"Edit at source"},duplicateConfirm:`{{count}} file(s) are already attached: 9{{list}} 10 11Upload again anyway?`,deleteAtSource:"Please delete at the source ({{source}}).",countLabel:"Attachments ({{count}})",sortLabel:"Sort",sortNewest:"Newest first",sortOldest:"Oldest first",sortTypeAsc:"File type AâZ",sortTypeDesc:"File type ZâA",addMore:"Attach more files",openPreview:"Open preview",uploadProgress:"{{name}} â {{percent}} % uploaded",formatGroup:{pdf:"PDF documents",spreadsheet:"Spreadsheets",office:"Office files",image:"Images",cad:"Drawings and designs",archive:"Archives",media:"Video and audio",other:"Other files"},fromEmail:"From email",noSubject:"No subject"},B={title:"Answer Engine Optimization",subtitle:"Track your brand visibility in AI answers (ChatGPT, Gemini)",activePrompts:"active prompts",addPrompts:"Add prompts",runNow:"Run now",running:"Running â¦",runStarted:"Run started",tabs:{dashboard:"Dashboard",prompts:"Prompts",competitors:"Competitors",sources:"Sources",recommendations:"Recommendations",citations:"Citations",watchdog:"Early warning"},competitorsTitle:"Competitors & own brand",competitorsHint:"These brands are searched and counted in every AI answer. Aliases capture alternative spellings.",addCompetitor:"Add competitor",brandName:"Brand name",domainOptional:"Domain (optional)",aliasesLabel:"Aliases",aliasesHint:"Comma-separated, e.g. abbreviations or alternative spellings",tracked:"Tracking",ownBrand:"Own brand",competitorAdded:"Competitor added",cantDeleteOwn:"Own brand cannot be deleted",confirmDelete:"Really delete?",brandKpis:"Brand KPIs",visibility:"AI Visibility",sentiment:"Sentiment",positive:"Positive",visibilityTrend:"Visibility trend",competitiveLandscape:"Competitive landscape",brand:"Brand",mentions:"Mentions",shareOfVoice:"Share of voice",avgPosition:"Avg position",you:"You",sourcesByChannel:"Sources by channel",topDomains:"Top domains",domain:"Domain",citations:"Citations",noData:"No data",searchPrompts:"Search prompts â¦",prompt:"Prompt",group:"Group",language:"Language",active:"Active",noPrompts:"No prompts yet",deleted:"Deleted",answers:"Answers",analysis:"Analysis",mentioned:"Brand mentioned",notMentioned:"Not mentioned",totalRuns:"Total runs",noRuns:"No runs",topDomainsAll:"All top domains",ownTopSources:"Our top sources",competitorSources:"Competitor sources",searchRecs:"Search recommendations",generateAi:"Generate with AI",generating:"Generating â¦",generated:"Recommendations created",recommendation:"Recommendation",contentType:"Content type",channel:"Channel",priority:"Priority",status:"Status",statusNew:"New",statusInProgress:"In progress",statusDone:"Done",statusRejected:"Rejected",toTask:"To task",linkedToTask:"Task",taskCreated:"Task created",
11noRecs:"No recommendations",industryTemplate:"Industry template",chooseTemplate:"Choose template â¦",promptsBulk:"Prompts (one per line)",onePerLine:"One prompt per line",noPromptsEntered:"No prompts entered",promptsSaved:"{{count}} prompts saved",suggestedBrands:"Suggested brands",suggestedBrandsHint:"These brands were auto-detected in AI answers. Activate to track or discard them.",activate:"Activate",discard:"Discard",competitorActivated:"Competitor activated",reextract:"Re-analyze answers",reextracting:"Analyzing â¦",reextractDone:"{{count}} answers re-analyzed",cancel:"Cancel",save:"Save",saving:"Saving â¦",kpiVisibility:"AI Visibility",kpiVisibilityHint:"Share of answers mentioning your brand",kpiSentiment:"Positive Sentiment",kpiSentimentHint:"Share of positive brand mentions",kpiRuns:"Analyses (30d)",kpiRunsHint:"Number of executed prompt analyses",kpiSov:"Share of Voice",kpiSovHint:"Your share across all brand mentions",engineDistribution:"Engines",sentimentBreakdown:"Sentiment Breakdown",negative:"Negative",neutral:"Neutral",overview:"Overview",competition:"Competition",sourcesAndChannels:"Sources & Channels",directCompetitors:"Direct Competitors (Co-Mention)",directCompetitorsHint:"Brands most often mentioned in the same prompt as us. Win-rate = how often the brand ranks ahead of us.",coMentions:"Co-Mentions",positionVsUs:"Avg. Position (them vs. us)",winRateVsUs:"Win-Rate vs. Us",addToWatchlist:"Add to Watchlist",addedToWatchlist:"Added to Watchlist",inWatchlist:"In Watchlist",autoDiscovered:"Auto-detected",brief:{title:"AEO Content Brief",descWithPrompt:'Target prompt: "{{prompt}}"',descGeneric:"Generates a complete, AEO-optimized content brief.",intro:"Creates a brief with H1, FAQ block, citable data points and authority mentions â based on real AI answers to this prompt.",generate:"Generate brief",analyzing:"Analyzing co-mentions, authority sources and user languageâ¦",schemaOrg:"Schema.org",ownMentions:"Own mentions:",topCoMentions:"Top co-mentions:",topSources:"Top sources:",structure:"Structure",faq:"FAQ block (1:1 for FAQPage schema)",entities:"Entities to mention (E-E-A-T)",citablePoints:"Citable data points",internalLinks:"Internal link targets",regenerate:"Regenerate",copyMd:"Copy markdown",downloadMd:"Download .md",creating:"Creatingâ¦",asTask:"As CRM task",copied:"Markdown copied",taskCreated:"CRM task created",taskFailed:"Task could not be created",notLoggedIn:"Not logged in",loadingHint:"Analyzing co-mentions, authority sources and user languageâ¦",faqBlock:"FAQ block (1:1 for FAQPage schema)",entitiesEEAT:"Mention entities (E-E-A-T)",citableData:"Citable data points",asCrmTask:"As CRM task",notSignedIn:"Not signed in",targetPrompt:'Target prompt: "{{text}}"',fallback:"Generates a complete, AEO-optimized content brief."},citation:{title:"Citation Hunter",desc:"Finds the domains LLMs cite from â and provides pitch drafts for outreach.",analyzing:"Analyzingâ¦",reanalyze:"Re-analyze",findTargets:"Find targets",all:"All",doorOpener:"Door opener",topFit:"Top fit",none:'No external sources found. Click "Run now" first so AI answers provide sources.',citedTimes:"{{n}}à cited",fitScore:"Fit {{n}}",showCitations:"Show citations",viewPitch:"View pitch",approach:"Approach: ",pitchFor:"Pitch for {{domain}}",subject:"Subject",body:"Pitch body",themeContext:"Theme context:",copy:"Copy",asTask:"Create as task",copied:"Pitch copied",noCitations:"No detail citations found.",citedIn:"Cited in {{count}} answer{{plural}}:",openSource:"Open source",subtitle:"Finds the domains LLMs cite from â and provides pitch drafts for outreach.",running:"Analyzingâ¦",noSources:'No external sources found. Click "Run now" first so AI answers contain sources.',doorOpenerBadge:"Door opener",fit:"Fit {{score}}",noDetails:"No detailed citations found.",citedInAnswers_one:"Cited in {{count}} answer:",citedInAnswers_other:"Cited in {{count}} answers:",pitchBody:"Pitch body",topicContext:"Topic context:",channel:{media:"Media",trade_publication:"Trade press",industry_body:"Industry body",directory:"Directory",blog:"Blog",forum:"Forum",other:"Other"},approachLabel:{guest_article:"Guest article",study_pitch:"Study pitch",expert_quote:"Expert quote",directory_listing:"Listing",interview:"Interview",data_collab:"Data collab"},citedInAnswers:"Cited in answers"},addPromptsExtra:{industries:"1. Industry",recommend:"Recommend industries",contextPlaceholder:"Optional: context (domain, products, ICP) â improves recommendation",aiGenerate:"2. Generate prompts via AI",generate:"Generate",selected:"{{selected}} / {{total}} selected",duplicatesSkipped:"{{n}} duplicates skipped",selectAll:"All",selectNone:"None",intent:"Intent {{n}}/5",manual:"3. Add manually (optional)",promptsGenerated:"{{count}} prompts generated ({{dupes}} duplicates skipped)",recommendFailed:"Recommendation failed",generationFailed:"Generation failed",saveFailed:"Save failed",notLoggedIn:"Not logged in",industry:"1. Industry",recommendIndustries:"Recommend industries",industryFailed:"Recommendation failed",selectedOf:"{{selected}} / {{total}} selected",all:"All",none:"None"},gap:{title:"Strategic opportunities",formula:"Niches without market leader · Intent à Fragmentation à (1 - own presence)",none:"No open opportunities â you already dominate or data is missing.",intent:"Intent {{n}}/5",fragm:"Fragm. {{n}}%",notTop3:"You not in top 3",topThere:"Top there: {{brands}}",contentBrief:"Generate content brief",subtitle:"Niches without leader · Intent à Fragmentation à (1 - Own presence)",empty:"No open opportunities â either you already dominate or data is missing.",notInTop3:"You not in top 3",generateBrief:"Generate content brief"},watchdog:{title:"Visibility Watchdog",desc:"Compares current runs with the 7-day baseline and warns about visibility losses, new competitors, missing citations and sentiment deterioration.",checking:"Checkingâ¦",checkNow:"Check now",today:"Today",newAlerts:"new alerts",critical:"Critical",highPrio:"High priority",last30:"Last 30 days",alertsTotal:"Alerts total",history:"Alert history",noAlerts:'No alerts yet. Click "Check now" to run the watchdog.',sevHigh:"Critical",sevMed:"Medium",sevLow:"Low",types:{ownBrandDrop:"Own brand dropped",newCompetitor:"New competitor",authorityLost:"Authority lost",sentimentFlip:"Sentiment flipped"},brand:"Brand:",rank:"Rank: {{prev}} â {{curr}}",citationsLost:"{{n}}
11 citations lost",subtitle:"Compares current runs with the 7-day baseline and warns about visibility drops, new competitors, missing citations and sentiment drops.",highPriority:"High priority",totalAlerts:"alerts total",empty:'No alerts yet. Click "Check now" to run the watchdog.',severityHigh:"Critical",severityMedium:"Medium",severityLow:"Low",type:{own_brand_drop:"Own brand dropped",new_competitor:"New competitor",authority_lost:"Authority lost",sentiment_flip:"Sentiment flipped"},brandLabel:"Brand:"},gscGaps:{title:"GSC à AEO Gaps",desc:"Top Google queries without sufficient LLM visibility",viewAll:"All",none:"No open gaps â start bridge analysis in SEO dashboard.",stats:"{{clicks}} clicks · LLM {{score}}/100",all:"All",subtitle:"Top Google queries without sufficient LLM visibility",empty:"No open gaps â start the bridge analysis in the SEO dashboard.",clicksLlm:"{{clicks}} clicks · LLM {{score}}/100",severity:{high:"High",medium:"Medium",low:"Low"}},recExtra:{notLoggedIn:"Not logged in",description:"Description",gapReason:"Gap / reasoning",contentBrief:"Content brief",notSignedIn:"Not signed in"},authority:{title:"Authority Landscape",desc:"X: mention frequency · Y: average position (top = better) · Size: authority score",mentions:"Mentions",position:"Position (1 = top)",none:"No classified mentions yet.",score:"Score {{n}}",statsLine:"Mentions: {{freq}} · Avg pos {{pos}}",axesHint:"X: mention frequency · Y: average position (top = better) · Size: authority score",empty:"No classified mentions yet.",mentionsLabel:"Mentions",positionLabel:"Position (1 = top)",avgPos:"Avg pos {{value}}"},classifier:{title:"Entity classification",unclassified:"unclassified brands",allClassified:"All brands classified",running:"Runningâ¦",classifyNew:"Classify new",backfill:"Backfill (all)",confirmBackfill:"All brands will be reclassified (backfill). Continue?",classified:"{{n}} entities classified",unclassifiedBadge:"unclassified brands",doneSummary:"{{count}} entities classified · {{breakdown}}"},reextractStarted:"Re-extraction started.",searchVis:{title:"Search visibility",description:"AEO visibility, Lighthouse score and on-page status at a glance.",aeoVisibility:"AEO visibility",lhPerf:"Lighthouse Performance",lhSeo:"Lighthouse SEO",onpage:"On-page status",openSeo:"Open SEO hub",scoreOf100:"of 100",weak:"Weak",moderate:"Moderate",strong:"Strong",noData:"No data yet"},jobs:{runPrompts:"Run AEO prompts",reextract:"Re-extract mentions",generateRecs:"Generate AEO recommendations"},runFailed:"Prompt run could not be started",reextractFailed:"Re-extraction could not be started",freshness:{last:"Last analysis: {{date}}",none:"No analysis yet",staleHint:"Data is older than 7 days. Start a new prompt run to get current values."}},H={changedFields:"Changed fields",andMore:"â¦and {{count}} more",historyTitle:"Change history ({{count}})",noHistory:"No history entries.",notAvailable:"History not available. Only team leaders and administrators can view the history.",tables:{crm_contacts:"Contacts",crm_companies:"Companies",crm_deals:"Deals",crm_tasks:"Tasks",crm_tickets:"Tickets",user_roles:"User roles",employees:"Employees"},fields:{first_name:"First name",last_name:"Last name",mobile_phone:"Mobile phone",whatsapp_phone:"WhatsApp",phone:"Phone",email:"Email",team:"Team",role:"Role",active:"Active",language:"Language",created_at:"Created at",updated_at:"Updated at",changed_at:"Changed at",lifecycle_stage:"Lifecycle stage",contact_type:"Contact type",preferred_language:"Preferred language",notes:"Notes",title:"Title",description:"Description",due_date:"Due date",status:"Status",priority:"Priority",value:"Value",stage:"Stage",owner_id:"Owner",company_id:"Company",contact_id:"Contact",assigned_to:"Owner",closed_at:"Closed at",last_activity_at:"Last activity",stage_entered_at:"In stage since",logistics_incomplete_since:"Logistics incomplete since",source:"Source",source_detail:"Source detail",decided_by:"Decided by",decided_at:"Decided at",decision_note:"Decision note",sample_ready_date:"Sample ready",quality_control_date:"Quality control",mass_production_ready_date:"Mass production ready",expected_close_date:"Expected close",actual_close_date:"Actual close",probability:"Probability",currency:"Currency",deal_type:"Deal type",pipeline_id:"Pipeline",pipeline:"Pipeline",lost_reason:"Lost reason",won_reason:"Won reason",created_by:"Created by",updated_by:"Updated by",changed_by:"Changed by"},actions:{insert:"Created",update:"Updated",delete:"Deleted",login:"Sign-in",logout:"Sign-out",token_refreshed:"Session refreshed",user_signedup:"Registered",user_modified:"Profile changed",user_recovery_requested:"Password reset requested",user_updated_password:"Password changed"},values:{source:{import_csv:"CSV import",manual:"Manual entry",webform:"Web form",api:"API"},boolean:{true:"Yes",false:"No"},unknownUser:"Unknown user"}},U={title:"Sign-in & activity",loginsLast30:"Sign-ins (last 30 d.)",loginsLast7Short:"7 d.: {{count}}",avgSession:"Avg. session",sessionsCount:"{{count}} sessions",onlineLast30:"Online (last 30 d.)",peakTime:"Peak time",peakHourValue:"{{from}}:00â{{to}}:00",peakHourSub:"{{count}} sign-ins",lastLogin:"Last sign-in",accountCreated:"Account created",emailConfirmed:"Email verified",confirmed:"Verified",notConfirmed:"Not verified",lastIp:"Last IP",lastDevice:"Last device",tabLogin:"Sign-in history",tabCrm:"CRM activity",tabRoles:"Role history",noAuthEvents:"No sign-in events in the last 90 days.",last30Days:"Last 30 days",noCrmChanges:"No CRM changes.",changedFields:"Changed fields",privacyNotice:"Sign-in and activity data are stored for security and traceability (Art. 6 (1) (f) GDPR). Visible only to administrators and the user themselves.",loadError:"Failed to load: {{message}}"},W={admin:"Admin",teamleiter:"Team Lead",mitarbeiter:"Employee"},V={status:{active:"Active",aktiv:"Active",inactive:"Inactive",inaktiv:"Inactive",draft:"Draft",entwurf:"Draft",paused:"Paused",completed:"Completed",completed_won:"Won",completed_lost:"Lost",finalized:"Finalized",pending:"Pending",running:"Running",loading:"Loading",ready:"Ready",planned:"Planned",sent:"Sent",versendet:"Sent",delivered:"Delivered",delayed:"Delayed",failed:"Failed",error:"Error",passed:"Passed",rejected:"Rejected",reject:"Rejected",blacklisted:"Blacklisted",expired:"Expired",valid:"Valid",
11invalid:"Invalid",confirmed:"Confirmed",connected:"Connected",converted:"Converted",paid:"Paid",partial:"Partial",open:"Open",offen:"Open",in_arbeit:"In Progress",in_bearbeitung:"In Progress",erledigt:"Done",done:"Done",neu:"New",freigegeben:"Approved",geloest:"Resolved",geschlossen:"Closed",marketing:"Marketing",success:"Success",suppressed:"Suppressed",removed:"Removed",release:"Released",mismatch:"Mismatch",dlq:"Dead-letter Queue",already:"Already exists",already_confirmed:"Already confirmed",booked:"Booked",in_transit:"In transit",customs:"Customs",teilgenommen:"Attended",angemeldet:"Registered"},priority:{keine:"None",low:"Low",niedrig:"Low",medium:"Medium",mittel:"Medium",high:"High",hoch:"High",critical:"Critical"},severity:{low:"Low",medium:"Medium",high:"High",critical:"Critical",warn:"Warning",warning:"Warning",info:"Info"},stage:{lead:"Lead",opportunity:"Opportunity",sales_qualified:"Sales-qualified",customer:"Customer",completed_won:"Closed â Won",completed_lost:"Closed â Lost"},channel:{email:"Email",phone:"Phone",whatsapp:"WhatsApp",linkedin:"LinkedIn",web:"Web",blog:"Blog",social:"Social",ads:"Ads",seo:"SEO",aeo:"AEO"},strategy:{mobile:"Mobile",desktop:"Desktop"},type:{"to-do":"To-do",call:"Call",email:"Email","follow-up":"Follow-up",meeting:"Meeting",note:"Note"},source:{import_csv:"CSV import",manual:"Manual",webform:"Web form",api:"API","workflow-engine":"Workflow",workflow_engine:"Workflow","mail-sync":"Mail sync",mail_sync:"Mail sync",recall_ai:"Meeting recording",agent:"AI agent",system:"System",ai:"AI agent"},meetingStatus:{scheduled:"Scheduled",in_progress:"In progress",completed:"Completed",cancelled:"Cancelled",no_show:"No show"}},G={speech:{meeting_booked:"New meeting with {{name}} has been booked.",deal_assigned:"New deal {{name}} has been assigned to you.",deal_stage_changed:"Deal {{name}} is now in stage {{stage}}.",task_assigned:"New task {{name}} has been assigned to you.",activity_due:"Activity {{name}} is due.",mention:"{{name}} mentioned you.",fallback:"New notification.",someone:"someone",title:"Voice announcements",description:"Have new notifications read aloud by your browser.",enable:"Enable voice announcements",rate:"Speech rate",langInfo:"Language follows the portal language ({{lang}}). Voice availability depends on your browser/OS.",noVoice:"No {{lang}} voice found in your browser â please install a system voice.",notSupported:"Your browser does not support speech synthesis.",test:"Preview",testAll:"Play example",placeholderTitle:"Voice announcements (coming soon)",placeholderDesc:"Will be enabled after successful testing in the staff portal.",labels:{meeting_booked:"New meeting booked",deal_assigned:"Deal assigned",deal_stage_changed:"Deal stage changed",task_assigned:"Task assigned",activity_due:"Activity due",mention:"You were mentioned"}},title:"Notifications",markAllRead:"Mark all as read",empty:"No notifications",delete:"Delete",viewAll:"View all",justNow:"just now",deleteOne:"Delete",deleteAllConfirm:"Delete all notifications?",titleHeader:"Notifications",allRead:"Mark all read",deleteAllShort:"Delete",emptyFilter:"No matches for this filter",deleteAllSubtitle:"All {{count}} notifications will be permanently deleted.",deleteAllDone:"{{count}} notifications deleted.",soundOn:"Enable sound",soundOff:"Disable sound",filters:{all:"All",unread:"Unread",mention:"@-Mention",reminder:"Reminder",aiRisk:"AI risk"},dateGroups:{today:"Today",yesterday:"Yesterday",older:"Older"},stageShort:{request_received:"Request",requirements_clarified:"Requirements",supplier_found:"Supplier",eu_standards_met:"EU standards",offer_sent:"Offer",sample_payment_received:"Sample payment",sample_on_way:"Sample / Clarification",offer_accepted:"Accepted",deposit_received:"Deposit",production_underway:"Production",quality_control:"QC",final_payment_received:"Final payment",logistics_running:"Logistics",delivery_completed:"Delivery",completed_won:"Won",completed_lost:"Lost"},messages:{ownerAssigned:"{{count}} records were assigned to you",mentionInNote:"You were mentioned in a note",noteOnDeal:'New note on "{{dealTitle}}"',mentionInTaskComment:'You were mentioned in a task comment: "{{taskTitle}}"',dealStuckSla:'Deal "{{dealTitle}}" has been stuck for {{days}} day(s) past SLA in stage "{{stageLabel}}".'},leave:{requestCreated:"New leave request from {{name}}: {{type}} {{range}} ({{days}} d.)",decidedApproved:"Leave approved: {{type}} {{range}}",decidedRejected:"Leave rejected: {{type}} {{range}} â {{note}}"}},j={cockpit:{noData:"No data yet.",subtitle:"Structured analysis of the last 90 days.",title:"Win/Loss Cockpit",won:"Won",lost:"Lost",avgCycle:"Avg. sales cycle",topLossReason:"Top loss reason",daysValue:"{{count}} days",winRateTrendWeekly:"Win-rate trend (weekly)",winRate90d:"Win rate (90 days)",totalDealsCount:"{{count}} deals"}
11,outcomes:"Outcomes",insights:{runAnalysis:"Run analysis now",analysisCompleted:"Analysis completed."},settings:{subtitle:"Manage loss reasons and competitors."},analysisRunning:"Analysis runningâ¦",insightsSubtitle:"AI-generated patterns and coaching tips.",tabNew:"New",tabAll:"All",noInsights:"No insights yet. Start the analysis once outcomes have been captured.",outcomesSubtitle:"All captured deal outcomes.",allOutcomes:"All outcomes",allLossReasons:"All loss reasons",pleaseSelectLossReason:"Please choose a loss reason.",chooseReason:"Choose reason",chooseCompetitor:"Choose competitor",startAnalysisNow:"Start analysis now",structured90d:"Structured evaluation of the last 90 days.",noData:"No data yet.",lossReasonsAndCompetitors:"Loss reasons and competitor management.",noCompetitors:"No competitors captured yet.",competitorMatrix:{empty:"No competitors recorded yet."},lossReasons:{empty:"No data yet."},outcomesTitle:"Win/Loss outcomes",promptWonTitle:"Won â capture details",promptLostTitle:"Lost â capture details",promptWonDesc:"Please enter win factors to identify patterns.",promptLostDesc:"Please enter the loss reason to identify patterns.",captureWin:"Capture win factors",captureLoss:"Capture loss reason",badgeCaptured:"Win/Loss captured",table:{deal:"Deal",outcome:"Outcome",reason:"Reason / factors",competitor:"Competitor",arr:"ARR",cycle:"Cycle",date:"Date",empty:"No outcomes captured.",onlyWon:"Only won",onlyLost:"Only lost",rangeAll:"All",range30:"Last 30 days",range90:"Last 90 days",range180:"Last 180 days",range365:"Last year",range730:"Last 2 years",won:"Won",lost:"Lost",winRate:"Win rate"}},Q={groups:{support:"Support"},packageContract:{title:"Sourcing package contract",tierPlaceholder:"Select package",pricePlaceholder:"Price (EUR)",createCta:"Create contract",editCta:"Edit contract",missingCompany:"Please link a customer company to this deal first.",summary:"{{tier}} · {{price}} net â wizard prefilled with company, contact and scope.",draft:"Draft"},dealLinked:{sections:{sales:"Sales",procurement:"Procurement & Logistics",qualityService:"Quality & Service"},empty:"No {{label}} linked yet.",addAria:"Add {{label}}",viewAll:"Show all ({{count}})",panels:{quotes:"Quotes",invoices:"Invoices",payments:"Payments",creditNotes:"Credit notes",contracts:"Contracts",purchaseOrders:"Purchase orders",shipments:"Shipments",qc:"QC inspections",audits:"Audits",tickets:"Tickets",dunning:"Dunning notices",subscriptions:"Subscriptions",supplierInvoices:"Supplier invoices",products:"Products"},hints:{invoiceFirst:"Create an invoice first.",supplierFirst:"Add a supplier to the deal first.",overdueOpen:"{{n}} overdue",customerFirst:"Add a customer to the deal first."},fallback:{noNumber:"No number",draft:"Draft",shipment:"Shipment",inspection:"Inspection",payment:"Payment",contract:"Contract",defects:"{{count}} defects",noDefects:"No defects",score:"{{score}} pts",etaPrefix:"ETA",untilPrefix:"until",dunning:"Dunning notice",dunningLevel:"Level {{level}}",supplierInvoice:"Supplier invoice"},dealFilterChip:{label:"Filtered by deal",clear:"Clear filter"},dealCell:{header:"Deal",noDeal:"â"},products:{empty:"No products linked in this deal's documents yet.",editHint:"Open to edit",enlargePhoto:"Enlarge photo",add:"Add product",addedToQuote:"Product added to quote {{number}}.",autoQuoteCreated:"New draft quote created and product added.",attachError:"Could not link the product.",pickFromCatalog:"Choose from catalogue â¦",createNew:"Create new product",pickTitle:"Choose product from catalogue",pickDescription:"The selected product is added as a line item to this deal's draft quote.",pickPlaceholder:"Search product â¦"}},powerhouse:{cta:"Generate AI suggestion",label:"Powerhouse",aiError:"AI error"},agentPanel:{labels:{contacts:"Contacts agent",companies:"Companies agent",deals:"Deals agent"},scope:{contacts:"Contacts",companies:"Companies",deals:"Deals"},ragBadge:"RAG · Streaming",clearHistory:"Clear history",hint:"Ask the agent about current data â top 40 records are loaded as context.",emptyState:"Ask a question about the {{scope}} area.",thinking:"Thinkingâ¦",inputPlaceholder:"Type a questionâ¦"},powerhouseSections:{contacts:{kpi:{total:"Total contacts",newLast30:"New (30 days)",noOwner:"Without owner",cold:"Cold > 60 days"}
11,nextStep:{title:"Next action",desc:"Recommendation per contact: call, email or LinkedIn."},enrich:{title:"Smart enrichment",desc:"Plausibly fill in role, seniority and industry."},email:{title:"Personalise first email",desc:"Short first-touch in the recipient's tone."},segment:{title:"Segment briefing",desc:"Persona, pain and outreach hook in 4 bullets."}},companies:{kpi:{total:"Total companies",newLast30:"New (30 days)",noOwner:"Without owner",withoutOpenDeal:"Without open deal"},accountBrief:{title:"Account plan (1 page)",desc:"Levers, risks, stakeholders, next action."},newsRadar:{title:"News radar",desc:"Plausible trigger events as outreach hooks."},expansion:{title:"Growth signals",desc:"Translate job clusters and locations into a sourcing call."},competitor:{title:"Competitor overlap",desc:"Sketch likely suppliers and differentiation."}},deals:{kpi:{openCount:"Open deals",weighted:"Weighted value (EUR)",stuck:"Stuck > 14 days",closingSoon:"Closing ⤠30 days"},risk:{title:"Risk score",desc:"Top-3 drivers and one counter per driver."},nba:{title:"Next best action",desc:"Most impactful next action for stuck deals."},closePlan:{title:"Close plan",desc:"Mutual action plan up to close date."},stakeholder:{title:"Stakeholder brief",desc:"Buying-committee map with gap-closing strategy."}}},dealParties:{errors:{add:"Could not add link",remove:"Could not remove link",setPrimary:"Could not set primary contact",sessionExpired:"Session expired or account deactivated. Please sign in again."}}},z={entity:{label:"Billing entity",de:"DE GmbH",cn:"CN Ltd.",reverseChargeNote:"Reverse charge â VAT to be accounted for by the recipient. Supply from third country, 0% VAT.",wizardStepTitle:"Select billing entity",wizardStepDescription:"Auto-selected by product type. DE for services and subscriptions, CN for physical goods (0% VAT, reverse charge).",defaultCnHint:"Default is the Chinese entity. The German one is admin-only.",adminOnly:"Admin only",adminOnlyTooltip:"Only administrators may pick the German billing entity.",columnHeader:"Entity",selectLabel:"Invoicing company",selectPlaceholder:"Select company",cnShort:"China",deShort:"Germany",defaultsHint:"Currency {{currency}}, tax rate {{rate}} %",preferredLabel:"Invoicing company"},opsExtra:{customer:"Customer",daysLate:"Days late",daysLateNone:"On time",daysToDue:"Days to due",daysOverdue:"Days overdue",daysSinceInvoice:"Î Invoice (days)",provider:"Provider",conversion:"Conversion",reasonCode:"Reason",pctOfInvoice:"% of invoice",remainingDays:"Remaining",remainingDaysValue:"{{days}} d",expired:"Expired",duration:"Duration",signedAt:"Signed",notSigned:"Not signed",poNumber:"PO #",approvalStatus:"Approval",approvalApproved:"Approved",approvalPending:"Pending",fee:"Dunning fee",interest:"Interest",mrrContribution:"MRR contribution",nextPeriodEnd:"Next renewal",cancelAtBadge:"Ends {{date}}",customerSince:"Customer since",matchRate:"Match rate",suggestedInvoice:"Suggestion",counterpartyIban:"Counterparty IBAN",runningBalance:"Balance",importedBy:"Imported by",arr:"ARR",churnCandidates:"Churn candidates",avgCustomerAge:"Avg customer age (months)",avgPaymentDuration:"Avg payment duration (days)",overdueRate90d:"Late rate 90d",totalRevenue:"Total revenue",avgConversion:"Avg conversion",creditNoteQuota:"Credit note quota 90d",avgClaimDuration:"Avg claim duration",expiringSoon:"Expiring in 30d",signedRate:"Signed rate",contractMrr:"Contract MRR",openLiabilities:"Open liabilities",dueIn7Days:"Due in 7d",waitingApproval:"Waiting approval",avgDaysOverdue:"Avg days overdue",escalationLvl3Rate:"Level 3 escalation",recoveredAmount30d:"Recovered 30d",avgMatchRate:"Avg match rate",unmatchedAmounts:"Unmatched amounts",filterUnsigned:"Unsigned only",filterExpiring30:"Expiring in 30d",filterHasCancel:"Ends at period end",expandRow:"Show details",collapseRow:"Hide details"},skonto:{sectionTitle:"Early-payment discount",percent:"Discount %",days:"Within days",hint:"If paid within the period, the discount is auto-applied and dunning is paused.",deadline:"Discount valid until {{date}}",amount:"Discount amount: {{amount}}",pausedBadge:"Dunning paused (discount)",noneShort:"No discount"},overview:{title:"Overview",kicker:"Commerce",description:"Live status of revenue, open items, subscriptions and conversion.",kpiRevenueMtd:"Revenue MTD",kpiRevenueYtd:"Revenue YTD",kpiOpenInvoices:"Open invoices",kpiOverdue:"Overdue",kpiMrr:"MRR",kpiConversion:"Quote â Paid",briefingTitle:"Daily briefing",briefingDescription:"AI summary of revenue, risks and the action-required list.",overdueInvoices:"Overdue invoices",noOverdue:"No overdue invoices ð",expiringQuotes:"Quotes expiring soon",noExpiringQuotes:"No expiring quotes.",upcomingSubs:"Upcoming billings",noUpcomingSubs:"No subscriptions due."},products:{title:"Products",description:"Catalog with variants, supplier mapping and AI-supported pricing & copy.",create:"Add product",createFirst:"Add first product",empty:"No products yet.",edit:"Edit product",new:"New product",autoTranslating:"Translating â¦",nameDe:"Name (German)",nameEn:"Name (English)",nameEnHint:"Internal only for search â customer documents always show the German name.",primarySupplier:"Primary supplier",primarySupplierPlaceholder:"Search or create supplier â¦",newSupplier:"New supplier",supplierCreated:"Supplier created",supplierName:"Name",supplierCountry:"Country",supplierWebsite:"Website",supplierEmail:"Contact e-mail",supplierNotes:"Note",altSuppliersTitle:"Alternative suppliers",purchaseTiersTitle:"Purchase tiers",purchaseTiersBestOffer:"Best offer from {{qty}} {{unit}}: {{price}} {{currency}}",purchaseTiersNoTiers:"No tiers yet",purchaseTiersEmpty:"No tiers yet. A tier at MOQ will be created automatically.",purchaseTiersDraftHint:"Purchase tiers can be maintained after the first save.",purchaseTiersHint:"Different order quantities trigger different purchase prices. The base price applies from MOQ; additional tiers sit above it.",purchaseTiersNoMoq:'Please set an MOQ in the "Stammdaten" tab first so tiers have a valid starting point.',purchaseTiersAscendingWarning:"Tier at {{qty}} {{unit}} ({{price}} {{currency}}) is higher than the previous price ({{previousPrice}} {{currency}}). Tiers should not increase.",tierMinQty:"From qty",tierPriceNet:"Net price",tierCurrency:"Currency",tierNote:"Note",tierNotePh:"e.g. container price",tierMoqDefault:"Price at MOQ",tierCalculator:"Quantity calculator",tierCalculatorResult:"{{price}} {{currency}} ({{label}})",tierRanges:"Valid ranges",tierRangeFrom:"from {{from}}",tierRangeLabel:"{{from}} â {{to}}",tierBelowMoq:"Quantity must be ⥠MOQ ({{moq}}
11).",tierAdd:"Add tier",tierLocked:"Only team leads or admins can edit tiers.",tierLockedMoq:"Tier at MOQ cannot be deleted",purchasePriceAppliesFromMoq:"Price applies from MOQ of {{moq}} {{unit}}.",purchasePriceMissingMoq:"Please set an MOQ so the price has a valid quantity.",altSuppliersEmpty:"No alternative suppliers yet.",altSuppliersDraftHint:"Alternative suppliers can be added after the first save.",altSuppliersTooltip:"{{n}} alternative suppliers",addAltSupplier:"Add alternative supplier",altSupplierPrice:"Purchase price (net)",altSupplierCurrency:"Currency",altSupplierMoq:"MOQ",altSupplierLeadTime:"Production time (days)",altSupplierDupPrimary:"This supplier is already the primary supplier.",searchPlaceholder:"Search by name, SKU, categoryâ¦",powerhouseTitle:"Product copy & price suggestion",powerhouseDescription:"Let AI propose description, keywords or a price range.",powerhouseCta:"Generate suggestion",statusDraft:"Draft",statusActive:"Active",statusInactive:"Inactive",salesPrice:"Sales price (EUR)",purchaseAndMargin:"Purchase & margin",purchaseSectionTitle:"Purchase",marginMovedHint:"Margin and sales price are calculated in the deal or document wizard â based on the full order subtotal.",chinaVatRefundableLabel:"China export VAT refund eligible?",chinaVatRefundableHint:"For some product groups (e.g. glass) China does not refund the input VAT on export. This impacts the margin.",chinaVatRefundableYes:"Yes",chinaVatRefundableNo:"No",purchasePrice:"Purchase price",purchaseCurrency:"Currency",photos:"Product photos",photosSaveFirst:"Save the product first to upload photos.",photosDraftPending:"Preparing draftâ¦",addPhoto:"Add photo",removePhoto:"Remove photo",uploading:"Uploadingâ¦",images:{saveFirst:"Save the product first, then upload photos.",uploaded:"{{count}} photo(s) uploaded.",uploadFailed:"Upload failed",heicConverting:"Converting HEIC photo to JPEG â¦",heicFailed:"HEIC photo could not be converted. Please upload it as JPEG.",deleteFailed:"Delete failed",mainBadge:"Main image",dragHint:"Drag & drop to reorder. The first image is the main image.",reorderSaved:"Order saved.",zoomAlt:"Enlarge image",original:"Original",aiVersion:"AI version",aiPending:"AI processingâ¦",aiFailed:"AI processing failed",regenerate:"Regenerate",removeOriginal:"Remove original photo",removeOriginalTitle:"Delete original photo?",removeOriginalDescription:"The original photo and the matching AI version will be permanently removed. This action cannot be undone.",removeOriginalConfirm:"Delete",removeAi:"Remove AI version",splitHint:"Original on the left, AI version with white background on the right. The AI version is only used as the main image on documents after you approve it.",review:{needsReviewBadge:"Review",needsReview:"An AI version is waiting for your review.",accept:"Approve",accepted:"AI version approved.",reject:"Discard",rejected:"AI version discarded, original stays as main image.",autoRejected:"AI version was not applied. Please regenerate it or use the original."},quality:{tooSmall:"Image too small ({{w}} à {{h}} px). At least {{min}} px per side is required.",lowResWarn:"Low resolution ({{w}} à {{h}} px). Recommended: at least {{recommended}} à {{recommended}} px.",aspectWarn:"Unusual aspect ratio ({{aspect}}:1). A frontal view close to 1:1 works best â at this angle the AI may distort the product.",upscaled:"Small image ({{w}} à {{h}} px) â will be automatically upscaled to {{min}} px."},dropHere:"Drop photos here"},colSalesEur:"Sales (EUR)",colPurchaseCny:"Purchase (CNY)",colPurchaseEur:"Purchase (EUR, today)",colMargin:"Margin (EUR / %)",colNameDe:"Name (German)",colNameEn:"Name (English)",colNameEnUntranslatedHint:"English translation missing â currently identical to the German name.",colCustomer:"Customer",customer:"Customer",customerPlaceholder:"Search company â¦",customerHint:"One product (EAN) belongs to exactly one customer.",customerRequired:"Please select a customer.",inlineVariantsEmpty:"No variants yet â add them in the edit dialog.",manageVariants:"Manage variants",colVariantName:"Name / attributes",colPurchase:"Cost",colStock:"Stock",colReserved:"Reserved",autoSaveSaving:"Saving â¦",autoSaveSavedNow:"Saved",autoSaveSavedAgo:"Saved {{seconds}} s ago",autoSaveError:"Save failed",autoSaveIdle:"Changes are saved automatically.",autoSaveNewHint:"Will be created on save.",packaging:{title:"Packaging & logistics",productSection:"Single unit",productHint:"Dimensions and weight of a single product unit.",innerCartonSection:"Inner carton (optional)",innerCartonHint:"Smaller packaging unit inside the shipping carton â e.g. several units bundled together. Optional.",masterCartonSection:"Shipping carton (master)",masterCartonHint:"Shipped to the customer in this packaging. Required for freight calculation.",overpackSection:"Protective overpack (rare)",overpackHint:"Additional outer carton protecting the shipping carton â only needed in exceptional cases, e.g. for fragile goods.",procurementSection:"Procurement",procurementHint:"How long does the supplier need from order to delivery?",lengthMm:"Length (mm)",widthMm:"Width (mm)",heightMm:"Height (mm)",weightG:"Weight (g)",lengthCm:"Length (cm)",widthCm:"Width (cm)",heightCm:"Height (cm)",weightKg:"Weight (kg)",unitsPerInnerCarton:"Units per inner carton",unitsPerMasterCarton:"Units per shipping carton",masterCartonsPerOverpack:"Shipping cartons per overpack",productionLeadDays:"Production lead time (days)"},bulk:{selected:"{{count}} selected",setCategory:"Set category",setStatus:"Set status",setSupplier:"Set supplier",setCustomer:"Set customer",setSupplierTitle:"Set supplier for {{count}} product(s)",setSupplierDesc:"Choose a supplier. The change will be applied to all selected products.",setCustomerTitle:"Set customer for {{count}} product(s)",setCustomerDesc:"Choose a customer. The change will be applied to all selected products.",searchSupplier:"Search supplier â¦",searchCustomer:"Search customer â¦",previewLabel:"Affected products ({{count}})",andMore:"and {{count}} more",confirm:"Apply",delete:"Delete",clear:"Clear selection",deleteConfirm:"Delete {{count}} product(s)?",categoryUpdated:"Category updated for {{count}} product(s).",statusUpdated:"Status updated for {{count}} product(s).",supplierUpdated:"Supplier updated for {{count}} product(s).",customerUpdated:"Customer updated for {{count}} product(s).",deleted:"{{count}} product(s) deleted.",setParent:"Set main product",setParentTitle:"Set main product for {{count}} item(s)",setParentDesc:"Choose the main product. The selected items will be assigned as accessories.",parentUpdated:"Main product set for {{count}} item(s)"},fxRateInfo:"Rate from",fxRateLoading:"Loading FX rates â¦",fxRateError:"FX rate unavailable",fxRateSource:"Source: ECB via frankfurter.app",fxRateLine:"Exchange rate from {{date}}: 1 EUR = {{cny}} CNY · {{usd}} USD",salesPriceCurrency:"Input currency",units:{pcs:"pcs",set:"Set",pair:"Pair",pack:"Pack",box:"Box",carton:"Carton",pallet:"Pallet",kg:"Kilogram",g:"Gram",l:"Liter",ml:"Milliliter",m:"Meter",cm:"Centimeter",m2:"Square meter",m3:"Cubic meter",hour:"Hour",day:"Day",man_day:"Man-day",project:"Project",product:"Product",supplier:"Supplier",order:"Order",audit:"Audit",sample:"Sample",tool:"Tooling",shipment:"Shipment",package:"Package"},categories:{raw_material:"Raw material",component:"Component",finished_good:"Finished good",packaging:"Packaging",tooling:"Tooling / mould",sample:"Sample",spare_part:"Spare part",accessory:"Accessory",service:"Service",non_inventory:"Non-inventory"},skuAutoPlaceholder:"Generated automatically (MCS-â¦)",skuAutoHint:"A sequential MCS number is assigned automatically when you save.",nameRequired:"Please enter a product name (German).",moqRequired:"Please enter a minimum order quantity (MOQ).",discardedNoName:"{{n}} product(s) without a name were discarded.",skuPackageHint:"Package SKU is fixed and cannot be changed.",marginBasisHintRefundable:"Margin is calculated on the net price (ä¸å«ç¨) â input VAT is refunded on export from China.",marginBasisHintNotRefundable:"Margin is calculated on the gross price (å«ç¨) â China does not refund input
11VAT for this product group.",ai:{doneToastDetailed:"AI recognised {{candidates}} item(s) and imported them into {{slots}} slot(s). Switch between the slots above to review each product.",mergedToVariants:"{{rows}} rows were merged into {{groups}} product groups (variants detected). Please review the variants.",createSupplier:"Create as new supplier",supplierSuggestions:"Did you mean:",analyze:"Analyze",customerSet:"Customer price was set manually.",dealsFound:"Open deals with this supplier:",fillButton:"Fill from document",hint:"AI suggestions are based on historical data and supplier offers.",noDeals:"No matching offers found.",supplierUnknown:"No supplier recognized in document",title:"Analyze Offer"},usage:{title:"Usage",quotes:"Quotes",invoices:"Invoices",contracts:"Contracts"},columns:{deals:"Deals",customer:"Customer",parentProduct:"Belongs to"},customerLabel:"Customer",barcode:{section:"Customer EAN & Barcode",eanLabel:"Customer EAN / Barcode",placeholder:"e.g. 4006381333931",invalidFormat:"EAN must have 8, 12, 13 or 14 digits.",autoGenerated:"Barcode is auto-generated. Custom image optional.",usingUploaded:"A custom barcode image is set.",enterEan:"Enter a valid EAN for auto-barcode.",dropHint:"Drop image here or upload",upload:"Upload barcode image",download:"Download barcode",remove:"Remove custom image",uploaded:"Barcode image uploaded.",invalidFile:"Image files only.",saveFirst:"Please save the draft first."},countryOfOrigin:"Country of origin",countryOfOriginHint:"Sets customs and origin info on documents. Default: China.",hsCodeLabel:"HS code (customs tariff number)",hsCodeHint:"8-digit EU CN code. Required for customs documents and supplier POs.",hsCodeSuggest:"Suggest",colMarginPct:"Std. margin %",colTargetSell:"Target price from (EUR)",targetSellTip:"Indicative value. The actual sales price is set in the quote.",colVariants:"Variants",colLastSold:"Last sold",colEkAge:"Cost freshness",colCountry:"Origin",colHsCode:"HS code",kpiAvgMargin:"Avg. std. margin %",kpiStockValue:"Stock value (cost)",hsCode:{title:"HS code suggestion",desc:"AI-based classification using the EU Combined Nomenclature (8-digit). When in doubt, verify at zolltarifnummern.de.",loading:"Generating suggestions â¦",nameRequired:"Please enter the German product name first.",noResult:"No suggestions received.",error:"HS code suggestion failed",refresh:"Refresh"},parentLabel:"Belongs to product",parentHint:"Accessories, components and packaging are assigned to their main product.",parentPlaceholder:"Search main product â¦",accessoriesInlineTitle:"Accessories",accessoriesTitle:"Accessories & components",accessoriesEmpty:"No accessories are assigned to this product yet.",accessoryAdd:"Assign accessory â¦",accessoryAdded:"Accessory assigned",accessoryRemove:"Remove assignment",accessoryRemoved:"Assignment removed",previewImage:"Open image preview",qualityLabel:"Quality level",qualityHint:"Basis for the Premium label in quotes.",serviceHint:"Service",tierCalcProductFallback:"Product",tierCalcExportCsv:"Export CSV",tierCalcCopy:"Copy to clipboard",tierCalcCopied:"Calculation copied to clipboard.",tierCalcCopyFailed:"Copying failed.",tierCalcUnitPrice:"Unit price",tierCalcTotal:"Total cost",tierCalcBelowMoq:"Quantity is below the MOQ of {{moq}} {{unit}}. At MOQ: {{total}} {{currency}} total.",tierCalcUpgrade:"{{addQty}} {{unit}} more to reach {{nextQty}} â {{price}} {{currency}}/unit, saving {{savings}} {{currency}} in total.",tierCalcUpgradeNotWorth:"Next tier at {{nextQty}} {{unit}} costs {{total}} {{currency}} in total â increasing the quantity is not worthwhile.",tierCalcOverview:"Request overview",tierCalcColRange:"Quantity",tierCalcColTotal:"Total at min. qty",batch:{addSlot:"Another product",loadFailed:"Slot could not be loaded.",saveAll:"Save All"},colMoq:"MOQ",moqHint:"Smallest order quantity accepted by the main supplier.",moqLabel:"Minimum Order Quantity (MOQ)",pricelistDownload:"Price list (PDF)",pricelistError:"The price list could not be loaded. Please try again.",downloadLog:{title:"Price list downloads (log)",loading:"Loading log â¦",empty:"No downloads logged yet.",unknownUser:"Unknown",sourceCustomer:"Customer portal",sourceEmployee:"Employee portal",hash:"Checksum"},servicesButton:"Services",servicesDialogTitle:"Services",servicesDialogDescription:"Packages and individual services at a glance. Click a tile to edit.",servicesEmpty:"No services found.",serviceNoDescription:"No description yet.",servicePackageBadge:"Package",serviceSegments:{packages:"Packages",sourcing:"Suppliers & Sourcing",quality:"Quality & Inspection",compliance:"Compliance & Certification",development:"Development & Packaging",logistics:"Logistics & Customs",consulting:"Consulting & On-site",other:"Other"},tabs:{varianten:"Variants"}
11,colListPrice:"List price (net)",priceIndividual:"Individual",salesSectionTitle:"Sales",listPriceLabel:"List price net",perUnit:"per",pricelistSource:"Price comes from the price list ({{price}}).",pricelistDrift:"Differs from the price list ({{price}}). Please align price list and catalogue.",pricelistIndividual:"Listed as âIndividualâ in the price list.",accessoryOpen:"Edit accessory",accessoryBack:"Back to {{name}}",photosBeforeDraft:"The draft is created automatically with the first photo.",keptWithImages:"{{n}} draft(s) with photos were kept. Please add a product name."},quotes:{title:"Quotes",description:"Status pipeline, AI suggestions and quick quote creation.",create:"Create quote",empty:"No quotes yet.",edit:"Edit quote",new:"New quote",number:"No.",numberLong:"Quote number",numberHint:"Quote numbers are assigned sequentially and cannot be changed (GoBD).",validUntil:"Valid until",sum:"Total",convert:"Convert to invoice",convertConfirm:"Convert quote {{number}} into a new invoice?",deleteDraftConfirm:"Permanently delete draft {{number}}?",lockArchived:"Issued quotes must be retained (GoBD).",lockAdminOnly:"Only administrators may delete drafts.",lockContinued:"in process",powerhouseTitle:"Matching products & copy blocks",powerhouseDescription:"AI suggests fitting line items and arguments based on the customer / deal.",previewTitle:"Quote {{number}}",downloadFilename:"Quote_{{number}}",downloadNoNumber:"no-number",version:"Version",createdAt:"Created",viewPdf:"View PDF",duplicateVersion:"Duplicate as new version",validityFilter:"Valid until",validityActive:"Active",validityExpired:"Expired",validityNext7:"Expires in 7 days",validityNext30:"Expires in 30 days",statusRejected:"Rejected",acceptanceRate:"Acceptance rate",avgValue:"Avg. quote value",validityDays:"days",validityPreset7:"7 days",validityPreset14:"14 days",validityPreset30:"30 days",validityCustom:"Custom",logisticsSectionTitle:"Production & Transport",logisticsSectionHint:"Production and transport times for the calculation.",copyAsNew:"Create new quote from this one",copyAsNewShort:"Use as template",copyAsNewDone:"New quote created from template",copyAsNewDesc:"{{count}} line items copied.",copyAsNewFailed:"Quote could not be copied",positionsCount:"Line items",invoiceCol:"Invoice",supplierSets:"Manufacturers",marginPct:"Margin %",owner:"Owner",updatedAt:"Last changed",extra:{owner:"Owner (creator)",ownerHint:"Default: the person who created the quote.",customerReference:"Your Order Number / Reference",discountPct:"Additional Discount %",discountPctHint:"Applied to the net total in addition to position discounts.",footerText:"Footer text (bank, T&C notice, â¦)",headerText:"Header text (appears above items)",insertDefaultText:"Insert default text",internalNotes:"Internal notes (not in PDF)",paymentTerms:"Payment terms",paymentTermsCustom:"Custom â¦",paymentTermsFreePlaceholder:"e.g. 30% down payment on order, 70% before shipment",paymentTermsPlaceholder:"Select payment terms â¦",pdfLanguage:"PDF language",salutation:"Salutation in quote",salutationHint:"Leave blank: The salutation will be automatically generated from the contact person.",salutationPlaceholder:"e.g. Dear Mr. Schätz,",sectionHint:"Optional â Payment terms, discount, salesperson, texts",sectionTitle:"Additional quote details",salutationPick:"Choose salutation â¦",depositPct:"Down payment %"},openValue:"Open volume",statusAccepted:"Accepted",statusSent:"Sent",validityPlaceholder:"Select period",validation:{pleaseFix:"Please fix ({{count}})",hints:"Notes ({{count}})",jumpToField:"Jump to field"},convertConfirmHint:'The quote is kept and set to "Accepted". The new invoice is created as a draft.',convertConfirmAction:"Create invoice",billingSectionTitle:"Billing status and invoices",billing:{orderValue:"Order value",invoiced:"Already invoiced",open:"Remaining amount",overbilled:"More has been invoiced than the quote covers. Please review the invoices.",none:"No invoice has been created for this quote yet.",draft:"Draft",paid:"Paid"},convertChoice:{title:"Create invoice from quote {{number}}",description:"This quote includes a {{pct}}% down payment. Please choose what to invoice.",deposit:"Create down payment invoice ({{pct}}% = {{amount}})",full:"Create full invoice (100% = {{amount}})"}},invoices:{title:"Invoices",description:"Status overview, dunning triggers and AI risk score per invoice.",create:"Create invoice",createFirst:"Create first invoice",empty:"No invoices yet.",edit:"Edit invoice",new:"New invoice",due:"Due",paid:"Paid",open:"Outstanding",sum:"Total",paymentsCol:"Payments",quoteCol:"Quote",stornoTitle:"Create cancellation credit note",stornoPrompt:`Cancel invoice {{number}}? 12Reason (optional):`,storno:"Cancel",deleteDraftConfirm:"Permanently delete draft {{number}}?",lockAdminOnly:"Only administrators may delete documents",powerhouseTitle:"Dunning text & risk score",powerhouseDe
12scription:"AI drafts polite but firm dunning texts and estimates default risk.",dueDate:"Payment terms",paymentsHeading:"Payments ({{count}})",openInPayments:"Open in payments",noPayments:"No payments recorded yet.",addPayment:"Record payment",deletePaymentConfirm:"Delete payment?",previewTitle:"Invoice {{number}}",downloadFilename:"Invoice_{{number}}",downloadNoNumber:"no-number",kpis:{openTotal:"Open receivables",openCount:"Open invoices",overdueTotal:"Overdue",overdueCount:"Overdue invoices",dso:"Avg payment days",topDebtor:"Top debtor"},ai:{cashflowTitle:"Cash-flow forecast",cashflowDesc:"AI predicts inflows for 14 / 30 / 60 days.",summaryTitle:"Receivables briefing",summaryDesc:"Daily overview of open items, top debtors and actions.",escalationTitle:"Dunning escalation",escalationDesc:"Which escalation level fits now?",skontoTitle:"Discount coach",skontoDesc:"Does cash discount pay off here?"},bank:{empty:"No bank details have been stored for this company yet.",fromEntity:"Stored with the invoicing company",holder:"Account Holder",manage:"Manage Bank Details",overrideHint:"This information takes precedence and will appear in the invoice PDF.",overrideLabel:"Alternative Bank Details (optional)",overridePh:"Only fill in if this invoice should be paid to a different account.",sectionTitle:"Bank Details"},createCreditNote:"Create Credit Note",extra:{sectionTitle:"Additional Invoice Details"},paymentAmount:"Payment amount",paymentPresetLabel:"Preset",paymentPresetCustom:"Custom",paymentsSectionTitle:"Payments",paymentStatus:"Payment Status",statusOpen:"Open",statusOverdue:"Overdue",statusPaid:"Paid",takeOpenAmount:"Take Remaining Amount",bankMissingTitle:"Bank details missing",bankMissingCnHint:"Invoices from the Chinese company require bank details. Please add them in the settings (billing companies).",bankMissingGoSettings:"Go to billing companies",originSectionTitle:"Origin, document type and terms",origin:{fromQuote:"Created from quote",orderValue:"Order value",invoiced:"Already invoiced",open:"Remaining amount",kind:"Document type",quote:"Quote",unlinked:"This invoice is not linked to any quote.",suggestion:"Suggestion: {{description}} â {{amount}} net.",orderNet:"Total order value (net)",depositDue:"Deposit due ({{pct}} %)",balanceDue:"Remaining balance",depositKeepsItems:"All line items stay intact. Deposit and remaining balance are shown additionally in the PDF."},numberLong:"Invoice number",numberAuto:"Assigned automatically",numberHint:"The invoice number is assigned automatically when the invoice is finalized.",copyAsNewDone:"Invoice duplicated",copyAsNewDesc:"{{count}} line items copied. The draft is open.",copyAsNewFailed:"Duplicating failed",copyAsNewShort:"Duplicate as new invoice",createCreditNoteShort:"Create cancellation credit note"},payments:{title:"Payments",description:"Capture incoming payments, reconcile invoices.",create:"Record payment",empty:"No payments yet.",emptyForInvoice:"No payments recorded for this invoice yet.",edit:"Edit payment",new:"New payment",filteredByInvoice:"Filtered by invoice",selectInvoice:"Select invoiceâ¦",fxOnDate:"Daily rate from {{date}}: 1 EUR = {{rate}} {{currency}}.",fxFallback:"Using rate from {{date}} (nearest business day, 1 EUR = {{rate}} {{currency}}).",fxMissing:"No FX rate available â please enter rate manually.",powerhouseTitle:"Auto-match suggestion",powerhouseDescription:"AI matches amounts to open invoices (amount + date + reference).",kpis:{mtdTotal:"Inflows MTD",mtdCount:"Payments MTD",matchedPct:"Match rate",unmatched:"Unmatched"},ai:{summaryTitle:"Treasury briefing",summaryDesc:"Daily report on inflows, match rate and anomalies.",bulkMatchTitle:"Bulk matching",bulkMatchDesc:"AI matches several payments to open invoices.",anomalyTitle:"Anomaly check",anomalyDesc:"Spot duplicate or off-amount payments."},amountEur:"Amount in EUR",fillOpenAmount:"Take over remaining amount",matched:"Matched",openAmount:"Open Amount",overpaidWarn:"Amount exceeds the open invoice amount.",receipt:"Receipt",receiptOpen:"View Receipt",receiptOpenFailed:"Could not open receipt.",receiptTooLarge:"File too large (max. 10 MB).",receiptUpload:"Upload Receipt",receiptUploaded:"Receipt uploaded."}
12,paymentLinks:{title:"Payment links",description:"Manage and send external payment links (Stripe, PayPal etc.) centrally.",create:"Create link",createFirst:"Create first link",empty:"No payment links yet.",edit:"Edit link",new:"New payment link",label:"Label",uses:"Uses",expires:"Expires",maxUses:"Max uses",powerhouseTitle:"Generate standard links",powerhouseDescription:"AI suggests links for open invoices or typical packages.",kpis:{active:"Active links",revenue:"Revenue (uses·amount)",avgConversion:"Avg conversion",expiringSoon:"Expiring soon"},ai:{optimizeTitle:"Conversion optimization",optimizeDesc:"AI analyzes Performance and suggests levers.",personalizeTitle:"Personalization",personalizeDesc:"Generate a customer-specific description.",followupTitle:"Follow-up mail",followupDesc:"Reminder text for unused links."},clicks:"Clicks",descriptionField:"Description",descriptionPlaceholder:"What the link applies to â used in the email template.",lastUsed:"Last Used",mailSubject:"Your Payment Link",provider:"Provider",qrAlt:"QR Code Payment Link",qrEmpty:"Enter URL to generate a QR code.",qrHint:"QR code for sharing via print or screen.",shareMail:"Share via Email",statusConsumed:"Consumed",tracking:"Tracking"},creditNotes:{title:"Credit notes & cancellation invoices",description:"Cancellation and refund documents with traceable reason.",create:"Create credit note",createFirst:"Create first credit note",empty:"No credit notes yet.",edit:"Edit credit note",new:"New credit note",number:"No.",numberLong:"Number",numberAuto:"(auto-assigned on save)",numberHint:"Document numbers are issued sequentially and immutable (GoBD).",reason:"Reason",deleteConfirm:`Permanently delete credit note {{number}}? 13 14Note: Deletion is generally not permitted under GoBD.`,adminTitle:"Credit notes must be retained (GoBD).",selectInvoice:"Select invoiceâ¦",powerhouseTitle:"Reason text & consistency check",powerhouseDescription:"AI drafts a clean reason text and checks amounts against the invoice.",previewTitle:"Credit note {{number}}",downloadFilename:"CreditNote_{{number}}",downloadFilenameNoNumber:"no-number",kpis:{mtdTotal:"Volume MTD",mtdCount:"items",open:"Open",settled:"Settled",topReason:"Top reason"},ai:{summaryTitle:"Credit notes briefing",summaryDesc:"AI overview of volume, status and top reasons.",classifyTitle:"Classify reasons",classifyDesc:"Categorize claim/discount/cancellation/goodwill.",followupTitle:"Follow-up mail",followupDesc:"Friendly customer note after credit note."},amountFromPositions:"from positions",statusIssued:"Issued",tabAll:"All",tabCredit:"Credit notes",tabStorno:"Cancellation invoices",typeCol:"Document type",typeCredit:"Credit note",typeStorno:"Cancellation invoice",linkedStorno:"This invoice has been cancelled.",linkedCredit:"Credit notes exist for this invoice.",openDoc:"Open document",createStorno:"Create cancellation invoice",stornoPromptShort:"Create cancellation invoice. Reason (optional):"},subscriptions:{title:"Subscriptions",description:"Recurring revenue, MRR and churn risk score per subscription.",create:"Add subscription",createFirst:"Add first subscription",empty:"No subscriptions yet.",edit:"Edit subscription",new:"New subscription",plan:"Plan",interval:"Interval",nextBilling:"Next billing",start:"Start",monthly:"monthly",quarterly:"quarterly",yearly:"yearly",powerhouseTitle:"Churn risk & upsell",powerhouseDescription:"AI scores cancellation likelihood and suggests upsell options.",assistant:"Assistant",kpis:{mrr:"MRR",active:"Active subs",churn30:"Churn 30d",cancelled:"cancelled",renewals14:"Renewals â¤14d"},ai:{forecastTitle:"MRR forecast",forecastDesc:"AI predicts MRR at 3/6/12 months.",upsellTitle:"Upsell opportunities",upsellDesc:"Identifies switches to annual or plan upgrades.",churnTitle:"Churn risk",churnDesc:"Scores risk and suggests retention actions.",renewalTitle:"Renewal email",renewalDesc:"Friendly email with a clear renewal CTA."},autoInvoice:"Generate invoice automatically",autoInvoiceHint:"Create an invoice at each due date.",cancelAtPeriodEndHint:"The subscription runs until the next billing period and then ends automatically.",cancelAtPeriodEndLabel:"Cancel at period end",cancellationReason:"Cancellation reason",cancelReason:{nicht_genutzt:"Not used",preis:"Price",projektende:"Project end",qualitaet:"Quality",sonstiges:"Other",wechsel_anbieter:"Switch to another provider"},endsAt:"Contract end",mrr:"MRR",mrrPreview:"MRR preview",notesPlaceholder:"Internal notes, e.g., special conditions.",pause:"Pause",resume:"Resume",trial:"Trial",trialEnds:"Trial ends"},templates:{title:"Templates",description:"Editor with live preview for quote, invoice and credit note templates. Variables like {{number}} or {{items_table}} are replaced automatically on send.",newTemplate:"New template",editTemplate:"Edit template",list:"Templates ({{count}})",search:"Searchâ¦",noTemplates:"No templates. Create the first one.",emptyHint:"Select a template on the left to edit or create a new one.",default:"Default",inactive:"inactive",asDefault:"Make default",duplicate:"Duplicate",delete:"Delete",deleteTitle:"Delete template?",deleteDesc:'"{{name}}" will be permanently deleted. Already sent documents are not affected.',name:"Name",kind:"Document type",descriptionInternal:"Description (internal)",de
14scriptionPlaceholder:"e.g. Standard quote with terms reference",active:"Active (selectable on send)",defaultFor:"Default for {{kind}}",afterSave:"(after saving)",tabSplit:"Editor + preview",tabMarkdown:"Markdown only",tabPreview:"Preview only",markdownContent:"Markdown content",placeholdersHint:"Available placeholders:",kindQuote:"Quote",kindInvoice:"Invoice",kindCreditNote:"Credit note",kindNamed:"{{kind}} â New template",errNameMissing:"Name missing",errBodyMissing:"Content missing",kpis:{total:"Templates total",unused90:"Unused > 90 days",missingLangs:"Missing languages",lastUpdated:"Last updated"},ai:{optimizeTitle:"Copy optimisation",optimizeDesc:"AI makes templates clearer and more professional (placeholders preserved).",translateTitle:"Translation DEâZH",translateDesc:"Translates templates, placeholders are preserved exactly."},tabEmail:"Email text",emailSubject:"Subject of the accompanying email",emailSubjectPh:"Quote {{number}} â Mr China Supply",emailBody:"Message of the accompanying email",emailBodyPh:`{{salutation}} 15 16thank you for your enquiry. Please find our quote {{number}} attached.`,emailHint:"Available placeholders:"},powerhouse:{overview:{kpi:{revenueMtd:"Revenue MTD",openInvoices:"Open invoices",overdue:"Overdue",mrr:"MRR (subs)"},cards:{daily:{title:"Daily briefing",desc:"Top 3 actions today across commerce hubs."},anomaly:{title:"Anomaly scan",desc:"Notable changes vs. 30-day average."},cashflow:{title:"Cashflow 30 / 60 / 90 days",desc:"Forecast of inflows and outflows."}}},product:{kpi:{active:"Active products",avgMargin:"Avg margin",total:"Total catalogue",noPrice:"Without list price"},cards:{pricing:{title:"List price recommendation",desc:"Price suggestion with min/max range and rationale."},bundle:{title:"Cross-/up-sell bundles",desc:"3â5 bundle suggestions with target price."},description:{title:"Description DE/EN/ZH",desc:"Marketing text in three languages."},seasonality:{title:"Seasonal demand 90 days",desc:"Monthly forecast with confidence."}}},quote:{kpi:{open:"Open quotes",openValue:"Open value (EUR)",avgReply:"Avg reply time",winRate:"Win rate 90 days",days:"days"},cards:{draft:{title:"Quote draft from brief",desc:"Creates 3â5 line items plus text from a customer brief."},pricing:{title:"Optimise price & discount",desc:"Suggestion to increase win probability."},followup:{title:"Follow-up sequence (day 3 / 7 / 14)",desc:"3-step reminder emails with clear CTA."},win:{title:"Win probability",desc:"Score with drivers and risks for the top quote."}}}},nav:{overview:"Overview",products:"Products",quotes:"Quotes",invoices:"Invoices",payments:"Payments",paymentLinks:"Payment Links",creditNotes:"Credit Notes",subscriptions:"Subscriptions",templates:"Templates",contracts:"Purchase Contracts",supplierInvoices:"Supplier Invoices",dunning:"Dunning",powerhouse:"Commerce Powerhouse"},common:{save:"Save",delete:"Delete",edit:"Edit",cancel:"Cancel",loading:"Loadingâ¦",deleteConfirm:"Delete?",deleteConfirmHard:"Really delete?",noData:"No data yet.",yes:"Yes",no:"No",search:"Searchâ¦",status:"Status",amount:"Amount",date:"Date",name:"Name",customer:"Customer",invoice:"Invoice",reference:"Reference",method:"Method",price:"Price",currency:"Currency",category:"Category",description:"Description",unit:"Unit",supplier:"Supplier",photo:"Photo",filtersClear:"Clear filter",urlCopied:"URL copied",loadingShort:"Loadingâ¦",admin:"Admin",all:"All",draft:"Draft",noneYet:"None yet",by:"Send by email",saveDraft:"Please save first, then you can add line items.",amountAuto:"Amounts are calculated automatically from line items.",amountAutoInvoice:"Amounts are calculated from line items. Paid amount and status are derived from recorded payments.",net:"Net",tax:"Tax",total:"Total",openAmount:"Outstanding",paidAmount:"Already paid (auto)",notes:"Notes",add:"Add",filterStatus:"Status",notAuthenticated:"Not signed in",downloadFailed:"Download failed",importFailed:"Import failed",close:"Close",saveError:"Saving failed",copy:"Copy",done:"Done",download:"Download",none:"None",payment:"Payment",selectCustomer:"Select customerâ¦",selectReason:"Select reasonâ¦",statusActive:"Active",statusDraft:"Draft"},components:{powerhouseSuffix:"Commerce powerhouse",ctaDefault:"Generate AI suggestion",errorGeneric:"Error",datePickerPlaceholder:"Pick date",duePickerPlaceholder:"Pick payment terms",duePresetDays:"{{days}} days â {{date}}",dueCustom:"Custom",dueLabelPreset:"{{days}} days â {{date}}",dueLabelCustom:"Custom â {{date}}",consistencyOk:"Amounts match the line items.",consistencyError:"Calculation mismatch",consistencyHint:"Note on amounts",consistencyPoints_one:"item",consistencyPoints_other:"items",consistencyExpected:"Expected",consistencyActual:"Actual",sendLogTitle:"Send log",sendLogEntries_one:"entry",sendLogEntries_other:"entries",sendLogLoading:"Loading logâ¦",sendLogEmpty:"No send entries yet for this document.",sendLogTemplate:"Template:",sendLogSubject:"Subject:",sendLogTrackingId:"Tracking ID:",sendLogStatusSent:"Sent",sendLogStatusFailed:"Failed",sendLogStatusQueued:"Queued",varInspectorNoVars:"This template uses no variables.",varInspectorTitle:"Template variables",varMissing_one:"missing",varMissing_other:"missing",varComplete:"Complete",varUnknown:"unknown variable",varMissingValue:"â missing â",varEmpty:"(empty)",statusAktiv:"Active",statusInaktiv:"Inactive",statusEntwurf:"Draft",statusGesendet:"Sent",statusAkzeptiert:"Accepted",statusAbgelehnt:"Rejected",statusAbgelaufen:"Expired",statusOffen:"Open",statusTeilbezahlt:"Partially paid",statusBezahlt:"Paid",statusUeberfaellig:"Overdue",statusStorniert:"Cancelled",statusDeaktiviert:"Disabled",statusVerbraucht:"Used up",statusAusgestellt:"Issued",statusVerrechnet:"Settled",statusPausiert:"Paused",statusGekuendigt:"Cancelled",statusTrial:"Trial",consistencyPoints:"Consistency hints",sendLogEntries:"Send-log entr
16ies",varMissing:"Variable missing",dueImmediate:"Due immediately"},positions:{title:"Items",addPosition:"Item",firstAdd:"Add first item",none:"No items yet.",deleteConfirm:"Delete item â{{name}}â?",col:{pos:"#",name:"Name",description:"Description",qty:"Qty",unit:"Unit",unitPrice:"Unit price",taxRate:"Tax %",total:"Total"},sortAscDesc:"Sort: {{label}} ascending (click: descending)",sortDescReset:"Sort: {{label}} descending (click: reset)",sortBy:"Sort by {{label}}",sortedBy:"Display sorted by",applyOrder:"Apply order",applyOrderTitle:"Save current sort as new order",reset:"Reset",resetTitle:"Back to manual order",firstSaveHint:"Please save first, then items can be added.",placeholders:{name:"Name",description:"Description *"},actions:{save:"Save",cancel:"Cancel",up:"Move up",down:"Move down",edit:"Edit",delete:"Delete"},sortLabels:{position:"Position",name:"Name",qty:"Qty",unitPrice:"Unit price",lineTotal:"Total"},selectedProduct:"Product linked",changeProduct:"Change product",options:{name:"Manufacturer",chosen:"Our recommendation",setChosen:"Set as recommendation",add:"Add manufacturer",duplicate:"Copy this manufacturer",rename:"Rename",delete:"Delete manufacturer",deleteConfirm:"Delete this manufacturer with all line items?",derivedHint:"Manufacturer is derived from the product",pickupChange:"Change",needsRecommendation:"Please mark one manufacturer as the recommendation before finalising the quote.",badge:{recommended:"Recommended",priceWinner:"Best price",fastest:"Fastest delivery",premium:"Premium"},moq:"MOQ",days:"days",quality:"Quality"},resetWidths:"Reset widths",belowMoq:"Below Minimum Order Quantity",ekShort:"Cost",moqShort:"MOQ",productPickerPlaceholder:"Search product â¦",toggleInternal:"Show internal info",tierFrom:"from {{qty}} pcs",option:"Option {{no}}",optionsLabel:"Options",optionAdd:"Add option",optionRename:"Rename option",optionRemove:"Delete option",optionTitlePlaceholder:"Option title",deleteOptionConfirm:"Delete option {{no}} including all line items?",optionRecommendation:"Our recommendation",priceFixed:"Fixed price",resetToAutoCalc:"Reset to automatic cart calculation",noPurchasePrice:"No net purchase price set",saving:"Savingâ¦",manualPriceHint:"Manually set price â applies only to this quote. Automatic calculation is disabled for this line; the product catalog remains unchanged.",unitFromProduct:"Use product unit",unitNone:"No unit"},send:{kindLabel:{quote:"Quote",invoice:"Invoice",credit_note:"Credit note"},dialogTitle:"Send {{kind}} {{number}} by email",blocked:"Send blocked: no active template for â{{kind}}â",blockedHint:"For legal and design reasons a document can only be sent with an approved template. Create a template for {{kind}} now or activate an existing one.",steps:{s1Prefix:"Open",s1Path:"Commerce â Templates",s1Suffix:".",s2Prefix:"Choose the tab",s2Action:"and click",s2New:"New template",s2Suffix:"(or duplicate an existing one).",s3Prefix:"Set it to",s3Active:"Active",s3Mid:"and optionally as",s3Default:"Default",s3Suffix:".",s4:"Save â it will then appear here."},createTemplate:"Create template",cancel:"Cancel",tabForm:"Compose",tabPreview:"Preview",tabLog:"Log",queuedTitle:"Email handed to delivery queue",queuedAt:"To {{recipient}} · {{date}}",trackingId:"Tracking ID:",copyTracking:"Tracking ID copied",copyError:"Copy failed",statusInDelivery:"Status:",statusInDeliveryValue:"In delivery",statusInDeliveryHint:"â updates (sent / failed) appear in the tab",labelTemplateFor:"Email template ({{kind}})",templateLoading:"Loadingâ¦",templatePlaceholder:"Choose templateâ¦",defaultBadge:"Default",activeForSend:"Active template for sending:",usesVars_one:"Uses {{count}} variable",usesVars_other:"Uses {{count}} variables",missingValues:"{{count}} without value",livePreviewIn:"· Live preview in tab",previewTab:"Preview",noActiveTemplate:"No active template for â{{kind}}â â send blocked. See note above.",recipient:"Recipient",recipientPh:"[email protected]",subject:"Subject",subjectHint:"Note: the final subject is set by the system using {{kind}} and number.",greeting:"Cover text",attachLabel:"Also attach {{kind}} as PDF",attachHint:"Generates the PDF from the chosen template and adds it as a secure download link in the email (link valid 7 days). Recommended for sending to customers.",previewTo:"To:",previewSubject:"Subject:",previewTemplate:"Template:",previewAttachment:"Attachment:",attachmentYes:"PDF download link will be added",attachmentNo:"no PDF attachment",resolvedVars:"Resolved variables ({{count}}
16)",allSet:"All set",missingHint:"Missing values are highlighted red in the preview and replaced with âââ when sent.",missingShort:"â (missing)",sendBlockedNoTpl:"Send blocked",sendBlockedMissing:"Send blocked ({{count}} variable(s) missing)",sendWithPdf:"Send with PDF attachment",sendNow:"Send now",confirmTitle:"Really send {{kind}} {{number}}?",confirmIntro:"Please confirm the send. This step cannot be undone.",confirmRecipient:"Recipient:",confirmTemplate:"Template:",confirmVars:"Variables:",confirmVarsValue:"{{count}} resolved, 0 missing",confirmAttachment:"PDF attachment:",yes:"yes",no:"no",confirmCancel:"Cancel",confirmSend:"Yes, send now",invalidEmail:"Please provide a valid recipient email.",noTemplate:"No active template for â{{kind}}â â send blocked.",noTemplateSelected:"No template selected â send aborted.",sendBlockedToast:"Send blocked: {{count}} variable(s) without value. Please check in the âPreviewâ tab.",pdfFailed:"PDF attachment could not be generated: {{msg}}",sendSuccess:"{{kind}} {{number}} sent to {{to}}{{suffix}}.",withPdfSuffix:" (incl. PDF attachment)",sendFailed:"Send failed: {{msg}}",unknownError:"Unknown error",attachmentPdfTitle:"ð Attachment as PDF",attachmentPdfDownload:"Download {{name}}",attachmentPdfValidity:"Link valid for 30 days.",defaultGreeting:`Hello{{name}}, 17 18please find attached {{kindLower}} {{number}}. 19For questions just reply to this email.`,previewSignature:"Best regards<br/>Your Mr China Supply Team",usesVars:"Uses {{count}} variable(s)",signature:"Signature",signatureHint:"Added below the email. Editable under Settings â Profile.",greetingBody:{quote:`{{salutation}} 20 21thank you for your enquiry and your interest in working with us. Please find our quotation {{number}} attached. 22 23I am happy to discuss the details with you personally â just call me or reply to this email.`,invoice:`{{salutation}} 24 25please find our invoice {{number}} attached. The payment terms are stated on the document. 26 27If you have any questions, simply reply to this email.`,credit_note:`{{salutation}} 28 29please find our credit note {{number}} attached. 30 31If you have any questions, simply reply to this email.`,contract:`{{salutation}} 32 33please find contract {{number}} attached for your review. 34 35If you have any questions, simply reply to this email.`},saveAsTemplate:"Save as default text",saveAsTemplateHint:"Store subject and text of this email as the default of the selected template",confirmPreviewTitle:"Email preview",confirmSalutation:"Salutation",confirmFallbackSignature:"No personal signature stored yet â the default signature will be used.",cc:"Copy (CC)",bcc:"Blind copy (BCC)",ccPh:"Separate email addresses with commas",ccHint:"Maximum {{max}} recipients in total (to, copy and blind copy combined).",showCcBcc:"Add copy/blind copy",hideCcBcc:"Hide copy/blind copy",invalidCcEmail:"Invalid email address: {{email}}",tooManyRecipients:"Too many recipients. Maximum {{max}} addresses including to, copy and blind copy.",attachments:{title:"Attachments",add:"Add files",remove:"Remove",counter:"({{count}} files · {{size}})",pdfName:"{{kind}} (PDF)",pdfAuto:"Attached automatically",pdfPending:"Generating PDF â¦",hint:"Up to {{max}} files, 100 MB each. Attachments are sent as secure download links (valid for 30 days). You can also drop files here.",tooLarge:'"{{name}}" exceeds 100 MB and was not added.',tooMany:"A maximum of {{max}} additional files is allowed.",uploadFailed:"Upload failed",uploadFailedBlock:"At least one upload failed. Please remove or re-add the file.",uploadRunning:"Please wait until all uploads have finished.",linkFailed:"Could not create download links for the attachments.",emailTitle:"Attachments ({{count}})",emailDownload:"Download",confirmCount:"{{count}} file(s)",reorderHandle:"Change order (drag)",statusUploading:"Uploading ⦠{{percent}}%",statusReady:"Ready · {{size}}",batchStatus:"{{done}} of {{total}} files uploaded",invalidType:'"{{name}}" has a file type that is not allowed. Allowed: {{allowed}}.',allowedTypes:"Allowed formats: {{allowed}}.",totalExceeded:'"{{name}}" was not added: total size exceeds {{max}}.',totalWarning:"Attachments already total {{size}}. Large emails may be rejected by some mailboxes.",totalBlocked:"Attachments total {{size}} and exceed the {{max}} limit. Please remove files.",totalBlockedToast:"Total attachment size exceeds the limit. Please remove files.",removed:'"{{name}}" removed.',undo:"Undo",pdfFailed:"PDF could not be generated",retry:"Try again",renameLabel:"File name for the email",renameHint:"Click to adjust the file name shown in the email",restoreName:"Original name",deliveryTitle:"How the attachments reach the recipient",deliveryLinks:"Files are added as download buttons at the end of the email, not as classic attachments.",deliveryOrder:"The order in this list matches the order in the email exactly.",deliveryValidity:"Download links stay valid for 30 days. Displayed file names can be adju
35sted."}},templatePicker:{defaultSuffix:" · Default",fieldHint:"Defines the cover text and text blocks of the document.",label:"Template",loading:"Loadingâ¦",none:"No templates",placeholder:"Choose templateâ¦",preview:"Preview",previewNeedsSave:"Please save first, then the preview is available.",previewTitle:"Preview"},wizards:{common:{step:"Step {{n}} / {{total}} â {{label}}",back:"Back",next:"Next",done:"Done",previewGenerating:"Generating preview â¦",rerender:"Re-render",saveDraft:"Save as draft",generatePreview:"Generate preview",removeRow:"Remove item",addRow:"Add item",previewPdf:"PDF preview",downloadPdf:"Download PDF",autosaveRestore:"Restored draft from {{when}}.",autosaveDismiss:"Discard",autosaveKeep:"Keep draft",send:"Send",stepAria:"Step {{step}} of {{totalSteps}}"},subscription:{title:"New subscription",stepParty:"Customer & product",stepPlan:"Plan & price",stepTerm:"Term",stepPreview:"Preview",intervalMonthly:"monthly",intervalQuarterly:"quarterly",intervalYearly:"yearly",customer:"Customer",customerPlaceholder:"Choose customer â¦",product:"Product (optional)",productPlaceholder:"No product linked",productHint:"Pre-fills plan name and price automatically.",planName:"Plan name",planNamePlaceholder:"e.g. Sourcing Flat Pro",interval:"Interval",priceNet:"Price (net, EUR)",taxRate:"VAT rate (%)",net:"Net",vatLine:"VAT ({{rate}} %)",grossPerPeriod:"Gross per period",start:"Start",nextBilling:"Next billing",endOptional:"End (optional, empty = open-ended)",notesOptional:"Notes (optional)",notesPlaceholder:"Internal notes or special terms â¦",plan:"Plan",perPeriod:"Per period",iframeTitle:"Subscription preview",previewHint:"The preview shows the first invoice of the subscription. Saving creates the subscription and bills it automatically on the due date.",create:"Create subscription",recurringNote:"Recurring billing ({{interval}}) â Plan: {{plan}}",itemNameDefault:"Subscription",itemDescription:"Billing period from {{date}} ({{interval}})",aiError:"AI recommendation failed",aiNoCompany:"Please select a customer first.",aiSuggest:"AI Recommendation",cancelAtPeriodEnd:"Cancel at period end",cancelHint:"Active until period end, then automatic termination.",paymentMethod:"Payment Method",pmBank:"Bank Transfer",pmCard:"Credit Card",pmManual:"Manual",pmSepa:"SEPA Direct Debit",titleEdit:"Edit Subscription",trialHint:"No automatic invoicing will occur until this date.",trialUntil:"Trial period until (optional)"},creditNote:{title:"New credit note",stepRef:"Reference",stepDetails:"Amount & reason",stepPreview:"Preview",invoice:"Invoice",invoicePlaceholder:"Choose invoice",invoiceHint:"The credit note refers to an existing invoice â customer and currency are inherited.",issuedAt:"Credit note date",amount:"Amount",status:"Status",statusDraft:"Draft",statusIssued:"Issued",reason:"Reason / explanation",reasonPlaceholder:"Why is this credit note being issued? (e.g. volume discount, complaint, return â¦)",customer:"Customer",invoiceAmount:"Invoice amount",iframeTitle:"Credit note preview",scopeLabel:"Credit note scope",scopeFull:"Full amount (lump sum)",scopeItems:"Select individual items",noItems:"(no items available)",amountAutoHint:"Calculated automatically from the selected items.",reasonCategory:"Reason (category)",reasonPlaceholder2:"Please select",reasonReklamation:"Complaint",reasonStorno:"Cancellation",reasonKulanz:"Goodwill",reasonOther:"Other",linkedTicket:"Linked ticket (optional)",ticketPlaceholder:"No ticket",ticketNone:"â No ticket â",skontoTitle:"Cash discount adjustment (pro-rata, {{pct}} %)",skontoGross:"Credit gross",skontoDeduction:"Cash discount deduction",skontoActual:"Actual refund",skontoNote:"Because the original invoice granted a cash discount, the refund is reduced pro-rata. This keeps the accounting clean.",itemsCol:{position:"Item",origQty:"Original qty",unitPrice:"Unit price in â¬",creditQty:"Credit qty",sum:"Sum"},totalIncl:"Total (incl. tax)",clearAll:"Clear all",fillAll:"Fill all to max qty"},supplierInvoice:{titleNew:"New supplier invoice",titleEdit:"Edit supplier invoice",stepSupplier:"Supplier",stepItems:"Items",stepTerms:"Terms",stepPreview:"Preview",supplier:"Supplier",supplierPlaceholder:"Choose supplier",supplierRef
35:"Supplier ref. no. (optional)",supplierRefPlaceholder:"e.g. INV-2026-0012",currency:"Currency",itemName:"Name",itemQty:"Quantity",itemPurchasePrice:"Purchase price",itemTax:"Tax %",itemDescription:"Description",lineTotal:"Line total: {{value}}",subtotal:"Subtotal",tax:"Tax",total:"Total",issueDate:"Invoice date",dueDate:"Due date",status:"Status",statusDraft:"Draft",statusBooked:"Booked",notes:"Notes / payment terms",notesPlaceholder:"e.g. payment term 30 days net, 2% discount if paid within 7 days â¦",iframeTitle:"Supplier invoice preview"},dunning:{title:"New dunning notice",stepInvoice:"Invoice",stepLevel:"Level & fees",stepPreview:"Preview",loadingOpen:"Loading open invoices â¦",noneOpen:"No open invoices â all paid.",dueOn:"Due {{date}} · {{days}} days overdue",lastLevel:"Last level {{level}}",invoice:"Invoice",customer:"Customer",openAmount:"Open amount",daysOverdue:"Days overdue",level:"Dunning level",levelLabel:"Level {{level}}",fee:"Dunning fee",interest:"Late interest",interestHint:"Default: 9 % p.a. â adjustable.",newDueDate:"New due date",notesOptional:"Notes (optional)",notesPlaceholder:"e.g. note on next steps if unpaid â¦",openInvoiceAmount:"Open invoice amount",totalClaim:"Total claim",create:"Create dunning notice",iframeTitle:"Dunning preview",aiError:"AI suggestion failed",aiSuggest:"AI Suggestion"},document:{titleQuote:"Create new quote",titleInvoice:"Create new invoice",stepType:"Document type",stepParties:"Parties",stepItems:"Items",stepTerms:"Terms",stepPreview:"Preview"},contract:{titleNew:"Create new contract",titleEdit:"Edit contract",stepType:"Contract type",stepParties:"Parties",stepItems:"Line items",stepTerms:"Terms",stepPreview:"Preview",activated:"Contract activated."}},steps:{items:{emptyHint:"No items yet. Start with âAdd rowâ.",productFromCatalog:"Product from catalog (optional)",productPlaceholder:"Select product",name:"Name",qty:"Qty",unitPrice:"Unit price",tax:"Tax",discount:"Discount %",description:"Description",lineTotal:"Line total: {{value}}",subtotal:"Subtotal",tax2:"Tax",total:"Total",product:"Product from catalog",productMissing:"Please pick a product from the catalog.",removeRow:"Remove row",addRow:"Add row",taxRate:"Tax %",discountPct:"Discount %",productSearchPlaceholder:"Search product or type â¦",aiDescribe:"AI description from deal",aiDescribeLoading:"Generating â¦",aiDescribeError:"Could not generate description.",effectiveMargin:"net +{{pct}} %",discountCapped:"Discount capped at {{pct}} % â margin must stay above {{min}} %.",discountMaxHint:"Max. {{pct}} % allowed",lineMargin:"Margin {{value}} ({{pct}} %)",recentForCompany:"Recent for this customer",resetToAutoPricing:"Reset to cart calculation"},parties:{company:"Customer (company)",companyPlaceholder:"Select company",contact:"Contact (optional)",contactPlaceholder:"Select contact",contactDisabledPlaceholder:"Choose company first",noContacts:"No contacts found",unnamed:"(no name)",dealHint:"If a deal was selected in the previous step, c
35ompany and contact are pre-filled. You can adjust both here.",supplier:"Supplier",supplierPlaceholder:"Select supplier",customerHint:"Optional: contact and link to deal/quote are set in the âTermsâ step.",purchaseHint:"Purchase in {{currency}}. Exchange rates will be converted automatically against the sales currency in phase P-4 (Multi-Currency).",customerCompany:"Customer (company)",contactOptional:"Contact (optional)",contactPlaceholderEmpty:"Select a company first",noName:"(no name)",hint:"If you picked a deal in the previous step, the company and contact are prefilled. You can change both here.",contractTermsHint:"Optional: contact and deal/quote reference are set in the Terms step.",currencyHint:"Purchase in {{currency}}. Exchange rates will be auto-converted against the sales currency in phase P-4 (multi-currency)."},preview:{rerender:"Re-render",download:"Download",generating:"Generating preview â¦",iframeDocument:"Document preview",iframeContract:"Contract preview",saveFirstDocument:"Save the document to generate the preview.",saveFirstContract:"Save the contract to generate the preview.",hintDocument:"Preview from current template. Changes are applied after âRe-renderâ.",hintContract:"Preview from current template. Contract changes are applied after âRe-renderâ."},docType:{documentKind:"Document type",quote:"Quote",quoteDesc:"Binding sales quote with validity date.",invoice:"Invoice",invoiceDesc:"GoBD-compliant invoice with sequential number and due date.",prefillFromDeal:"Pre-fill from deal (optional)",dealPlaceholder:"Select deal to inherit customer and contact",dealUntitled:"(untitled)",customerLabel:"Customer:",contactLabel:"Contact:",removeLink:"Remove link",language:"Language",languageDe:"German",languageEn:"English",languageZh:"Chinese",currency:"Currency"},docTerms:{validUntil:"Valid until",validUntilHint:"After this date, the quote automatically expires.",issueDate:"Invoice date",dueDate:"Due date",notes:"Notes / terms",notesPlaceholderInvoice:"Payment terms, cash discount notes, IBAN reference â¦",notesPlaceholderQuote:"Delivery time, shipping costs, special terms â¦",incoterm:"Incoterm"},contractType:{contractKind:"Contract type",customerSalesContract:"Customer sales contract â physical goods",customerSalesContractDesc:"Sale of physical goods to an end customer. Source: quote or deal.",supplierPurchaseContract:"Supplier purchase contract â physical goods",supplierPurchaseContractDesc:"Purchase of physical goods from a manufacturer in China.",sourcingService:"Sourcing package â service contract",sourcingServiceDesc:"Starter, Professional or Enterprise â includes an hourly budget for Enterprise.",packageTier:"Package tier",tierStarter:"Starter",tierStarterPrice:"EUR 990 flat",tierProfessional:"Professional",tierProfessionalPrice:"EUR 2,990 flat",tierEnterprise:"Enterprise",tierEnterprisePrice:"EUR 89/h, individual",enterpriseHours:"Estimated hours",enterpriseHoursHint:"Billed in 10-hour increments at EUR 89/h."},contractTerms:{incoterm:"Incoterm",incotermPlaceholder:"Select",paymentTerms:"Payment terms",paymentSupplierPlaceholder:"e.g. 30 % deposit in USD on order, 70 % against copy of B/L.",paymentCustomerPlaceholder:"e.g. 50 % deposit, 50 % before delivery. Payment term 14 days net.",deliveryTerms:"Delivery terms",deliveryPlaceholder:"e.g. delivery time 45 days from order confirmation, FOB Shanghai.",notes:"Notes"},type:{kind:"Document type",quote:"Quote",quoteDesc:"Binding sales quote with validity date.",invoice:"Invoice",invoiceDesc:"GoBD-compliant invoice with sequential number and due date.",prefillFromDeal:"Prefill from deal (optional)",dealPlaceholder:"Select a deal to import customer and contact",dealNoTitle:"(no title)",dealCustomer:"Customer",dealContact:"Contact",removeLink:"Remove link",language:"Language",langDe:"German",langEn:"English",langZh:"Chinese",currency:"Currency"},terms:{incoterm:"Incoterm",select:"Select",validUntil:"Valid until",paymentTerms:"Payment terms",paymentSupplierPlaceholder:"e.g. 30% deposit in USD on order, 70% against copy B/L.",paymentCustomerPlaceholder:"e.g. 50% deposit, 50% before delivery. Net 14 days.",deliveryTerms:"Delivery terms",deliveryPlaceholder:"e.g. 45-day lead time from order
35confirmation, FOB Shanghai.",notes:"Notes",aiGenerate:"Generate with AI",aiGenerating:"Generatingâ¦",aiDeliveryError:"Could not generate delivery terms.",aiNotesError:"Could not generate notes."}},pages:{bankImport:{title:"Bank reconciliation",description:"Upload CAMT.053 statements. Incoming payments are auto-matched to open invoices (±â¬0.02 tolerance).",invalidFile:"Please choose a CAMT.053 XML file.",imported:"{{parsed}} bookings imported, {{matched}} auto-matched.",uploadCta:"Upload CAMT.053",uploading:"Importingâ¦",file:"File",iban:"IBAN",transactions:"Bookings",matched:"Auto-matched",closingBalance:"Closing balance",importedAt:"Imported at",empty:"No bank statement imported yet.",bookingDate:"Booking date",counterparty:"Counterparty",purpose:"Purpose",amount:"Amount",status:"Status",noTxns:"No bookings for this import.",statusMatched:"Auto-matched",statusManual:"Manually matched",statusIgnored:"Ignored",statusOpen:"Open",imports:"Imports"},supplierInvoices:{title:"Supplier invoices",description:"Record your supplier invoices â multi-step wizard with PDF preview and download.",newCta:"New supplier invoice",colNumber:"Number",colSupplier:"Supplier",colReference:"Reference",colDate:"Date",colDue:"Due",colTotal:"Total",colStatus:"Status",colActions:"Actions",loading:"Loadingâ¦",empty:"No supplier invoices yet.",createFirst:"Create first",deleteConfirm:"Really delete supplier invoice {{number}}?",ariaPreview:"Preview",ariaDownload:"Download",ariaEdit:"Edit",ariaDelete:"Delete",adminOnly:"Admin only"},dunning:{title:"Dunning notices",description:"Dunning notices for overdue invoices â levels 1â3, automatic late-payment interest, PDF preview.",newCta:"New dunning notice",colNumber:"Number",colInvoice:"Invoice",colCustomer:"Customer",colLevel:"Level",tabAll:"All",levelName1:"Payment reminder",levelName2:"Dunning notice",levelName3:"Final notice",colIssued:"Issued",colNewDue:"New due",colTotal:"Total",colStatus:"Status",colActions:"Actions",loading:"Loadingâ¦",empty:"No dunning notices yet.",createFirst:"Create first",level:"Level {{level}}",statusDraft:"Draft",statusSent:"Sent",statusPaid:"Paid",statusCancelled:"Cancelled",markSent:"Mark as sent",markPaid:"Mark as paid",cancel:"Cancel",ariaPreview:"Preview",ariaDownload:"Download",ariaDelete:"Delete"},contracts:{title:"Contracts",description:"Customer and supplier contracts â multi-step wizard with PDF preview and download.",newCta:"New contract",filterAll:"All",kindCustomer:"Customer sales contract",kindService:"Service contract",kindSupplier:"Supplier contract",colNumber:"Number",colKind:"Kind",colParty:"Party",colLanguage:"Language",colTotal:"Total",colStatus:"Status",colActions:"Actions",loading:"Loadingâ¦",empty:"No contracts available.",deleteConfirm:"Really delete this contract?",ariaPreview:"Preview",ariaDownload:"Download",ariaEdit:"Edit",ariaDelete:"Delete"},invoices:{assistant:"Assistant",livePreview:"Live preview"}},draftPreview:{title:"Live preview",subtitle:"Preview from the current draft â nothing is saved or sent.",iframeTitle:"Document preview",close:"Close",failed:"The preview could not be generated."},agent:{title:"Faktura agent",placeholder:"Ask the faktura agent â¦",empty:"Ask about invoices, payments or links.",hint:"RAG on top-30 records · streaming answer",newChat:"New chat",clear:"Clear",send:"Send",thinking:"Thinking â¦",rechnungen:"Invoice agent",zahlungen:"Payment agent",links:"Link agent",tabAgent:"AI agent",tabData:"Data",gutschriften:"Credit note agent",vertraege:"Contract agent",lieferantenrechnungen:"Supplier invoice agent",mahnungen:"Dunning Agent",abonnements:"Subscription Agent",bankabgleich:"Bank Reconciliation Agent",vorlagen:"Templates Agent"},contracts:{kpis:{purchaseOpen:"Purchase open",salesOpen:"Sales open",expiringSoon:"Expiring â¤30d",unsigned:"Unsigned"},ai:{summaryTitle:"Contracts briefing",summaryDesc:"Stock, volume, expiring contracts.",reviewCnTitle:"Review CN purchase contract",reviewCnDesc:"Risk analysis incoterms/clauses.",riskTitle:"Risk score",riskDesc:"Compliance score 0â100 with drivers.",clauseTitle:"Suggest clauses",clauseDesc:"Missing standard clauses."},extra:{sectionTitle:"Additional Contract Details"}},supplierInvoices:{kpis:{openTotal:"Open total",openCount:"invoices",dueWeek:"Due 7 days",dueWeekCount:"items",topSupplier:"Top supplier",matchedDeals:"Deal match"},ai:{summaryTitle:"AP briefing",summaryDesc:"Open, due, top suppliers.",matchTitle:"Suggest deal link",matchDesc:"Most likely deal assignment.",extractTitle:"Extract PDF fields",extractDesc:"Read mandatory fields from raw text."}},supplierDocOcr:{uploadCta:"Upload document",uploadedToast:"{{count}} document(s) uploaded â OCR running.",dropTitle:"Drop supplier document here",dropHint:"PDF, JPG, PNG or WebP â up to 20 MB. Multiple files allowed.",chooseFiles:"Choose files",tabList:"Invoices",tabInbox:"OCR inbox",eval:{title:"Accuracy benchmark",subtitle:"Re-runs the OCR pipeline against up to 10 already reviewed documents and shows per-field accuracy.",start:"Start benchmark",running:"Benchmark running â¦",hint:"Requires reviewed OCR documents linked to a supplier invoice as ground truth.",empty:"No eligible documents found.",docs:"Documents tested",overall:"Overall accuracy",itemRecall:"Item completeness",field:"Field",correct:"Correct",total:"Tested",accuracy:"Accuracy"},inboxEmpty:"No open OCR tasks. Upload new documents above.",colFile:"File",colStatus:"Status",colSupplier:"Supplier (suggested)",colTotal:"Amount",colActions:"Action",review:"Review",rerun:"Re-analyze",discard:"Discard",discardConfirm:"Discard document?",status:{hochgeladen:"Uploaded",verarbeite:"Extracting",bereit:"Ready for review",gespeichert:"Saved",verworfen:"Discarded",fehler:"Error"}
35,reviewTitle:"Review document",loadingPreview:"Loading preview â¦",aiMatches:"AI matches",supplierLabel:"Supplier",dealLabel:"Deal",quoteLabel:"Quote (our number)",noSuggestion:"No suggestion detected.",clearSelection:"Clear selection",headerFields:"Header fields",docNumber:"Document no. (supplier)",currency:"Currency",issueDate:"Document date",dueDate:"Due date",notes:"Notes",positions:"Line items",noPositions:"No line items detected.",sumNet:"Net",sumTax:"Tax",sumTotal:"Total",saveDraft:"Save as draft",saveBooked:"Book as invoice",savedToast:"Supplier document linked.",errSupplier:"Please choose a supplier.",duplicateTitle:"Possible duplicate",duplicateHint:"An invoice with the same number and supplier already exists.",warningsTitle:"Consistency notices",aliasNewTitle:"New alias will be learned",aliasLearn:"Learn",aliasNormalized:"Normalized",aliasExists:"Spelling already known as alias",aliasNormMatch:"Spelling already covered by normalization â no new alias needed",aliasSame:"OCR name matches supplier",positionShort:"Line",moreWarnings:"⦠and {{count}} more"},dunning:{kpis:{level1:"Level 1 open",level2:"Level 2 open",level3:"Level 3 open",collections:"Collections candidates",collectionsHint:"⥠level 3 or ⥠60 days",escalationRate:"Payment rate after sending"},ai:{escalationTitle:"Escalation plan",escalationDesc:"AI evaluates overdue invoices and recommends the next level.",bulkTitle:"Bulk dunning run",bulkDesc:"Groups candidates and prioritises top 10.",toneTitle:"Dunning text draft",toneDesc:"Tone matching the level (1=friendly, 2=firm, 3=final).",legalTitle:"Legal check",legalDesc:"Checklist (German civil code §§ 286/288/280) for a dunning draft."}},bank:{kpis:{openTx:"Open transactions",matchedPct:"Match rate",anomalies30:"Anomalies 30d",lastBalance:"Last balance",imports:"imports",context:"Context: {{open}} open invoices available"},ai:{briefingTitle:"Cashflow briefing",briefingDesc:"AI summarises inflows, outflows and balance trend.",matchTitle:"Match suggestions",matchDesc:"AI matches open transactions to open invoices.",anomalyTitle:"Anomaly check",anomalyDesc:"Flags duplicate bookings and unusual amounts.",categorizeTitle:"Bulk categorisation",categorizeDesc:"Classifies open transactions as revenue/expense/tax."}},marginTiers:{editLink:"Edit",editAria:"Open margin tiers in settings",bannerActive:"Active tier",bannerMargin:"margin",bannerNextFrom:"Next tier from",page:{title:"Margin & pricing logic",intro:"Order-value tiers, global pricing rules, live calculator and change history in one place.",tabTiers:"Tiers",tabRules:"Global rules",tabCalc:"Calculator",tabHistory:"History",badgeNone:"No tier defined",badgeActive:"{{count}} tiers active",badgeReadonly:"Read only"},editor:{title:"Order-value tiers",intro:"Margin in percent is added to the net purchase price per order-value range. Drag to reorder.",colFrom:"From (â¬)",colTo:"To (â¬) â empty = â",colMargin:"Margin",addRow:"Add tier",reset:"Reset",save:"Save",toastErrors:"Please fix the highlighted errors first."},rules:{title:"Global pricing rules",intro:"Apply on top of the tiers and take effect automatically in the quote and invoice wizard.",fallback:"Fallback margin",fallbackHint:"Used when no tier matches the document total.",minMargin:"Minimum margin",minMarginPlaceholder:"e.g. 10",minMarginHint:"Leave empty to skip the lower bound check.",enforce:"Enforce (block save)",rounding:"Price rounding",roundingHint:"Applied to the calculated net sales price.",roundNone:"No rounding",round10:"Round to â
35¬0.10",round50:"Round to â¬0.50",round100:"Round to â¬1.00",round500:"Round to â¬5.00",lockMode:"Behavior for locked items",lockHint:"Controls how the wizard handles items that are manually locked or already sent.",lockIgnore:"Ignore locked items (default)",lockWarn:"Warn on save when locked items are present",lockFreeze:"Freeze all prices permanently when status is sent",consultingThreshold:"Billing reminder from (consulting hours)",consultingThresholdHint:"Once a customer reaches this many unbilled consulting hours, the time tracking page shows a billing reminder."},calc:{title:"Live margin calculator",intro:"Enter a net purchase amount to see the matching tier and the resulting sales price.",inputLabel:"Net purchase",outTier:"Matching tier",outNoTier:"No tier defined â fallback margin applies.",outMargin:"Margin",outVk:"Net sales price (after rounding)",outNext:"Next tier",fallbackBadge:"fallback",belowMinBadge:"below minimum",beforeRounding:"before rounding",nextJump:"At +{{delta}} â {{target}} â only {{pct}}%",noNext:"No next tier â you are in the top range."},history:{title:"Change history",intro:"Who changed which tier or rule, and when. Click a row for a before/after comparison.",empty:"No changes logged yet.",summaryTiers:"Tiers replaced ({{before}} â {{after}} tiers)",summaryRules:"Global pricing rules updated",unknownUser:"Unknown",before:"Before",after:"After",loadMore:"Load more"},settings:{title:"Margin tiers",intro:"Margin in percent, automatically added to the net purchase price in the quote and invoice wizard. The tier is derived live from the current document total.",currentTiers:"Current tiers",edit:"Edit",loading:"Loading â¦",empty:"No tiers defined.",colFrom:"From",colTo:"To",colMargin:"Margin",hint:'Note: Positions marked with the lock icon in the wizard are not recalculated automatically. Status "sent" or "accepted" freezes all prices.'},dialog:{title:"Margin tiers",intro:"Margin in % is added to the net purchase price automatically. Applies to all new quotes and invoices.",colFrom:"From (â¬)",colTo:"To (â¬) â empty = â",colMargin:"Margin",empty:"No tier defined yet.",addRow:"Add tier",removeRowAria:"Remove tier",cancel:"Cancel",save:"Save",errOpenTopOnlyLast:"Only the last tier may be open-ended on top.",errGap:"Gap or overlap between tier {{a}} and {{b}} ({{maxA}} â {{minB}}).",errLastOpen:"The last tier must be open-ended on top (leave the upper limit empty).",saveFailed:"Saving failed."},active:"Active",overviewTitle:"Revenue Tiers â Target Margin by Basket"},share:{title:"Send contract for signature",description:"The customer receives a link to review and electronically sign the contract. Link is valid for 14 days.",tabEmail:"By email",tabWhatsapp:"By WhatsApp",emailLabel:"Recipient email",emailHint:"Pre-filled from the primary contact â can be overridden.",sendEmail:"Send contract invitation",phoneLabel:"Phone number (with country code)",whatsappHint:"WhatsApp opens with a pre-filled message â you send it manually. WhatsApp does not support PDF attachments via link; the recipient downloads the PDF via the signature link.",previewLabel:"Message preview",openWhatsapp:"Open WhatsApp",copyLink:"Copy link",errorEmail:"Please enter a recipient address.",errorPhone:"Please enter a phone number.",sentEmail:"Contract invitation sent to {{email}}.",copied:"Signature link copied to clipboard.",fallbackContractName:"Draft",column:"Share link",validDays_one
35:"Valid for {{count}} more day",validDays_other:"Valid for {{count}} more days",copy:"Copy link",revoke:"Revoke validity",validDays:"Valid for {{count}} more days"},contractWizard:{aiContextNotFilled:"Not filled â please maintain in the CRM.",qualityTitleConflict:"Quality check: possible contradictions to the notes context",qualityTitleHints:"Quality check: hints",regenerate:"Regenerate",createdToast:"Contract created â generating PDF preview â¦",previewLoading:"Contract is being created â the preview will appear in a few seconds â¦",qualityToast_one:"Quality check: 1 possible contradiction to the notes context. Please review.",qualityToast_other:"Quality check: {{count}} possible contradictions to the notes context. Please review.",qualityToast:"Quality was automatically set to {{quality}}."},variants:{variantsAutoHint:"As soon as you add a variant, the product is treated as a variant product automatically.",colName:"Name / Attributes",colPurchase:"Cost",colPrice:"Price (EUR)",colStock:"Stock",colReserved:"Reserved",colStatus:"Status",loading:"Loading â¦",empty:"No variants yet. Use the matrix generator or âAdd variantâ.",add:"Add variant",stockFootnote:"Stock is managed via the âStockâ tab or automatically through supplier orders and customer invoices.",purchasePriceTitle:"Purchase price net â VAT is taken from the product",createdToast:"{{count}} variants created",newVariantName:"New variant",confirmDelete:"Delete variant â{{name}}â?",colEan:"EAN / Barcode"},variantMatrix:{pattern:"SKU pattern",placeholders:"Available placeholders: {{tokens}}",willCreate:"{{count}} variants will be created",pickAxis:"Pick at least one axis and at least one value per axis",generate:"Create {{count}} variants",emptyAttributes:"No attributes with values available. Create attributes first in Settings under âProduct attributesâ.",title:"Generate variant matrix",addValue:"Add value",patternPlaceholder:"Leave empty for automatic assignment"},stock:{colVariant:"Variant",colStock:"Stock",colReserved:"Reserved",colAvailable:"Available",colIncoming:"Incoming",colReorder:"Reorder point",colSafety:"Safety stock",book:"Book",historyTitle:"Movement history",historyEmpty:"No movements yet.",colDate:"Date",colType:"Type",colQty:"Quantity",colRef:"Reference",colNote:"Note",noVariants:"No variants available. Create variants first in the âVariantsâ tab."},stockMovement:{title:"Book stock â {{name}}",current:"Current stock: {{stock}}",typeLabel:"Movement type",typeIn:"Inbound (increase stock)",typeOut:"Outbound (reduce stock)",typeAdjust:"Adjustment (set stock)",newStock:"New stock",qtyLabel:"Quantity",noteLabel:"Note (optional)",notePlaceholder:"e.g. inventory check, breakage, goods receipt without document",cancel:"Cancel",submit:"Book"},variantPicker:{placeholder:"Select variant â¦"},toasts:{quoteVersionCreated:"New quote version created",supplierNormRuleSaved:"Rule saved",supplierNormRuleDeleted:"Rule deleted",quoteVersionFailed:"Versioning failed"},productImport:{menuManual:"Create manually",menuFromDoc:"From offer (PDF/Excel)",wizardTitle:"Import products from an offer",wizardHint:"Upload a supplier offer as PDF, Excel or image. The AI extracts products, groups variants and suggests duplicates.",supplierLabel:"Supplier (optional)",supplierPlaceholder:"No supplier",supplierNone:"â No supplier â",supplierHint:"If set, the supplier is assigned to new products and duplicate matching is limited to this supplier.",dropTitle:"Drop offer here",dropHint:"PDF, Excel (XLSX/XLS), image or CSV â up to 20 MB, max. 3 files",errFileSize:"File too large (max. 20 MB)",errFileCount:"Max. 3 files",analyze:"Analyse",analyzing:"AI is analysing the document⦠(5â20 s)",back:"Back",confirm:"Confirm",summary:"{{c}} create · {{u}} update · {{s}} skip",successToast:"{{created}} created, {{variants}} variants, {{updated}} updated",createFailed:"Creation failed: {{msg}}",nothingToDo:"Nothing to do.",noCandidates:"No products detected in the document.",emptyResult:"No products detected in the document.",orphanImagesToast:"{{count}} photo(s) could not be mapped to a row â please review on the product.",colPhotos:"Photos",partialErrors:"Errors on some files:",possibleMatch:"Possible match: {{name}}",colName:"Name (DE)",colNameEn:"Name (EN)",colPrice:"Purchase price",colCurrency:"Currency",colUnit:"Unit",colRole:"Role",colAttrs:"Variant attributes",colAction:"Action",roleStandalone:"Standalone",roleBase:"Base product",roleVariant:"Variant ofâ¦",pickBase:"Pick base product",noBaseYet:"Mark a base product first.",attrColor:"Color",attrSize:"Size",attrMaterial:"Material",attrPackaging:"Packaging",actionCreate:"Create new",actionUpdate:"Update existing",actionSkip:"Skip",accessoriesLinked:"Accessories linked"},form:{customer:"Customer / Company",contact:"Contact",deal:"Linked deal",contactPlaceholder:"Search contactâ¦",contactPlaceholderEmpty:"Select company first",dealPlaceholder:"Search dealâ¦",dealPlaceholderEmpty:"Select company first",incotermPlace:"Pickup location",productionDays:"Production days",transportDaysMin:"Transport days (min.)",transportDaysMax:"Transport days (max.)",requiredHint:"Customer and valid-until are required.",incotermPlacePlaceholder:"e.g. Shanghai, Ningbo, Shenzhen...",contactUnassigned:"No company yet â will be linked on save"},docAi:{title:"AI quick fill",hint:"Describe the document in your own words â the AI suggests line items, prices and terms from the catalog.",placeholder:"e.g. 5,000 USB-C cables 1 m black, FOB Shanghai, val
35id 30 days",replyPlaceholder:"Reply and press Enter â¦",send:"Send",thinking:"Thinking â¦",askFallback:"Could you be a bit more specific?",stillMissing:"Still open: {{fields}} â please add.",lowConfidence:"I'm not sure yet â could you be more specific?",doneMessage:"Done â filled {{count}} fields/items. Please review and save.",filledCount:"{{count}} fields filled",maxTurns:"We've reached the limit â please review the fields manually.",rateLimit:"AI is busy right now. Please try again in a moment.",creditsExhausted:"AI credits exhausted. Please top up in the workspace.",error:"The AI could not respond right now. You can fill the fields manually.",disabledSaveFirst:"Please save the draft first â then the AI can add line items."},sections:{header:"Header data",positions:"Line items",paymentTerms:"Payment terms",skonto:"Early payment discount"},totals:{discountLine:"less discount",discountPctLabel:"Discount (%)",netAfterDiscount:"Net after discount",deposit:"Deposit",balance:"Balance"},product:{quality:{standard:"Standard",gehoben:"Upper",premium:"Premium"}},attributes:{quickAdd:{colorCodeHint:"Pantone is the binding code for suppliers. Hex is for screen preview only.",hexLabel:"Hex (screen preview only)",pantoneLabel:"Pantone (production code)",pantonePlaceholder:"e.g. PANTONE 186 C or 19-1664 TCX",placeholder:"e.g. Cherry",ralLabel:"RAL (optional, for paint/metal)",ralPlaceholder:"e.g. RAL 3020",save:"Add",valueLabel:"New Value"}},audit:{empty:"No actions logged yet.",entries:"Entries",loading:"Loading â¦",title:"Document History"},docAutoSave:{error:"Save failed",idle:"Changes are saved automatically.",newHint:"Automatically created with the first field.",savedAgo:"Last saved {{seconds}}s ago",savedNow:"Saved",saving:"Saving â¦"},fapiao:{hint:"Fapiao information is required for invoicing.",status:{cancelled:"Cancelled",issued:"Issued",none:"None",requested:"Requested"},statusLabel:"Status",title:"Fapiao (ä¸å½å票)",typeElectronic:"Electronic (çµåå票)",typeGeneral:"General (æ®éå票)",typeLabel:"Type",typeNone:"No Fapiao",typeSpecial:"Special (ä¸ç¨å票)"},supplierInvoice:{aiAccountAdded:"Accounting suggestion adopted.",aiAccountFailed:"Accounting suggestion failed.",aiAccountSuggest:"AI Accounting Suggestion",aiNeedsSupplier:"Please select a supplier first.",goodsReceiptStatus:"Goods Receipt",gr:{mismatch:"Mismatch",partial:"Partially Received",pending:"Pending",received:"Fully Received"},matchHint:"Please match the invoice items to the purchase order items.",matchStatus:{approved:"Approved",matched:"Matched",mismatch:"Mismatch",unmatched:"Unmatched"},matchStatusLabel:"Matching Status",purchaseOrderRef:"Purchase Order (PO) Number",threeWayMatchTitle:"3-Way Match"},pdfSections:{title:"Content in the PDF",allShown:"All sections are shown",hiddenCount:"{{hidden}} of {{total}} hidden",items:{price_tiers:{label:"Volume discounts",hint:"Savings by order value"},cost_structure:{label:"Cost structure",hint:"Pie chart of cost blocks"},timeline:{label:"Schedule and dates",hint:"Timeline up to delivery"},contacts:{label:"Your contacts",hint:"Contact cards for both sides"},price_guarantee:{label:"Price guarantee",hint:"Note on price validity"},acceptance:{label:"Acceptance declaration",hint:"Field for signature and date"},next_steps:{label:"Next steps",hint:"The following steps in the process"},trust:{label:"Trust notes",hint:"Shanghai office, standards, transparency"},payments:{label:"Payments received",hint:"List of payments already received"},payment_status:{label:"Payment status",hint:"Bar with open and paid amount"},bank_details:{label:"Bank details",hint:"Account data and payment reference"},notes:{label:"Notes",hint:"Free text from the notes field"},positions:{label:"Line items",hint:"Table of the individual line items"},footer_text:{label:"Footer text",hint:"Closing text below the document"}}},expenses:{title:"Expense ledger",description:"All operating expenses with category, due date and payment status.",create:"Add expense",edit:"Edit expense",empty:"No expenses recorded yet.",receipt:"Document",date:"Document date",category:"Category",vendor:"Vendor",subject:"Description",dueDate:"Due on",net:"Net",gross:"Gross",paymentStatus:"Payment status",open:"Open",kpiDocuments:"Documents",kpiCurrentMonth:"Current month",kpiPreviousMonth:"Previous month",kpiOpen:"Still open",kpiTotal:"Total",vend
35orPlaceholder:"e.g. Deutsche Bahn",subjectPlaceholder:"e.g. train trip to Frankfurt fair",currency:"Currency",vatRate:"VAT rate %",paidAmount:"Paid",note:"Note",autoHint:"Tax amount, gross amount and payment status are calculated automatically.",cancel:"Cancel",save:"Save",currencyEur:"Euro",currencyUsd:"US dollar",currencyCny:"Renminbi"},partnerSettlement:{title:"Partner settlement",description:"Commissions earned by referral partners and their payouts.",createPayout:"Create payout",tabCommissions:"Commissions",tabPayouts:"Payouts",kpiPartners:"Partners with commissions",kpiOpen:"Open",kpiSettled:"Settled",kpiPaid:"Paid out",emptyCommissions:"No commissions recorded yet.",emptyPayouts:"No payouts yet.",earnedOn:"Earned on",partner:"Partner",basis:"Commission basis",rate:"Rate",amount:"Commission",status:"Status",note:"Note",receipt:"Document",date:"Date",payoutAmount:"Amount",method:"Payment method",unknownPartner:"Unknown partner",selectPartner:"Select partner",payoutDate:"Payout date",commissionCount:"{{count}} commission(s)",summaryHint:"{{count}} open commission(s) will be bundled: {{sum}}.",selectHint:"Please select a partner with open commissions.",cancel:"Cancel"},lock:{readOnly:"Read-only â changes are not saved.",quoteHint:"This quote has already been sent and can no longer be edited. Please create a new version.",invoiceHint:"This invoice is finalized and can no longer be edited. Please create a credit note or cancellation invoice.",statusOnly:"Only the status can still be changed."},currencyChange:{title:"Change currency",description:"You are changing the currency from {{from}} to {{to}}. This document has {{count}} priced line item(s).",rate:"Current rate",noRate:"No current rate is available for this currency. Amounts can only be kept unchanged.",convert:"Convert prices",keep:"Keep the same figures"}},Y={title:"Reminder",set:"Set reminder",due:"Due",note:"Note",created:"Reminder saved",deleted:"Reminder deleted",error:"Reminder could not be saved",helpText:"Reminder appears as a notification at the chosen time.",privateNote:"Private note",addNote:"Add note ...",remindAt:"Time"},K={lockedTitle:"Administrators only",lockedDesc:"This area is restricted to administrators. Please contact your admin.",routeGuard:{title:"Admin-only area",description:"This settings area is locked. Please request access from an administrator."},common:{loading:"Loadingâ¦",noAdminAccess:"This admin page is only accessible to admins."},errorCodes:{title:"Migration error codes",introHtml:"Reference for all <code>ERR_</code>, <code>WARN_</code> and <code>INFO_</code> codes of the <code>ops_tasks â crm_tasks</code> migration. Source: audit view and edge function <code>ops-migration-validate</code>.",filters:{all:"All",blocker:"Blocker",warning:"Warning",info:"Info"},search:"Code, meaning, example â¦",countOne:"{{count}} code",countOther:"{{count}} codes",empty:"No codes found.",cols:{severity:"Severity",code:"Code",meaning:"Meaning",example:"Example value",fix:"Recommended fix"},entries:{ERR_MAPPER_FAILED:{meaning:"The mapper function returns an error object (e.g. source task was deleted).",fix:"Check source â remove or recreate task."},ERR_MAPPER_RPC_FAILED:{meaning:"The mapper RPC call itself failed (network/permissions).",fix:"Check edge function logs and DB permissions."},ERR_TITLE_REQUIRED:{meaning:"Task title is empty or missing.",fix:"Provide a non-empty title in the source."},ERR_TYPE_INVALID:{meaning:"Task type does not match the allowed enum.",fix:"Check the type value against the allowed list."},ERR_STATUS_INVALID:{meaning:"Task status is not one of the allowed values.",fix:"Use a valid status (open, in_progress, done, â¦)."},ERR_PRIORITY_INVALID:{meaning:"Priority outside the allowed range.",fix:"Use a valid priority (low/medium/high/urgent)."},ERR_SLA_NONPOSITIVE:{meaning:"SLA value is zero or negative.",fix:"Set SLA to a positive number of hours."},ERR_ESCALATION_OUT_OF_RANGE:{meaning:"Escalation level is out of the configured range.",fix:"Adjust escalation level (1â5)."},ERR_SOURCE_REF_NULL:{meaning:"Source reference is missing â task cannot be linked.",fix:"Ensure the source has an ID before mapping."},ERR_DUPLICATE_IN_CRM:{meaning:"A task with this source reference already exists in the CRM.",fix:"Skip or merge the duplicate manually."},WARN_SUPPLIER_HEURISTIC_FAILED:{meaning:"Supplier could not be derived heuristically.",fix:"Assign supplier manually after import."},WARN_SUPPLIER_MISSING:{meaning:"No supplier found for this task.",fix:"Add a supplier reference in the source."},INFO_STATUS_DEFAULTED:{meaning:"Status was empty and defaulted to 'o
35pen'.",fix:"Informational only â set explicit status if needed."}}},pipelineAccess:{title:"Pipeline permissions",subtitle:"Define which roles may see each pipeline. Without selection the pipeline is visible to all employees. Admins always see everything.",searchPlaceholder:"Search pipelineâ¦",filters:{all:"All pipelines",open:"Visible to all",restricted:"Restricted"},reset:"Reset filters",badgeOpen:"Visible to all",badgeRestricted:"Restricted",always:"(always)",openForAll:"Open to all",save:"Save",saving:"Savingâ¦",saved:"Permissions saved",saveError:"Save failed",roles:{mitarbeiter:"Employee",teamleiter:"Team Lead",admin:"Admin"}},audit:{title:"Change history",subtitle:"Latest changes to pipeline permissions (max. 100 entries).",empty:"No changes logged yet.",actions:{insert:"Created",update:"Updated",delete:"Deleted"},by:"by",ago:"{{time}} ago",rolesPublic:"All (public)",rolesChange:"Roles:",initialRoles:"Initial roles: {{roles}}",system:"System",userPrefix:"User {{id}}",pipelinePrefix:"Pipeline {{id}}",roleLabels:{admin:"Admin",teamleiter:"Team Lead",mitarbeiter:"Employee",moderator:"Moderator",user:"User"}},opsMigration:{title:"Ops Tasks Migration Preview",subtitleHtml:"For each <code>ops_task</code> the expected mapping status to <code>crm_tasks</code> from the audit view is shown. Blockers must be fixed before phase 1b.",runValidation:"Start validation run",refresh:"Refresh",summary:{total:"Total",ok:"OK",warning:"Warning",blocker:"Blocker"},validationToast:"Validation done: {{ok}} OK · {{warning}} warning · {{blocker}} blocker",validationError:"Validation failed",pdfError:"Could not open PDF",runs:{title:"Latest validation runs",cols:{date:"Date",checked:"Checked",ok:"OK",warning:"Warning",blocker:"Blocker",duration:"Duration",pdf:"PDF"},open:"Open"},tabs:{all:"All ({{count}})",blocker:"Blocker ({{count}})",warning:"Warnings ({{count}})",ok:"OK ({{count}})"},controls:{errorCode:"Error code",codeSearch:"Search code â¦",noCodes:"No codes found.",groupConflicts:"Group conflicts",heatmap:"Heatmap",heatmapTitle:"Code à field â frequency matrix",onlyProblems:"Only problems",csv:"CSV ({{count}})",csvTitle:"Download currently filtered rows as CSV",search:"Title, ID, reason â¦",reset:"Reset"},active:{label:"Active codes:",remove:"Remove {{code}}",removeAll:"Remove all"},groups:{title:"Conflicts by mapping dimension",groupOne:"group",groupOther:"groups",empty:"No conflicts in current selection.",cols:{dimension:"Dimension",conflicts:"Conflicts",tasks:"Affected tasks",topCodes:"Top codes"}},heatmap:{title:"Heatmap: error code à affected field",summary:"{{codes}} codes · {{fields}} fields",empty:"No code-field combinations in current selection.",errorCode:"Error code",filterTitle:"Set as filter",intensity:"Intensity:",max:"max = {{value}}"},table:{title:"Mapping preview",rowOne:"row",rowOther:"rows",empty:"No matching rows.",cols:{severity:"Severity",title:"Title",type:"Type (old â new)",status:"Status (old â new)",priority:"Priority",sla:"SLA (h)",supplier:"Supplier",reason:"Reason / conflicts"},supplierMissing:"missing"},csvToast:"{{count}} rows exported.",csvEmpty:"No rows to export.",copyToast:"{{label}} copied",copyError:"Copy failed",copyButton:"Copy",copied:"Copied",detail:{reason:"Reason",conflicts:"Conflicts & affected fields",noStructured:"No structured conflicts logged.",allFields:"All fields",value:"Value",noFieldMap:"No direct field mapping â see mapper payload below.",mapping:"Mapping overview",type:"Type",status:"Status",priorityNew:"Priority (new)",slaHours:"SLA hours",supplierDirect:"Supplier (direct)",supplierResolved:"Supplier (resolved)",sourceRef:"source_ref (raw)",payload:"Mapper payload"},dimensions:{type:"Type",status:"Status",priority:"Priority",sla_hours:"SLA hours",title:"Title",supplier:"Supplier",source_ref:"Source ref",escalation_level:"Escalation level",mapping:"Mapper call",other:"Other"},cp:{schema:"Schema preparation crm_tasks (1a)",frontend:"Frontend hooks on crm_tasks (1b)",edgeFns:"Edge functions on crm_tasks (1b)",realtime:"Realtime listeners on crm_tasks (1b)",rename:"Table renamed â ops_tasks_legacy (1b/c)",drop:"Drop ops_tasks_legacy (1c, after 7-day observation)"},subtitle:"Phase 1b of Operations hub consolidation â compliance tasks unified on crm_tasks.",status:"Migration status",completed:"Completed",complianceCount:"Compliance tasks in crm_tasks",complianceCountDesc:"Active tasks with type â {compliance, audit_followup, q
35c_followup, shipment_followup, document_renewal}.",legacyTable:"Legacy table",legacyDesc:"Read-only observation window. Drop in phase 1c after 7 days without regression."},pipelineSla:{title:"Stage SLA",subtitle:"Define how many days a deal in this pipeline stage is considered overdue. Empty = no SLA reminder.",saved:"Saved.",saving:"Savingâ¦",save:"Save",empty:"No configurable stages.",col:{stage:"Stage",slaDays:"SLA (days)",warnDays:"Warning"},errors:{invalidSla:"SLA days must be ⥠0.",invalidWarn:"Warning time must be ⥠0."}}},X={title:"Column filter",placeholder:"Enter valueâ¦"},J={placeholder:"Search or type a commandâ¦",searchOrCommand:"Search or run command (âK)",searchEllipsis:"Searchâ¦",searchResults:"Search results",pages:"Pages",noResults:"No results.",noResultsFor:'No matches for "{{query}}"'},Z={userMenu:"User menu",openSidebar:"Open sidebar",openMenu:"Open menu",navigation:"Navigation",more:"More"},$={label:"{{days}} days idle",nudge:"Lead has been quiet for {{days}} days â nudge?"},ee={allOnPage:"All {{count}} on this page selected.",selectAcross:"Select all {{count}} results across all pages",allAcross:"All {{count}} results selected.",clear:"Clear selection"},te={openInClient:"Open in email client",subject:"Subject",body:"Message",to:"To",send:"Send",draftSaved:"Draft saved",composeTitle:"Compose email",template:"Template",message:"Message",preview:"Preview",edit:"Edit",cancel:"Cancel",saveDraft:"Save draft",minimize:"Minimize",restore:"Restore",maximize:"Maximize",shrink:"Shrink",close:"Close",resize:"Resize",openedToast:"Draft opened in your email program",signatureLabel:"Signature (automatically appended to your email)",categoryLabel:"Category",autonomyReady:"Direct send approved",sendDirect:"Send directly",categories:{appointment_confirmation:"Appointment confirmation",shipping_notice:"Shipping notice",payment_received:"Payment received confirmation",general:"General"},templates:{erstgespraech:"Intro call invitation",allgemein:"General message"},assignFailed:"Could not assign",noDealsAvailable:"No deals available",replySent:"Reply sent â appears in the timeline after the next sync.",noEmail
35sYet:"No synchronized emails yet.",enableMailSync:"Enable mail sync in settings so messages from and to this contact appear automatically.",sentViaOutlook:"Sent via your connected Outlook mailbox · Conversation threading is preserved.",originalQuoted:"Original message is quoted automatically.",assignmentSaved:"Assignment saved",confirmSendTitle:"Send this email now?",confirmSendBody:"This email will be sent immediately from your connected Outlook account and stored in your Sent folder.",confirmSendAction:"Yes, send now",invalidRecipient:"Please enter a valid email address.",emptySubject:"Please enter a subject.",emptyBody:"Please enter a message body.",sendBlocked:"Sending not possible: the draft was rejected by validation.",sending:"Sending â¦",sentToast:"Email sent via Outlook",sendFailed:"Sending failed. Please try again.",noMailboxConnected:"No Outlook mailbox connected. Please connect it in the settings or open the draft in your email program.",openDraft:"Open email draft"},ae={placeholder:"Searchâ¦",title:"Inbox",description:"All conversations in one place â messages from suppliers/customers and new leads.",messages:"Messages",marketingLeads:"Marketing leads",agentBriefings:"Agent briefings",emails:"Emails",emailFilterAll:"All",emailFilterUnassigned:"Without deal",emailFilterAssigned:"With deal",emailSearch:"Search sender, company or subjectâ¦",emailEmpty:"No emails found.",emailNoDeal:"No deal",emailAssignTo:"Assign deal",emailRemoveAssignment:"Remove assignment",emailSyncedSince:"Synced since {{date}}",emailLastSync:"Last sync: {{date}}",emailAssigned:"Assignment saved",emailAutoMatched:"Matched automatically",emailManual:"Assigned manually",emailInbound:"Inbound",emailOutbound:"Outbound",emailSelect:"Select an email",emailOpenCompany:"Open company",emailSyncActive:"Sync active",emailSyncInactive:"Sync interrupted"},ne={onlyUnread:"Unread only",unread:"unread",markAllRead:"Mark all read",markRead:"Mark as read",open:"Open",empty:"No briefings yet.",emptyUnread:"No new briefings."},oe={subtitle:"Discrepancies between system data and AI-extracted facts from incoming messages.",empty:"No open conflicts. ð",title:"Data conflicts",open:"{{count}} open",system:"System",source:"Source",openDeal:"Open deal",keepSystem:"Keep system value",ignore:"Ignore",fields:{price:"Price",delivery_date:"Delivery date",quantity:"Quantity"}},ie={bulkDeleted:"{{count}} items deleted",bulkDeleteFailed:"Bulk delete failed",bulkUpdated:"{{count}} items updated",bulkUpdateFailed:"Bulk update failed",aiActionStarted:"AI action started",aiActionDone:"AI action completed",aiActionFailed:"AI action failed",catchupRefreshed:"Catch-up refreshed",catchupFailed:"Catch-up could not be refreshed",conflictResolved:"Conflict resolved",conflictFailed:"Conflict could not be resolved",platformUserError:"Platform users could not be loaded",loadError:"Failed to load",embedCopied:"Embed code copied",utmCopied:"UTM parameters copied",saved:"Saved",analysisDone:"Analysis complete.",outcomeCaptured:"Outcome captured.",micDenied:"Microphone access denied.",adsMatchTypeUpdated:"Match type updated in Google Ads",adsAdGroupCreated:"Ad group created in Google Ads",errorPrefix:"Error"},se={bulk:{tagAdded:"Tag added to {{count}} records",ownerChanged:"Owner changed for {{count}} records",ownerNotifyMessage:"{{count}} records were assigned to you",noRecordsSelected:"No records selected",exported:"{{count}} records exported"},bulkAi:{labels:{score_intent:"Buying intent"},running:"{{label}} running⦠({{done}}/{{total}})",doneAll:"{{label}} created for {{count}} records",doneSome:"{{ok}} succeeded, {{failed}} failed"},catchup:{creditsExhaustedTitle:"AI credits exhausted",creditsExhaustedDesc:"Contact {{admin}} (admin) to top up the credits.",rateLimitedTitle:"Too many AI requests",rateLimitedDesc:"Please wait 30 seconds and try again.",unavailableTitle:"Catch-up could not be generated",unavailableDesc:"Contact {{admin}} if the problem persists.",updated:"Catch-up updated",noNewTitle:"No new insights",noNewDesc:"The AI could not generate any new insights at the moment.",errorTitle:"Catch-up could not be updated"},conflicts:{resolved:"Conflict resolved",errorTitle:"Error"},platformUsers:{roleUpdated:"Role updated",userActivated:"User activated",userDeactivated:"User deactivated",teamUpdated:"Team updated",passwordResetSent:"Password reset email sent",inviteSentTitle:"Invitation sent",inviteSentDesc:"The user will receive an activation email.",userDeletedTitle:"User deleted",userDeletedDesc:"{{count}} records transferred.",errorTitle:"Error"}},re={contactInfo:"Contact information",crmMarketing:"CRM & marketing",consents:"Consents (GDPR)",address:"Address",timestamps:"Timestamps",keyInfo:"Key information",salesCurrency:"Sales currency",salesCurrencyHint:"Default currency for new quotes, invoices and contracts for this customer.",bank:{title:"Bank details",accountName:"Account holder",bankName:"Bank",branch:"Branch (Sub-Branch)",address:"Bank address",accountNumber:"Account number",swift:"SWIFT / BIC",currency:"Account currency"},parties:{banner:{title:"Parties incomplete",customerMissing:"Please link a customer contact.",supplierMissing:"A supplier must be set from the quote stage.",bothMissing:"Customer and supplier are missing.",fixNow:"Complete now"}}
35,notes:"Notes",companyDescription:"Company description",shortDescription:"Short description",dates:"Dates",keyDates:"Dates",pipelineValue:"Pipeline value",leadScore:"Lead score",detailsAbout:"Details for: {{title}}",stageHistory:"Stage history",noStageChanges:"No stage changes yet",noActivities:"No activities",linkedDeals:"Linked deals",noLinkedDeals:"No linked deals",noLinkedContacts:"No linked contacts",noLinkedCompany:"No linked company",noContactLinked:"No contact linked",noCompany:"No company",noDeals:"No deals",noResultsShort:"No match",moreEntries:"+{{count}} more",created:"Created",updated:"Updated",lastActivity:"Last activity",closedDate:"Close",contactCreated:"Contact created",lastUpdated:"Last updated",companyCreated:"Company created",dealCreated:"Deal created",stageJump:"Deal stage: {{from}} â {{to}}",generated:"As of: {{when}}",notGenerated:"Not generated yet",noInsights:'No AI insights yet. Click "Refresh".',timelineFilters:{all:"All",stages:"Stages",notes:"Notes",mails:"Mails"},tabs:{catchup:"Catch-up",overview:"Overview",about:"About",activities:"Activities",meetings:"Meetings",emails:"Emails",attachments:"Attachments",touchpoints:"Touchpoints",history:"History",ai:"AI",tasks:"Tasks",attribution:"Attribution",notes:"Notes",commerce:"Orders & Documents",feedback:"Feedback",products:"Products",consent:"Consents",exportDocs:"Export documents",stageActions:"Stage actions",logistics:"Shipping & logistics"},badges:{},commerce:{cashflow:{title:"Cashflow Radar",paid:"Paid",open:"Open",future:"Expected",terms:"Payment terms",noTerms:"Default (30% deposit · 70% balance)",adjust:"Adjust",adjustDisabledTooltip:"Available from Phase P-2 (Stage-Action Engine).",openTab:"Details",termsManagedAtCustomer:"Payment terms are managed at the customer."},belege:{title:"Documents & history",empty:"No quotes or invoices linked to this deal yet.",headerType:"Type",headerNumber:"Number",headerDate:"Date",headerAmount:"Amount",headerStatus:"Status",typeQuote:"Quote",typeInvoice:"Invoice",preview:"Show preview",download:"Download PDF",pdfCreating:"Generating PDFâ¦",pdfDownloaded:"PDF downloaded.",pdfFailed:"Could not generate PDF.",pdfRetry:"Retry",pdfRetrying:"Retry attempt {{attempt}} of {{total}}â¦",pdfNetworkError:"Network error while generating PDF. Please check your connection.",open:"Open",delete:"Delete",deleteLabelInvoice:"Invoice {{number}}",deleteLabelQuote:"Quote {{number}}"},shipment:{title:"Logistics & shipments",empty:"No shipments recorded.",delivered:"Delivered"},warning:{postDelivery:"Awaiting post-delivery payment ({{days}} days left)",postDeliveryBadge:"Post-delivery payment open: {{amount}}"},terms:{dialogTitle:"Adjust payment terms",dialogDesc:"Choose a preset or build custom splits. The sum of all percentages must equal 100.",preset:"Preset",custom:"Custom",currency:"Currency",splits:"Payment splits",addSplit:"Add split",label:"Label",trigger:"Due trigger",offsetDays:"Offset days",newSplit:"New split",sumLine:"Total: {{total}}%",saved:"Payment terms saved",saveError:"Save failed"}},taskTooltipContact:"Open task list filtered to this contact",taskTooltipCompany:"Open task list filtered to this company",createCompanyLinked:"Create & link company",createNewContact:"Create new contact",createNewDeal:"Create new deal",linkContact:{buttonTitle:"Link existing contact",dialogTitle:"Link contact to company",searchPlaceholder:"Search contactâ¦",link:"Link",moveAnyway:"Move anyway",reassignWarning:"This contact is currently linked to {{otherCompany}}. Move it?",success:"Contact linked"},linkCompany:{buttonTitle:"Link existing company",dialogTitle:"Link company to contact",searchPlaceholder:"Search companyâ¦",link:"Link",moveAnyway:"Reassign anyway",reassignWarning:"This contact is already linked to a company. Reassign?",success:"Company linked"},linkDeal:{buttonTitle:"Link existing deal",dialogTitleCompany:"Link deal to company",dialogTitleContact:"Link deal to contact",searchPlaceholder:"Search dealâ¦",link:"Link",moveAnyway:"Reassign anyway",reassignWarning:"This deal is currently linked to {{otherName}}. Reassign?",success:"Deal linked"},createContactShort:"Create contact",createCompanyShort:"Create company",lifecycleLabels:{subscriber:"Subscriber",lead:"Lead",marketing_qualified:"Marketing Qualified Lead",sales_qualified:"Sales Qualified Lead",opportunity:"Opportunity",customer:"Customer",evangelist:"Evangelist",other:"Other"},lifecycle:"Lifecycle",trafficSource:"Traffic source",clickedEmails:"Clicked emails",industry:"Industry",company:"Company",domain:"Domain",phone:"Phone",type:"Type",street:"Street",zip:"ZIP",city:"City",country:"Country",mobile:"Mobile",whatsapp:"WhatsApp",wechat:"WeChat",englishName:"English Name",position:"Position",email:"Email",amount:"Amount",stage:"Stage",probability:"Probability",weighted:"Weighted",weightedAmount:"Weighted amount",closeDate:"Close date",currency:"Currency",title:"Title",name:"Name",won:"won",lost:"lost",companyDetails:"Company details",contacts:"Contacts ({{count}})",contact:"Contact {{count}}
35",deals:"Deals ({{count}})",dealsLabel:"Deals",attachments:"Attachments ({{count}})",uploadBtn:"Upload",uploadDrop:"Drop files here",delete:"Delete",deletedToast:"Deleted",uploadFailed:"Download failed",previewFailed:"Failed to open preview",uploadSuccess:"{{count}} document(s) uploaded",reschedulingClose:"Re-estimating close date â¦",reschedulingFailed:"Re-estimation failed",stageChangedTitle:"Stage: {{from}} â {{to}}",comment:"Comment",addComment:"Add a comment⦠type @ to mention",replyPlaceholder:"Write a reply⦠@ to mention",reply:"Reply",send:"Send",pin:"Pin",unpin:"Unpin",editNote:"Edit note",addNote:"Add note",saving:"Savingâ¦",saved:"Save",cancel:"Cancel",pdfPreview:"PDF preview",zoomIn:"Zoom in",zoomOut:"Zoom out",reset:"Reset",fullscreen:"Fullscreen",exitFullscreen:"Exit fullscreen",responsibleEmployee:"Responsible employee",unassigned:"Unassigned",supplier:"Manufacturer",supplierPlaceholder:"Select manufacturer â¦",shipping:"Shipping",shipmentReadyDate:"Shipment ready date",sampleReadyDate:"Sample ready to ship on",massProductionReadyDate:"Mass production ready to ship on",qualityControlDate:"Quality control on",requiredAtStage:'Required from stage "{{stage}}"',stageBlockedTitle:"Stage change blocked",stageBlockedDesc:"Please fill in these required fields first: {{fields}}",stageRequired:{title:'Details for stage "{{stage}}"',description:"Please provide the following details so the deal can move to this stage.",noSampleShipment:"No sample shipment for this deal",noSampleSubtitle:"Sample phase will be skipped entirely.",noSampleHint:"Skipped because no sample shipment is planned.",confirm:"Save and change stage",cancel:"Cancel"},shipmentTrackingId:"Tracking number",logisticIncoterm:"Incoterm",carrier:"Carrier",classification:"Classification",priority:"Priority",dealType:"Deal type",lastContactedAt:"Last contacted",recordSource:"Record source",selectPlaceholder:"Please select â¦",incoterms:{DDP:"DDP â Delivered Duty Paid",EXW:"EXW â Ex Works",FOB:"FOB â Free on Board",CIF:"CIF â Cost, Insurance, Freight",DAP:"DAP â Delivered at Place",FCA:"FCA â Free Carrier"},carriers:{UPS:"UPS",DHL:"DHL",FedEx:"FedEx",TNT:"TNT",Maersk:"Maersk",OOCL:"OOCL",Cityunion:"Cityunion",GSC:"GSC (Overseas Express)",Other:"Other",SFExpress:"SF Express",ChinaPostEMS:"China Post / EMS",YunExpress:"YunExpress",KuehneNagel:"Kuehne+Nagel",DBSchenker:"DB Schenker",DSV:"DSV",MSC:"MSC",CMACGM:"CMA CGM",COSCO:"COSCO",Evergreen:"Evergreen",HapagLloyd:"Hapag-Lloyd"},priorities:{low:"Low",medium:"Medium",high:"High",critical:"Critical"},dealTypes:{new_business:"New business",existing_business:"Existing business",renewal:"Renewal",upsell:"Upsell"},logistics:{tabTitle:"Shipping & logistics",estimatedArrival:"Estimated arrival",actualArrival:"Actual arrival",sampleArrivalDate:"Arrival at customer",qualityControlResult:"Result",qcReports:"QC reports",qcReportsHint:"PDF preferred â other formats allowed. Multiple reports (e.g. per variant) possible.",qcResult:{passed:"Passed",failed:"Failed",conditional:"Conditional"},sampleSection:"Sample",qcSection:"Quality control",productionSection:"Mass production & shipping",orderType:"Order type",orderTypeFirst:"First order",orderTypeRecurring:"Recurring order",orderTypeAuto:"Derived automatically from the pipeline",sampleNotRequired:"Not required for recurring orders",sampleSkippedBadge:"Skipped â no sample shipment",sampleSkipToggle:"No sample shipment",sampleReenable:"Sample shipment needed after all",timeline:{sample:"Sample",qc:"Quality check",production:"Mass production"},banner:{warnTitle:"Please complete logistics data",warnDescOne:"1 required field missing. Lock in {{days}} days.",warnDescMany:"{{count}} required fields missing. Lock in {{days}} days.",warnDescToday:"{{count}} required fields missing. Lock takes effect today.",blockTitle:"Deal locked",blockDesc:"Please add the missing logistics data to continue editing.",fixNow:"Complete now",sidebarShort:"Complete shipping data",warnDescManyFields:"Important logistics information is still missing. Please fill in the missing {{count}}
35 fields.",warnDescOneField:"One important piece of logistics information is still missing. Please fill in the missing field."},sidebar:{shortTitle:"Shipping",openTab:"All shipping data â",statusOk:"Complete",statusWarn:"Incomplete",statusBlock:"Locked"},deals:{filterIncomplete:"Incomplete logistics",badgeIncomplete:"Logistics incomplete"},arrangedByLabel:"Shipping arranged by",arrangedByUs:"We arrange it",arrangedByCustomer:"Customer arranges it",customerArrangedHint:"The customer arranges shipping of the bulk order themselves. Tracking number, carrier and estimated arrival are therefore optional.",customerArrangedPlaceholder:"Arranged by customer",sampleShipmentSection:"Sample shipment",sampleTrackingId:"Sample tracking number",sampleCarrier:"Sample carrier",openTracking:"Track with carrier",pickupAddress:"Pickup address",pickupAddressPlaceholder:"Enter address",pickupAddressAuto:"Automatically from manufacturer {{name}}",pickupAddressNoSupplier:"No manufacturer linked â please enter the address manually.",pickupAddressManual:"Manually overridden",pickupAddressManualBy:"Manually overridden by {{name}} on {{date}}",pickupAddressUnknownEditor:"Unknown",pickupAddressReset:"Reset",openTrackingAt:"Track shipment with {{carrier}}"},feedback:{responses:"Responses",insights:"AI insights",empty:"No survey responses from this contact yet.",unknownSurvey:"Unknown survey",nps:{promoter:"Promoter",passive:"Passive",detractor:"Detractor"},sentiment:{positive:"Positive",neutral:"Neutral",negative:"Negative",mixed:"Mixed"},channels:{link:"Link",email:"Email",whatsapp:"WhatsApp",embed:"Embedded"}},consent:{empty:"No consent entries for this contact yet.",intro:"Complete GDPR history of all opt-in/opt-out events per communication channel."},pipeline:"Pipeline",pipelineChanged:"Deal moved to new pipeline",aiInsights:{creditsExhaustedDesc:"Catch-up cannot be refreshed right now. Please contact {{admin}} to top up the credit balance.",authDesc:"Please sign in again or contact {{admin}}."},consultingHourlyRate:"Consulting hourly rate (EUR)",logisticsAi:{title:"AI quick capture",hint:"Describe the shipment or attach the carrierâs shipping notice, label or invoice (image or PDF) â AI fills the fields.",placeholder:"e.g. âShipped today via DHL, number JJD0002â¦â",attach:"Attach file",voice:"Voice input",send:"Send",thinking:"Analysing â¦",willSet:"These values will be applied:",apply:"Apply",discard:"Discard",reviewHint:"Please review the suggestions and apply them.",nothingFound:"I could not identify any clear shipping data. Could you describe it briefly?",askFallback:"Could you describe that in more detail?",readAttachment:"Read the attached documents and fill in the fields.",filesAttached:"{{count}} file(s) attached",maxTurns:"Quick capture has ended. Please enter the remaining values directly.",error:"Quick capture failed. Please try again.",fileTooLarge:"The file is too large (max. 20 MB).",rateLimit:"Too many requests. Please wait a moment.",creditsExhausted:"The AI credits are used up."},accountOwner:"Account Owner",active:"Active",emailStatus:"Email Reception",stageSla:{label:"SLA for Stage"},unsubscribed:"Unsubscribed",companyPaymentTerms:{title:"Payment terms",adjust:"Adjust",currency:"Currency",empty:"No payment terms stored yet.",dialogDesc:"Define the payment terms for this company."},aiRuns:{title:"AI agent runs",fallbackAgent:"AI agent",status:{success:"Successful",error:"Failed",running:"Running",timeout:"Timed out",cancelled:"Cancelled"},empty:"No AI agent runs for this deal yet."}},le={emailMarketing:"Email marketing",whatsappMarketing:"WhatsApp marketing",pending:"Pending",resend:"Resend",manualConfirm:"Confirm manually",noEmail:"Contact has no email address",doiSent:"Confirmation email sent (status: pending)",granted:"Consent granted",revoked:"Consent revoked",doiResent:"Confirmation email resent",reasonRequired:"Please provide at least 5 characters of justification",manualMarked:"Consent marked as confirmed manually (audit log active)",askTitle:"Request consent?",revokeTitle:"Revoke consent?",askDescEmail:"A double opt-in confirmation email will be sent. Consent is only legally valid after the recipient clicks the link.",askDescWa:"WhatsApp marketing will be activated. Make sure a written consent is documented.",revokeDesc:"The contact will be blocked for {{channel}} marketing.",cancel:"Cancel",saving:"Savingâ¦",confirm:"Confirm",manualTitle:"Mark as manually confirmed",manualDesc:"Only use when a written consent exists outside the system (e.g. business card, signed trade-fair form, contract). The action is permanently logged with your name and the justification.",reasonLabel:"Justification / proof (required)",reasonPlaceholder:"e.g. Business card 2024-03-15, Hamburg trade fair â written consent given",confirmedAt:"Confirmed on {{date}}",via:" via {{source}}",doiSentAt:"DOI email sent {{date}} â valid until {{expires}}",revokedAt:"Revoked on {{date}}"},ce={cron:{title:"Cron configuration",description:"Control the daily SEO audit run, URL filters and score-drop alerts.",enabled:"Cron active (daily 03:00 UTC)",sitemapUrl:"Sitemap URL",sitemapHint:"Sitemap indexes are resolved recursively up to 3 levels.",maxUrls:"Max URLs / run",strategy:"Strategy",mobile:"Mobile",desktop:"Desktop",lighthouse:"Lighthouse audits",onpage:"On-page audits",section:"Cron",filterSection:"URL filters",includePatterns:"Include patterns (one per line, glob style)",includePlaceholder:"Empty = all URLs",excludePatterns:"Exclude patterns",excludePlaceholder:"e.g. /admin/*",alertsSection:"Score-drop alerts",alertEmail:"Email admins on drop",threshold:"Threshold (drop points)",thresholdHint:"Alert fires as soon as a URL score drops by this amount or more.",cancel:"Cancel",save:"Save",loadFailed:"Configuration could not be loaded",saveFailed:"Save failed",saved:"Configuration saved",cronCardTitle:"Auto-cron (daily 03:00 UTC)",cronCardDesc:"Lighthouse + on-page across all sitemap URLs",config:"Configuration",running:"Running",runNow:"Run now",loading:"Loadingâ¦",noRun:"No run yet â will be triggered tonight automatically or manually now.",lastRun:"Last run",urlsProcessed:"{{processed}} / {{total}} URLs processed",avgSeo:"Avg SEO",avgOnpage:"Avg OnPage",lhOk:"LH OK",onpageOk:"OnPage OK",failures:"â {{lh}} Lighthouse + {{op}} on-page errors",statusRunning:"Running",statusCompleted:"Successful",statusPartial:"Partial",statusFailed:"Failed"},competitors:{title:"Competitor SEO comparison",addCompetitor:"Competitor",newCompetitor:"New competitor",name:"Name",namePlaceholder:"e.g. Competitor A",url:"URL",cancel:"Cancel",save:"Save",ownSite:"Own site (reference):",noCompetitors:"No competitors yet. Add one to start Lighthouse comparisons.",running:"running...",failed:"error",noAudit:"no audit yet",audit:"Audit",confirmDelete:'Delete competitor "{{name}}"?'},competitorsExt:{urlPlaceholder:"https://...",perf:"Perf",seo:"SEO",a11y:"A11y",bp:"BP"},decay:{title:"Content Decay Detector",desc:"Knowledge articles with â¥30% click loss (last 30 vs prior 30 days). AI generates refresh recommendations.",pickProperty:"Select property",active:"Active",all:"All",open:"Open",inProgress:"In progress",done:"Done",ignored:"Ignored",startScan:"Start decay scan",
35needGsc:"Connect a GSC property in the Keywords tab first.",noCandidates:'No decay candidates {{filter}}. Click "Start decay scan" to analyze the last 60 days.',lastScan:"Last scan: {{date}} ⢠{{count}} candidates",aiRecommendation:"AI recommendation",topQueries:"Top queries",createTask:"Create refresh task",markDone:"Mark as done",ignore:"Ignore",statusUpdated:"Status updated",updateFailed:"Update failed",detectionFailed:"Decay detection failed",detected:"{{inserted}} decay candidates detected ({{candidates}} checked total)",taskCreated:"Refresh task created in CRM",taskFailed:"Task creation failed"},issues:{issuePatterns:"Issue patterns",affectedUrls:"Affected URLs",critical:"Critical",warning:"Warning",info:"Info",searchPlaceholder:"Search issue or category...",allSeverities:"All severities",allSources:"All sources",onpage:"On-page",lighthouse:"Lighthouse",reset:"Reset",aggregating:"Aggregating issues...",noIssues:"No issues yet. Start an audit or wait for the next cron run.",noFilterMatch:"No issues for current filters.",url:"URL",urls:"URLs"},bridge:{title:"AEO à GSC Bridge",desc:"Queries that rank in Google but are missing in LLM answers. Close the gap.",pickSite:"Select site",runAnalysis:"Start gap analysis",noGaps:"No gaps detected â start an analysis.",googleStats:"Google: {{clicks}} clicks · pos {{pos}}",llmScore:"LLM score: {{score}}/100",weakMention:"weakly mentioned",notMentioned:"not mentioned",aiRec:"AI RECOMMENDATION",suggestedPrompt:"SUGGESTED AEO PROMPT",promptCreated:"Prompt created",createPrompt:"Create AEO prompt",taskCreated:"Task created",createTask:"Create as task"},indexing:{pages:"Pages",inSitemap:"In sitemap",crawlable:"Crawlable",refresh:"Refresh sitemap & robots.txt",pageOverview:"Page overview",loading:"Loading...",noData:'No data yet. Click "Refresh sitemap & robots.txt".',inSitemapBadge:"Sitemap",notInSitemap:"not in sitemap",crawlableBadge:"crawlable",blocked:"blocked"},keywords:{title:"Search Console keywords",desc:"Real search queries, clicks, impressions and positions from Google Search Console.",loadProperties:"Load properties",noProperties:'No properties connected. Click "Load properties" to import them from your Search Console.',pickProperty:"Select property",sevenDays:"7 days",twentyEightDays:"28 days",ninetyDays:"90 days",sync:"Sync data",lastSync:"Last: {{when}}",clicks:"Clicks",impressions:"Impressions",ctr:"CTR",keywordsCount:"Keywords",topKeywords:"Top keywords (last {{days}} days)",noQueryData:'No data yet. Click "Sync data".',query:"Query",avgPosition:"Avg position"},link:{title:"Internal Link Optimizer",desc:"AI compares knowledge articles and suggests missing internal links.",generate:"Generate suggestions",none:"No suggestions yet â generate some.",score:"Score {{n}}/10",anchor:"ANCHOR TEXT",taskCreated:"Task created",createTask:"Create as task",done:"Done",ignore:"Ignore"},onpage:{url:"URL",runAudit:"Run audit",auditRunning:"Audit running...",intro:"Checks title, meta description, H1, JSON-LD, alt texts, internal links and more via Firecrawl.",score:"On-page score",title:"Title",metaDesc:"Meta desc",h1:"H1",words:"Words",internalLinks:"Internal links",externalLinks:"External links",altCoverage:"Alt coverage",altImages:"{{withAlt}}/{{total}} images",chars:"{{n}} chars",canonical:"Canonical",ogTags:"OG tags",viewport:"Viewport",present:"present",missing:"missing",recommendations:"Recommendations",failed:"Audit failed",history:"History",noAudits:"No audits yet.",loading:"Loading..."},gscAlerts:{title:"Trend alerts",desc:"Auto-sync runs daily 04:00 UTC. Compares 7-day window.",checkNow:"Check now",noAlerts:"No open alerts. All clear. â
",clickDrop:"Click drop",posDrop:"Position drop",ackTitle:"Mark as resolved"},gscLh:{title:"Top landing pages à Lighthouse",desc:"Which traffic drivers have Performance issues? Sorted by clicks.",noPageData:"No page data available. Sync Search Console first.",criticalCount:"{{count}} critical pages: high traffic + Performance score < 50. Should be optimized first.",landingPage:"Landing page",audit:"Audit"},oppFinder:{title:"Keyword Opportunity Finder",desc:"AI finds keywords on positions 4â15 with optimization potential.",findQuickWins:"Find quick wins",intro:'Click "Find quick wins" â AI analyzes your Search Console data and suggests improvements.',quickWinsFound:"{{count}} quick wins found",error:"Error",task:"Task",taskCreated:"Task created",aiTipsTitle:"AI optimization tips"},cannibal:{title:"Keyword cannibalization",desc:"Finds queries where multiple URLs compete â with AI consolidation recommendation.",startScan:"Start scan",none:"No cannibalization detected â start a scan.",urlsCount:"{{n}} URLs",clicks:"{{n}} clicks",primary:"RECOMMENDED PRIMARY URL",competing:"COMPETING URLS",taskCreated:"Task created",createTask:"Create as task",ignore:"Ignore",done:"Done"},alerts:{title:"Recent score drops",open:"{{n}} open",loading:"Loadingâ¦",noDrops:"â No recent score drops. All stable.",openUrl:"Open URL",ack:"Acknowledge"},lighthouse:{url:"URL",strategy:"Strategy",mobile:"Mobile",desktop:"Desktop",runAudit:"Run audit",auditRunning:"Audit running...",performance:"Performance",seo:"SEO",accessibility:"Accessibility",bestPractices:"Best Practices",speedIndex:"Speed Index",recommendations:"Recommendations",history:"History",noAudits:"No audits yet.",loading:"Loading..."},overview:{lhAvg:"Lighthouse avg (last 10)",perf:"Perf",seo:"SEO",a11y:"A11y",indexCoverage:"Index coverage",inSitemap:"in sitemap",auditsTotal:"Audits total",lhRuns:"Lighthouse runs"},trends:{title:"Trends (30 days) â {{count}} URLs",loading:"Loading trendsâ¦",noData:"No trend data yet. Once cron runs multiple times, trends appear here.",topImprovers:"Top 5 Improvers (7 days)",topDecliners:"Top 5 Decliners (7 days)",noImprovers:"No improvements.",noDecliners:"No deteriorations.",perUrl:"Per URL â Lighthouse (blue) + OnPage (gray)"},channels:{media:"Media",tradePub:"Trade press",industryBody:"Association",directory:"Directory",blog:"Blog",forum:"Forum",other:"Other"},approaches:{guestArticle:"Guest article",studyPitch:"Study pitch",expertQuote:"Expert quote",directoryListing:"Listing",interview:"Interview",dataCollab:"Data collab"},title:"SEO hub",subtitle:"Crawls, keywords, indexing and Lighthouse â all in one place.",tabs:{overview:"Overview",keywords:"Keywords",indexing:"Indexing",competitors:"Competitors",decay:"Content decay",issues:"Issues",lighthouse:"Lighthouse",onpage:"On-page",cannibalization:"Cannibalization",links:"Internal links",aeoBridge:"AEO bridge"},gscEmpty:{title:"Search Console is not connected yet",desc:"Without a connected property there is no selection and no data. Lo
35ad properties now.",connect:"Connect properties"}},de={title:"Agent Powerhouse",intro:"{{count}} AI agents progressively replace manual work. Live activity:",runsInSession:"runs in this session.",search:"Searchâ¦",editor:"Editor",runsConsole:"Runs",backToOverview:"Back to overview",innerCircle:"Inner circle",all:"All",loading:"Loadingâ¦",improvements:"Improvement suggestions",openInbox:"â Open inbox",active:"Active",replaces:"replaces: {{role}}",manual:"Manual",runs14d:"Runs/14d",success:"Success",saved:"Saved",runsTrendAria:"Runs trend 7 days",chat:"Chat",coach:"Coach",worker:"Worker",coachHint:"Conversational â ask follow-up questions directly in chat",workerHint:"Background worker â runs on cron or event trigger",category:{sales:"Sales",operations:"Operations",marketing:"Marketing",data:"Data",strategy:"Strategy",meta:"Meta"},sortLabel:"Sort",sort:{name:"Name (AâZ)",runs:"Activity (14 days)",success:"Success rate",saved:"Hours saved",next:"Next run",updated:"Recently updated"},groupByLabel:"Group by",groupBy:{none:"No grouping",category:"Category",role:"Replaced role",frequency:"Frequency"},frequency:{manual:"Manual",event:"Event",hourly:"Hourly",daily:"Daily",weekdays:"Weekdays",weekly:"Weekly",biweekly:"Biweekly",monthly:"Monthly"},noRole:"No role assigned",approvals:"Approvals",usage:"Usage",memory:"Memory",proactive:"Shifu suggestions",personalAssistant:"Personal assistant",personalAssistantHint:"Private notes, reminders and appointments â visible only to you.",confidential:"Confidential â for you only",roleOrchestrator:"Shifu â Orchestrator",roleOrchestratorHint:"Leads the conversation, detects intent and drives the matching tools.",roleForm:"Shifu â Forms",roleFormHint:"Pre-fills input forms and document line items. You review and save.",askViaShifu:"Ask directly via Shifu"},pe={title:"Agent runs",subtitle:"Live log of all agent runs including executed tools, duration and errors.",filters:"Filters",filterAgent:"Agent",filterStatus:"Status",filterTrigger:"Trigger",allAgents:"All agents",allStatus:"All statuses",allTriggers:"All triggers",count:"{{n}} runs",empty:"No runs for this filter.",error:"Error",cancelled:"Cancelled",field:{started:"Started",duration:"Duration",trigger:"Trigger",model:"Model",tokens:"Tokens (in/out)",cost:"Cost",input:"Input",output:"Output",errorMessage:"Error",toolCalls:"Tool calls ({{n}})",noTools:"No tools used in this run."},outcome:{title:"Rate outcome",accepted:"Accepted",edited:"Edited",rejected:"Rejected",ignored:"Ignored",hint:"Drives acceptance rate per agent (30 days). Basis for promotion to higher autonomy tiers."},feedback:{saved:"Feedback saved"}},ue={intro:"Scheduled triggers for this agent. The dispatcher checks every 5 minutes which triggers are due.",empty:"No automatic triggers configured yet.",add:"Add trigger",newTitle:"New schedule trigger",edgeFunction:"Backend function",edgeFunctionHint:"Exact name of the backend function to start.",frequency:"Frequency",create:"Create",lastFiredAt:"Last: {{when}}",neverFired:"Never executed",activeToggle:"Active",fireNow:"Run now",delete:"Delete"},me={title:"Improvement suggestions",subtitle:"Optimization recommendations generated by the chief agent for the agent fleet.",open:"Open ({{count}})",loading:"Loadingâ¦",empty:"No open suggestions. ð",pending:"pending",finding:"Finding:",suggestion:"Suggestion:",expectedImpact:"Expected impact:",approve:"Approve",reject:"Reject",adminOnly:"Only admins can approve.",reviewed:"Reviewed ({{count}})",statuses:{pending:"Pending",approved:"Approved",rejected:"Rejected"}},ge={subtitle:"Autonomous growth strategist: analyzes the platform and proposes initiatives.",improvementsLink:"Agent improvements",cockpit:"Cockpit",roadmap:"Roadmap",impactMatrix:"Impact matrix",history:"History",chat:"Chat",themes:"Themes",chefagent:"Chief Agent"},he={headline:"{{name}} â Your strategy sparring partner",subtitle:"Best friend, China veteran, multi-exit. Steers you strategically â investors, business model, positioning. Not an operational coach.",chat:"Chat",northstar:"North star",commitments:"Commitments",insights:"Insights",settings:"Settings",quickPrompts:{investorReadiness:"Assess investor readiness",nextLever:"Next strategic lever",challengeModel:"Challenge business model",teamScaling:"Team scaling sensible now?"},advisorHeadline:"Strategy advisor",advisorSubtitle:"Goals, key figures and long-term assessments. Ask your questions directly to Shifu.",overview:"Overview"},ye={moreContext:"Show more context (pipeline trend, stages, top contacts, activities)",pipelineEmpty:"As soon as deals are captured, the pipeline trend appears here.",newDeal:"New deal",newContact:"New contact",stageEmpty:"Create deals to see the distribution per stage.",activityEmpty:"Stage changes and new deal activities appear here in real time.",topContactsEmpty:"Top contacts appear once lead scores are computed.",dailyFocusTitle:"Today's focus",aiSelection:"AI selection",tasksToday:"tasks today",staleLeads:"Stale leads",reasonOverdue:"Overdue",reasonDueToday:"Due today",reasonStale7d:"No update for 7+ days",allClear:"All clear â no urgent actions.",open:"Open",high:"high",aiBriefing:"AI briefing",briefingPreparing:"Briefing is being prepared â check back shortly.",briefingHistory:"View history",refresh:"Refresh",pause:"Pause",resume:"Resume",play:"Read aloud",stop:"Stop",dealSignals:"Deal signals",noSignals:"No notable deals â all clear.",activityDealMissing:"Deal not available",kpi:{openTasks:"Open tasks",openTasksSub:"{{count}} due today",overdueTasks:"Overdue",overdueTasksSub:"Handle right away",meetingsToday:"Meetings today",meetingsTodaySub:"{{count}} tomorrow",shipments:"Shipments in transit",shipmentsSub:"{{count}} delayed",openTickets:"Open tickets",openTicketsSub:"{{count}} new emails today"},tasks:{title:"My tasks",openBadge:"{{count}} open",empty:"No open tasks â nicely done.",showAll:"Show all tasks",markDone:"Mark as done",overdue:"Overdue",today:"Today",noDueDate:"No due date"},agenda:{title:"Meetings & inbox",empty:"No meetings scheduled for today or tomorrow.",tomorrow:"Tomorrow",openTickets:"Open tickets",inboundToday:"New emails today",openInbox:"Open inbox"},ops:{title:"Operations status",inTransit:"Shipments in transit",delayedHint:"{{count}} delayed or at risk",customs:"In customs",customsHint:"Customs clearance in progress",qcOpen:"Open quality inspections",qcIssuesHint:"{{count}} with defects",compliance:"Operations tasks",complianceHint:"{{count}} overdue",alerts:"{{count}} alert(s)"}}
35,ve={title:"Today â Next actions",aiAggregated:"Aggregated",signals:"signals",allClear:"All clear â no open signals.",open:"Open",high:"High",source:{deal_coach:"Deal coach",cs_playbook:"CS playbook",meeting_prep:"Meeting prep",reply_needed:"Reply needed",stage_slip:"Stage slip",renewal_window:"Renewal window"}},fe={notSignedIn:"Not signed in",noAudio:"No audio received",callFailed:"TTS call failed (HTTP {{status}})",ttsUnavailable:"Read-aloud temporarily unavailable",ttsUnavailableDetail:"The voice service is temporarily unavailable. Please try again later or notify the admin.",audioFailed:"Audio could not be played.",readFailed:"Read-aloud failed"},be={cockpit:{title:"Customer Success Cockpit",subtitle:"Health, renewals, playbooks â at a glance",refresh:"Refresh now",kpi:{avgHealth:"Avg health",atRiskCritical:"At-risk + critical",openRenewalArr:"Open renewal ARR (90d)",upcomingRenewals:"Upcoming renewals"},topAtRisk:"Top 10 at-risk customers",allCustomers:"All customers â",noCritical:"No critical customers ð",col:{customer:"Customer",health:"Health",trend30d:"Trend (30d)",arr:"ARR",renewal:"Renewal"},details:"Details",toastSuccess:"Health, forecast & playbooks updated",toastError:"Run failed"},customers:{title:"Customers â Customer Success",searchPlaceholder:"Searchâ¦",loading:"Loadingâ¦",empty:"No customers found.",col:{customer:"Customer",health:"Health",trend:"Trend",arr:"ARR",since:"Customer since",nextRenewal:"Next renewal"},healthCta:"Health"},renewals:{title:"Renewals",subtitle:"Contract renewals â pipeline & forecast",refresh:"Refresh forecast",toastSuccess:"Renewal forecast updated",toastError:"Error"},playbooks:{title:"CS playbooks",subtitle:"Automatic responses to health events",runNow:"Run now",newPlaybook:"New playbook",runToast:"Playbooks ran: {{count}} new actions",runError:"Error",emptyList:"No playbooks created yet.",recentRuns:"Recent runs",noRuns:"No runs yet.",actionsCount:"{{count}} action(s)",triggers:{score_drop:"Score drop",risk_level:"Risk level",renewal_window:"Renewal window",no_activity:"No activity"},editor:{editTitle:"Edit playbook",newTitle:"New playbook",name:"Name",description:"Description",triggerType:"Trigger type",triggerConfig:"Trigger configuration (JSON)",triggerHint:"Examples",actions:"Actions (JSON array)",actionsHint:"Action types: {{types}}. Variables: {{vars}}",active:"Active",cancel:"Cancel",save:"Save",invalidConfigJson:"Trigger config is not valid JSON",invali
35dActionsJson:"Actions are not valid JSON",triggerOpts:{score_drop:"Score drop",risk_level:"Risk level reached",renewal_window:"Renewal window",no_activity:"No activity"}},kanban:{loading:"Loading renewalsâ¦",colUpcoming:"Upcoming (90 days)",colAtRisk:"At risk",colWon:"Renewed",colLost:"Lost / churn",arrSuffix:"ARR",empty:"No entries",unknown:"Unknown",probability:"Probability: {{value}}%",won:"Won",lost:"Lost"},healthBadge:{aria:"Customer health {{score}}: {{label}}",tooltipTitle:"Customer health: {{label}}",unknown:"unknown"},healthDetail:{title:"Health detail: {{name}}",customer:"Customer",loading:"Loadingâ¦",noSnapshots:"No health snapshots yet.",asOf:"As of {{date}}",deltaPrevious:"vs. previous day",breakdownTitle:"Component breakdown",history90:"History (90 days)",toCompany:"â Go to company",comp:{usage:"Usage (30%)",support:"Support (25%)",billing:"Billing (20%)",engagement:"Engagement (15%)",lifecycle:"Lifecycle (10%)"}}}},ke={common:{refresh:"Refresh",loading:"Loadingâ¦",refreshShort:"Refresh"},mfa:{title:"MFA Compliance",description:"Overview of all users with MFA requirement and their activation status.",kpi:{total:"Total",active:"MFA active",grace:"In grace period",atRisk:"Overdue / Blocked"},errorTitle:"Could not load report",tableTitle:"Users with MFA requirement",sortHint:"Sort: Blocked â Overdue â Grace â Compliant. Updated {{when}}.",now:"just now",loading:"â¦",reload:"Reload",headers:{email:"Email",roles:"Roles",status:"Status",graceUntil:"Grace until",lastLogin:"Last login"},empty:"No MFA-required users found.",rolloutTitle:"How the rollout works",rollout:{graceLabel:"Grace period:",graceText:"Until the deadline, a banner is shown in the layout, but access remains allowed.",overdueLabel:"Overdue:",overdueText:"Grace expired â user is redirected to {{path}} on the next page load until MFA is set up.",blockedLabel:"Blocked:",blockedText:"{{flag}} in {{table}} permanently sets a hard block, regardless of grace period."},status:{compliant:"MFA active",grace:"Grace",pending:"Pending",overdue:"Overdue",blocked:"Blocked"}},health:{title:"System Health",description:"Live status of the platform: errors, agent runs, frontend boot and deploy drift.",openErrors:"Open errors (14d)",noCritical:"No critical",criticalCount:"{{count}} critical",diffVsYesterday:"vs. yesterday",agentRate:"Agent failure rate (24h)",agentRuns:"{{errors}} / {{total}} runs",beacons:"Boot beacons (24h)",beaconsLast15:"{{count}} in last 15min",beaconsNone:"None in 15min",liveBundle:"Live bundle",hashStaleSince:"Hash {{prefix}}for {{hours}}h",stale:"stale ",noCheck:"No check yet",beaconTrendTitle:"Boot beacon trend (last 24h, hourly)",noBeacons:"No beacons in the last 24h.",edgeLatency:"Edge function latency (24h, 5% sampling)",noLatency:"No latency data yet. Wrapper runs on selected functions; data appears after first calls.",headers:{function:"Function",calls:"Calls",errorRate:"Error rate",severity:"Severity",source:"Source",message:"Message",occurrences:"Occurrences",lastSeen:"Last seen",status:"Status"},currentErrors:"Current errors",errorCounts:"({{open}} open / {{total}} total 14d)",noErrors:"No errors in the last 14 days â all calm.",resolved:"resolved",open:"open",footer:"Data refreshes automatically every 30â60 seconds. Watchdog runs every 5min and sends mail on critical events to",footerLink:"the admin"},rum:{title:"RUM Dashboard",descriptionPart1:"Real user monitoring based on",descriptionPart2:". Sampling â 10% of production pageviews.",range7d:"7 days",range30d:"30 days",rating:{good:"good",needs:"needs improvement",poor:"poor"},p75Samples:"p75 · {{count}} measurements",goodPct:'{{pct}}% "good"',perDeviceTitle:"Percentiles per metric & device type",noData:"No measurement data in the selected time range.",headers:{metric:"Metric",device:"Device",samples:"Samples",goodPct:"% good",ratingP75:"Rating (p75)",route:"Route"},topRoutes:"Top slowest routes",metricLabel:"Metric:",topRoutesHint:"Sorted by p75 desc · min 5 measurements per route · max 25 entries.",noRoutes:"No routes with sufficient measurement data in the selected range.",thresholdsPart1:"Thresholds per",thresholdsLink:"web.dev Core Web Vitals",thresholdsPart2:": LCP ⤠2.5s · INP ⤠200ms · CLS ⤠0.1 · FCP ⤠1.8s · TTFB ⤠800ms."},perf:{title:"Performance Hub",description:"DB slow queries, edge function latency and frontend RUM at a glance.",tabs:{db:"DB Queries",edge:"Edge Functions",rum:"Frontend (RUM)",slo:"SLOs"}
35,db:{title:"Top 30 DB queries (mean exec time)",subtitle:"Admins only. Source: pg_stat_statements (anonymized).",empty:"No data available (admin role required).",headers:{query:"Query",calls:"Calls",mean:"Mean (ms)",max:"Max (ms)",total:"Total (s)"},details:"Query details",callsBadge:"{{count}} calls",queryid:"queryid:",stat:{mean:"Mean",stddev:"Stddev",min:"Min",max:"Max",rowsAvg:"Rows avg",cacheHit:"Cache hit"},queryNormalized:"Query (normalized)",explainBtn:"Show EXPLAIN plan",explainAnalyzing:"Analyzingâ¦",explainHint:"Only works for queries without bind parameters ($1, $2â¦). Read-only, admin-only."},edge:{title:"Edge functions (p50 / p95 / p99)",empty:"No calls in range.",headers:{function:"Function",calls:"Calls",errorPct:"Error %"},historyTitle:"Latency history ({{window}})",noHistory:"No data."},rum:{title:"Frontend RUM (Web Vitals)",filterRoute:"Filter routeâ¦",allRoutes:"All routes",noHistory:"No history data.",noSamples:"No samples for {{metric}}.",headers:{device:"Device",samples:"Samples",goodPct:"Good %"}}},status:{title:"Platform Status",description:"Aggregated live status of key subsystems. Refreshes every 60 seconds.",loading:"Loading statusâ¦",overall:"Overall status",asOf:"As of: {{when}}",health:{ok:"Operational",warn:"Degraded",down:"Outage",unknown:"Unknown"},subsystem:{auth:"Auth & Sessions",frontend:"Frontend (Boot)",ai:"AI Agents",backup:"Backup consistency",edge:"Edge Functions"},detail:{criticalOpen:"{{count}} critical errors open (24h)",noCritical:"No critical errors in 24h",beaconRecent:"Boot beacons received within 30min",beaconStale:"No boot beacons in 30min â possibly deploy or traffic pause",agentStats:"{{errors}} / {{total}} failed ({{rate}}%, 24h)",noBackup:"No backup verify run yet",lastBackup:"Last run: {{when}}",backupAlerts:" · {{count}} drift alert(s)",backupAllOk:" · all tables OK",noLatency:"No latency measurements yet (1h)",edgeStats:"{{count}} functions, {{slow}} with p95>5s, {{erroring}} with error rate >5%"},footer:"Note: This page is only internally accessible at {{path}}."},slo:{title:"Service Level Objectives",description:"Live status, error budget and burn rate. Alerts trigger at burn_rate_1h > 14.4 (Google SRE standard) by email to [email protected].",summary:{healthy:"Healthy",warn:"Warn",critical:"Critical",noData:"No data"},empty:"No SLOs configured.",headers:{status:"Status",service:"Service",metric:"Metric",objective:"Target",current:"Current",budget:"Budget",burn1h:"Burn 1h",burn6h:"Burn 6h",samples:"Samples"},status:{healthy:"Healthy",warn:"Warn",critical:"Critical",noData:"No data"}}},we={teamSelect:{noTeam:"â no team â",newTeam:"ï¼ New teamâ¦",teamName:"Team name",selectTeam:"Select team",changeTeam:"Change team"},deleteUser:{previewSummary:"To transfer: {{reassign}} records · to delete: {{personal}}",transferSection:"Transfer",personalSection:"Personal data (delete)"},platformUsers:{orphans:{title:"Leftovers from deleted accounts",description:"{{count}} records belong to accounts that no longer exist. They are removed automatically overnight.",action:"Clean up now",done:"Cleanup finished",doneDesc:"{{count}} records cleaned up."},title:"Platform users",readonly:"Read-only",subtitleAdmin:"All employees with @mrchinasupply.de access. Click a row to edit.",subtitleReader:"All employees with @mrchinasupply.de access. Click to view â only admins can change permissions.",searchPlaceholder:"Search by name or emailâ¦",allRoles:"All roles",allStatus:"All statuses",active:"Active",inactive:"Inactive",colName:"Name",colRole:"Role",colTeam:"Team",colStatus:"Status",colLastLogin:"Last login",loading:"Loadingâ¦",empty:"No users found.",never:"Never",allTeams:"All teams",noTeam:"No team",sortAsc:"Sort ascending",sortDesc:"Sort descending",exportCsv:"Export CSV",exportFilename:"platform-users",kpi:{total:"Total users",active:"Active",admins:"Admins",neverLoggedIn:"Invited, never logged in",inactive:"Inactive"},colActions:"Action",activateTooltip:"Activate account",deactivateTooltip:"Deactivate account",editTooltip:"Edit"},invite:{button:"Invite user",title:"Invite new platform user",description:"The user receives an email to activate their account. Only @mrchinasupply.de addresses are allowed.",emailRequired:"Email *",emailPlaceholder:"[email protected]",emailInvalid:"Only @mrchinasupply.de addresses allowed.",firstName:"First name",lastName:"Last name",team:"Team",noTeam:"â no team â",roleRequired:"Role *",cancel:"Cancel",sending:"Sendingâ¦",submit:"Send invitation"},detailSheet:{tabProfile:"Profile",tabPermissions:"Permissions",tabActivity:"Activity",tabActions:"Actions",rowStatus:"Status",rowTeam:"Team",rowLanguage:"Language",rowRole:"Role",rowCreated:"Created",active:"Active",inactive:"Inactive",selfDemoteWarn:"You can't remove your own admin role â protection against accidental lockout.",passwordResetTitle:"Send password reset",passwordResetDesc:"Sends a reset email to {{email}}",passwordResetBtn:"Send reset email",deactivateTitle:"Deactivate user",activateTitle:"Activate user",deactivateDesc:"Removes employee status. Account remains.",activateDesc:"Reactivates employee status.",deactivateBtn:"Deactivate",activateBtn:"Activate",cantDeactivateSelf:"You can't deactivate yourself.",dangerTitle:"Danger zone â delete user",dangerOrphan:"Orphaned account without employee profile â can be deleted directly.",dangerActive:"Please deactivate first before the user can be deleted.",dangerNormal:"All assigned re
35cords are transferred to a selected admin, then the account is irreversibly deleted.",deleteBtn:"Delete permanently"},hub:{profile:{title:"My Profile",description:"Personal data and team assignment.",outlookNotConnected:"Outlook calendar not yet connected",outlookHint:"Connect your Microsoft account so meeting invites are sent directly from your Outlook.",setupNow:"Set up now",email:"Email",firstName:"First name",lastName:"Last name",team:"Team",newTeamPlaceholder:"Enter new team name",cancel:"Cancel",selectTeam:"Select team",noTeam:"â no team â",newTeam:"ï¼ New teamâ¦",role:"Role",save:"Save",saving:"Savingâ¦",errorTitle:"Error",saved:"Saved",timezone:"Time zone",timezoneHint:"Used for your local clock and daily routines.",timezoneSaved:"Time zone saved",signature:{title:"Email signature",description:"These details appear below every document email you send.",jobTitle:"Position",phone:"Phone",mobile:"Mobile",extra:"Additional line (e.g. office hours)",showAvatar:"Show profile photo in signature",preview:"Preview",saved:"Signature saved"},autonomy:{title:"Direct send for routine emails",description:"Enable categories that may be sent without per-message confirmation. Only factual confirmation emails are eligible â general and creative emails always require confirmation.",desc_appointment_confirmation:"Appointment confirmations to customers",desc_shipping_notice:"Shipping notices for logistics updates",desc_payment_received:"Payment received confirmations"}},integrations:{title:"Integrations",description:"Connected third-party services.",connected:"Connected",notConnected:"Not connected",items:{googleAds:"Campaign metrics",gsc:"SEO rankings",lovableAi:"AI features (copy, insights)",notify:"Transactional emails via notify.mrchinasupply.de"},names:{notify:"Notify (email delivery)"}},notifications:{title:"Notifications",description:"Configure email and in-app notifications."},password:{title:"Change password",description:"Set a new login password.",newPassword:"New password",confirm:"Confirm",change:"Change password",saving:"Savingâ¦",minLength:"At least 8 characters",mismatch:"Passwords do not match",errorTitle:"Error",changed:"Password changed"},branding:{title:"Branding",description:"Logo, colors and email footer.",intro:"Logo, colors and email footer are managed centrally. Current brand:",brand:"Mr China Supply",primaryColor:"Primary color: hsl(var(--primary))",footnote:"Adjustments are currently handled centrally by the tech team."},consentSection:{title:"Reactivation & 404 log",description:"GDPR-compliant existing-customer reactivation and error tracking.",lockedTitle:"Existing-customer reactivation",lockedDescription:"The GDPR reactivation console is reserved for administrators, since mass emails to existing contacts are triggered here.",cards:{reactivation:{title:"Existing-customer reactivation",body:"Send GDPR-compliant reactivation emails to existing contacts without confirmed marketing consent. Throttle: max. 200 emails per day. Live statistics on the detail page.",cta:"Open reactivation console"},log404:{title:"404 tracking",body:"Overview of all paths that led visitors to the not-found page â sorted by frequency. Helps identify broken links and outdated bookmarks.",cta:"Open 404 log"},health:{title:"System health",body:"Live platform status: open errors, agent failure rate, frontend boot beacons and bundle hash drift. Watchdog runs every 5 minutes.",cta:"Open health dashboard"},rum:{title:"RUM (real-user monitoring)",body:"Web Vitals from real visitors (LCP, INP, CLS, FCP, TTFB) â p50/p75/p95 for the last 7 or 30 days, plus the slowest routes.",cta:"Open RUM dashboard"},mfa:{title:"MFA compliance",body:"Overview of all users with MFA requirement: active, in grace period, overdue or hard blocked. Helps with the two-factor rollout.",cta:"Open MFA compliance"},performance:{title:"Performance Hub",body:"DB slow queries (with EXPLAIN), Edge Function latency and RUM in one view. With 24h/7d/30d history and route filter.",cta:"Open Performance Hub"},audit:{title:"Audit log",body:"GoBD-compliant change log for CRM data, role assignments and API keys. Entries are immutable. MFA required.",cta:"Open audit log"},rls:{title:"RLS self-test",body:"Automated security check: verifies daily that customers, partners and unauthenticated visitors really cannot read internal data. Triggers an alarm immediately on any detected leak.",cta:"Open security overview"}}}
35,rls:{title:"RLS self-test",shortDescription:"Automated daily security check of data access rules.",description:"Automated daily security check: tries to access internal data as a customer, partner and guest â and raises an alarm if it succeeds.",lockedTitle:"RLS self-test",lockedDescription:"This security overview is reserved for administrators.",loading:"Loading results â¦",loadError:"Error loading: {{message}}",noRuns:"No test runs yet. The cron runs daily automatically.",leaksDetected_one:"{{count}} data leak detected",leaksDetected_other:"{{count}} data leaks detected",allPassed:"All checks passed",lastRun:"Last run: {{when}} · {{passed}} of {{total}} passed",leaksTitle:"Detected data leaks",couldRead:"could read:",rows_one:"({{count}} row)",rows_other:"({{count}} rows)",historyTitle:"History of recent runs",checksPassed:"{{passed}}/{{total}} checks passed",leak_one:"{{count}} leak",leak_other:"{{count}} leaks",ok:"OK",noHistory:"No runs yet.",footnote:"Note: The test runs as a scheduled background job. Technical test accounts are automatically removed after each run and do not appear in the team list.",leak:"Leak detected",leaksDetected:"{{count}} RLS leaks detected",rows:"{{count}} rows"}},common:{save:"Save",saving:"Saving â¦"},roleEditor:{adminsOnly:"Only admins can change roles.",current:"Current",noSelfDemote:"You cannot demote yourself.",labels:{mitarbeiter:"Employee",teamleiter:"Team lead",admin:"Administrator"},descs:{mitarbeiter:"Access to the staff portal and personal data.",teamleiter:"Like Employee, plus access to manage own team.",admin:"Full access: user management, roles, all areas."}},delete:{title:"Delete account",cancel:"Cancel",confirm:"Delete permanently",confirmEmail:"Enter email address to confirm",descNormal:"Your account will be deleted. Data remains for other employees.",descOrphan:"The following records belong only to you and must be handed over.",handoverTo:"Hand over to",chooseAdmin:"Select admin â¦",nothing:"No records to hand over.",previewLoading:"Checking records â¦",previewError:"Preview could not be loaded."},tracking404:{title:"404 tracking",subtitle:"Which paths hit nothing â with hit count, last hit and referrer.",cardTitle:"Recent 404 hits",colPath:"Path",colHits:"Hits",colLastHit:"Last hit",colReferrer:"Referrer",empty:"No 404 hits right now.",loading:"Loading â¦",refresh:"Refresh",hotPaths:"Hot Paths (â¥5)"},audit:{title:"Audit log",subtitle:"Who did what when â across all security-relevant actions.",actor:"Actor",source:"Source",details:"Details",empty:"No audit entries.",filter:"Filter",footer:"Showing the last {{count}} entries.",searchLabel:"Search",searchPh:"Actor, action or detail â¦",lockedDesc:"Only admins can view the audit log.",sources:{all:"All sources",api_keys:"API keys",crm:"CRM",user_roles:"Roles"}},apiKeys:{title:"API keys",subtitle:"Tokens for external systems â shown only once.",activeKeys:"Active keys",empty:"No keys yet.",loading:"Loading â¦",newKey:"New key",dialogNew:"Create new API key",dialogCreated:"API key created",tokenWarning:"Save the token now â it won't be shown again.",copy:"Copy",copiedToClipboard:"Copied to clipboard",close:"Close",create:"Create",creating:"Creating â¦",name:"Name",namePh:'e.g. "n8n integration"',nameRequired:"Name is required.",scopes:"Scopes",createdAt:"Created at",lastUsed:"Last used",revoke:"Revoke",revoked:"Key revoked",revokedBadge:"Revoked",confirmRevoke:"Really revoke this key? Access is blocked immediately.",endpoints:"Endpoints",example:"Example"},agentEditor:{activeBadge:"Active version",activeShort:"Active",changelog:"Changelog",changelogPh:"What changed?",choose:"Choose agent",history:"Version history",newVersion:"Create new version",saveDraft:"Save draft",systemPrompt:"System prompt",statusLabels:{active:"Active",deprecated:"Deprecated",draft:"Draft",paused:"Paused"},tabs:{prompt:"Prompt",tools:"Tools & permissions"}},agentEditorPage:{title:"Agent editor",subtitle:"Version, test and roll out system prompts.",lockedTitle:"Access locked",lockedDesc:"Only admins can open the agent editor."},calendar:{title:"Calendar & email",subtitle:"Connect Microsoft 365 â calendar sync, meetings and automated email processing.",account:"Account",accountConnected:"Account connected",accountConnectedDesc:"Your Microsoft account is connected.",active:"Active",confirmDisconnect:"Really disconnect? Sync stops immediately.",connectBtn:"Connect Microsoft 365",connectFailed:"Connection failed",connectHint:"You'll be redirected to Microsoft to grant access.",connected:"Connected",disconnect:"Disconnect",disconnectFailed:"Disconnect failed",disconnected:"Disconnected",disconnecting:"Disconnecting â¦",error:"Error",lastError:"Last error",lastSync:"Last sync",loadingStatus:"Loading status â¦",mailError:"Email error",mailLastSync:"Email â last sync",mailProcessed:"Processed emails",never:"Never",noAuthUrl:"No auth URL received.",n
35otConnected:"Not connected",oauthFailed:"OAuth failed",opening:"Opening Microsoft â¦",privacy:"Privacy",privacyP1:"We only read what you explicitly allow (calendar / email).",privacyP2:"Tokens are stored encrypted and can be revoked at any time.",saveFailed:"Save failed",syncErrorTitle:"Sync error",syncFailed:"Sync failed",syncNow:"Sync now",synced:"Synced",syncedDesc:"Data updated successfully.",syncing:"Syncing â¦",tokenValid:"Token valid",toggle:{invites:"Auto-accept invites",invitesDesc:"Add new invites to your calendar without asking.",mail:"Email processing",mailDesc:"Analyse incoming emails and derive CRM actions.",read:"Read access",readDesc:"Read meetings and availability.",teams:"Microsoft Teams links",teamsDesc:"Auto-add a Teams meeting when scheduling.",write:"Write access",writeDesc:"Create and modify meetings in your calendar."},stale:"Waiting for sync",staleHint:"The next automatic sync runs in a few minutes and will refresh the token. You can also sync manually now.",syncingDesc:"Fetching Microsoft data â this takes a few seconds.",fullResync:"Full Resync (±180 days)",fullResyncing:"Full resynchronization in progress",reauthHint:"Microsoft has ended the session. Please re-authenticate once â all settings will be retained.",reauthNow:"Re-authenticate now",reauthTitle:"Re-authentication required",staleWarning:"No sync for over 48 hours â the meetings shown may be outdated."},company:{title:"Company profile",subtitle:"Used on quotes, invoices and letterheads.",cardHeader:"Letterhead",cardHeaderDesc:"Appears at the top of all documents.",cardCompany:"Company",cardCompanyDesc:"Legal profile and contact.",cardBank:"Bank details",cardBankDesc:"Printed on invoices.",companyName:"Company name",companyNamePh:"e.g. Mr China Supply GmbH",contactEmail:"Contact email",contactEmailPh:"info@â¦",website:"Website",websitePh:"https://â¦",addressLine:"Address line",postal:"Postal code",city:"City",country:"Country",countryPh:"Germany",taxLabel:"Tax label",taxLabelPh:"VAT ID",taxValue:"Tax number",taxValuePh:"DEâ¦",taxHint:"Visible on every invoice.",bankHolder:"Account holder",bankName:"Bank",iban:"IBAN",bic:"BIC",bankExtra:"Additional info",bankExtraPh:"e.g. payment-reference note",clearFields:"Clear fields",resetTitle:"Reset",resetDesc:"Fields cleared â not yet saved.",savedTitle:"Saved",savedDesc:"Company profile updated.",saveFailed:"Save failed"},permissions:{title:"Permissions",subtitle:"Define which actions team leaders and employees may perform. Admins always have full access.",lockedTitle:"Admins only",lockedDescription:"Permissions can only be managed by admins.",matrixTitle:"Role matrix",action:"Action",alwaysAllowed:"Always allowed",saved:"Saved",error:"Save failed",note:"Changes take effect immediately. Actions such as bulk delete are additionally protected server-side by security rules (RLS).",keys:{"crm.bulk_delete":{label:"Bulk delete",description:"Delete multiple records from lists at once."},"crm.settings.pipelines":{label:"Manage pipelines",description:"Create, rename or remove pipelines and stages."},"crm.settings.lifecycle_stages":{label:"Manage lifecycle stages",description:"Maintain lifecycle stages for contacts and companies."},"crm.settings.tags":{label:"Manage tags",description:"Create, rename or delete tags."},"crm.settings.custom_properties":{label:"Manage custom fields",description:"Manage custom fields for CRM objects."},"crm.settings.workflows":{label:"Manage workflows",description:"Edit automations and triggers in the workflow builder."}},settingsAccess:{title:"Settings area access",subtitle:"Overview of which settings areas are locked for lower roles. These locks are system-wide and not configurable.",column:{area:"Area"},itemCount:"{{count}} areas",note:"These locks are system-wide. Configurable actions are in the matrix above.",status:{allowed:"Access",locked:"Locked"}},teamMatrixTitle:"Team permissions",teamMatrixNote:"In addition to the role: if the team has a permission, all its members can use it.",noTeams:'No teams yet â create them under "Teams".'},partnerApplications:{status:{pending:"Open",approved:"Approved",rejected:"Rejected",userDeleted:"Account deleted"}
35,title:"Partner applications",subtitle:"Self-registered partners awaiting approval ({{count}} open)",openTitle:"Pending applications",loading:"Loadingâ¦",empty:"No pending applications.",col:{name:"Name",email:"Email",company:"Company",reason:"Reason",received:"Received",action:"Action",status:"Status",decided:"Decided",note:"Note"},approve:"Approve",reject:"Reject",historyTitle:"History",historyEmpty:"No decided applications yet.",dialog:{approveTitle:"Approve partner",rejectTitle:"Reject application",approveHint:"An auth account with a one-time password will be created and a welcome email sent. The partner must change the password on first login.",rejectPlaceholder:"Reason for rejection (will be emailed to the applicant) â¦",cancel:"Cancel",confirmApprove:"Approve now",confirmReject:"Reject & notify"},toast:{approvedTitle:"Partner approved",rejectedTitle:"Application rejected",approvedDesc:"Welcome email with one-time password sent.",rejectedDesc:"Applicant was notified by email.",errorTitle:"Error"}},teams:{title:"Teams",subtitle:"Define which departments exist in the system. These teams appear in the permission matrix and when inviting employees.",lockedTitle:"Admins only",lockedDescription:"Teams can only be managed by admins.",addTitle:"Add new team",namePlaceholder:"Team name (e.g. Finance)",addButton:"Create",listTitle:"Existing teams",colName:"Name",colSlug:"Slug",colMembers:"Members",colSystem:"System",colActions:"Actions",loading:"Loadingâ¦",empty:"No teams yet.",system:"System",rename:"Rename",delete:"Delete",cancel:"Cancel",save:"Save",renameTitle:"Rename team",deleteTitle:"Delete team",deleteConfirm:'Delete team "{{name}}"?',cantDeleteSystem:"System team cannot be deleted",cantDeleteMembers:"Team still has members",slugHint:"The internal slug stays unchanged ({{slug}}).",toastCreated:"Team created",toastRenamed:"Team renamed",toastDeleted:"Team deleted",collapse:"Collapse",expand:"Show members",inactive:"Inactive",noMembers:"No members in this team."},billingEntities:{account:"Account Number",cn:"Chinese Company (Export from China)",de:"German Company",extra:"Further bank details",extraPh:"Additional information (e.g. tax ID)",saved:"Bank details saved",saveFailed:"Save failed",subtitle:"Manage the billing entities you use for your deals here.",title:"Billing Entities"},consentLog:{analytics:"Analytics",colCategories:"Categories",colConsentId:"Consent ID",colDate:"Date",colPage:"Page",colPolicy:"Version",functional:"Functional",marketing:"Marketing",necessary:"Necessary",rejected:"Necessary only",subtitle:"Server-side log of all cookie decisions made by website visitors.",title:"Cookie Consents"},unsubscribes:{colDate:"Date",colEmail:"Email",colReason:"Reason",confirmReactivate:"Reactivate this recipient?",reactivate:"Reactivate",reactivated:"Recipient reactivated",searchPlaceholder:"Search email or reasonâ¦",subtitle:"All recipients who have unsubscribed from the newsletter or whose delivery is blocked.",title:"Email Unsubscriptions"},accessGovernance:{title:"Advanced permissions",subtitle:"Manage field visibility, territories, deputies and discount approvals centrally.",tabs:{fields:"Field visibility",territories:"Territories",deputies:"Deputies",discounts:"Discount approvals"}},fieldRights:{hint:"Define which role may see which field. Administrators always see all fields.",field:"Field",roles:{mitarbeiter:"Employee",teamleiter:"Team lead",admin:"Administrator"},entities:{contact:"Contacts",company:"Companies",deal:"Deals"},fields:{contact:{email:"Email address",mobile_phone:"Mobile number",whatsapp_phone:"WhatsApp number",notes:"Notes",lead_score:"Lead score"},company:{annual_revenue:"Annual revenue",employee_count:"Employees",notes:"Notes",credit_limit:"Credit limit",payment_terms:"Payment terms"},deal:{value:"Deal value",margin:"Margin",purchase_price:"Purchase price",probability:"Win probability",notes:"Notes"}}},territories:{hint:"New companies without an owner are automatically assigned to the matching territory owner.",newTitle:"New territory",listTitle:"Territories",name:"Name",countries:"Countries",prefixes:"Postal code prefixes",industries:"Industries",owner:"Owner",selectOwner:"Select person",active:"Active",add:"Create territory",saved:"Territory saved",missing:"Please provide a name and an owner.",empty:"No territories yet.",noOwner:"Unassigned"},deputies:{hint:"While someone is away, the deputy takes over responsibility.",newTitle:"New deputy",listTitle:"Deputies",person:"Person",deputy:"Deputy",from:"From",to:"To",reason:"Reason",select:"Select person",add:"Create deputy",saved:"Deputy saved",missing:"Please select two different people.",empty:"No deputies yet."},discounts:{hint:"From which discount an approval is required and who grants it.",rulesTitle:"Ap
35proval rules",requestsTitle:"Approval requests",fromPercent:"From discount in percent",approver:"Approved by",escalationHours:"Escalate after hours",addRule:"Create rule",saved:"Rule saved",missing:"Please enter a valid discount value.",emptyRules:"No rules yet.",emptyRequests:"No approval requests.",date:"Date",discount:"Discount",status:"Status",approve:"Approve",reject:"Reject",statuses:{open:"Open",approved:"Approved",rejected:"Rejected",escalated:"Escalated"}}},Ce={title:"Time zones",you:"You",shanghaiTeam:"Shanghai team",berlinTeam:"Berlin team",hongkongTeam:"Hong Kong team"},Se={pipeline:"Pipeline"},Ae={infoTitle:"Pipeline trend â how it's calculated",infoBody:`Open pipeline: value of all deals that were not yet closed on the given day (inflow). 36Realised: cumulative value of all deals won up to the given day (revenue). 37Aggregation: daily up to 90 days, weekly up to 1 year, monthly up to 2 years.`,openLine:"Open pipeline",wonLine:"Realised (won)",rangeAria:"Select range",ranges:{30:"30 d",90:"90 d",180:"6 mo",365:"1 y",730:"2 y"}},Te={moreActions:"Moreâ¦",bulkActions:"Bulk actions",assignTag:"Assign tag",changeOwner:"Change owner",exportCsv:"Export selection as CSV",aiActions:"AI actions",aiDraftEmail:"Draft emails",aiScoreIntent:"Score buying intent",aiCategorize:"Enrich & categorize",marketingFilter:"Marketing (GDPR filter)",channel:"Channel",channelEmail:"Email marketing",channelWhatsapp:"WhatsApp marketing",reasonLabel:"Reason / proof (required)",reasonPlaceholder:"e.g. Trade fair forms Hamburg 2024-03-15, all contacts signed",saving:"Savingâ¦",confirm:"Confirm",tagDialogTitle:"Assign tag ({{count}})",ownerDialogTitle:"Change owner ({{count}})",noTags:"No tags available.",confirmedCount:"{{count}} contacts marked as confirmed",contactsSelected:"{{count}} contacts selected",adminOnlyContacts:"Only administrators can delete multiple contacts at once.",adminOnlyDeals:"Only administrators can delete multiple deals at once.",owner:{assignButton:"Assign owner",dialogTitle:"Change owner for {{count}} {{noun}}",searchPlaceholder:"Search employeesâ¦",previewLabel:"Affected records ({{count}})",andMore:"⦠and {{count}} more",notice:"The change is applied immediately. The new owner will be notified.",confirmButton:"Assign {{count}} {{noun}}",confirmButtonNamed:"Assign to {{name}} ({{count}})",recordsNoun:"records",nounContacts:"contacts",nounCompanies:"companies",nounDeals:"deals"},delete:{menuLabel:"Delete",confirmTitle:"Permanently delete {{count}} records?",confirmDescription:"This action cannot be undone. All linked activities, notes and relationships will be lost.",understandCheckbox:"I understand that this is irreversible.",confirmButton:"Delete permanently",multiOnly:"Multi-delete is admin-only â you can still delete single entries."},aiTooMany:"Please select at most {{max}} records for one Shifu request."},Pe={newLeads7Days:"New leads (7 days)",newLeads7DaysShort:"New leads (7d)",linkCopyFailed:"Link could not be copied",linkCopied:'Link to "{{name}}" copied',linkCopyTitle:'Copy link to "{{name}}"',cta:{fallback:"New deal",packageSales:"Sell a new package",sourcingProject:"New sourcing engagement",reorder:"New reorder"},description:{fallback:"Create a new deal in this pipeline.",packageSales:"Sells a sourcing package (Starter, Professional or Enterprise) to a customer.",sourcingProject:"Run a concrete sourcing engagement from briefing to delivery.",reorder:"Recurring order of a known product from the existing supplier."}},De={wonShort:"â won",lostShort:"â lost",thisPipeline:"this pipeline",emptyTitle:'No deals yet in "{{name}}"',emptyHint:'Create your first deal in "{{name}}" â it starts automatically in the first stage.'},Re={title:"AI Assistance",nextStep:"Next step",emailDraft:"Email draft",enrich:"Enrich",accountBrief:"Account brief",stakeholderMap:"Stakeholder map",dealRisk:"Risk analysis",openCommerceQuote:"Open quote in Commerce",applyTask:"Create task",applyProbability:"Apply probability",view:"View",dueIn:"Due in {{days}} day(s)",priorityLabel:"Priority: {{priority}}",urgentAction:"Urgent action:",risks:"Risks:",painPoints:"Pain points:",crossSell:"Cross-sell potential:",recommendation:"Recommendation:",gaps:"Gaps:",winProbability:"Win probability: {{value}}%",winProbabilitySet:"Win probability set to {{value}}%",noContactEmail:"No contact with email available",emailDraftCreated:"Email draft created",
37noNewData:"No new data found",fieldsEnriched:"{{count}} fields enriched",taskCreated:"Task created"},Ne={title:"Daily focus",summary:"{{count}} of {{watched}} need attention",allClear:"All on track â no quotes, samples or shipments are stuck.",showAll:"Show all {{count}}",showLess:"Show less",kind:{offer:"Quote",sample:"Sample",production:"Production",logistics:"Logistics"},level:{warn:"Check",critical:"Urgent"},reason:{offerStale_one:"No response for {{count}} day",offerStale_other:"No response for {{count}} days",sampleStale_one:"No sample update for {{count}} day",sampleStale_other:"No sample update for {{count}} days",productionSoon_one:"Production ends in {{count}} working day â plan inspection",productionSoon_other:"Production ends in {{count}} working days â plan inspection",productionStale_one:"No production update for {{count}} day",productionStale_other:"No production update for {{count}} days",arrivalOverdue_one:"Arrival {{count}} day overdue",arrivalOverdue_other:"Arrival {{count}} days overdue",logisticsStale_one:"No shipment update for {{count}} day",logisticsStale_other:"No shipment update for {{count}} days"},actions:{followUp:"Follow up",supplierStatus:"Ask supplier",clarifyTask:"Clarification task",qcReminder:"Quality inspection",shipmentStatus:"Check shipment"},prompts:{followUp:'Draft a short follow-up email to the customer for the deal "{{title}}". The quote has had no response for {{days}} days. Use the latest email thread. Draft only, do not send.',supplierStatus:'Write a polite status request to the supplier in Chinese (with English translation below) for the deal "{{title}}". No update for {{days}} days. Draft only.',clarifyTask:'Suggest a clarification task about the sample status for the deal "{{title}}" (no update for {{days}} days). Only create it after my approval.',qcReminder:'Suggest a task for an on-site quality inspection in China for the deal "{{title}}". Only create it after my approval.',shipmentStatus:'Check the shipment status for the deal "{{title}}" and write a status request to the forwarder or supplier in Chinese with English translation. Draft only.'}},Ee={lastContact:"Last contact",never:"never",responsible:"Responsible",email:"Email",task:"Task",meeting:"Meeting",whatsapp:"WhatsApp"},Le={title:"Meeting delivery status",subtitle:"ICS invitation · Graph calendar · reschedule & cancel emails â every step with status & errors.",today:"Today",lastDays:"{{count}} days",refresh:"Refresh",kpiActiveMeetings:"Active meetings",kpiSent:"Successful sends",kpiGraphFailed:"Graph errors",kpiMailFailed:"Mail errors",tableTitle:"Meetings with delivery activity",searchPh:"Meeting ID, title or recipientâ¦",loadingEmpty:"No delivery activity in the selected period.",colMeeting:"Meeting",colTermin:"Date",colLastActivity:"Last activity",details:"Details",channelGraph:"Calendar (Graph)",channelIcs:"ICS invitation",channelReschedule:"Reschedule email",channelCancel:"Cancel email",errorsOf:"{{failed}}/{{total}} errors",okOf:"{{total}}/{{total}} OK",lastSent:"Last: {{when}}",to:"To: {{email}}",errorPrefix:"Error: {{msg}}",noActivity:"No activity.",sendHistory:"Send history ({{count}})",noEntries:"No entries.",emailFinalDelivery:"Email delivery (final)",noCorrelated:"No correlated entries in email_send_log (last 30 days).",meetingFallback:"Meeting",terminAt:"Date: {{when}} · Status: {{status}}",dlqHint:"Delivery aborted after several attempts.",finallyFailed:"Permanently failed",queuedHint:"In queue. Will be sent shortly.",sendBlocked:"Sending blocked",stuckPendingHint:"Stuck in queue for {{age}}. Sending worker is not responding (authentication error)."},Ie={title:"Booking funnel",subtitle:"Conversion & health on /erstgespraech",today:"Today",lastDays:"Last {{count}} days",kpiViews:"Views",kpiBookings:"Bookings",kpiConversion:"Conversion",kpiErrors:"Errors",stepByStep:"Step-by-step flow",steps:{view:"Viewed",company_entered:"Company entered",research_done:"Research done",questions_shown:"Questions shown",answers_submitted:"Answers submitted",slot_picker_shown:"Slot picker",slot_selected:"Slot selected",step2_shown:"Step 2 shown",step2_submit_attempt:"Booking submitted",confirmed:"Booking confirmed"},postSteps:{manage_view:"Self-service opened",reschedule_started:"Reschedule started",reschedule_confirmed:"Reschedule confirmed",cancel_started:"Cancel started",cancel_confirmed:"Cancel confirmed"},postBookingTitle:"Reschedule & cancel â post-booking funnel",selfServiceViews:"Self-service views",leftWithoutAction:"{{pct}}% left without action",rescheduleConv:"Reschedule conv.",cancelConv:"Cancel conv.",ofTotal:"{{a}} of {{b}}",balance:"Balance",keptVsLost:"kept vs. lost",reschedulePath:"Reschedule path",cancelPath:"Cancel path",dailyBreakdown:"Daily breakdown",colDay:"Day",colCalls:"Views",colRsStart:"RS start",colRsConf:"RS conf.",colRsPct:"RS %",colCxStart:"CX start",colCxConf:"CX conf.",colCxPct:"CX %",noPostBookingActivity:"No reschedule/cancel activity in this period yet.",trendTitle:"Trend & hosts (pre-aggregated · refresh every 5 min)",noAggregated:"No aggregated data yet. Generated every 5 minutes.",trendCols:{host:"Host",sessions:"Sessions",viewToCompany:"View â Company",slotPick:"Slot pick",pickToConfirmed:"Pick â Confirmed",total:"Total"},alertsTitle:"Alerts",noAlerts:"No active alerts."},xe={weeklyTitle:"Weekly availability (Europe/Berlin)",days:{mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday",sun:"Sunday"},noWindow:"Free â not bookable",addSlot:"Slot",bufferLabel:"Buffer after meeting (minutes)",saveBtn:"Save availability",blockedTitle:"Vacation & blocked times",noBlocked:"No upcoming blocked times.",from:"From",to:"To",reason:"Reason (optional)",reasonPh:"Vacation",addBtn:"Add",saveFailed:"Save failed",saved:"Availability saved",timeOffError:"Time-off error",deleteFailed:"Delete failed"},Oe={title:"Booking hosts",subtitle:"Who can be booked on /erstgespraech.",addEmployee:"Add employee",default:"Default",inactive:"Inactive",setDefault:"Set as default",slugLabel:"Slug (URL)",titleLabel:"Title / role",onlineTool:"Online tool",tools:{teams:"Microsoft Teams",google_meet:"Google Meet",phone:"Phone",in_person:"In person"},slotMin:"Slot (min)",noticeH:"Notice (h)",advanceDays:"Up to (days)",publicBo
37okable:"Bookable on public page",addHelp:"Only employees with a connected Microsoft calendar (see Calendar) can be added.",selectEmployee:"Select employee",saveFailed:"Save failed",saved:"Saved",addFailed:"Add failed",deleteFailed:"Delete failed",confirmDelete:"Really remove this host?",save:"Save",cancel:"Cancel",add:"Add"},Me={providers:{in_person:"In person",phone:"Phone",google_meet:"Google Meet",teams:"Microsoft Teams",zoom:"Zoom",other:"Other"},editTitle:"Edit meeting",newTitle:"Create new meeting",durationMinutes:"{{count}} min",title:"Title",titlePh:"Short, clear name",start:"Start",end:"End",endBeforeStart:"End cannot be before start.",format:"Format",status:"Status",location:"Location",conferenceLink:"Conference link",contact:"Contact",company:"Company",deal:"Deal",unnamed:"Unnamed",descriptionLabel:"Description / agenda",sendInviteLabel:"Send invitation now",sendInviteHelp:"Automatic email with meeting details and calendar file to participants.",teamsLabel:"Microsoft Teams online meeting",teamsHelp:"Automatically creates a Teams link via your connected Outlook calendar.",recall:{toggleLabel:"Invite AI notetaker",toggleHelp:"A bot joins the meeting, records it and delivers a transcript plus summary.",needsUrl:"Available once a conference link is set.",scheduled:"AI notetaker scheduled.",scheduleFailed:"Could not schedule notetaker: {{msg}}",statusLabel:"Notetaker",status:{scheduled:"Scheduled",joining:"Joining",recording:"Recording",transcribing:"Transcribing",retrying:"Retrying",done:"Done",failed:"Failed"},errorTitle:"AI notetaker failed",errorHint:"You can restart the bot â up to 3 attempts.",retryButton:"Retry",retrying:"Restartingâ¦",retryFailed:"Retry failed: {{msg}}",retryLimitReached:"Maximum retry attempts reached.",retryStarted:"Retry started.",attemptCounter:"Attempt {{count}} of {{max}}",errorCodes:{bot_schedule_failed:"Could not book the bot.",bot_schedule_timeout:"Timed out while booking the bot.",bot_fatal:"Bot was disconnected from the meeting.",audio_mixed_failed:"Audio recording failed.",audio_download_failed:"Could not download the audio.",stt_failed:"Transcription failed.",transcript_persist_failed:"Could not save the transcript.",stuck_no_join:"Bot never joined the meeting."},mapping:{openButton:"Assign speakers",title:"Assign speakers",description:"Assign each detected speaker to a contact, employee or external guest. The mapping appears in the transcript immediately.",speakerCol:"Speaker",shareCol:"Talk time",pickContact:"Contacts",pickEmployee:"Employees",externalOption:"External guest â¦",externalPlaceholder:"Guest name",unassigned:"Unassigned",saveButton:"Save",resetButton:"Reset all",saved:"Speaker mapping saved.",saveFailed:"Save failed: {{msg}}",assignedBadge:"{{done}} of {{total}} assigned",empty:"No speaker timeline available."}},saving:"Savingâ¦",save:"Save",inviteSent:"Invitation sent to {{count}} participants",inviteFailed:"Failed to send invitation: {{msg}}",saveFailed:"Save failed: {{msg}}",duration:"Duration:",durationMinutes_one:"{{count}} min",durationMinutes_other:"{{count}} min",kindLabel:"Meeting type",kindExternal:"External meeting",kindInternal:"Internal meeting",kindHelpExternal:"With customers, suppliers or partners.",kindHelpInternal:"With colleagues from the team only.",participants:"Participants",participantsEmpty:"No participants added yet.",pickContact:"Pick a CRM contact",pickContactPlaceholder:"Type a name or email â¦",pickEmployee:"Pick a teammate",pickEmployeePlaceholder:"Type a name â¦",addEmail:"External email address",addEmailPh:"[email protected]",addEmailButton:"Add",addEmailInvalid:"Please enter a valid email address.",addEmailDuplicate:"This email is already in the participant list.",addEmailEmpty:"Please enter an email address.",addEmailTooLong:"Email address is too long (max 254 characters).",addEmailNoAt:"Email address must contain exactly one @.",addEmailNoDomain:"The domain is invalid (e.g. company.com).",addContactDuplicate:"This contact is already in the participant list.",addEmployeeDuplicate:"This team member is already in the participant list.",participantContact:"Contact",participantEmployee:"Teammate",participantEmail:"External address",removeParticipant:"Remove participant",ai:{title:"AI quick-fill",hint:"Describe the meeting in one sentence â the assistant will ask back if anything is missing.",placeholder:"e.g. Tomorrow 10 a.m., 45 min with Ms. Müller from Acme about the offer",replyPlaceholder:"Type your reply and press Enter â¦",send:"Send",thinking:"Thinking â¦",askFallback:"Could you be a bit more specific?",stillMissing:"Still missing: {{fields}} â please add.",lowConfidence:"I'm not fully sure yet â could you be more precise?",doneMessage:"Done â {{count}} fields filled. Please review and save.",filledCount:"{{count}} fields filled",maxTurns:"Reached the question limit â please check the fields manually.",rateLimit:"AI is busy right now. Please try again in a moment.",creditsExhausted:"Out of AI credits. Please top up the workspace.",error:"AI couldn't reply just now. You can also fill the fields manually."}},Fe={title:"Check email deliverability",subtitle:"Live check of DNS records for SPF, DKIM, DMARC and Microsoft 365 mail routing. Prevents outgoing mails (booking invites etc.) from landing in junk.",hostingTitle:"Check hosting / Lovable domain",hostingCheck:"Check hosting DNS",hostingDesc:`Checks whether <code>mrchinasupply.de</code>, <code>www.mrchinasupply.de</code> and the <code>.com</code> variant correctly point to Lovable's hosting edge (<code>185.158.133.1</code>) and the TXT verification record is set. If you see Lovable's "DNS not properly configured" page, one of these records is the cause.`,requiredRecords:"Required records at Strato:",checkedAt:"Checked at {{date}}",domainCheck:"Check domain",domain:"Domain",tenantLabel:"Tenant",optional:"(optional)",tenantHelp:"You find the tenant domain in the",tenantHelpLink:"M365 Admin Center â Setup â Domains",tenantHelpAfter:'. It ends in <code>.onmicrosoft.com</code> and is required for DKIM target values. Or click <strong>"Read DKIM targets from tenant"</strong> below â it will be detected automatically.',checkDns:"Check DNS now",readDkim:"Read DKIM targets from tenant",dkimRecordsFor:"DKIM records for",domainVerified:"Domain verified in tenant",domainNotVerified:"Domain NOT in tenant",tenantLine:"Tenant: <strong>{{name}}</strong> · <code>{{initial}}</code>",selector1:"Selector 1",selector2:"Selector 2",resultFor:"Result for",guideTitle:"Guide: enable DKIM in Microsoft 365",hostname:"Hostname",value:"Value (target)",copyTitle:"Copy {{label}}",currentLabel:"Current:",expectedLabel:"Target:",notSet:"â not set â",auditFailed:"Audit failed",tenantLookupFailed:"Tenant lookup failed",hostingFailed:"Hosting check failed",dkimLoaded:"DKIM targets loaded",dkimLoadedDesc:"Tenant: {{name}} ({{initial}})",copied:"Copied",statusOk:"OK",statusWarn:"Warning",statusFail:"Error",statusInfo:"Info",allGreen:"All green",warningCount_one:"{{count}}
37 warning",warningCount_other:"{{count}} warnings",errorCount:"{{count}} errors",guideStep1:'Open <a href="https://security.microsoft.com/dkimv2" target="_blank" rel="noreferrer" class="underline">Microsoft Defender â Email Authentication â DKIM</a>.',guideStep2:'Select the domain <code class="px-1 bg-muted rounded">mrchinasupply.de</code> â click <strong>Create DKIM keys</strong>. M365 will show <strong>two CNAME records</strong> (selector1 + selector2) with the exact targets.',guideStep3:"Add both CNAMEs at <strong>Strato â Domain admin â DNS</strong>. Hostname <code>selector1._domainkey</code> and <code>selector2._domainkey</code> respectively.",guideStep4:"Wait 5â15 minutes for DNS propagation, then return to the Defender portal and click <strong>Enable DKIM signing</strong>.",guideStep5:'Click "Check DNS now" above â both DKIM checks should turn green.',guideStep6:"Once DKIM is green: raise the DMARC policy to <code>p=reject</code> and add <code>rua=mailto:[email protected]</code> to receive reports.",w
37arningCount:"{{count}} warnings"},_e={revops:{cockpit:"Cockpit",trends:"Trends",targets:"Targets",groups:{reports:"Reports & Dashboards"}},reports:{dashboards:"Dashboards",reports:"Reports",goals:"Goals & Forecast",pipelineVelocity:"Pipeline Velocity",builder:"Report builder"},crm:{contacts:"Contacts",companies:"Companies",deals:"Deals",tickets:"Tickets",inbox:"Inbox",tasks:"Tasks",meetings:"Meetings",meetingDelivery:"Meeting delivery",conflicts:"Data Conflicts",groups:{support:"Support",core:"Core"},service:{knowledgeBase:"Knowledge Base",feedback:"Feedback Surveys"}},sales:{workspace:"Workspace",pipeline:"Pipeline Analysis",leads:"Leads",sequences:"Email Sequences",forecast:"Sales Forecast",forecastCockpit:"Forecast Cockpit",coaching:"Coaching",haengende:"Stuck deals",stageActions:"Open stage actions",groups:{winLoss:"Win/Loss",customerSuccess:"Customer Success",pipeline:"Workspace & Pipeline",acquisition:"Acquisition & Forecast"}},wl:{cockpit:"Win/Loss Cockpit",outcomes:"Outcomes",insights:"Insights",settings:"Settings"},workspace:{groups:{overview:"Overview & Time"},dashboard:"Main cockpit"},cs:{cockpit:"CS Cockpit",customers:"Customers",renewals:"Renewals",playbooks:"Playbooks"},operations:{cockpit:"Operations Cockpit",suppliers:"Suppliers",audits:"Audits",qc:"Quality Control",logistics:"Logistics",tasks:"Tasks",documents:"Documents",reports:"Reports",groups:{pipeline:"Pipeline",commerce:"Sales & Billing",procurement:"Procurement & Quality"},fx:"Currencies & rates",zoll:"Customs & import",bestellungen:"Supplier orders",approvals:"Approvals"},commerce:{overview:"Overview",products:"Products",quotes:"Quotes",invoices:"Invoices",payments:"Payments",paymentLinks:"Payment Links",creditNotes:"Credit Notes",subscriptions:"Subscriptions",bankReconciliation:"Bank reconciliation",expenses:"Expense ledger",partnerCommissions:"Partner settlement",templates:"Templates",contracts:"Contracts",supplierInvoices:"Supplier invoices",dunning:"Dunning",consultingTime:"Consulting hours"},marketing:{groups:{planCreate:"Plan & Create",channels:"Channels",discover:"Discover",attribution:"Attribution & ROI"},studio:"Marketing Studio",content:"Content",calendar:"Editorial Calendar",videos:"Videos",websites:"Websites",email:"Email Campaigns",social:"Social Media",ads:"Ads",events:"Events & Webinars",seo:"SEO",aeo:"AEO",leads:"Lead Inbox",intent:"Buying Intent",insights:"Channel Insights",bookingFunnel:"Booking Funnel",competitorBacklinks:"Competitor Backlinks",whatsapp:"WhatsApp inbox",leadBriefings:"Lead briefings",websiteVisitors:"Website visitors",editorial:"Editorial plan",reengagement:"Re-engagement",visibility:"Visibility",adsReadiness:"Ads readiness",visitorCompanies:"Visiting companies",sections:{overview:"Overview",campaigns:"Campaigns",content:"Content",audiences:"Audiences",radar:"Radar",analytics:"Analytics"},conversionFunnel:"Conversion funnel",barcampQuiz:"Live quiz for events"},mkt:{cockpit:"Cockpit",attribution:"Attribution",touchpoints:"Touchpoints",costs:"Spend"},settings:{root:"Settings",groups:{account:"Account",teamAccess:"Team & Access",aiAgents:"AI Agents",workspace:"Workspace",dataIntegrations:"Data & Integrations",dataAutomation:"Data & Automation",system:"System",performance:"Performance"},profile:"Profile",notifications:"Notifications",calendar:"Outlook Calendar",password:"Password",platformUsers:"Platform Users",permissions:"Permissions",agents:"Agents Overview",strategyAgent:"Strategy Agent",chiefAgent:"Chief Agent",improvements:"Improvements",promptEditor:"Prompt & Model Editor",branding:"Branding",companyData:"Company Data",bookingHosts:"Booking Hosts",integrations:"Integrations",emergencies:"Emergencies",emailDeliverability:"Email Deliverability",emailUnsubscribes:"Email Unsubscribes",consentLog:"Cookie Consent Log",apiKeys:"API Keys",productAttributes:"Product Attributes",marginTiers:"Margin & Pricing",supplierNormRules:"Supplier Normalization",adminOnlyTooltip:"Admin only â please ask an administrator for access.",system:{health:"Platform Health",status:"Status Page",rum:"Real-User Monitoring",mfa:"MFA Compliance",performance:"Performance Hub",auditLog:"GDPR Audit Log",rls:"RLS Self-Test",log404:"404 Log",pipelineAccess:"Pipeline Permissions",opsTasksMigration:"Migration Preview",migrationErrorCodes:"Migration Error Codes",pipelineSla:"Pipeline SLA",pipelineRecipes:"Pipeline Recipes"},performance:{teamPuls:"Team pulse",activity:"Time clock activity",absences:"Absence management",outputKpis:"Output KPIs",anomalies:"Anomalies",systemActivity:"System activity"},systemGroup:"System",aiQuality:"AI Quality",teams:"Teams",accessGovernance:"Advanced permissions",outboundEvents:"Event targets",appInstall:"App on home screen",strategyAdvisor:"Strategy advisor",billingCompanies:"Billing companies"}
37,data:{overview:"Overview",workflows:"Workflows",dataAgent:"Data Agent",integrations:"Integrations",dataCare:"Data Care",management:"Data Management",reminderPerformance:"Reminder Performance",automation:"Automation Cockpit",quality:"Data quality"},hubs:{revops:"RevOps Cockpit",berichte:"Reports & Analytics",crm:"CRM",sales:"Sales",operations:"Operations",marketing:"Marketing",kunden:"Customers & Sales",sourcing:"Sourcing & Operations",finanzen:"Finance & Documents",analyse:"Analytics & Data"},campaigns:"Campaigns",berichte:{groups:{cockpit:"Cockpit",dashboards:"Dashboards & Reports"}},sections:{crmAgenda:"Tasks & Meetings",crmInbox:"Inbox & Tickets",crmService:"Service & Knowledge",dealPipeline:"Deal pipeline",opsCommerce:"Commerce & Documents",opsLogistics:"Logistics, Customs & Orders",opsSuppliers:"Suppliers & Quality",reportsLibrary:"Reports & Builder",reportsWinLoss:"Win Rates",salesAcquisition:"Leads & Sequences",salesCoaching:"Coaching & Win/Loss",salesCustomerSuccess:"Customer Success",salesForecast:"Forecasting",salesPipeline:"Pipeline & Closings",settingsData:"Integrations & Data",wsAgenda:"Tasks & Meetings",wsTime:"Working time & Absence",wsKnowledge:"Knowledge base & Policies",custContacts:"Contacts & Companies",custInbox:"Inbox & Tickets",custPipeline:"Sales pipeline",custAcquisition:"Acquisition & Sequences",custSuccess:"Success & Reorders",custForecast:"Revenue forecast",custWinLoss:"Win & loss analysis",srcSuppliers:"Suppliers & Factories",srcProducts:"Products & Quality",srcOrders:"Purchase orders",srcLogistics:"Logistics, Freight & Customs",finOverview:"Finance overview",finBilling:"Quotes & Invoices",finContracts:"Contracts & Subscriptions",finCredits:"Credit notes & cancellation invoices",finSupplier:"Supplier finance & Bank",finCosts:"Costs & partner settlement",anaKpi:"KPI cockpit",anaLibrary:"Report library",anaData:"Data & Quality",anaAutomation:"Automations & Workflows",anaAiQuality:"Data assistant & AI quality",setComms:"Communication & Consent"}},qe={perPage:"per page",showing:"{{from}}â{{to}} of {{total}}"},Be={required:"Required",invalidPhone:"Invalid phone number",invalidUrl:"Invalid URL",invalidVatId:"Invalid VAT ID",invalidIban:"Invalid IBAN",mobileRequired:"Mobile number is required"},He={passwordReset:{forgot:{seoTitle:"Forgot password",seoDescription:"Reset your password for the Mr China Supply China Sourcing Hub.",title:"Forgot password",subtitle:"Enter your email to receive a reset link.",emailLabel:"Email",emailPlaceholder:"[email protected]",submit:"Send reset link",submitting:"Sending â¦",sentTitle:"Email sent",sentBody:"If an account exists for this email, you will receive a reset link.",backToLogin:"Back to login",errorTitle:"Error"},reset:{seoTitle:"Reset password",seoDescription:"Set a new password for your Mr China Supply account.",title:"Set new password",newPassword:"New password",confirmPassword:"Confirm password",submit:"Save password",submitting:"Saving â¦",checking:"Verifying link â¦",mismatchTitle:"Error",mismatchBody:"Passwords do not match.",successTitle:"Password changed",successBody:"Redirecting to your area."}},guard:{errorTitle:"Backend currently unreachable",errorBody:"Access to your area could not be verified right now. Please try again.",retry:"Try again"},login:{common:{email:"Email",emailPlaceholder:"[email protected]",password:"Password",passwordPlaceholder:"â¢â¢â¢â¢â¢â¢â¢â¢",forgotPassword:"Forgot password?",submit:"Sign in",submitting:"Signing in...",showPassword:"Show password",hidePassword:"Hide password",or:"or",errors:{title:"Sign-in failed",invalidCredentials:"Email or password is incorrect.",network:"The server is currently unreachable. Please check your internet connection (ad blockers or VPNs may block *.supabase.co) and try again.",timeout:"Sign-in is taking unusually long. Please try again or wait a moment until backend access is stable again."},idleMessage:"You have been signed out for security reasons (2 hours of inactivity). Please sign in again."},kunde:{seoTitle:"China Sourcing Hub",seoDescription:"Your China Sourcing Hub: projects, quotes and communication at a glance.",title:"China
37Sourcing Hub",subtitle:"Sign in to access your area.",emailPlaceholder:"[email protected]",tabPassword:"Password",tabMagic:"Login link",magicSendCta:"Send login link",magicSending:"Sending...",magicSendFailed:"Sending failed",magicSentTitle:"Login link sent",magicSentToast:"Please check your inbox and click the link.",magicSentBody:"We've sent a login link to <strong>{{email}}</strong>. Open the email and click the link to sign in.",magicHint:"You'll receive an email with a link that signs you in automatically. No password needed.",google:"Sign in with Google",googleConnecting:"Connecting...",apple:"Sign in with Apple",appleConnecting:"Connecting...",googleFailed:"Google sign-in could not be started.",appleFailed:"Apple sign-in could not be started.",noAccount:"No account yet?",register:"Sign up",rejectedEmployee:"This email belongs to an employee account.",rejectedPartner:"This account is a partner account.",toEmployee:"Go to employee login",toPartner:"Go to partner login"},mitarbeiter:{seoTitle:"Employee portal",seoDescription:"Internal entry for Mr China Supply staff.",title:"Employee portal",subtitle:"Sign in only with a <strong>@mrchinasupply.de</strong> address.",emailPlaceholder:"[email protected]",rejectedNotEmployee:"This entry is for employees with a @mrchinasupply.de address only. Please use the customer or partner login.",rejectedNotProvisioned:"This account is not enabled for employees. Please contact IT.",toCustomer:"Customer login",toPartner:"Partner login",rejectedDeactivated:"Your account has been deactivated. Please contact an administrator."},partner:{seoTitle:"Partner portal",seoDescription:"Entry for Mr China Supply sales partners.",title:"Partner portal",subtitle:"Entry for our sales partners.",rejectedEmployee:"This account is an employee account.",rejectedNotPartner:"This account is not a partner account.",toEmployee:"Go to employee login",toCustomer:"Go to customer login",noPartner:"Not a partner yet?",becomePartner:"Become a partner",linkCustomer:"Customer login",linkEmployee:"Employee login"},languageSwitcher:{label:"Language",de:"Deutsch",en:"English",zh:"䏿"}}},Ue={tab:"Notes",compose:{placeholder:"Write a note⦠use @ to mention",submit:"Save",charCount:"{{count}} of {{max}} characters",dropHere:"Drop files here"},search:"Search notes",empty:"No notes yet.",pin:"Pin",unpin:"Unpin",delete:"Delete note",confirmDelete:"Really delete this note?",unknownAuthor:"Unknown",noteBy:"Note by {{author}}",assocCount_one:"{{count}} association",assocCount_other:"{{count}} associations",assocCount_zero:"No associations",associations:{companies:"Companies",contacts:"Contacts",deals:"Deals",pinned:"Required",empty:"No related records found."},assocCount:"{{count}} associations",lang:{de:"German",en:"English",zh:"Chinese"},translatedFrom:"Translated from {{lang}}",showOriginal:"Show original",showTranslation:"Show translation",editOwnOnly:"Only the author can edit this note",quickCreateHint:"The note will be linked to the selected record.",newNote:"New note"},We={button:{label:"Emergency",title:"Report emergency"},dialog:{title:"Report emergency",titleStep2:"Solution suggestion",category:"Category",severity:"Severity",descriptionLabel:"Description (min. 20 characters)",descriptionPlaceholder:"What happened? Which supplier, which PO, what is the consequence?",descriptionCounter:"{{count}} / 20",photoLabel:"Photo / proof (optional, max. 5 MB)",photoPick:"Choose photo",photoRemove:"Remove photo",cancel:"Cancel",generateAi:"Generate AI suggestions",send:"Send emergency",back:"Back",sendWithoutAi:"Send without AI",companyLabel:"Manufacturer",companyPlaceholder:"Search manufacturer â¦",companyRequiredHelp:"Please pick a manufacturer",dealLabel:"Related deal",dealPlaceholder:"Search deal â¦",dealRequiredHelp:"Please pick a deal of the selected manufacturer",attachmentsLabel:"Attachments (images or PDFs, optional)",attachmentsHint:"Max. 5 files · 5 MB each · images or PDFs",attachmentsPick:"Select files",attachmentsCounter:"{{count}} / {{max}} files",shifuHint:"Shifu works out solutions with you in the chat. Then submit the emergency.",askShifu:"Work out a solution with Shifu"},toast:{photoTooLarge:"Photo too large (max. 5 MB)",photoUploadFailed:"Photo upload failed, emergency will be sent without photo",submitSuccess:"Emergency reported to {{name}}",submitError:"Emergency could not be sent",attachmentRejectedType:"Only images and PDFs are allowed",attachmentRejectedCount:"Maximum 5 files"},category:{qc_failed:"Quality check failed",supplier_unreachable:"Supplier unreachable",customer_unreachable:"Customer unreachable",delivery_at_risk:"Delivery date at risk",production_issue:"Production issue at supplier",transport_damage:"Damage / transport issue",customs_stop:"Customs / compliance hold",wrong_spec:"Wrong goods / specification",other:"Other"},severity:{critical:"Critical",high:"High",medium:"Medium"}
37,admin:{title:"Emergency tracking",subtitle:"Overview of all reported emergencies incl. photo evidence and chosen solution.",refresh:"Refresh",kpiTotal:"Total",kpiOpen:"Open",kpiInProgress:"In progress",kpiResolved:"Resolved",kpiWithPhoto:"With photo",filterStatusAll:"Status: All",filterSeverityAll:"Severity: All",filterCategoryAll:"Category: All",filterSourceAll:"Solution: All",empty:"No emergencies found.",adminOnly:"This admin page is only accessible to admins.",openDeal:"Open deal",chosenSolution:"Chosen solution",noSolutionYet:"â not yet decided â",noSolution:"No solution chosen",relMinutes:"{{count}} min ago",relHours:"{{count}} h ago",relDays:"{{count}} d ago",kpiTopReporters:"Top reporters (30 days)"},status:{open:"Open",in_progress:"In progress",resolved:"Resolved"},source:{ai_a:"AI suggestion A",ai_b:"AI suggestion B",manual:"Manual",none:"None"},thumb:{noPhoto:"No photo",alt:"Photo evidence",openTab:"Open in new tab",aiBadge:"AI"},detail:{title:"Emergency detail",description:"Description",supplierReference:"Supplier reference",attachments:"Attachments ({{count}})",aiSuggestions:"AI solution suggestions",resolutionPlaceholder:"Resolution note (optional)",advanceTo:{in_progress:"Take in progress",resolved:"Mark as resolved"},reporterBlock:{title:"Reported by",stats:"{{total}} emergencies total · {{d30}} in 30 days · {{d7}} in 7 days · {{open}} open"}},speech:{announce:"New emergency: {{category}}. Severity {{severity}}. {{description}}"}},Ve={hub:{label:"My Workspace"},nav:{overview:"Overview",timesheet:"Time entries",leaves:"Time off",teamCalendar:"Team calendar",today:"Today"},clock:{title:"Time clock",clockIn:"Clock in",startBreak:"Start break",endBreak:"End break",endDay:"End workday",statusBreak:"Break",todayWorked:"Worked today",todayBreak:"Break",hint:"Time entries are only visible to you and administrators.",autoOpened:"Clocked in automatically"},autopilot:{title:"End of workday?",body:"It is 6:00 PM in your timezone. Would you like to clock out now?",autoClose:"Automatic clock-out in",confirm:"Yes, end workday",snooze:"I'm still working (+60 min)",snoozeShort:"+60 min"},overview:{title:"My Workspace",description:"Time clock, daily overview and personal working hours.",statusTitle:"Current status",notClockedIn:"You are not clocked in.",statusWorking:"You are working.",statusBreak:"You are on break.",todayWorked:"Worked today",todayBreak:"Break today",stamps:"Stamps today",todayList:"Todayâs time entries",empty:"No time entries yet today."},session:{work:"Work",break:"Break",running:"running",autoSource:"Automatic"},placeholder:{note:"This section will be unlocked in the next wave (leave requests, full timesheet history, team calendar, personal weekly schedule)."},timesheet:{description:"Your work hours at a glance: target vs. actual, daily breakdown, detail list and export.",range:{thisWeek:"This week",lastWeek:"Last week",month:"Month",quarter:"Quarter",custom:"Custom range",from:"From",to:"To"},kpi:{work:"Work time (actual)",workHint:"{{count}} working days",break:"Breaks",breakHint:"Sum of all breaks",target:"Target hours",targetHint:"Assumption: {{hours}} h / week",targetInfo:"While no personal weekly profile is set, {{hours}} h / week is distributed across weekdays (MonâFri).",balance:"Balance",balanceHint:"Actual â target",balanceInfo:"Positive = surplus hours, negative = hours still owed for the selected range."},chart:{title:"Daily breakdown",target:"Target",empty:"No data in the selected range."},table:{title:"Punch list",empty:"No punches in the selected range.",date:"Date",type:"Type",start:"Start",end:"End",duration:"Duration",source:"Source",note:"Note",flags:"Notices"},filter:{all:"All",work:"Work only",break:"Break only",incomplete:"Incomplete"},flag:{over10h:"> 10 h",over10hTip:"Work time on this day exceeds 10 hours.",noBreak:"Break missing",noBreakTip:"After 6 hours of work a break of at least 30 minutes is mandatory.",midnight:"Midnight",midnightTip:"This session runs across midnight.",open:"Open",openTip:"This session was not closed."},actions:{export:"CSV export",print:"Print view",correction:"Report missing punch"},correction:{title:"Add missing punch",desc:"Submit a forgotten punch with reason. Your team lead will review the request.",date:"Date",start:"Start",end:"End",type:"Type",reason:"Reason",reasonPh:"E.g. forgot to clock in, device outage â¦",reasonRequired:"Please provide a reason.",invalidRange:"End must be after start.",submit:"Submit request",saved:"Request saved.",error:"Request could not be saved."}}
37,leave:{page:{title:"Absences",description:"Submit vacation, training or special leave and view your current balance."},tabs:{mine:"My requests",pending:"Awaiting approval"},empty:"No requests yet.",submitted:"Request submitted",dialog:{title:"New request"},actions:{new:"New request",submit:"Submit request",approve:"Approve",reject:"Reject",cancel:"Cancel"},fields:{type:"Type",start:"From",bis:"To",end:"To",halfStart:"Half-day at start",halfEnd:"Half-day at end",reason:"Reason (optional)",days:"Calculated working days"},types:{urlaub:"Vacation",krank:"Sick leave",unbezahlt:"Unpaid leave",fortbildung:"Training",sonderurlaub:"Special leave",homeoffice:"Home office"},status:{pending:"Pending",approved:"Approved",rejected:"Rejected",cancelled:"Cancelled"},balance:{of:"of",used:"used",pending:"pending",daysShort:"d"},toast:{approved:"Request approved",rejected:"Request rejected",cancelled:"Request cancelled"},errors:{dates:"Please pick a date range",noDays:"No working days in range",submit:"Submission failed",decide:"Action failed",cancel:"Cancellation failed"}},calendar:{title:"Team calendar",description:"Approved team absences â who is out and when.",from:"From",to:"To",empty:"No approved absences in this period.",status:{approved:"Approved",pending:"Pending"},filter:{all:"All",approved:"Approved only",pending:"Pending only"},nextMonth:"Next month"}},Ge={guard:{title:"Team leads and admins only",description:"This area contains Performance data of all employees. Please ask an admin if you need access."},teamPuls:{title:"Team Pulse",description:"Live status of every employee, today's hours and open requests.",tableTitle:"Today's overview",empty:"No employees found.",kpis:{team:"Team",working:"Working",break:"Break",pending:"Open requests"},status:{working:"Working",break:"Break",off:"Inactive"}},activity:{title:"Time clock activity",description:"All work and break stamps of your team within the selected range.",from:"From",to:"To",user:"Employee",allUsers:"All employees",empty:"No stamps in this period."},absences:{title:"Absence management",description:"All requests with filters, approval and history.",allStatus:"All statuses",allTypes:"All types",empty:"No requests match the filter."}
37,outputKpis:{title:"Output KPIs",description:"Activity, deals, tickets and tasks per employee â aggregated over the selected range.",tableTitle:"Comparison by employee",empty:"No snapshots in this range. Run the recompute as admin or wait for the nightly job.",recompute:"Recompute",recomputed:"Snapshots updated",recomputeFailed:"Recompute failed",cols:{user:"Employee",work:"Hours",contacts:"Contacts",dealsNew:"New deals",dealsWon:"Won",tickets:"Tickets",tasks:"Tasks"}},anomalies:{title:"Anomalies",description:"Notable deviations per employee, computed daily by AI against the 30-day average.",empty:"No anomalies in this range â all good.",range7:"Last 7 days",range14:"Last 14 days",range30:"Last 30 days",range90:"Last 90 days",rangeCustom:"Custom range",dateFrom:"From",dateTo:"To",allTeams:"All teams",noTeam:"No team",teamLabel:"Team",searchPlaceholder:"Search by employee or KPI ...",resultsCount:"{{count}} results",allSeverities:"All severities",critical:"Critical",warn:"Warning",info:"Info",kpi:{work_minutes:"Work time",deals_created:"New deals",deals_won:"Won deals",tickets_handled:"Tickets",tasks_completed:"Tasks",contacts_created:"Contacts"}},tabs:{teamPulse:"Team Pulse",activity:"Activity",outputKpis:"Output KPIs",anomalies:"Anomalies"},systemActivity:{title:"System activity",description:"What activities have employees completed in the CRM? Daily snapshots, automatically at 6 PM local time.",window:"{{n}} days",allEmployees:"All employees",nSelected:"{{n}} selected",recompute:"Recompute now",syncDone:"Snapshot updated",syncCount:"{{n}} employee snapshots updated.",error:"Error",empty:"No snapshots yet. The first entry is created today at 6 PM local time per employee.",emptyTitle:"No snapshots yet",multiUserHint:"With multiple employees, only the first metric is shown ({{m}}), one line per employee.",date:"Date",employee:"Employee",chartTitle:"Trend",tableTitle:"Daily details",metricsLabel:"Metrics",rowCount:"{{n}} entries",filters:{period:"Period",employees:"Employees"},kpi:{total:"Total actions",avgPerDay:"Avg. per day",activeEmployees:"Active employees",topUser:"Top employee",actions:"actions"},metrics:{deals:"Deals",contacts:"Contacts",companies:"Companies",notes:"Notes",emails:"Emails",tasks:"Tasks",meetings:"Meetings",routes:"Visited pages",total:"Total actions"}}},je={title:"Shifu",subtitle:"Your orchestrator for CRM, sales and operations",thinking:"Shifu is thinking â¦",greeting:"Hi! I am Shifu. I can help you with tasks, notes, email drafts and CRM search. What can I do?",inputPlaceholder:"Write a messageâ¦",send:"Send",newChat:"New chat",chatList:"Chats",noChats:"No chats yet.",deleteChat:"Delete chat",deleteConfirm:"Really delete this chat?",deleted:"Chat deleted.",deleteError:"Chat could not be deleted.",expand:"Expand",collapse:"Collapse",close:"Close",untitledChat:"New conversation",loadError:"Could not load history.",rename:"Rename chat",renamed:"Chat renamed.",renamePlaceholder:"New titleâ¦",save:"Save",lengthWarn:{softTitle:"This chat is getting long",softBody:"Long conversations increase the risk that the AI mixes up or invents details. Consider starting a new chat for a new topic.",hardTitle:"Chat is very long",hardBody:"At this length answer quality drops noticeably and every reply re-processes the whole history. We recommend starting a new chat.",criticalTitle:"Critical chat length reached",criticalBody:"Every further reply re-processes the entire history (~125,000 tokens) â that is slow, expensive and error-prone. Please start a new chat.",startNew:"Start new chat",continue:"Continue anyway"},fab:{label:"Open Shifu"},tab:{chat:"Chat",voice:"Voice"},voice:{title:"Voice mode",idle:"Ready for a conversation",hint:"Talk freely with Mila â she can read CRM data and create notes, tasks, deals, meetings and companies. She'll briefly confirm before writing.",label:"Voice assistant",start:"Start conversation",stop:"End conversation",connecting:"Connectingâ¦",listening:"Listening",speaking:"Speaking",micDenied:"Microphone access denied. Please allow it in your browser settings.",tokenError:"Voice assistant could not be started.",ended:"Conversation ended.",agentSpeakingBadge:"Agent speaking",agentQuietBadge:"Agent listening",outputLevelLabel:"Output level",transcriptLabel:"You said",replyLabel:"Reply",errorTurn:"Could not generate a voice reply.",liveStart:"Start live conversation",liveEnd:"End conversation",backToChat:"Back to chat",liveListening:"Listening â just start speaking.",liveSpeaking:"Replying â¦",liveIdle:"Ready. Tap start to begin the conversation.",bargeInHint:"You can interrupt any time â the assistant will stop and listen. Headset recommended to avoid echo.",muteOn:"Mic muted",muteOff:"Unmute mic",micPermissionDenied:"Microphone access was denied. Please allow it in your browser settings.",micNotFound:"No microphone found. Please connect a microphone or select one in your browser.",connectionLost:"Connection to the voice service was lost.",notSupported:"Live conversation is not supported in this browser. Please use a recent Chrome, Edge, or Safari.",reconnecting:"Connection interrupted â retry {{attempt}} of {{max}} â¦",reconnectBadge:"Reconnecting {{attempt}}/{{max}}",reconnectGivingUp:"Could not re-establish the connection after several attempts.",disconnectedReason:"Disconnected: {{reason}}",errorBadge:"Connection error",retryStart:"Reconnect",connectionReady:"Voice assistant is ready.",tokenForbidden:"Session expired. Please sign in again.",mockMicLabel:"Test mode active (simulate microphone hardware)",phase:{idle:"Idle",tokenRequest:"Requesting security token â¦",wsConnecting:"Opening connection to Gemini â¦",wsOpen:"Connection open â sending configuration",setupSent:"Configuration sent â waiting for confirmation",ready:"Ready to speak",rotating:"Refreshing connection seamlessly â¦",tokenFailed:"Token request failed",wsClosed:"Connection closed ({{code}})",wsError:"Connection error"},diag:{title:"Diagnostics",phase:"Phase",resume:"Resume handle",resumeYes:"Yes",resumeNo:"No",lastClose:"Last close",reqId:"Request ID",tokenTtl:"Token TTL"},test:{button:"Test connection",running:"Testing connection â¦",hint:"Checks token fetch and Gemini handshake â no microphone needed.",success:"Connection succeeded ({{ms}} ms)",failure:"Connection test failed: {{phase}} {{detail}}",resultOk:"OK â setupComplete received in {{ms}} ms",resultFail:"Failed in phase: {{phase}}
37",detail:{ws_upgrade_blocked:"Voice service is up, but the WebSocket upgrade is blocked by the network (proxy/firewall/gateway).",setup_timeout:"Timed out while connecting to Gemini.",no_session:"No active session found.",missing_supabase_url:"Backend URL is not configured.",ws_ctor_failed:"WebSocket could not be opened."}},fallback:{title:"Text mode",badge:"Fallback",subtitle:"Voice connection is unavailable. Type your question â the assistant replies in text and reads the answer aloud.",reasonNetwork:"Network connection unstable â automatically switched to text mode.",switchButton:"Switch to text",backToVoice:"Back to voice",placeholder:"Type a question â¦",send:"Send",thinking:"Generating answer â¦",empty:"Ask a question to begin.",error:"Error"},startRecording:"Start voice recording",coaching:{title:"Voice coaching",subtitle:"Your recent conversations with the voice assistant â including evaluation and transcript.",totalSessions:"Total sessions",totalTime:"Total speaking time",avgScore:"Average score",sessionList:"History",empty:"No conversations recorded yet.",unknownTime:"Unknown time",noSummary:"No summary available",detailTitle:"Session details",summary:"Summary",evaluation:"Evaluation",transcript:"Transcript",you:"You",agent:"Mila"},translate:{toggle:"Live translation",target:"Target language",lang:{de:"German",en:"English",zh:"Chinese"}},fromVoice:"From voice conversation",fromVoiceShort:"Voice",pipeline:{thinking:"Shifu is checking the data â¦",hint:"Just start speaking. Shifu uses the same data and tools as in chat.",noAnswer:"I can't find anything on that.",error:"I can't reach the data right now.",startFailed:"Voice mode could not be started.",queued:"No connection right now. I saved the request and will send it as soon as the network is back.",offline:"No connection right now. Please repeat it in a moment.",interrupted:'(interrupted â say "continue" to resume.)',notUnderstood:"I didn't catch that. Please say it again.",audioStopped:"The microphone is not providing audio. Please restart voice mode."},carGreeting:"Hey, I'm here. What's up?",carGreetings:{morning:["Good morning, master. Everything is awake here. What's first?","Morning, chief. The day is young and so am I. Where do we start?","Good morning. I'm ready before the coffee is."],day:["Hello, master. How can I make your day easier?","Hi chief, I'm listening.","Here I am. What do you need?"],evening:["Evening, master. One last heroic deed before the day ends?","Good evening, chief. What's still on the list?","Evening. I'm here as long as you are."],night:["Up at this hour, master? What's urgent?","Good evening, chief. Looks like the night belongs to both of us.","I'm awake. What's on your mind?"],back:["Back again, chief. Go ahead.","Back. Where were we?","Yes, master?"]},carDialogHint:"The user has already replied several times. Summarize the status in one sentence and carry out the action now with the details at hand instead of asking again.",confirm:{intro:"Just to be sure:",amount:"Amount",quantity:"Quantity",date:"Date",question:"Should I save it like this?"},micState:{idle:"Ready. Tap start.",connecting:"Connecting â¦",listening:"I'm listening",thinking:"One moment",speaking:"I'm answering",muted:"Microphone is off",error:"Lost connection to the voice service."},micTurnOff:"Turn microphone off",interrupt:"Stop reply",micTurnOn:"Turn microphone on",initiative:{ask:"Shall I take care of it?"}},composer:{voiceMode:"Open voice mode",voiceModeClose:"Close voice mode",hintSend:"send",hintNewline:"new line"},attach:"Attach file",attachHint:"Attach images, PDFs, Word, Excel, CSV and text files (up to 100 MB)",attachInvalidType:"Allowed: images (PNG, JPG, WebP, GIF), PDF, Word, Excel, CSV, text and JSON.",attachTooLarge:"File too large (max 100 MB per file).",attachTooMany:"Up to 10 attachments per message.",removeAttachment:"Remove attachment",stop:"Stop response",uiActions:{opened:{email:"Email form opened",contact:"Contact form opened",company:"Company form opened",deal:"Deal form opened",meeting:"Meeting form opened",ticket:"Ticket form opened",task:"Task form opened",note:"Note form opened",reminder:"Reminder form opened",quote:"Quote form opened",invoice:"Invoice form opened"},openedRecord:{contact:"Contact opened",company:"Company opened",deal:"Deal opened"},openedList:{contacts:"Contacts list opened",companies:"Companies list opened",deals:"Deals list opened",tasks:"Tasks list opened",tickets:"Tickets list opened",meetings:"Meetings list opened",inbox:"Inbox opened"},openedModule:"{{label}} opened",filledForm:"Form filled â please review and save",noFormOpen:"No matching form is currently open."},fillForm:{button:"Fill with Shifu",prompt:"Please fill out this form for me."},recipientPicker:{title:"Select recipient",description:"Shifu could not determine a unique email address. Please pick a contact or enter an address.",searchLabel:"Search contact",searchPlaceholder:"Name, email or phone",noResults:"No contacts with an email address found.",manualLabel:"Or enter an email address",useManual:"Use this address",needed:"Please select the recipient first."},toggleChatList:"Show/hide chat list",selectMode:"Multiple selection",selectionCancel:"Cancel selection",selectAll:"Select all",selectedCount:"{{count}} selected",deleteSelected:"Delete selection",bulkDeleteConfirm:"Permanently delete {{count}} chats? This action cannot be undone.",bulkDeleted:"{{count}} chats deleted",filter:{searchLabel:"Search chats",searchPlaceholder:"Search chatsâ¦",label:"Filter",period:"Period",periodAll:"All",periodToday:"Today",periodWeek:"Last 7 days",periodMonth:"Last 30 days",unreadOnly:"Unread only",reset:"Reset filters",noResults:"No chats found.",noResultsHint:"Adjust your search term or filters."},noChatsHint:"Start a new chat with Shifu at the top.",emptyTitle:"Ask Shifu",emptyHint:"Ask a question about CRM, sales or operations â Shifu orchestrates the right tools.",confirm:{groupTitle:"Batch approval",groupCount:"{{count}} actions",approveAll:"Approve all",declineAll:"Discard all",title:"Confirm action",genericAction:"Action",approve:"Confirm",decline:"Discard",approved:"Done.",rejected:"Discarded â nothing was changed.",failed:"The action could not be executed.",fields:{title:"Title",name:"Name",to_email:"Recipient",subject:"Subject",entity:"Area",field:"Field",value:"New value",due_date:"Due date",priority:"Priority",status:"Status",stage:"Stage",amount:"Amount",description:"Description",content:"Content",body:"Message",recipient:"Recipient",date:"Date",time:"Time",timezone:"Time zone",duration_minutes:"Duration",participants:"Participants",meeting_kind:"Meeting type",provider:"Channel",location:"Location",remind_at:"Reminder on"},values:{low:"Low",medium:"Medium",high:"High",open:"Open",inProgress:"In progress",done:"Done",entityDeal:"Deal",entityTask:"Task",fieldNextActivity:"Next activity",fieldAmount:"Deal value",kindInternal:"Internal",kindExternal:"External",providerInPerson:"O
37n site",providerPhone:"Phone",providerOnline:"Online meeting",providerOther:"Other"},expired:"Expired â please request it again.",phase:{checking:"Checking request â¦",waiting:"Waiting for confirmation",incomplete:"Details missing â cannot approve",running:"Running â¦",succeeded:"Completed",failed:"Could not be completed"},missing:"Still missing:",minutes:"{{count}} minutes",textHint:'Reply "Yes" in the chat to run it, or tell me what to change.',summaryTitle:"Prepared action",textDeclined:"Discarded â nothing was changed.",textRetry:"Tell me what to adjust and I will prepare it again."},clarify:{title:"Quick question"},explain:{title:"How was this result produced?",steps:"{{count}} steps",chart:"Result shown as a chart",sources:"Data sources"},working:"Taking a look â¦",killSwitch:{title:"Immediate stop for Shifu",description:"Stops Shifu at once â including running processes and already confirmed actions. Sales, documents and portals keep running.",stateOn:"Active",stateOff:"Stopped",reasonLabel:"Reason",reasonPlaceholder:"Reason (optional)",turnOff:"Stop Shifu now",turnOn:"Release Shifu again",toastOn:"Shifu is active again.",toastOff:"Shifu has been stopped.",adminOnly:"Only administrators can stop Shifu.",hint:"The stop takes effect within 2 seconds. A read error does not lift it."},attachUploading:"Uploading ⦠{{percent}} %",attachUploadFailed:"Upload failed: {{name}}",attachProcessing:"Large files are analysed before the answer.",attachPreparing:"Preparing",attachProcessingFile:"Analysing",attachFailedShort:"Failed",attachCancel:"Cancel upload",attachRetry:"Try again",attachDownscaled:"sent resized",attachOverall:"{{done}} of {{total}} files uploaded",dropTitle:"Drop files here",dropHint:"Up to {{count}} files, each up to 100 MB",identity:{title:"Shifu's own permissions",description:"Shifu acts as a colleague of its own â always on behalf of the person who triggers the action. Every record will show both. The intersection applies: Shifu may only do what that person may do.",missing:"No identity has been set up for this area yet.",read:"View",write:"Edit",confirm:"Always confirm",saved:"Permission saved.",adminOnly:"Only administrators can change these permissions."}},Qe={pickCompanyPlaceholder:"Search companyâ¦",pickContactPlaceholder:"Search contactâ¦",createCompanyInline:"Create company â{{name}}â",newContact:"New contact",newContactLabel:"New contact",contactsSection:"Link contacts",dealsSection:"Add deals directly",noDealsYet:"No deals yet â click âAdd dealâ.",addDeal:"Add deal",duplicateWarning:"Possible duplicate: {{label}}",openExisting:"Open existing",duplicateMerge:"Merge",duplicateMergeHint:"Fill empty fields on the existing record with your input and transfer links",duplicateReplace:"Replace",duplicateReplaceHint:"Overwrite the existing record with your input and transfer links",duplicateMerged:"Merged into existing record",duplicateReplaced:"Existing record overwritten",signatureBulkMode:"Paste multiple signatures",signatureBulkHint:"Separate blocks by blank line or ---. Fields and deals are applied per contact.",signatureBulkDetected:"Detected blocks: {{n}}",signatureBulkProgress:"Processing {{done}} of {{total}}â¦",signatureBulkParse:"Create {{n}} contacts",signatureBulkApplied:"{{n}} contacts created",signatureBulkBlockError:"Block {{n}}: {{msg}}",signatureBulkNone:"No usable contacts detected",followupTime:"Time",parseSignature:"Import from signature",signatureDialogTitle:"Import from email signature",signaturePlaceholder:`Paste signature block, e.g. 38John Doe 39Managing Director 40Acme Inc. 41[email protected] 42+1 555 1234567`,signatureParse:"Detect & apply",signatureEmpty:"Please paste signature text",signatureApplied:"Fields applied",signatureParseError:"Could not parse signature",followupTask:"Create follow-up task in 3 days",followupTaskTitle:"Follow-up: {{name}}",followupDuePreview:"Due on {{date}}",followupDescription:"Description",followupDescriptionPlaceholder:"Follow-up task description",followupDescContactCompany:"Review status of initial contact with {{contact}} ({{company}}) and align on next steps.",followupDescContact:"Review status of initial contact with {{contact}} and align on next steps.",followupDescCompany:"Review status of cooperation with {{company}} and align on next steps.",followupDescGeneric:"Follow-up task: align on next steps.",followupDateInvalid:"Please choose a valid due date.",followupDatePast:"The due date is in the past.",quickDueAdd:"Follow-up",quickDueClear:"Remove",quickDueAria:"Edit due date",followupDate:"Date",datePickerPlaceholder:"Pick a date",timePickerPlaceholder:"Pick a time",timePickerHours:"Hours",timePickerMinutes:"Minutes",duplicatePreview:"Preview",duplicateOpenNewTab:"Open in new tab",duplicateDiscardAndOpen:"Discard form and go there",duplicateDiscardConfirm:"Your entries in this form will be lost. Switch anyway?",duplicatePreviewEmpty:"Record no longer available",autoSaveError:"Save failed",autoSaveIdle:"Changes are saved automatically.",autoSaveNewHint:"Will be created upon saving.",autoSaveSavedAgo:"Last saved {{time}} ago",autoSaveSavedNow:"Saved",autoSaveSaving:"Savingâ¦",discardChanges:"Discard unsaved changes?",newCompany:"New Company"},ze={title:"Competitor Backlink Analysis",subtitle:"Add up to 5 competitor domains and let the AI chat compare their backlink profiles.",inputCardTitle:"Competitor domains",inputCardHint:"Up to {{max}} domains. Entries are stored in your browser automatically.",addDomain:"Add domain",removeDomain:"Remove domain",clearAll:"Clear all",cleared:"List cleared",copyPrompt:"Copy prompt for AI chat",copied:"Prompt copied",copiedHint:"Paste into Lovable chat to run the backlink analysis.",copyFailed:"Copy failed.",errorNoDomains:"Please enter at least one valid domain.",invalidWarning:"{{count}} entry will be ignored (invalid domain format).",howItWorksTitle:"How
42it works",step1:"Enter 1â5 competitor domains (e.g. chinabrands.de).",step2:'Click "Copy prompt for AI chat".',step3:"Paste the prompt into Lovable chat â the AI returns backlinks, authority score, top referrers and recommendations.",dataNote:"Analysis runs via the Semrush tools built into Lovable â no extra API licence required.",promptIntro:"Please compare the backlink profiles of the following China-sourcing competitor domains:",promptOutro:"For each domain return: authority score, total backlinks, referring domains, top 5 referrers and anchor-text distribution. Close with a recommendation where Mr China Supply has the biggest backlink lever."},Ye={title:"Today",desc:"All open tasks from CRM and Operations in one place.",openCrm:"CRM tasks",openOps:"Operations",overdue:"Overdue",today:"Due today",upcoming:"Upcoming (7 days)",emptyOverdue:"Nothing overdue â all clear!",emptyToday:"Nothing scheduled for today.",emptyUpcoming:"No tasks in the next 7 days."},Ke={window:{"7d":"7 days","30d":"30 days","90d":"90 days",all:"All time"},filter:{human:"Human only",bots:"Bots only",all:"All"},empty:"No data in the selected window.",noGeo:"No geo data captured yet.",noReferrer:"No external referrers recorded.",noBots:"No bot traffic detected.",botsHidden:"Bots hidden â toggle the switch above.",enrichmentHint:"Only {{pct}} of pageviews are enriched. New events from now on include geo, bot and device data.",kpi:{total:"Total pageviews",sessions:"Sessions",sessionsHint:"Unique UA hashes per day",botShare:"Bot share",botHits:"bot hits",topCountry:"Top country",hits:"hits"},legend:{humans:"Humans",bots:"Bots"},charts:{daily:"Pageviews per day",geo:"Geographic split",device:"Device types"},heatmap:{title:"Heatmap: top paths à hour",hint:"Brighter cells = more hits. Follows the selected window and bot filter.",empty:"No path data in this window.",hourShort:"h",pathColumn:"Path",tooltip:"{{count}} hits at {{hour}}:00",tooltipWeekday:"{{count}} hits on {{day}}",tooltipQuarter:"{{count}} hits at {{time}}",weekdayLegend:"Weekdays (MonâSun)",quarterLegend:"15-minute slots (00:00â23:45)"},gran:{label:"Granularity:",hour:"Hours",weekday:"Weekdays",quarter:"15 min"},weekdayShort:{0:"Mon",1:"Tue",2:"Wed",3:"Thu",4:"Fri",5:"Sat",6:"Sun"},tables:{topPaths:"Top 20 paths",topReferrers:"Top 10 referrers",topBots:"Top 10 bots",topBrowsers:"Top 10 browsers",path:"Path",host:"Source",bot:"Bot",browser:"Browser",hits:"Hits",botPct:"Bot share"},updatedAt:"Updated {{time}}",refresh:"Refresh",detail:{title:"Path details",subtitleAll:"All time slots within the selected window.",subtitleBucket:"Focus: {{bucket}}.",bucketHour:"Hour {{hour}}:00",bucketWeekday:"Weekday {{day}}",bucketQuarter:"15-min slot {{time}}",bucketHit:"{{count}} hits in focus ({{bucket}}).",kpiTotal:"Total pageviews",kpiHumans:"Humans",kpiBots:"Bots",kpiBotShare:"Bot share",hourBars:"Distribution across 24 hours",topReferrers:"Sample referrers",topCountries:"Top countries",topDevices:"Top devices",topBrowsers:"Top browsers",colReferrer:"Source",colCountry:"Country",colDevice:"Device",colBrowser:"Browser",noReferrers:"No external referrers.",noCountries:"No geo data.",noDevices:"No device data.",noBrowsers:"No browser data."}},Xe={title:"Voice analytics & budget",subtitle:"Overview of usage and cost for the last 30 days.",saved:"Settings saved.",warn:"Warning threshold reached",empty:"No data available yet.",saving:"Savingâ¦",save:"Save",kpi:{sessions:"Conversations (30 d)",minutes:"Talk time (30 d)",monthCost:"Monthly cost"},chart:{title:"Daily cost (â¬)"},top:{title:"Top users (30 d)",sessions:"conversations"},settings:{title:"Budget settings",cap:"Monthly cap (â¬)",perMinute:"Price per minute (cents)",threshold:"Warning threshold (%)",hint:"When the monthly limit is reached, the token function blocks new voice sessions for non-admins."}},Je={simulator:{title:"What if we ran on full automation?",threshold:"Confidence threshold for auto-send",thresholdMin:"0.50 (everything auto)",thresholdMax:"1.00 (nothing auto)",wouldAuto:"Would run automatically",wouldAutoSub:"{{pct}} % of all suggestions",errors:"Estimated errors",errorsSub:"{{count}} cases where a human would have intervened",weeklyAuto:"Per week automatically",weeklyAutoSub:"extrapolated",saved:"Time saved / week",savedSub:"vs. manual typing time",currentMode:"Current mode:",activeThreshold:"active threshold {{value}}",off:"Off",assist:"Assist",autoWith:"Full automation with threshold {{value}}",notEnoughData:"Not enough data ({{count}}). Recommendation: collect at least 20 resolved decisions with confidence value.",riskTitle:"Risk examples (top {{count}}
42)",riskHint:"These suggestions would have exceeded the threshold â but a human heavily edited or discarded them.",toastFullAuto:"Full automation active (threshold {{value}})",toastAssist:"Back to assist",toastOff:"Action type disabled",toastErrorChange:"Could not change mode: {{message}}"},pending:{title:"What did the AI prepare? ({{count}})",selectedCount:"{{count}} selected",empty:"No open AI drafts right now.",selectAll:"Select all",deselectAll:"Deselect all",discard:"Discard",bulkSend:"Bulk send ({{count}})",toastSent:"Sent {{count}} emails{{failedSuffix}}.",toastFailed:"{{count}} send errors.",toastDiscarded:"{{count}} drafts discarded.",toastDiscardFailed:"Discard failed: {{message}}",failedSuffix:" · {{count}} failed"},killSwitch:{title:"Control per action type",intro:"Here you decide, per action type, whether the AI does nothing, only suggests, or acts on its own.",adminOnly:" Only admins can change the mode.",threshold:"Threshold {{value}}",toastError:"Could not change mode: {{message}}",toastSuccess:"{{type}}: {{mode}}",types:{email_draft:"Email drafts",stage_move:"Deal stage moves",task_priority:"Task priority",enrich_field:"Field enrichment",data_quality_fix:"Data quality fix"},modes:{off:"Off",assist:"Assist (human clicks)",auto:"Full automation"},stop:"Emergency stop",toastStopped:"{{type}}: emergency stop triggered â no longer runs automatically.",pausedByRate:"Automatically downgraded on {{date}} â withdrawal rate {{value}} % exceeded the 25 % limit.",pausedManually:"Stopped via emergency stop on {{date}}."},liveAudit:{title:"Recent decisions ({{count}})",empty:"No decisions recorded yet.",pending:"pending"},bulkDiscard:{title:"Discard {{count}} drafts?",description:"Please pick a reason â this feeds the AI learning loop.",cancel:"Cancel",confirm:"Discard"},bulkSend:{title:"Send {{count}} emails?",description:"{{count}} mail windows will open. Each draft will then be marked as sent and logged in the audit log.",skipped:"{{count}} draft(s) without a recipient will be skipped.",cancel:"Cancel",confirm:"Send now"},draftRow:{selectAria:"Select draft",noSubject:"(No subject)",to:"To",missingRecipient:"â missing recipient",confidence:"{{pct}} % confidence"},effectiveness:{title:"Effectiveness per rule",intro:"Last {{days}} days â around {{hours}} hours saved in total.",empty:"No decisions recorded for this period yet.",col:{rule:"Rule",volume:"Cases",acceptance:"Accepted",discard:"Withdrawn",autoShare:"Fully automatic",saved:"Time saved"}},handover:{title:"Handovers",subtitle:"{{total}} cases · {{open}} open · {{gaps}} gaps",empty:"No handovers in the selected period.",colType:"Case type",colSteps:"Steps",colStart:"Start",colDuration:"Duration",colConfidence:"Confidence",colStatus:"Status",gap:"Gap over 24 hours",hours:"{{value}} h",outcome:{open:"Open",accepted:"Accepted",edited:"Edited",discarded:"Discarded"}}},Ze={tenant:{switch:"Switch tenant",pick:"Choose tenant",switched:"Tenant switched â page reloading",switchFailed:"Tenant switch failed",roleLabel:"{{slug}} · Role: {{role}}"}},$e={columns:"Columns",columnsMenu:"Manage columns",applyToAll:"Save for all teammates",applyToMe:"Save only for me",resetLayout:"Reset layout",savedForMe:"Saved only for you",layoutReset:"Layout reset",leadOnly:"Only team leads and admins can change the shared layout.",visible:"Visible",hidden:"Hidden",dragHint:"Drag to reorder",selectedRows_one:"{{count}} selected",selectedRows_other:"{{count}} selected"},et={fashion_apparel:"Fashion & Apparel",consumer_goods:"Consumer Goods",beauty_cosmetics:"Beauty & Cosmetics",health_wellness:"Health & Wellness",food_beverage:"Food & Beverage",retail_ecommerce:"Retail & E-Commerce",sports_outdoor:"Sports & Outdoor",electronics_tech:"Electronics & Tech",industrial_machinery:"Industrial & Machinery",construction_materials:"Construction & Materials",services_consulting:"Services & Consulting",other:"Other",beauty_health:"Beauty & Health",services_other:"Services & Other"},tt={header:{eyebrow:"Service",title:"Feedback surveys",subtitle:"NPS, CSAT, CES â send, evaluate and let the Voice-of-Customer agent interpret the results."},actions:{newSurvey:"New survey",create:"Create",cancel:"Cancel",activate:"Activate",pause:"Pause",send:"Send invitations",runAgent:"Run Voice-of-Customer agent",agentRunning:"AI analysing â¦",submit:"Submit answers",submitting:"Saving â¦",copyLink:"Link copied"},create:{title:"Create new survey",nameLabel:"Survey name",namePlaceholder:"e.g. Q3 NPS existing customers",occasionHint:"Choose the occasion â the matching questions are assembled automatically.",questionCount:"{{count}} questions"},templates:{nps:{title:"NPS survey",desc:"Recommendation question (0 â 10)"},csat:{title:"CSAT survey",desc:"Satisfaction (1 â 5 stars)"},ces:{title:"CES survey",desc:"Effort (Customer Effort Score)"},custom:{title:"Custom survey",desc:"Blank template â add your own questions"}},status:{draft:"Draft",active:"Active",paused:"Paused",archived:"Archived"},type:{nps:"NPS",csat:"CSAT",ces:"CES",custom:"Custom"},tabs:{all:"All",active:"Active",draft:"Drafts",archived:"Archive",dispatch:"Dispatch",responses:"Responses",insights:"AI insights",evaluation:"Evaluation",questions:"Questions"},list:{empty:"No surveys yet",emptyHint:"Create an NPS, CSAT or CES survey above.",cap:"Cap: every {{days}} days",loading:"Loading â¦"},stats:{responses:"Responses",npsScore:"NPS score",avgScore:"Avg. score",insights:"AI insights"},dispatch:{mustActivate:"The survey must be activated before invitations can be sent.",recipientsLabel:"Recipients (one email per line)",recipientsPlaceholder:"[email protected]",previewTitle:"Preview link (no token)",sent:"{{count}} invitations sent"},responses:{empty:"No responses yet.",score:"Score: {{value}}"},insights:{empty:"No AI insights yet. Collect responses and run the agent.",recommendation:"Recommendation: ",mentions:"{{count}}Ã",created:"{{count}} new insights"},delete:{confirm:"Really delete this survey? All responses will be lost.",success:"Survey deleted"}
42,toasts:{needEmail:"Please provide at least one email address",needRequired:"Please answer all required questions",saveError:"Could not save",loadError:"Could not load",created:"Survey created",statusUpdated:"Status updated",previewMode:"Preview â answers are not saved"},public:{intro:"Your honest feedback â takes less than 2 minutes.",thanks:"Thank you!",thanksHint:"Your feedback helps us improve.",unavailable:"This survey is no longer available.",notFound:"Survey not found",answerPlaceholder:"Your answer â¦",npsLow:"Unlikely",npsHigh:"Very likely",cesLow:"Very difficult",cesHigh:"Very easy",scaleLow:"Does not apply",scaleHigh:"Fully applies",noChoices:"No options defined.",multiHint:"Multiple answers possible"},occasions:{complaint:{title:"Customer complained",desc:"Detailed questionnaire on cause, severity and resolution"},project_interim:{title:"Interim survey during project",desc:"Short check on collaboration, pace and quality"},project_close:{title:"After project completion",desc:"Review of outcome, process and recommendation"},recurring:{title:"Regular customer satisfaction",desc:"Short recurring satisfaction check"},first_consult:{title:"After first consultation",desc:"First impression after the initial call"},blank:{title:"Blank form",desc:"Start without a template and add questions yourself"}},measure:{nps:"Recommendation",csat:"Satisfaction",ces:"Effort",custom:"Custom evaluation"},link:{create:"Create personal link",hint:"The link is personal and valid for 30 days. Copy it, send it by email or share it via WhatsApp.",emailLabel:"Recipient email address",phoneLabel:"Mobile number for WhatsApp (optional)",needPhone:"Please enter a mobile number first.",empty:"No links created yet.",copy:"Copy",sendMail:"By email",sendWhatsapp:"Via WhatsApp",statusOpen:"Open",statusAnswered:"Answered",statusExpired:"Expired",validUntil:"Valid until {{date}}",whatsappText:"Hello, here is your personal access to our survey â{{survey}}â: {{url}}",created:"Personal link created."},evaluation:{noQuestions:"No questions defined for this survey.",noAnswers:"No answers yet.",answerCount:"{{count}} answers",average:"Average out of {{max}}"},questions:{count_one:"{{count}} question",count_other:"{{count}} questions",empty:"This survey has no questions yet.",responsesHint:"Responses already exist. Changes apply to future responses only; existing answers stay unchanged.",add:"Add question",addChoice:"Add answer",removeChoice:"Remove answer",choices:"Answer options",labelField:"Question text",helperField:"Helper text",helperPlaceholder:"Optional explanation for the customer",required:"Required question",primary:"Main question",save:"Save",delete:"Delete question",deleteConfirm:"Really delete this question?",moveUp:"Move up",moveDown:"Move down",newLabel:"New question",newChoice:"New answer",types:{nps_scale:"Recommendation (0â10)",csat_stars:"Star rating",ces_scale:"Effort rating",single_choice:"Single choice",multi_choice:"Multiple choice",scale:"Rating scale",text:"Short free text",long_text:"Long free text"},toasts:{saved:"Question saved",added:"Question added",deleted:"Question deleted",moved:"Order changed"},count:"{{count}} questions"}},at={selectRow:"Select row",expandRow:"Expand row",collapseRow:"Collapse row",selectAll:"Select all",moveColumn:"Move column",actions:"Actions"},nt={prev:"Previous record (â)",next:"Next record (â)"},ot={abTest:{splitHint:"50/50 split on the public website. Updated every minute.",minSessionsHint:"At least 30 sessions per variant are needed for a result."}},it={editorBlockedHint:"The inline preview is blocked in editor mode. It works normally in the published app.",openInNewTab:"Open PDF in new tab"},st={uploadFailed:"File could not be uploaded. Please try again.",deleteFailed:"File could not be deleted.",deleted:"File deleted.",downloadFailed:"Download failed.",restored:"File restored.",restoreFailed:"Restore failed.",purged:"File permanently deleted.",movedToTrash:"Moved to trash.",moveToTrash:"Move to trash",restore:"Restore",purge:"Delete permanently",showAll:"Show all {{count}}",categories:{image:"Image",pdf:"PDF",word:"Word",excel:"Spreadsheet",powerpoint:"Presentation",archive:"Archive",video:"Video",audio:"Audio",text:"Text",other:"Other"},dialog:{title:"Documents",searchPlaceholder:"Searchâ¦",tabActive:"Active",tabTrash:"Tras
42h",colName:"Name",colCategory:"Type",colSize:"Size",colUploadedAt:"Uploaded at",colUploadedBy:"Uploaded by",colActions:"Actions"},upload:{title:"Upload documents",helper:"Please provide a meaningful name in German and English for each file.",nameDeLabel:"Name (German)",nameEnLabel:"Name (English)",nameDePlaceholder:"e.g. Angebot ACME Q2 2026",nameEnPlaceholder:"e.g. Quote ACME Q2 2026",submit:"Upload {{count}} file(s)",successCount:"{{count}} file(s) uploaded.",autoTranslatedHint:"Auto-translated from English â you can edit manually anytime.",autoTranslatedHintEn:"Auto-translated from German â you can edit manually anytime."},empty:{active:"No documents yet.",trash:"Trash is empty."},trash:{confirmTitle:"Delete file permanently?",confirmBody:"This action cannot be undone.",confirmPurge:"Delete permanently"}},rt={title:"Agreed products & prices",description:"Catalog products that are agreed for this customer at fixed prices.",assign:"Assign product",pickerHint:"Pick a product from the catalog",confirmAssign:"Assign",empty:"No products agreed for this customer yet.",unit:"Unit",noPrice:"No price",editPrice:"Edit price",unassign:"Remove assignment"},lt={total:"Total",customers:"Customers",suppliers:"Suppliers",logistics:"Logistics",partners:"Partners",openTasks:"Open",dueToday:"Due today",overdue:"Overdue",completed:"Completed",openTickets:"Open",highPriority:"High & urgent",inProgress:"In progress",closedTickets:"Closed",todayMeetings:"Today",thisWeek:"This week",upcoming:"Upcoming",subRecords:"{{count}} records",subOfTotal:"of {{total}}"},ct={package:"Package",packagePlaceholder:"Select packageâ¦",productBrief:"Product brief",productBriefPlaceholder:"What needs to be sourced? (product type, material, target quantity)",product:"Product",productPlaceholder:"Search productâ¦",quantity:"Quantity",newCompany:"Add new company",newContact:"Add new contact",newCompanySubtitle:"Enter the domain â the rest fills in automatically",newContactSubtitle:"Enter a name â email and phone optional",assignee:"Assignee",assigneePlaceholder:"Select employeeâ¦",pipeline:"Pipeline",pipelinePlaceholder:"Select pipelineâ¦",ai:{title:"AI quick-fill",hint:"Briefly describe the deal â the AI suggests title, brief, company and contact.",placeholder:"e.g. Sourcing 500 stainless-steel bottles for Acme, contact Anna Schmidt",replyPlaceholder:"Type your replyâ¦",thinking:"Thinkingâ¦",send:"Send",doneMessage:"Filled {{count}} fields â please review.",filledCount:"{{count}} fields filled",stillMissing:"Still open: {{fields}}. Can you add that?",lowConfidence:"I'm not sure yet â could you add more detail?",maxTurns:"I won't keep asking â please review the fields directly.",rateLimit:"Too many requests â please wait a moment.",creditsExhausted:"Credits exhausted â please top up in the workspace.",error:"The assistant couldn't respond. Please retry.",askFallback:"Could you describe it a bit more precisely?",errorWithDetail:"AI Error: {{detail}}"},addProduct:"Add product",unitPrice:"Unit price (â¬)",lineTotal:"Line total",removeProduct:"Remove product"},dt={label:"Source",detail:"Detail",createdAt:"Created at",createdBy:"Created by",mitarbeiter:"Employee",online_termin:"Online booking",webformular:"Web form",whatsapp:"WhatsApp lead",import_csv:"CSV import",partner:"Partner programme",api:"API",system:"System",unbekannt:"Unknown"},pt={roles:{title:"Roles of the AI assistant",description:"Shifu works in two separate roles. Each role has its own task and its own speed profile.",orchestratorPurpose:"Conversation, intent detection and control of all tools in the staff portal.",orchestratorProfile:"Response time 600â1,200 ms · highest logical precision",formPurpose:"Fast capture: pre-fills input forms, document line items and tables.",formProfile:"Response time 200â450 ms · markedly cheaper per request"},title:"AI Quality",subtitle:"Feedback analytics, Shifu prompt versions, and correction library.",tab:{kpi:"Analytics",feedback:"Feedback",gaps:"Unanswered",assistant:"FAB Assistant",sources:"Sources",quality:"Quality",cost:"Cost & Speed",versions:"Prompt versions",corrections:"Corrections",alerts:"Alerts",telemetry:"Live operation"},kpi:{empty:"No feedback in the past 7 days.",total:"{{n}} total"},versions:{empty:"No prompt versions yet. The mentor cron creates them automatically once there are 10+ feedback entries per week.",active:"Active",inactive:"Inactive",view:"View",activate:"Activate this version",activated:"Version activated",col:{domain:"Domain",mode:"Mode",version:"Version",source:"Source",created:"Created",status:"Status",actions:"Actions"}}
42,corrections:{search:"Search in correction / output / mode",allDomains:"All domains",empty:"No corrections found.",correctionLabel:"Correction",outputLabel:"Original output"},assistant:{col:{day:"Day",msgs:"Responses",pct:"ð-Rate"},empty:"No thumbs-up ratings yet in the FAB Assistant."},telemetry:{loading:"Loading â¦",intro:"Only measured signals from real usage in the last 30 days â no grading by a second model.",lastDays:"Last {{n}} days",cardAnswers:"Shifu answers",cardToolOk:"Successful tool calls",ofCalls:"{{a}} of {{b}} failed",cardRejected:"Rejected approvals",ofDecided:"{{a}} of {{b}} decisions",cardNegative:"Negative ratings",ofRated:"{{a}} of {{b}} ratings",failedTitle:"Failed tool calls",failedEmpty:"No failed tool calls.",rejectedTitle:"Rejected approvals",rejectedEmpty:"No rejected approvals.",negativeTitle:"Negative feedback and user corrections",negativeEmpty:"No negative feedback.",question:"Question:",answer:"Answer:",followUp:"Next user message:"}},ut={productAttributes:{kicker:"Settings",title:"Product attributes",description:"Define axes for product variants (color, size, material, packaging) and their values.",addAttribute:"Create attribute",loading:"Loading â¦",empty:"No attributes yet. Start with âColorâ or âSizeâ.",confirmDeleteAttr:"Really delete attribute â{{label}}â? All variants will lose this axis.",confirmDeleteValue:"Delete value â{{label}}â?",editAttribute:"Edit attribute",newAttribute:"New attribute",editValue:"Edit value",newValue:"New value",fieldCode:"Internal key (technical)",fieldCodeHint:"Used internally only, not shown in the UI.",codeTooltip:"Internal key: {{code}}",valueTooltip:"Internal key: {{code}} â click to edit",fieldType:"Type",fieldLabelDe:"Label (DE)",fieldLabelEn:"Label (EN)",fieldLabelZh:"Label (ZH)",fieldUnit:"Unit (optional)",fieldSort:"Order",fieldColor:"Color (hex, optional)",typeSelect:"Select",typeText:"Free text",typeNumber:"Number",noValues:"No values defined yet.",freeInputHint:"Values are entered directly on the variant ({{kind}}).",addValueShort:"Value",editTooltip:"Edit"},normRules:{kicker:"Settings",title:"Supplier name normalization",description:"Rules for unifying supplier names used by OCR matching and alias learning. Changes take effect immediately.",addRule:"Create rule",livePreviewTitle:"Live preview",livePreviewDesc:"Type a raw name â see immediately what the current rules turn it into.",inputLabel:"Input",normalizedLabel:"Normalized",loading:"Loading rules â¦",kindMulti:"Multi-word suffix",kindSingle:"Single-word suffix",kindReplace:"Free replacement (regex)",descMulti:"Multiple words removed as a company suffix (e.g. âco ltdâ).",descSingle:"Single word removed as a company suffix (e.g. âgmbhâ).",descReplace:"Arbitrary regex replaced by the replacement string (use with caution).",colSort:"Sort",colPattern:"Pattern",colReplacement:"Replacement",colActive:"Active",colNote:"Note",colActions:"Actions",empty:"No rules in this category yet.",spaceReplacement:"(space)",confirmDelete:"Really delete rule â{{pattern}}â?",editRule:"Edit rule",newRule:"New rule",fieldType:"Type",fieldPattern:"Pattern",fieldReplacement:"Replacement",fieldSort:"Sort order",fieldNote:"Note (internal)",fieldActive:"Active",patternPlaceholderMulti:"e.g. co ltd",patternPlaceholderSingle:"e.g. gmbh",patternPlaceholderReplace:"e.g. \\bdivision\\b",replacementPlaceholder:"Default: one space",notePlaceholder:"Optional",patternHint:"Suffix types are automatically word-bound (\\m ⦠\\M). âFree replacementâ allows anything."}},mt={common:{loading:"Loading â¦",error:"Error"},page:{title:"Assistant â quality & knowledge gaps",description:"Close gaps, review feedback, monitor grounding rate, control source status.",tabGaps:"Knowledge gaps",tabFeedback:"Feedback",tabQuality:"Quality",tabSources:"Source status",tabAlerts:"Alert configuration"},unknowns:{filterOpen:"Open",filterInProgress:"In progress",filterAnswered:"Answered",filterWontFix:"Won't fix",filterAll:"All",searchPlaceholder:"Search question â¦",countOne:"gap",countMany:"gaps",empty:"No knowledge gaps in this filter.",captureAnswer:"Capture answer",discard:"Discard",statusUpdated:"Status updated",noSelection:"No gap selected",titleAndAnswerRequired:"Title and answer required",answerCaptured:"Answer captured",answerCapturedDesc:"Knowledge article created and gap closed.",dialogTitle:"Capture answer",fieldTitle:"Knowledge article title",fieldBody:"Answer (Mark
42down allowed)",bodyPlaceholder:"Enter the binding answer here. It will be published as a knowledge article and indexed by the assistant immediately.",publish:"Publish"},feedback:{empty:"No feedback yet.",helpful:"Helpful",notHelpful:"Not helpful",question:"Question:",answer:"Answer:",reason:"Reason:"},sources:{empty:"No indexed sources yet.",errors:"{{count}} errors",lastLabel:"last:",never:"never"},quality:{cardAnswers7d:"Answers (7 days)",cardGrounded:"Grounded rate",cardWithSources:"With sources",cardLatencyP50:"Latency p50",cardTokens:"Total tokens"},watchdog:{statusLoading:"Watchdog status loading â¦",title:"Knowledge watchdog",chunksChecked:"{{count}} chunks checked",requeued:"{{count}} requeued",orphanedRemoved:"{{count}} orphans removed",lastLabel:"last:",never:"never"},alerts:{sectionTitle:"Threshold alert",active:"Alert active",activeHint:"If disabled, the 15-minute check is skipped.",threshold:"Threshold (gaps)",thresholdHint:"Fires from this number of open knowledge gaps.",windowHours:"Window (hours)",windowHoursHint:"Look-back window for counting gaps (max. 168 h).",severity:"Severity",sevInfo:"Info",sevWarning:"Warning",sevCritical:"Critical",minPause:"Min. pause (minutes)",minPauseHint:"Prevents notification spam between two alarms.",inapp:"In-app notification",inappHint:"Selected admins receive an entry in the bell.",recipients:"Recipients (admins)",noRecipients:"No recipients selected yet.",addAdmin:"Add admin â¦",runNow:"Run check now",cronInfo:"Cron: every 15 minutes · last saved {{date}}",configSaved:"Configuration saved",alarmFired:"Alarm triggered",checkDone:"Check executed",openGaps:"Open gaps: {{count}}{{suffix}}",alarmActive:" · alarm active"},cost:{emptyRecent:"No agent runs in the last 30 days.",card30dCost:"Cost 30 days",sumAllRuns:"Sum of all agent runs",latencyToday:"Latency today",latencyTodayDesc:"p95: {{p95}} · {{runs}} runs",activeAgentsToday:"Active agents today",atLeastOneRun:"with at least one run",dailyCost14d:"Cost per day (last 14 days)",topAgents:"Top 10 agents today (by cost)",noRunsToday:"No runs today yet.",colAgent:"Agent",colRuns:"Runs",colCost:"Cost",colP95:"p95"}},gt={page:{title:"Stage action recipes",description:"Define which tasks or reminders are automatically created when a deal reaches a specific pipeline stage.",newRecipe:"New recipe",allRecipes:"All recipes ({{count}})",empty:"No recipes yet. Start with âNew recipeâ at the top right.",auto:"Auto",aria:{active:"Active",edit:"Edit",delete:"Delete"},confirmDelete:'Really delete recipe "{{name}}"?',actionTask:"Task",actionReminder:"Reminder",actionNotifyOwner:"Owner note",actionNotifyManager:"Team lead note",unknown:"â"},dialog:{editTitle:"Edit recipe",newTitle:"New recipe",name:"Name",namePlaceholder:"e.g. follow-up after quote sent",stage:"Pipeline stage (trigger)",choosePhase:"Choose stage",actionKind:"Action type",delayDays:"Delay (days)",recipient:"Recipient",taskTitle:"Task / reminder title",taskTitlePlaceholder:"Empty = use recipe name",description:"Description (optional)",autoExecute:"Execute automatically",autoExecuteDesc:"Create directly without approval.",active:"Active",activeDesc:"Inactive recipes are ignored.",saving:"Savingâ¦",kind:{create_task:"Create task",create_reminder:"Create reminder",notify_owner:"Notify owner",notify_manager:"Notify team lead"},recipientOpt:{owner:"Deal owner",manager:"Team lead"}}},ht={assistant:{unknownCard:{title:"Knowledge gap reported",description:"I couldn't answer this question from the system. It has been reported to the admin so the knowledge can be expanded.",saved:"Suggestion saved",suggestAnswer:"Suggest answer",dialogTitle:"Suggest answer for the admin",questionLabel:"Question:",noQuestion:"(no question detected)",placeholder:"What would be the right answer here? Where is the info?",cancel:"Cancel",submit:"Send suggestion",validation:"Please provide a short answer text.",successToast:"Thanks, the admin has been notified.",errorToast:"Suggestion could not be saved."},feedback:{helpful:"Answer helpful",notHelpful:"Answer not helpful",saving:"Saving..."},sources:{asOfLabel:"As of:",count:"{{count}} Sources",fetchedLabel:"Fetched:"},trail:{collapse:"Collapse",expand:"Expand",title:"Assistant History",personalBadge:"Personal"}},knowledge:{kind:{article:"Article",sop:"SOP",briefing:"Briefing",faq:"FAQ"},article:{saved:"Saved",embedFailed:"Embedding failed",embedSuccess:"Embeddings updated",deleteConfirm:"Really delete this entry?",noContent:"_No content_",rebuildEmbeddings:"Rebuild embeddings"},page:{search:"Search â¦",allCategories:"All categories",newEntry:"New entry",empty:"No {{label}}
42 yet. Create the first entry.",subtitle:"Central team knowledge with semantic search and AI agent for instant answers."}},commerce:{exportDocs:{fileUnavailable:"File not available",title:"Export Documents China",subtitle:"Commercial invoice, packing list, customs declaration and declaration elements â as PDF and Excel.",newDoc:"New document",empty:"No export documents created yet.",createdAt:"Created {{date}} · {{count}} items",regenerate:"Regenerate",deleteConfirm:"Delete document?",dialogTitle:"Create export document",docType:"Document type",template:"Template",templatePlaceholder:"Choose template",docNumber:"Document number (optional)",docNumberPlaceholder:"e.g. INV-2026-001",headerFields:"Header data",positions:"Items ({{count}})",addRow:"Row"}},suppliers:{domainDiscovery:{trigger:"Find domains via AI",loadError:"Suppliers could not be loaded",dialogTitle:"Discover supplier domains automatically",dialogDescription:"AI-powered web search (Firecrawl + Lovable AI) for suppliers without a domain. Only hits with high or medium confidence are accepted â marketplaces (Alibaba, 1688 etc.) are filtered.",loading:"Loading suppliersâ¦",colCompany:"Company",colStatus:"Status",colDomain:"Domain",colReason:"Reason",foundCount:"<0>{{count}}</0> suppliers without a domain found.",duration:"Processing takes about {{seconds}} seconds (1 web search per supplier).",close:"Close",cancel:"Cancel",start:"Start search",status:{updated:"Updated",low_confidence:"Uncertain",blacklisted:"Marketplace",no_result:"No match",error:"Error",skipped:"Skipped"}}},attachments:{lightbox:{close:"Close",prev:"Previous image",next:"Next image"}},branding:{abTest:{title:"A/B test: brand color",variantOrange:"Orange CTA",variantBlue:"Blue CTA",winner:"Winner: {{name}}",notSignificant:"Not significant yet",sessions:"Sessions",funnelViews:"Funnel views",slotSelections:"Slot selections",bookings:"Bookings",totalConversion:"Total conversion",compare:"Blue vs. Orange:",bookingRate:"booking rate",noActivity:"No funnel activity captured for these variants yet â new visitors at /erstgespraech will now be tracked with their brand variant."}},inline:{clickToEdit:"Click to edit"}},yt={haengende:{title:"Stalled deals",noneOver:"No deals over SLA. Clean pipeline.",summary:"{{count}} deal(s) over SLA across {{owners}} owners.",empty:"No overdue deals.",noOwner:"No owner",overdue:"{{count}} overdue",overdueDays_one:"+{{count}} day over SLA",overdueDays_other:"+{{count}} days over SLA",ping:"Ping",open:"Open",noOwnerToast:"No owner assigned.",pingSuccess:"Ping sent.",pingError:"Error sending ping.",pingMessage:'Deal "{{title}}" has been stalled over SLA for {{days}} day(s) in stage "{{stage}}".',overdueDays:"Overdue by {{days}} days"},stageActions:{title:"Open stage actions",none:"No open stage actions.",summary:"{{count}} open action(s) across {{owners}} owners.",tabsMine:"My deals",tabsAll:"All",emptyView:"No open stage actions in this view.",noOwner:"No owner",open:"{{count}} open",fallbackDeal:"Deal",overdue:"Overdue",due:"Due: {{date}}",created:"Created: {{date}}",reason:"Reason: {{reason}}",unblock:"Unblock",unblockToast:"Unblocked",approve:"Approve",approveToast:"Approved",execute:"Execute",executeToast:"Executed",reject:"Discard",rejectToast:"Discarded",openDeal:"Open deal",errorFallback:"Error",status:{pending:"Open",approved:"Approved",executed:"Done",rejected:"Discarded",failed:"Failed",blocked:"Blocked"},kind:{create_task:"Create task",create_reminder:"Reminder",notify_owner:"Notify owner",notify_manager:"Notify manager",send_email:"Send email"}}},vt={discoveryToast:{searching:"Searching domains ({{done}}/{{total}})",summary:"{{updated}} updated · {{low}} unclear · {{none}} no match",summaryWithErrors:"{{updated}} updated · {{low}} unclear · {{none}} no match · {{err}} errors",failed:"Domain discovery failed"}},ft={title:"{{count}} open knowledge gaps in the assistant",ariaLabel:"Assistant knowledge gaps"},bt={saveError:"Rating could not be saved.",notReady:"Feedback not ready yet"},kt={descriptions:{"workspace.nav.today":"Today's tasks, meetings and reminders at a glance.","workspace.nav.overview":"Personal workspace with cockpit view.","workspace.nav.timesheet":"Track, review and export working time.","workspace.nav.leaves":"Request and approve leaves and absences.","workspace.nav.teamCalendar":"Shared calendar with all team events.","nav.revops.cockpit":"Pipeline, revenue and forecast in one cockpit.","nav.revops.trends":"Long-term revenue and activity trends.","nav.reports.goals":"Define and track team and individual goals.","nav.wl.cockpit":"Win/loss analysis of closed deals.","nav.wl.insights":"AI-driven patterns from won and lost deals.","nav.reports.dashboards":"Custom dashboards with KPIs from all hubs.","nav.reports.reports":"Detailed reports and exports for finance & management.","nav.crm.contacts":"All contacts with history, notes and properties.","nav.crm.companies":"Company records with contacts, deals and tickets.","nav.crm.deals":"Pipeline view of all open and closed deals.","nav.crm.tickets":"Support tickets by status, priority and owner.","nav.crm.inbox":"Unified inbox for emails, calls and chats.","nav.crm.tasks":"Personal and team tasks with due dates.","nav.crm.meetings":"Planned and completed meetings with notes.","nav.crm.meetingDelivery":"Check delivery status of meeting invites.","nav.crm.brief":"Daily AI briefing with priorities and risks.","nav.crm.service.knowledgeBase":"Internal knowledge base for staff and customers.","nav.crm.service.feedback":"Customer feedback, NPS and reviews.","nav.crm.conflicts":"Resolve duplicate records and data conflicts.","nav.sales.workspace":"Personal sales workspace with next actions.","nav.sales.pipeline":"Deals by stage, forecast and bottlenecks.","nav.sales.haengende":"Deals stuck too long in a stage.","nav.sales.stageActions":"Open mandatory actions per pipeline stage.","nav.sales.leads":"New leads from marketing, web and AI research.","nav.sales.sequences":"Automated email and call sequences.","nav.sales.forecast":"Revenue forecast by quarter and rep.","nav.sales.forecastCockpit":"Live cockpit for forecast accuracy and commit.","nav.sales.coaching":"AI coaching based on calls and emails.","nav.wl.outcomes":"Maintain win/loss reasons per deal.","nav.cs.cockpit":"Customer success cockpit with health scores.","nav.cs.customers":"Existing customers with usage, NPS and renewal.","nav.cs.renewals":"Upcoming renewals and upsells.","nav.commerce.overview":"Sales overview with revenue, margin and status.","nav.commerce.products":"Product catalog with variants and stock.","nav.commerce.quotes":"Create, send and track quotes.","nav.commerce.invoices":"Create, send and dun invoices.","nav.commerce.payments":"Received and outstanding payments.","nav.commerce.paymentLinks":"Generate payment links via Stripe & PayPal.","nav.commerce.creditNotes":"Issue and book credit notes.","nav.commerce.contracts":"Contracts with terms, clauses and reminders.","nav.commerce.supplierInvoices":"Capture and approve supplier invoices.","nav.commerce.dunning":"Dunning stages, open items and collection.","nav.commerce.subscriptions":"Recurring subscriptions and renewals.","nav.commerce.bankReconciliation":"Reconcile bank transactions with invoices.","nav.commerce.templates":"Templates for quotes, invoices and contracts.","nav.operations.cockpit":"Operational cockpit for procurement and quality.","nav.operations.suppliers":"Supplier master with rating and certificates.","nav.operations.audits":"Plan, document and approve factory audits.","nav.operations.qc":"Quality checks, reports and complaints.","nav.operations.logistics":"Shipments, containers and delivery status.","nav.operations.documents":"Central storage for operations documents.","nav.operations.reports":"Operations reports on lead times and quality.","nav.operations.fx":"FX overview EUR/USD/CNY.","nav.operations.zoll":"Customs tariffs, HS codes and import duties.","nav.operations.bestellungen":"Manage purchase orders with suppliers.","nav.marketing.studio":"Marketing studio with campaign overview.","nav.marketing.content":"AI-assisted content creation for text, image, video.","nav.marketing.calendar":"Editorial and campaign calendar.","nav.marketing.videos":"Video archive with edit, upload and tracking status.","nav.marketing.websites":"Overview of all websites and landing pages.","nav.marketing.email":"Email marketing, newsletters and automations.","nav.marketing.social":"Social accounts, posts and analytics.","nav.marketing.ads":"Ads on Google, Meta, LinkedIn, TikTok.","nav.marketing.events":"Trade fairs, webinars and events.","nav.marketing.seo":"SEO cockpit with rankings, backlinks and gaps.","nav.marketing.aeo":"Visibility in AI answers and answer engines.","nav.marketing.leads":"Marketing leads before handover to sales.","nav.marketing.intent":"AI detection of purchase intent.","nav.marketing.whatsapp":"WhatsApp inbox and conversion tracking.","nav.marketing.leadBriefings":"AI briefings on incoming leads.","nav.marketing.insights":"Marketing insights across all channels.","nav.marketing.competitorBacklinks":"Analyze competitor backlinks.","nav.mkt.cockpit":"Marketing cockpit with ROI and CAC.","nav.mkt.attribution":"Attribution across all touchpoints.","nav.mkt.touchpoints":"Customer journey with all touchpoints.","nav.mkt.costs":"Marketing spend per channel and campaign.","nav.marketing.bookingFunnel":"Funnel of first-call bookings.","nav.settings.profile":"Personal data, avatar and display language.","nav.settings.notifications":"Control notifications per channel and topic.","nav.settings.calendar":"Connect Outlook and Google calendars.","nav.settings.password":"Change password and enable two-factor.","nav.settings.platformUsers":"Invite users, assign roles and disable accounts.","nav.settings.teams":"Create teams and assign members.","nav.settings.permissions":"Granular permissions per role and area.","nav.settings.agents":"Overview and usage of the assistant.","nav.settings.strategyAgent":"Strategy agent: quarterly and annual goals.","nav.settings.chiefAgent":"Chief agent: router for all other agents.","nav.settings.improvements":"AI improvement suggestions at a glance.","nav.settings.promptEditor":"Edit agent prompts centrally.","nav.settings.aiQuality":"Quality measurement of all AI answers.","nav.settings.branding":"Logo, colors and domain for emails and PDFs.","nav.settings.companyData":"Company data, VAT ID and bank account.","nav.settings.bookingHosts":"Hosts and availability for online booking.","nav.settings.emailDeliverability":"Check SPF, DKIM and DMARC for sending domains.","nav.settings.productAttributes":"Maintain attributes for products and variants.","nav.settings.marginTiers":"Margin tiers, pricing rules, live calculator and audit log.","nav.settings.supplierNormRules":"Rules for normalizing supplier data.","nav.wl.settings":"Master data for win/loss analyses.","nav.settings.performance.teamPuls":"Live team pulse: workload and mood.","nav.settings.performance.activity":"Activity analysis of all employees.","nav.settings.performance.absences":"Absence rates and trends.","nav.settings.performance.outputKpis":"Output KPIs per role and team.","nav.settings.performance.anomalies":"Anomalies in employee behavior.","nav.settings.performance.systemActivity":"System activity by module and hour.","nav.settings.integrations":"Connected third-party systems and APIs.","nav.settings.apiKeys":"API keys for internal and external systems.","nav.data.overview":"Data quality and automations at a glance.","nav.data.workflows":"Visual workflows for data and CRM triggers.","nav.data.dataAgent":"AI agent for data cleaning and enrichment.","nav.data.integrations":"Integrations for data import and export.","nav.data.dataCare":"Data quality, duplicates and care tasks.","nav.data.management":"Data management: import, export and backups.","nav.data.reminderPerformance":"Performance of reminder dispatch.","nav.data.automation":"Automations beyond classic workflows.","nav.settings.emergencie
42s":"Emergency switches and kill switches.","nav.settings.system.health":"System health: DB, edge functions, storage.","nav.settings.system.status":"Service status and uptime.","nav.settings.system.rum":"Real-user monitoring of frontend performance.","nav.settings.system.mfa":"Compliance overview for two-factor requirement.","nav.settings.system.performance":"Database performance and slow queries.","nav.settings.system.auditLog":"Audit log of all security-relevant actions.","nav.settings.system.rls":"RLS self-test for row-level security.","nav.settings.system.log404":"Log of all 404 requests.","nav.settings.system.pipelineAccess":"Pipeline access rights per team.","nav.settings.system.opsTasksMigration":"Migration of legacy operations tasks.","nav.settings.system.migrationErrorCodes":"Error codes from past migrations.","nav.marketing.conversionFunnel":"Clicks from articles to first call, services, calculators and case files."},groups:{konto:"Account",teamZugriff:"Team & Access",kiAgenten:"AI Agents",workspace:"Workspace",performance:"Performance",datenIntegrationen:"Data & Integrations",datenAutomation:"Data & Automation",system:"System"},hubs:{crm:{title:"CRM",subtitle:"Contacts, companies, deals, tickets and support in one place."},sales:{title:"Sales",subtitle:"Pipeline, forecast, acquisition and customer success."},marketing:{title:"Marketing",subtitle:"Campaigns, content, channels and attribution."},operations:{title:"Operations",subtitle:"Projects, sales, billing, procurement and quality."},berichte:{title:"Reports",subtitle:"Cockpits, dashboards and detailed reports."},workspace:{title:"My Workspace",subtitle:"Today's tasks, timesheet, leaves and team calendar."},kunden:{title:"Customers & Sales",subtitle:"Contacts, inquiries, package sales and customer care."},sourcing:{title:"Sourcing & Operations",subtitle:"Fulfilment: factories, samples, quality, orders and shipping."},analyse:{title:"Analytics & Data",subtitle:"KPIs, reports, data quality and automations."}},search:"Search entryâ¦",noResults:"No matching entries found.",count:"{{count}} entries available"},wt={ai:{title:"AI quick fill",thinking:"Thinkingâ¦",send:"Send",replyPlaceholder:"Type a replyâ¦",doneMessage:"Applied {{count}} fields â please review.",filledCount:"{{count}} fields filled",stillMissing:"Still open: {{fields}}. Can you add that?",lowConfidence:"Not quite sure yet â care to add more detail?",maxTurns:"I'll stop asking now â please check the fields directly.",rateLimit:"Too many requests â please wait a moment.",creditsExhausted:"Credits exhausted â top up in the workspace.",error:"The assistant could not respond. Please try again.",askFallback:"Could you describe that a bit more?",hint:"Describe the contact briefly â the AI will suggest name, phone, company and role.",placeholder:"e.g. Anna Schmidt, purchasing at Acme, +49 170 1234567"}},Ct={ai:{title:"AI quick fill",thinking:"Thinkingâ¦",send:"Send",replyPlaceholder:"Type a replyâ¦",doneMessage:"Applied {{count}} fields â please review.",filledCount:"{{count}} fields filled",stillMissing:"Still open: {{fields}}. Can you add that?",lowConfidence:"Not quite sure yet â care to add more detail?",maxTurns:"I'll stop asking now â please check the fields directly.",rateLimit:"Too many requests â please wait a moment.",creditsExhausted:"Credits exhausted â top up in the workspace.",error:"The assistant could not respond. Please try again.",askFallback:"Could you describe that a bit more?",hint:"Describe the company briefly â the AI will suggest name, country, industry and address.",placeholder:"e.g. Shanghai Acme Trading Co., Ltd. from Shanghai, consumer goods",addressGaps:"Not found on the website: {{fields}}.",sourceFailed:"(The website could not be read.)",addressField:{street:"Street",zip:"Postal code",city:"City",province:"Province"}}},St={ai:{title:"AI quick fill",thinking:"Thinkingâ¦",send:"Send",replyPlaceholder:"Type a replyâ¦",doneMessage:"Applied {{count}} fields â please review.",filledCount:"{{count}} fields filled",stillMissing:"Still open: {{fields}}. Can you add that?",lowConfidence:"Not quite sure yet â care to add more detail?",maxTurns:"I'll stop asking now â please check the fields directly.",rateLimit:"Too many requests â please wait a moment.",creditsExhausted:"Credits exhausted â top up in the workspace.",error:"The assistant could not respond. Please try again.",askFallback:"Could you describe that a bit more?",hint:"Describe the issue briefly â the AI will suggest subject, priority, c
42ategory and links.",placeholder:"e.g. Complaint on Acme deal, 20 boxes scratched, urgent"}},At={saved:"Draft saved",savedAgo:"Draft saved · {{seconds}}s ago",filesLostOnReload:"Attachments will be lost after reload",restoredFilesMissing:"Draft restored. Please add the attachments again."},Tt={list:{title:"Consulting hours",description:"Track consulting hours per customer and turn them into an invoice.",create:"Log time",date:"Date",customer:"Customer",project:"Project",service:"Service",hours:"Hours",rate:"Hourly rate",amount:"Amount",status:"Status",billed:"Invoiced",openStatus:"Open",notBillable:"Not billable",from:"From",to:"To",onlyOpen:"Only uninvoiced",kpiOpen:"Open hours",kpiOpenCount:"Open entries",kpiMonth:"Hours this month",selectedSummary:"{{count}} entries selected",bill:"Create invoice",invoiceCreated:"Draft invoice created with {{count}} line items.",empty:"No consulting hours logged yet.",selectRow:"Select row"},form:{newTitle:"Log consulting time",editTitle:"Edit time entry",description:"Log consulting hours per customer â billable via invoice.",date:"Date",minutes:"Duration (minutes)",hourlyRate:"Hourly rate",descriptionLabel:"Service description",descriptionPlaceholder:"e.g. Consulting on supplier selection and quote comparison",billable:"Billable",amountPreview:"Amount",hoursShort:"hrs",lockedHint:"This entry has already been invoiced and can no longer be changed."},ai:{title:"AI quick capture",hint:'Describe the work, e.g. "Yesterday 2.5 hrs consulting for Viltaro on supplier selection".',placeholder:"Yesterday 2.5 hrs consulting for Viltaro â¦",replyPlaceholder:"Type your answer â¦",thinking:"Thinking â¦",send:"Send",filledCount:"{{count}} fields filled",askFallback:"Could you describe that in a bit more detail?",maxTurns:"I'll stop asking â please check the fields directly."},alert:{title:"Billing recommended (from {{hours}} hours)",line:"{{company}} has {{hours}} unbilled consulting hours",billNow:"Bill now"}},Pt={aria:"Show running jobs",oneRunning:"1 job running â¦",manyRunning:"{{count}} jobs running â¦",title:"Running jobs",hint:"These jobs keep running even when you switch sections."},Dt={addressGaps:"Not found on the website: {{fields}}.",sourceFailed:"(The website could not be read.)",addressField:{street:"Street",zip:"Postal code",city:"City",province:"Province"}},Rt={bulkAdminOnly:"Bulk deletion is only allowed for admins. Please submit a deletion request individually.",requestTitle:"Request Deletion"},Nt={badge:{admin:"Admin Only",manager:"Admin and Team Lead Only"},lock:{adminOnly:"Admin Only - Please request access.",managerOnly:"Admin and Team Lead Only - Please request access."},locked:{managerDescription:"You need Manager permissions to view this page.",managerTitle:"Admin and Team Lead Only Area"}},Et={coaching:{agent:"Agent",avgScore:"Average Score",detailTitle:"Voice Coaching Details",empty:"No voice coaching sessions found.",evaluation:"Evaluation",noSummary:"No summary available.",sessionList:"Sessions",subtitle:"Improve your communication",summary:"Summary",title:"Voice Coaching",totalSessions:"Total Sessions",totalTime:"Total Duration",transcript:"Transcript",unknownTime:"Unknown Duration",you:"You"},emptyTranscript:"No transcript available.",errorEmpty:"No speech input detected.",errorPermission:"No microphone permission. Please check your browser settings.",errorTranscribe:"Speech recognition error. Please try again."},Lt={title:"Agent usage",subtitle:"Actual usage of all agents: runs, origin, success rate, duration and cost from real runs.",kpiActive:"Active agents",kpiRuns30:"Runs (30 days)",kpiShifu:"Triggered via Shifu",kpiCost:"Cost (30 days)",kpiSuccess:"Success rate",kpiUnused:"Unused (30 days)",tabUsage:"Usage",tableTitle:"Usage per agent",agent:"Agent",total:"Total",successRate:"Success rate",avgDuration:"Avg. duration",cost30d:"Cost (30 d)",topTool:"Most used tool",lastUse:"Last used",rating:"Rating",unknownAgent:"Unassigned",toolOther:"Other tool",classUnused:"Unused",classFlagged:"Needs attention",classHeavy:"Heavily used",classUsed:"Used",searchPlaceholder:"Search agent â¦",filterAll:"All ratings",noResults:"No agents match this selection.",runs7:"Runs (7 days)",runs90:"Runs (90 days)",originTitle:"Origin of runs (30 days)",originShifu:"Via Shifu",originDirect:"Started directly",originSystem:"From forms",originCron:"Scheduled",noRuns:"No runs recorded in the last 30 days.",acceptance:"Acceptance rate",p95:"P95 duration",costPerRun:"Cost per run",errors:"Failed runs",openAgent:"Open agent",runsPeriod:"Runs",costPerio
42d:"Cost",sortHint:"Click to sort, Shift-click to add another sort level.",periodLabel:"Period",period7:"Last 7 days",period30:"Last 30 days",period90:"Last 90 days",compareLabel:"Compare with previous period",periodInfo:"Period: last {{days}} days",runsTitle:"Individual runs",runDate:"Date",runMode:"Mode",runCost:"Cost",runStatus:"Status",runError:"Error reason",noRunsInPeriod:"No runs recorded in the selected period.",statusSuccess:"Successful",statusError:"Error",statusTimeout:"Timeout",statusCancelled:"Cancelled",unknownOrigin:"Unknown origin"},It={title:"Memory",subtitle:"What the assistant remembers long term â visible, editable and deletable at any time.",back:"Back to agents",pause:"Pause memory",searchPlaceholder:"Search memory",tabFacts:"Knowledge",tabEpisodes:"Experiences",tabProcedures:"Procedures",empty:"No entries in this store yet.",sourceExplicit:"Told by me",sourceAuto:"Remembered automatically",createdAt:"Recorded",lastUsedAt:"Last used",blocked:"Blocked",edit:"Edit",delete:"Delete",toggleBlocked:"Block or release",categoryPreference:"Preference",categoryRole:"Role and responsibility",categoryFact:"Fact",categoryOther:"Other"},xt={title:"Autonomy levels",intro:"Define per capability how independently the assistant may act. Every new capability starts at level 1.",roleLabel:"Applies to",levelLabel:"Level",search:"Search capability",empty:"No capability found.",alwaysApproval:"Always needs approval",role:{all:"All roles",mitarbeiter:"Employee",teamleiter:"Team lead",admin:"Administration"},level:{1:{name:"Suggest",hint:"The assistant prepares everything, you confirm every change."},2:{name:"Draft",hint:"Drafts are created independently, changes still need confirmation."},3:{name:"Execute",hint:"The assistant runs the capability without asking and logs it."},4:{name:"Autonomous",hint:"Like execute, plus the assistant may act on its own initiative."}}},Ot={title:"Shifu suggestions",intro:"Shifu checks quotes, invoices, deals and tasks every hour and proposes the next step. Only what you approve is carried out.",pause:"Pause checks",resume:"Resume checks",pausedHint:"The check run is paused. No new suggestions are being created.",loading:"Loading suggestions â¦",empty:"Nothing to do right now.",suggestedStep:"Suggested step:",approve:"Approve",dismiss:"Dismiss",fallbackTrigger:"Notice",fallbackEntity:"Record",fallbackTool:"Next step",tabs:{open:"Open",approved:"Approved",dismissed:"Dismissed",done:"Done"},triggers:{quote_no_response:"Quote without response",invoice_overdue:"Invoice overdue",deal_stale:"Deal without activity",task_overdue:"Task overdue",shipment_milestone:"New shipment status",tracking_entered:"Tracking number entered"},entities:{quote:"Quote",invoice:"Invoice",deal:"Deal",task:"Task"}},Mt={title:"Event targets",description:"Send outgoing events to your own systems and track delivery.",tabTargets:"Targets",tabLog:"Log",targetsTitle:"Receiving systems",targetsSubtitle:"Each target receives the subscribed events signed with HMAC-SHA256.",newTarget:"New target",editTarget:"Edit target",noTargets:"No target configured yet.",fieldName:"Name",fieldUrl:"Address",fieldEvents:"Events",fieldActive:"Active",fieldSecret:"Secret",inactive:"Inactive",saved:"Target saved",deleted:"Target deleted",invalidInput:"Please provide a name and an address starting with https://.",logTitle:"Delivery log",logSubtitle:"The last 100 events with attempts, errors and delivery time.",noEvents:"No events yet.",colEvent:"Event",colStatus:"Status",colAttempts:"Attempts",colCreated:"Created",colError:"Last error",retry:"Send again",retryQueued:"Event queued for another delivery.",status:{pending:"Pending",retrying:"Retrying",delivered:"Delivered",failed:"Failed",cancelled:"Cancelled"},eventTypes:{deal:{created:"Deal created",stage_changed:"Stage changed",won:"Deal won",lost:"Deal lost"},contact:{created:"Contact created"},company:{created:"Company created"},invoice:{created:"Invoice created",paid:"Invoice paid"},task:{completed:"Task completed"}}},Ft={saveCurrent:"Save view",dialogTitle:"Save view",fieldName:"View name",shareWithTeam:"Share with the team",share:"Share",saved:"View saved",nameRequired:"Please enter a name."},_t={title:"Recent imports",empty:"No imports yet.",colFile:"File",colEntity:"Object type",colCount:"Records",colDate:"Time",undo:"Undo",undone:"Undone",undoneToast:"Moved {{count}} records to the recycle bin.",entity:{crm_contacts:"Contacts",crm_companies:"Companies"}},qt={title:"Full customer data export",subtitle:"All data of one company including contacts, deals, tasks, notes, meetings, quotes and invoices in a single file.",choose:"Select company",download:"Download bundle",running:"Creating â¦",done:"Customer data bundle created.",error:"Export failed."},Bt={salutation:"Shifu is here.",salutationNamed:"Hi {{name}}.",voice:"Start voice mode",send:"Send question",placeholder:"Ask me anything â¦",greeting:{neutral:"I'm here â what do you need?",overdueFirst:"{{count}} tasks are overdue. Shall we start there?",overdueOffer:"I noticed {{count}} overdue tasks â want me to sort them by urgency?",meetingsToday:"You have {{count}}
42 meetings today.",meetingsMorning:"Good morning: {{count}} meetings are ahead of you today.",openTasks:"{{count}} open tasks are waiting for you.",eveningWrap:"Wrapping up: {{count}} tasks are still open.",openTickets:"{{count}} tickets are still open.",weekStart:"New week â shall we walk through it briefly?",weekEnd:"Friday. Want a summary of what's left from this week?",calmDay:"Nothing is burning right now. Time for the important things."},suggestions:{today:"What's on today?",overdue:"Show my overdue tasks",meetings:"Prepare my meetings for today",pipeline:"How is my pipeline doing?",draftEmail:"Draft an email",planDay:"Plan my day"}},Ht={iconAlt:"Shifu app icon",title:"Shifu as its own app",subtitle:"This page is the dedicated entry to Shifu â written and spoken dialogue only. Add it as an extra icon on your home screen.",installButton:"Install now",step1:"1. Tap the share icon in your browser.",step2:"2. Choose âAdd to Home Screenâ or âInstall appâ.",step3:"3. Confirm â Shifu appears as its own icon."},Ut={title:"Conversion funnel",subtitle:"Clicks from articles and the author profile by source, target and period.",today:"Today",lastDays:"Last {{count}} days",kpiTotal:"Total clicks",kpiFirstCall:"First call",kpiFollow:"Follow-up pages",kpiRate:"First-call share",distributionTitle:"Distribution by target",sourceTitle:"Ranking by source",recentTitle:"Latest clicks",empty:"No clicks recorded for this period yet.",colSource:"Source",colTarget:"Target",colTotal:"Total",colTime:"Time",colLabel:"Label",colPlacement:"Placement",targets:{erstgespraech:"First call",loesung:"Service",rechner:"Calculator",fallakte:"Case file",verfasser:"Author profile"}},Wt={aiTag:"AI"},Vt={cockpitTitle:"Live quiz âSourcing detectiveâ",cockpitDesc:"Stage control. Participants play along on their phones.",noSession:"No quiz session has been created for this event yet.",createSession:"Create quiz session",playersConnected:"{{count}} players connected",roundOf:"Round {{current}} of {{total}}",actionStart:"Start game",actionReveal:"Show answer",actionNext:"Next round",actionPodium:"Award ceremony",actionLobby:"Back to start screen",qrAlt:"QR code to join",lobbyHeadline:"Will you spot the tricks, or pay the bill in the end?",lobbySub:"Live investigation: 10 real cases from 15 years of sourcing on the ground.",lobbyCode:"Join code: {{code}}",answerCount:"{{count}} answers",answeredOf:"{{given}} of {{total}} players have answered",resolution:"Answer",podiumTitle:"Award ceremony",noPlayersYet:"No players have taken part yet.",pointsValue:"{{count}} points",jokersValue:"{{count}} jokers",secondsValue:"{{value}} seconds",catalogTitle:"Question catalogue â {{total}} rounds",catalogDesc:"All questions, correct answers and practical notes for preparation.",catalogOpen:"View question catalogue",catalogInsider:"Shanghai tip",fullscreenOn:"Full screen for the projector",fullscreenOff:"Exit full screen",lobbyKicker:"Fake certificates · ghost factories · 50,000 ⬠in tuition",lobbyStep1:"Grab your camera and scan the QR code",lobbyStep1Hint:"Takes 20 seconds, runs right in the browser.",lobbyStep2:"Or type this into your browser",lobbyPrizes:"1st place: Starter sourcing package (990 â¬) · 2nd place: on-site quality inspection in China (590 â¬) · 3rd place: original Shanghai chopstick set",lobbyLive:"{{count}} investigators in the room are ready"},Gt={ai:e,settings:t,sidebar:a,hubs:n,revops:o,mkt:i,cs:s,operations:r,ops:l,contactTypes:c,sales:d,marketing:p,service:u,data:m,reports:g,common:h,placeholder:y,shortcuts:v,push:f,quickFilters:b,emptyStates:k,dashboard:w,contacts:C,companies:S,deals:A,dealDetail:T,tickets:P,meetings:D,tasks:R,segments:N,employees:E,batch:L,ads:I,campaigns:x,videos:O,agents:M,calculated:F,sharing:_,attachments:q,aeo:B,audit:H,activity:U,roles:W,enums:V,notifications:G,wl:j,crm:Q,commerce:z,reminders:Y,admin:K,columnFilter:X,commandPalette:J,layout:Z,staleLead:$,selectAll:ee,email:te,inbox:ae,briefings:ne,conflicts:oe,toast:ie,hooks:se,detail:re,consent:le,seo:ce,agentsHub:de,agentRuns:pe,agentTriggers:ue,improvements:me,director:ge,strategy:he,dashboard2:ye,nextBestAction:ve,briefingAudio:fe,csModule:be,sysModule:ke,einstellungen:we,localClock:Ce,pipelineChart:Se,pipelineTrend:Ae,bulk:Te,pipeline:Pe,dealsBoard:De,crmAi:Re,dailyFocus:Ne,detailHero:Ee,meetingDelivery:Le,bookingFunnel:Ie,hostAvailability:xe,bookingHosts:Oe,meetingForm:Me,emailDeliverability:Fe,nav:_e,pagination:qe,validation:Be,auth:He,n
42otes:Ue,emergency:We,workspace:Ve,performance:Ge,assistant:je,forms:Qe,competitorBacklinks:ze,heute:Ye,traffic:Ke,voiceAnalytics:Xe,automation:Je,topbar:Ze,table:$e,industries:et,feedback:tt,dataTable:at,sheetNav:nt,branding:ot,pdfPreview:it,dealDocuments:st,companyProducts:rt,listKpi:lt,dealForm:ct,recordSource:dt,aiQuality:pt,settingsAdmin:ut,adminAi:mt,stageRecipes:gt,misc:ht,salesHub:yt,suppliers:vt,assistantGap:ft,assistantFeedback:bt,hubOverview:kt,contactForm:wt,companyForm:Ct,ticketForm:St,drafts:At,consulting:Tt,backgroundJobs:Pt,aiQuickFill:Dt,deletion:Rt,rbac:Nt,voice:Et,agentUsage:Lt,assistantMemory:It,assistantAutonomy:xt,agentsProactive:Ot,outbound:Mt,savedViews:Ft,importBatches:_t,customerExport:qt,shifuHome:Bt,shifuApp:Ht,conversionFunnel:Ut,brief:Wt,barcamp:Vt};export{U as activity,K as admin,mt as adminAi,I as ads,B as aeo,pe as agentRuns,ue as agentTriggers,Lt as agentUsage,M as agents,de as agentsHub,Ot as agentsProactive,e as ai,pt as aiQuality,Dt as aiQuickFill,je as assistant,xt as assistantAutonomy,bt as assistantFeedback,ft as assistantGap,It as assistantMemory,q as attachments,H as audit,He as auth,Je as automation,Pt as backgroundJobs,Vt as barcamp,L as batch,Ie as bookingFunnel,Oe as bookingHosts,ot as branding,Wt as brief,fe as briefingAudio,ne as briefings,Te as bulk,F as calculated,x as campaigns,X as columnFilter,J as commandPalette,z as commerce,h as common,S as companies,Ct as companyForm,rt as companyProducts,ze as competitorBacklinks,oe as conflicts,le as consent,Tt as consulting,wt as contactForm,c as contactTypes,C as contacts,Ut as conversionFunnel,Q as crm,Re as crmAi,s as cs,be as csModule,qt as customerExport,Ne as dailyFocus,w as dashboard,ye as dashboard2,m as data,at as dataTable,T as dealDetail,st as dealDocuments,ct as dealForm,A as deals,De as dealsBoard,Gt as default,Rt as deletion,re as detail,Ee as detailHero,ge as director,At as drafts,we as einstellungen,te as email,Fe as emailDeliverability,We as emergency,E as employees,k as emptyStates,V as enums,tt as feedback,Qe as forms,Ye as heute,se as hooks,xe as hostAvailability,kt as hubOverview,n as hubs,_t as importBatches,me as improvements,ae as inbox,et as industries,Z as layout,lt as listKpi,Ce as localClock,p as marketing,Le as meetingDelivery,Me as meetingForm,D as meetings,ht as misc,i as mkt,_e as nav,ve as nextBestAction,Ue as notes,G as notifications,r as operations,l as ops,Mt as outbound,qe as pagination,it as pdfPreview,Ge as performance,Pe as pipeline,Se as pipelineChart,Ae as pipelineTrend,y as placeholder,f as push,b as quickFilters,Nt as rbac,dt as recordSource,Y as reminders,g as reports,o as revops,W as roles,d as sales,yt as salesHub,Ft as savedViews,N as segments,ee as selectAll,ce as seo,u as service,t as settings,ut as settingsAdmin,_ as sharing,nt as sheetNav,Ht as shifuApp,Bt as shifuHome,v as shortcuts,a as sidebar,gt as stageRecipes,$ as staleLead,he as strategy,vt as suppliers,ke as sysModule,$e as table,R as tasks,St as ticketForm,P as tickets,ie as toast,Ze as topbar,Ke as traffic,Be as validation,O as videos,Et as voice,Xe as voiceAnalytics,j as wl,Ve as workspace};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.