{
  "_comment": "CodeCell Frontend i18n (English). Keep key structure identical to de.json.",
  "app": {
    "_comment": "App shell and topbar labels.",
    "sidebar": {
      "expand": "Expand sidebar",
      "collapse": "Collapse sidebar"
    },
    "nav": {
      "dashboard": "Dashboard",
      "start": "Home",
      "website": "Website",
      "websiteManager": "My website",
      "websiteSection": "Website",
      "contactRequests": "Contact requests",
      "applications": "Applications",
      "phoneAssistantSection": "Phone assistant",
      "phoneCalls": "Phone calls",
      "outgoingCalls": "Outgoing calls",
      "contacts": "Contacts",
      "files": "Files",
      "invoices": "Invoices",
      "myAgents": "CodeCell agents",
      "myAssistants": "My assistants",
      "newAgent": "New agent",
      "codeCellAgents": "CodeCell agents",
      "codeCellAgentsSection": "CodeCell agents",
      "vwgAgent": "VWG Protokolleur",
      "bookkeeperAgent": "CodeCell bookkeeper",
      "managementSection": "Administration",
      "createAgent": "Create new agent",
      "live": "Live",
      "setup": "Setup",
      "profile": "My profile",
      "settings": "Settings"
    },
    "topbar": {
      "homeAria": "Home",
      "menuAria": "Menu",
      "openMenuAria": "Open menu",
      "login": "Log in",
      "register": "Register",
      "profile": "Profile",
      "profileMenu": "Open profile menu",
      "billing": "Subscription & billing",
      "api": "API",
      "logout": "Log out",
      "recommend": "Recommend"
    },
    "lang": {
      "switchAria": "Select language",
      "selectAria": "Select language {{lang}}",
      "de": "German",
      "en": "English"
    },
    "billing": {
      "plan": {
        "loading": "Loading subscription…",
        "unknown": "Subscription unknown",
        "none": "No subscription",
        "lifetime": "Lifetime",
        "default": "Subscription"
      },
      "status": {
        "loading": "loading",
        "unknown": "—",
        "active": "Active",
        "inactive": "Inactive",
        "trial": "Trial",
        "pastDue": "Payment due",
        "unpaid": "Unpaid",
        "canceled": "Canceled"
      },
      "minutes": {
        "loading": "Loading minutes…",
        "unlimited": "Unlimited",
        "free": "{{count}} min free"
      }
    }
  },
  "createAgent": {
    "_comment": "Self-service wizard for creating/updating/verifying agents (ss-create-agents).",
    "pageTitle": {
      "create": "Create a new trained agent",
      "edit": "Edit agent",
      "verify": "Verify agent"
    },
    "subtitle": {
      "create": "The agent is saved as a draft. To activate it, you need a CodeCell number and a paid subscription.",
      "edit": "Update your agent without dealing with technical details.",
      "verify": "Verify forwarding number and go live immediately (optional)."
    },
    "presetSelection": {
      "kicker": "Step 1",
      "title": "Choose your trained phone agent",
      "description": "These agents are professionally pre-trained. No system prompt, no skills, no technical setup required."
    },
    "steps": {
      "basic": "Basics",
      "company": "Company",
      "communication": "Communication",
      "forwarding": "Forwarding",
      "analysis": "Analysis",
      "dataPoints": "Data points",
      "finish": "Finish",
      "knowledge": "Knowledge",
      "phoneNumber": "Phone number",
      "nextSteps": "Next steps"
    },
    "stepDescription": {
      "1": "Step 1: Choose an agent preset.",
      "2": "Name the configuration and the agent.",
      "3": "Choose company/private and enter core profile data.",
      "4": "Set language, contact person, and greeting behavior.",
      "5": "Configure forwarding to a human.",
      "6": "Configure analysis: email and data points.",
      "7": "Add specific knowledge for your agent.",
      "8": "Get a phone number, assign it directly, and continue to the setup guide.",
      "9": "Add and verify a number to put the agent live.",
      "10": "Review verification status and open the setup guides.",
      "default": "Agent setup",
      "progress": "Step {{step}} of {{total}}: {{title}}"
    },
    "cards": {
      "agentDetails": "Agent details",
      "company": "Company",
      "contactAndGreeting": "Contact & greeting",
      "languageAndForwarding": "Language & forwarding",
      "forwarding": "Forwarding",
      "dataPoints": "Data points",
      "notificationsAndName": "Notifications & name",
      "additionalKnowledge": "Additional knowledge",
      "verifyForwardingNumber": "Verify forwarding number",
      "nextSteps": "Next steps",
      "phoneNumberProvisioning": "Get phone number"
    },
    "badge": {
      "edit": "Editing",
      "selectedAgent": "Selected agent"
    },
    "preset": {
      "defaultDescription": "You can now define all configuration data for this agent.",
      "untitled": "Untitled preset",
      "select": "Select",
      "selected": "Selected"
    },
    "selectedPresetFallback": "Selected preset",
    "empty": {
      "noPublicPresetsTitle": "No public presets available",
      "tryAgainLater": "Please try again later.",
      "loadingAgentConfigTitle": "Loading agent configuration…",
      "pleaseWait": "Please wait a moment.",
      "loadingDataPointsTitle": "Loading data points…",
      "noDataPointsTitle": "No data points found",
      "canProceed": "You can continue anyway."
    },
    "form": {
      "agentNameQuestion": "What should the agent be called?",
      "agentNameDescription": "This is the name the agent uses when introducing itself on calls.",
      "nameLabel": "Name",
      "agentNoName": "Agent has no name",
      "workingForQuestion": "Should the agent work for your company or for you as a private person?",
      "workingForDescription": "The selection controls which profile fields are shown below.",
      "workingForLabel": "Company/Private",
      "workingForCompany": "Company",
      "workingForPrivate": "Private",
      "privateNotePrefix": "This agent is set to",
      "privateNoteSuffix": ". Company fields are optional and will not be used.",
      "companyQuestion": "What should the agent answer when asked who it works for?",
      "companyLabel": "Company",
      "companyStreetQuestion": "Street and house number",
      "companyStreetLabel": "Street and house number",
      "companyPostalCodeQuestion": "Postal code",
      "companyPostalCodeLabel": "Postal code",
      "companyCityQuestion": "City",
      "companyCityLabel": "City",
      "companyIndustryQuestion": "Industry",
      "companyIndustryLabel": "Industry",
      "privateFirstNameQuestion": "Contact first name",
      "privateFirstNameLabel": "First name",
      "privateLastNameQuestion": "Contact last name",
      "privateLastNameLabel": "Last name",
      "companyAddressQuestion": "What is your company address?",
      "companyAddressLabel": "Address",
      "companyScopeQuestion": "What is your company industry/activity?",
      "companyScopeLabel": "Industry / Activity",
      "contactPersonQuestion": "If the agent is asked for a human contact person: who should it name?",
      "contactPersonDescription": "For companies, an extra contact person is optional.",
      "contactPersonOptionalToggle": "Set separate contact person",
      "contactPersonLabel": "Contact person name",
      "greetingModeQuestion": "How should the agent greet callers?",
      "greetingModeFixed": "Fixed greeting",
      "greetingModeTimeBased": "Time-based greetings",
      "greetingQuestion": "How should the agent greet a new caller?",
      "greetingLabel": "Greeting",
      "greetingHint": "Example: Hello, I am the AI agent and I work for Mustermann GmbH. How can I help you?",
      "greetingRulesQuestion": "Time-based greetings",
      "greetingRule": "Rule {{index}}",
      "greetingRuleStart": "Start time",
      "greetingRuleEnd": "End time",
      "greetingRuleMessage": "Greeting text",
      "languageQuestion": "Which language should the agent speak?",
      "languageDescription": "Currently only one language per agent is supported.",
      "languageLabel": "Language",
      "forwardingQuestion": "Forward to a human?",
      "forwardingDescription": "If enabled, define target name, destination number, and forwarding condition.",
      "forwardPhoneLabel": "Phone number (+49)",
      "forwardTargetNameLabel": "Forward target name",
      "forwardConditionLabel": "Forwarding condition",
      "forwardConditionDefaultNamed": "Please forward the call if someone explicitly asks for {{name}}.",
      "forwardConditionDefaultFallback": "Please forward the call if someone explicitly asks for the forwarding target.",
      "dataPointsQuestion": "Which key information should the agent capture automatically (e.g. license plate, case ID, invoice data)?",
      "dataPointsDescription": "You receive a structured conversation analysis for the selected data points.",
      "notificationEmailQuestion": "To which email address should analyses be sent?",
      "notificationEmailDescription": "Conversation summaries and analysis results are sent to this address.",
      "emailLabel": "Email address",
      "uacNameQuestion": "How would you like to name this configuration?",
      "uacNameLabel": "Agent configuration name",
      "uacNameHint": "This is an internal system name, not the spoken phone introduction.",
      "knowledgeModeQuestion": "How should company-specific knowledge be provided?",
      "knowledgeModeDescription": "This knowledge is exclusive to your agent and used during conversations.",
      "knowledgeModeAuto": "Automatically research company knowledge (internet/website)",
      "knowledgeModeManual": "Enter manually",
      "researchQueryQuestion": "Enter keywords, company names, people, or websites",
      "researchInputLabel": "Research input",
      "researchInputPlaceholder": "e.g. Fussbodentechnik Matthias Rohde, parkett-rohde.de"
    },
    "tooltips": {
      "agentHasNoName": "The agent then only says on request that it is an AI assistant."
    },
    "knowledge": {
      "searchInProgress": "Searching the internet. This can take up to 3 minutes.",
      "markdownEditable": "Markdown (editable)",
      "markdownLabel": "Customer-specific knowledge (Markdown)",
      "charactersHint": "{{count}} characters",
      "preview": "Preview",
      "noPreviewYet": "No preview available yet.",
      "startSearchFirst": "Start the research first. As soon as results are available, you can edit and review them here.",
      "freeTextQuestion": "Customer-specific knowledge (free text)",
      "freeTextLabel": "Knowledge for the agent"
    },
    "verification": {
      "instructionsLine1a": "Please enter the",
      "instructionsLine1b": "phone number where you will set up forwarding",
      "instructionsLine1c": "to our master number.",
      "instructionsLine2a": "You can set up multiple numbers, but only",
      "instructionsLine2b": "one after another",
      "instructionsLine2c": ":",
      "instructionsLine2d": "For each additional number, please create a",
      "instructionsLine2e": "new UAC",
      "instructionsLine2f": "with the same configuration.",
      "instructionsLine3a": "This number must",
      "instructionsLine3b": "not",
      "instructionsLine3c": "already be used for another agent.",
      "assignmentModeQuestion": "How would you like to provide the forwarding number?",
      "assignExistingOption": "Assign verified number",
      "verifyNewOption": "Verify new number",
      "availableNumbersQuestion": "Which free verified number should be assigned to this agent?",
      "availableNumbersLabel": "Free verified numbers",
      "availableNumbersHint": "Each verified number can only be assigned to one agent.",
      "noAvailableNumbers": "There are currently no free verified numbers available. You can verify a new number below.",
      "lookupInProgress": "Checking forwarding number…",
      "numberAlreadyVerifiedAvailable": "This number is already verified and currently free. You can assign it directly to this agent.",
      "numberAssignedToOtherAccount": "This number is already assigned to another account and cannot be used.",
      "selectionQuestion": "Which number would you like to use?",
      "selectionLabel": "Select verified number",
      "newNumberOption": "Verify new number",
      "currentAgentOption": "this agent",
      "currentNumberVerifiedHint": "This number is already verified for this agent. No new test call is required.",
      "otherAgentNumberHint": "This number is already linked to “{{uacName}}” and cannot currently be reused for this agent.",
      "customerPhoneQuestion": "Customer phone number (E.164)",
      "customerPhoneLabel": "Phone number (e.g. +492304123456)",
      "codeLabel": "Verification code",
      "codeHint": "Please tell this code to the phone assistant. Status updates automatically every 10 seconds.",
      "statusLabel": "Status:",
      "status": {
        "verified": "Verified.",
        "failed": "Failed (please test again).",
        "pending": "Waiting for confirmation...",
        "unverified": "Not verified."
      }
    },
    "validation": {
      "nameRequired": "Please enter a name.",
      "languageRequired": "Please select a language.",
      "phoneRequired": "Please enter a phone number.",
      "forwardConditionRequired": "Please enter a condition.",
      "emailRequired": "Please enter an email address.",
      "emailInvalid": "Please enter a valid email address.",
      "uacNameRequired": "Please enter a configuration name.",
      "e164Required": "Please use E.164 format (e.g. +49...)."
    },
    "common": {
      "yes": "Yes",
      "no": "No"
    },
    "actions": {
      "back": "Back",
      "next": "Next",
      "save": "Save",
      "addGreetingRule": "Add time rule",
      "copy": "Copy",
      "startAgent": "Start agent",
      "saveDraft": "Save as draft",
      "create": "Create",
      "useVerifiedNumber": "Use verified number",
      "assignForwardingNumber": "Assign to this agent",
      "verifyOnly": "Verify",
      "verifyAndAssign": "Verify and assign",
      "verifyNow": "Verify now",
      "verifyLater": "Verify later",
      "test": "Test",
      "backToMyAgents": "Back to my agents",
      "saveChanges": "Save changes",
      "backToVerification": "Back to verification",
      "openSetupGuides": "Open setup guides"
    },
    "finalCreateNote": "The agent is saved without verification as a draft. You can only activate it later with an active payment and an assigned CodeCell number.",
    "loading": {
      "loadAgent": "Loading agent…",
      "loadPresets": "Loading agent presets…",
      "saveDraft": "Saving draft…",
      "createAgent": "Creating agent…",
      "saveForwarding": "Saving forwarding number…",
      "assignForwarding": "Assigning verified forwarding number…",
      "prepareTest": "Preparing test…",
      "startTestCall": "Starting test call…",
      "loadAgentConfig": "Loading agent configuration…",
      "updateAgentConfig": "Updating agent configuration…",
      "loadPhoneStep": "Loading phone number options…",
      "assignPhoneNumber": "Assigning phone number…",
      "receivePhoneNumber": "Provisioning phone number…",
      "upgradeSubscription": "Preparing subscription upgrade…"
    },
    "success": {
      "draftSaved": "Draft saved.",
      "created": "Agent saved. It is initially inactive. To activate it, you need a paid subscription and a CodeCell number.",
      "forwardingSaved": "Forwarding number saved.",
      "forwardingAssigned": "Verified forwarding number assigned to this agent.",
      "numberAlreadyVerified": "This number is already verified. No new test call was started.",
      "testCallStarted": "Test call started. Please tell the code to the phone assistant.",
      "testCallStartedStandalone": "Test call started. After successful verification, the number will remain free in your verified number pool.",
      "forwardingSavedVerifyLater": "Forwarding number saved. You can verify later.",
      "numberVerified": "Your number was verified successfully.",
      "updated": "Agent updated successfully.",
      "knowledgeCopied": "Knowledge copied to clipboard.",
      "phoneNumberAssigned": "Phone number assigned to the agent.",
      "phoneNumberReceived": "Phone number provisioned and assigned to the agent.",
      "subscriptionUpgradeStarted": "Upgrade started. Please complete the process."
    },
    "errors": {
      "greetingMessageRequired": "Please enter a greeting message.",
      "agentNotFound": "Agent not found.",
      "agentLoadFailed": "Could not load agent.",
      "presetsLoadFailed": "Could not load agent presets.",
      "presetMissing": "Could not determine preset.",
      "selectPresetFirst": "Please select a preset first.",
      "createFailed": "Could not create agent.",
      "missingUacKeyAfterCreate": "Agent was saved, but key is missing.",
      "uacKeyMissingRecreate": "UAC key missing. Please recreate the agent.",
      "saveForwardingFailed": "Could not save forwarding number.",
      "assignForwardingFailed": "Could not assign verified forwarding number.",
      "saveValidForwardingFirst": "Please save a valid forwarding number first.",
      "forwardingNumberAssignedToOtherAgent": "This verified number is already linked to another agent and cannot currently be reused.",
      "selectAvailableForwardingNumber": "Please select a free verified number.",
      "selectNewNumberForVerification": "Please select “Verify new number” if you want to start a new test call.",
      "startVerificationFailed": "Could not start verification.",
      "uacKeyMissing": "UAC key missing.",
      "verificationFailedRetry": "Verification failed. Please test again.",
      "noVerificationYetRetry": "No confirmation yet. Please test again.",
      "dataPointsLoadFailed": "Could not load data points.",
      "agentConfigNotFound": "Agent configuration not found.",
      "agentConfigLoadFailed": "Could not load agent configuration.",
      "updateFailed": "Could not update agent.",
      "knowledgeQueryMissing": "Please enter keywords, company names, or websites.",
      "knowledgeResearchFailed": "Research could not be completed.",
      "knowledgeResearchNoUsableResult": "Research did not return usable results.",
      "knowledgeResearchInternetFailed": "Internet research could not be completed.",
      "copyNoContent": "No content available to copy.",
      "clipboardUnavailable": "Clipboard is not available in this browser.",
      "copyFailed": "Copying to clipboard failed.",
      "postCreatePhoneStepLoadFailed": "Could not load phone number options.",
      "selectPhoneNumberFirst": "Please select a free phone number first.",
      "phoneNumberAssignFailed": "Could not assign phone number.",
      "phoneNumberReceiveFailed": "Could not provision phone number.",
      "subscriptionUpgradeFailed": "Could not start subscription upgrade."
    },
    "languages": {
      "de": "German",
      "en": "English",
      "fr": "French",
      "it": "Italian",
      "es": "Spanish",
      "nl": "Dutch",
      "pl": "Polish",
      "ro": "Romanian",
      "uk": "Ukrainian",
      "tr": "Turkish",
      "ru": "Russian",
      "ar": "Arabic"
    },
    "nextSteps": {
      "description": "Your agent is created. Review verification and readiness, then complete forwarding setup to start operating immediately.",
      "forwardingVerificationLabel": "Forwarding number verified",
      "forwardingStatus": {
        "verified": "Yes, the number is verified.",
        "pending": "Verification is still in progress.",
        "failed": "Verification failed.",
        "unverified": "Not verified yet."
      },
      "agentReadyLabel": "Agent ready",
      "agentReadyStatus": {
        "ready": "Yes, the agent is ready.",
        "notReady": "Not ready yet."
      },
      "forwardingHint": "Tip: A verified number ensures incoming forwarded calls are mapped to the correct agent instantly."
    },
    "aria": {
      "wizardProgress": "Wizard progress"
    },
    "phoneStep": {
      "headlines": {
        "assignExisting": "Assign a free phone number now",
        "receive": "Get a phone number for this agent now",
        "upgrade": "Upgrade your subscription for more numbers",
        "contactSupport": "No additional phone number quota available"
      },
      "descriptions": {
        "assignExisting": "You already have at least one free CodeCell phone number. Assign it to this agent now and continue directly to the setup guide.",
        "receive": "A new CodeCell phone number can now be provisioned for this newly created agent and assigned automatically.",
        "upgrade": "Your current quota is exhausted. Switch to {{planName}} to get additional phone numbers for more agents.",
        "startSubscription": "You need a paid subscription first to use CodeCell phone numbers. After that, a number can be assigned to this agent immediately.",
        "contactSupport": "Your current plan does not include additional phone number quota. Contact support if you need more numbers."
      },
      "actions": {
        "assignExisting": "Assign phone number",
        "receive": "Get phone number",
        "upgrade": "Upgrade to the next plan",
        "startSubscription": "Start subscription",
        "contactSupport": "Contact support",
        "finishLater": "Do this later"
      },
      "status": {
        "agentCreatedLabel": "Agent created successfully",
        "subscriptionLabel": "Current plan",
        "phoneQuotaLabel": "Phone number quota",
        "availablePhoneNumbers": "{{count}} free number available"
      },
      "labels": {
        "availablePhoneNumber": "Free phone number"
      },
      "hints": {
        "availablePhoneNumber": "Select one of your already free phone numbers."
      },
      "fallbackPlanName": "the matching plan",
      "subscriptionFallback": "No active subscription",
      "upgradeHint": "You are currently on {{currentPlan}}. With {{nextPlan}} you get additional phone number quota.",
      "contactSupportHint": "If you need more phone numbers, the quota must be extended manually."
    }
  },
  "notifications": {
    "_comment": "Default toast titles used by NotificationService.",
    "title": {
      "success": "Success",
      "info": "Info",
      "warning": "Notice",
      "error": "Error"
    }
  },
  "errors": {
    "_comment": "Generic HTTP/system errors from ErrorTranslationService.",
    "technical": "A technical error occurred.",
    "network": "Network error: please check your internet connection.",
    "unauthorized": "Not authenticated or session expired. Please log in again.",
    "forbidden": "You do not have permission for this action.",
    "notFound": "The requested resource was not found.",
    "conflict": "This action could not be completed because of a conflict.",
    "tooManyRequests": "Too many requests. Please wait and try again.",
    "server": "Server error. Please try again later.",
    "cognito": {
      "usernameExists": "An account already exists. Please complete verification.",
      "userNotFound": "No account found for this email address.",
      "notAuthorized": "Sign-in not authorized. Please check your credentials and try again.",
      "codeMismatch": "The confirmation code is invalid.",
      "codeExpired": "The confirmation code has expired. Please request a new code.",
      "limitExceeded": "Too many attempts. Please wait and try again."
    }
  },
  "common": {
    "loading": "Loading ...",
    "actions": {
      "back": "Back",
      "next": "Next",
      "save": "Save",
      "cancel": "Cancel",
      "close": "Close",
      "copy": "Copy",
      "add": "Add",
      "ok": "OK"
    }
  },
  "vwgAgent": {
    "_comment": "Frontend POC for the first VWG agent.",
    "page": {
      "kicker": "CodeCell agents · VWG",
      "title": "VWG Protokolleur",
      "subtitle": "Direct connection to the agent with chat, log view, and a prepared workflow shell."
    },
    "tabs": {
      "aria": "Switch the VWG agent view",
      "chat": "Chat",
      "log": "Log",
      "process": "Process"
    },
    "status": {
      "localPoc": "Local fallback active",
      "bridgeReady": "Direct stream active",
      "storedPerUser": "Conversation stored per user"
    },
    "chat": {
      "kicker": "Live dialog",
      "title": "Write directly to vwg-meeting-agent",
      "subtitle": "The answer streams in directly. History and logs are synced afterward.",
      "emptyTitle": "No message yet",
      "emptyText": "Start with a short greeting or a question about the VWG workflow.",
      "placeholder": "Write a message to the agent…",
      "inputLabel": "Message",
      "send": "Send",
      "sendError": "The message could not be sent.",
      "thinking": "Agent is replying …",
      "streaming": "Streaming",
      "composerHint": "The reply appears live before the final history arrives.",
      "role": {
        "user": "You",
        "assistant": "Agent",
        "system": "System"
      },
      "activityKicker": "Recent agent events",
      "activityTitle": "Current activity",
      "activityEmptyTitle": "No recent events yet",
      "activityEmptyText": "As soon as the agent writes to the log, the latest three events appear here."
    },
    "log": {
      "kicker": "Readable history",
      "title": "Agent log",
      "subtitle": "Every action is listed here as a readable entry.",
      "emptyTitle": "No log entries yet",
      "emptyText": "Once the agent does something, it will appear here.",
      "levels": {
        "info": "Info",
        "success": "Success",
        "warning": "Warning",
        "error": "Error",
        "debug": "Debug"
      }
    },
    "process": {
      "kicker": "Workflow shell",
      "title": "Process",
      "subtitle": "The future human-in-the-loop workflow will connect here.",
      "emptyTitle": "Process shell ready",
      "emptyText": "Upload, transcript, draft, approval, and finalization will be merged here later.",
      "steps": {
        "upload": {
          "title": "Store recording",
          "description": "Object and case assignment start the agent."
        },
        "draft": {
          "title": "Create draft",
          "description": "The agent extracts content and fills the protocol template."
        },
        "review": {
          "title": "Human review",
          "description": "Edits are confirmed in the portal using natural language."
        },
        "final": {
          "title": "Approve and execute",
          "description": "The final document will later trigger sending and follow-up tasks."
        }
      }
    },
    "side": {
      "identityKicker": "Context",
      "identityTitle": "Assignment",
      "agent": "Agent",
      "interface": "Interface",
      "owner": "Owner sub",
      "thread": "Thread",
      "mode": "Mode",
      "modeLocal": "Local POC",
      "modeBridge": "Direct stream",
      "nextKicker": "Next milestone",
      "nextTitle": "What comes next",
      "nextItem1": "Session token and direct runner stream",
      "nextItem2": "Process events for upload, draft, and approval",
      "nextItem3": "Human-in-the-loop for corrections and approvals"
    }
  },
  "bookkeeperAgent": {
    "_comment": "Frontend base for the CodeCell bookkeeper agent.",
    "page": {
      "kicker": "CodeCell agents · Bookkeeping",
      "title": "CodeCell Bookkeeper",
      "subtitle": "Chat directly with the bookkeeper agent and follow its actions in the log."
    },
    "tabs": {
      "aria": "Switch the CodeCell Bookkeeper view",
      "chat": "Chat",
      "log": "Log"
    },
    "status": {
      "localPoc": "Local test mode active",
      "bridgeReady": "Direct stream active",
      "storedPerUser": "Stored per user"
    },
    "chat": {
      "kicker": "Direct conversation",
      "title": "Chat with the bookkeeper",
      "emptyTitle": "No message yet",
      "emptyText": "Start with a question about invoices, receipts, or bookkeeping tasks.",
      "placeholder": "Ask the bookkeeper about an invoice or a receipt…",
      "inputLabel": "Message",
      "send": "Send",
      "sendError": "The message could not be sent.",
      "streaming": "Reply streaming",
      "composerHint": "The reply appears in the chat immediately before history and logs are fully synchronized.",
      "role": {
        "user": "You",
        "assistant": "Agent",
        "system": "System"
      },
      "activityKicker": "Recent agent events",
      "activityTitle": "Current activity",
      "activityEmptyTitle": "No recent events yet",
      "activityEmptyText": "As soon as the agent writes to the log, the latest three events appear here."
    },
    "hitl": {
      "kicker": "Human-in-the-loop",
      "title": "Open review",
      "readOnly": "Read only",
      "unknownInteractionTitle": "Unknown interaction",
      "unknownInteractionText": "No frontend widget has been registered for this interactionType yet.",
      "context": {
        "thread": "Thread",
        "connection": "Connection",
        "actor": "Actor"
      },
      "blockedText": "This preview blocks chat until you acknowledge it.",
      "continue": "Continue in chat",
      "invoicePreview": {
        "title": "Invoice preview",
        "pdfTitle": "PDF preview",
        "documentLabelFallback": "Invoice document",
        "fieldsKicker": "Extraction",
        "fieldsTitle": "Extracted data",
        "pdfBadge": "PDF",
        "noDocumentLabel": "No document available",
        "noDocumentText": "No document URL was provided for this preview.",
        "noFieldsLabel": "No fields found",
        "noFieldsText": "No extracted fields were provided for this preview yet."
      },
      "bookingPlan": {
        "planTitle": "Planned voucher",
        "transactionTitle": "Transaction match",
        "transactionFound": "Transaction found",
        "transactionFoundText": "The agent prepared exactly one matching transaction for this invoice.",
        "transactionMissing": "No transaction found",
        "transactionMissingText": "The agent did not find a matching transaction in the prepared search window.",
        "labels": {
          "invoiceNumber": "Invoice number",
          "supplierName": "Supplier",
          "invoiceDate": "Invoice date",
          "dueDate": "Due date",
          "grossAmount": "Gross amount",
          "netAmount": "Net amount",
          "taxAmount": "Tax amount",
          "taxRate": "Tax rate",
          "currency": "Currency",
          "accountDatev": "DATEV account",
          "taxRuleId": "Tax rule ID",
          "voucherDate": "Voucher date",
          "paymentDeadline": "Payment deadline",
          "deliveryDate": "Delivery date",
          "lineItemComment": "Booking text",
          "fxDeadline": "FX date",
          "fxRate": "FX rate",
          "memoryNote": "Memory rule",
          "bookingComment": "Agent comment",
          "transactionId": "Transaction ID",
          "transactionAmount": "Transaction amount",
          "transactionValueDate": "Value date",
          "transactionPayee": "Payee / payer",
          "transactionPurpose": "Payment purpose",
          "transactionEntryText": "Entry text",
          "transactionCheckAccount": "Check account ID",
          "transactionStatus": "Transaction status",
          "transactionWindow": "Search window"
        }
      },
      "registry": {
        "invoicePreview": {
          "title": "Invoice preview",
          "description": "Read-only preview of a recently analyzed invoice."
        },
        "bookingPlan": {
          "title": "Booking plan",
          "description": "Combined dry-run preview of sevDesk voucher data and transaction assignment."
        }
      }
    },
    "log": {
      "kicker": "Traceable actions",
      "title": "Bookkeeper log",
      "subtitle": "This view shows which steps the agent has executed most recently.",
      "emptyTitle": "No log entries yet",
      "emptyText": "As soon as the agent starts working, its steps will appear here.",
      "levels": {
        "info": "Info",
        "success": "Success",
        "warning": "Warning",
        "error": "Error",
        "debug": "Debug"
      }
    },
    "side": {
      "identityKicker": "Context",
      "identityTitle": "Agent context",
      "agent": "Agent",
      "interface": "Interface",
      "owner": "Owner sub",
      "thread": "Thread",
      "mode": "Mode",
      "modeLocal": "Local test mode",
      "modeBridge": "Direct stream",
      "modeDirect": "Direct stream",
      "nextKicker": "Current scope",
      "nextTitle": "What you can already do here",
      "nextItem1": "Chat directly with the bookkeeper agent",
      "nextItem2": "Watch answers arrive via live streaming",
      "nextItem3": "Review the agent's actions in the log"
    }
  },
  "ssAuth": {
    "common": {
      "passwordRules": {
        "minLength": "At least 8 characters",
        "number": "At least one number",
        "uppercase": "At least one uppercase letter",
        "lowercase": "At least one lowercase letter"
      },
      "email": "Email",
      "password": "Password",
      "firstName": "First name",
      "lastName": "Last name",
      "or": "or",
      "next": "Next",
      "confirm": "Confirm",
      "confirmationCode": "Confirmation code",
      "googleSignIn": "Continue with Google",
      "forgotPassword": "Forgot password?",
      "passwordRequirementsTitle": "Password requirements"
    },
    "login": {
      "errors": {
        "emailPasswordRequired": "Please enter email and password."
      },
      "title": "Sign in",
      "subtitle": "Sign in with your account.",
      "submit": "Log in"
    },
    "register": {
      "messages": {
        "unverifiedEmailNotice": "Email is already registered but not verified yet."
      },
      "success": {
        "confirmationCodeResent": "Confirmation code resent.",
        "emailConfirmed": "Email verified successfully."
      },
      "errors": {
        "allFieldsRequired": "Please fill in all fields.",
        "checkEmailFirst": "Please check email first.",
        "confirmFailed": "Confirmation failed.",
        "confirmationCodeRequired": "Please enter the confirmation code.",
        "confirmationCodeSendFailed": "Could not send confirmation code.",
        "emailAlreadyExists": "This email is already registered.",
        "emailCheckFailed": "Email check failed.",
        "enterEmailFirst": "Please enter email first.",
        "loginAfterConfirmFailed": "Login after confirmation failed.",
        "registerFailed": "Registration failed.",
        "unexpectedEmailCheckResponse": "Unexpected response while checking email.",
        "validEmailRequired": "Please enter a valid email address."
      },
      "stepEmail": {
        "title": "Check email",
        "subtitle": "Enter your email address."
      },
      "stepRegister": {
        "title": "Create account"
      },
      "stepConfirm": {
        "title": "Confirm email"
      },
      "submit": "Register",
      "resendCode": "Resend code",
      "loginHint": "Already have an account?",
      "loginLink": "Log in now"
    },
    "forgot": {
      "success": {
        "codeSent": "Confirmation code sent.",
        "passwordSet": "Password changed successfully."
      },
      "errors": {
        "validEmailRequired": "Please enter a valid email address.",
        "codeAndPasswordRequired": "Please enter code and new password."
      },
      "stepRequest": {
        "title": "Reset password",
        "subtitle": "We will send you a confirmation code."
      },
      "stepConfirm": {
        "title": "Set new password"
      },
      "newPassword": "New password",
      "requestCode": "Request code",
      "submitNewPassword": "Save password"
    },
    "changePassword": {
      "success": {
        "changed": "Password changed successfully."
      },
      "errors": {
        "fieldsRequired": "Please enter old and new password."
      },
      "title": "Change password",
      "subtitle": "Update your password.",
      "oldPassword": "Old password",
      "newPassword": "New password"
    },
    "changeEmail": {
      "success": {
        "codeSent": "Confirmation code sent to the new email.",
        "confirmed": "Email address changed successfully."
      },
      "errors": {
        "validEmailRequired": "Please enter a valid email address.",
        "confirmationCodeRequired": "Please enter the confirmation code."
      },
      "title": "Change email",
      "newEmail": "New email address",
      "submit": "Confirm"
    },
    "registerLanding": {
      "title": "Loading registration…",
      "subtitle": "Please wait a moment."
    }
  },
  "ssDialogs": {
    "details": {
      "fields": {
        "createdAt": "Created at",
        "salutation": "Salutation",
        "firstName": "First name",
        "lastName": "Last name",
        "phone": "Phone",
        "email": "Email",
        "address": "Address",
        "description": "Description",
        "objectAddress": "Object address"
      },
      "title": "Details"
    },
    "uploadVcard": {
      "errors": {
        "invalidFile": "Invalid file. Please choose a .vcf or .vcard file."
      },
      "title": "Import contacts",
      "dropHint": "Drop vCard file here or select file",
      "selectedFile": "Selected file",
      "upload": "Import"
    },
    "editFile": {
      "title": "Update file note",
      "note": "Note"
    },
    "callRedirect": {
      "title": "Call forwarding",
      "forwardedTo": "Forwarded to",
      "duration": "Call duration",
      "cost": "Cost",
      "notAvailable": "Not available",
      "durationMinutesSeconds": "{{minutes}} min {{seconds}} sec",
      "durationSeconds": "{{seconds}} sec"
    },
    "cancelSubscription": {
      "title": "Cancel subscription",
      "descriptionPrefix": "Your created phone agents remain available but will be set to",
      "inactive": "inactive",
      "descriptionSuffix": "after cancellation. Assigned phone numbers will be released.",
      "note": "You can continue using the subscription until the end date.",
      "confirm": "OK, I am sure"
    },
    "apiKeyCreated": {
      "title": "API key created",
      "hint": "This API key is shown only once. Please store it securely now.",
      "apiKey": "API key",
      "copySuccess": "API key copied.",
      "copyFailed": "Copy failed."
    },
    "analysis": {
      "title": "AI analysis"
    },
    "delete": {
      "titleSingle": "Delete entry?",
      "titleMany": "Delete entries?",
      "singleWarning": "This entry will be deleted.",
      "contactsWarning": "Selected contacts will be deleted.",
      "callsWarning": "Selected calls will be deleted."
    },
    "agentActivation": {
      "title": "Activate agent",
      "intro": "To activate “{{agentName}}”, you first need a paid subscription and an assigned CodeCell phone number.",
      "currentPhoneNumber": "Currently selected phone number: {{phoneNumber}}",
      "readyToActivate": "Everything is ready. You can activate the agent now.",
      "limitReached": "Your current plan allows only {{maxActiveAgents}} active agents. {{activeAgents}} agents are already active.",
      "requirements": {
        "fulfilled": "Available",
        "missing": "Missing",
        "subscription": {
          "title": "Paid subscription",
          "description": "Agents can only be activated and CodeCell numbers can only be used with an active paid subscription."
        },
        "phoneNumber": {
          "title": "CodeCell phone number",
          "description": "The agent needs an assigned phone number so incoming forwards can be routed correctly."
        }
      },
      "actions": {
        "openSubscription": "Start subscription",
        "manageSubscription": "Manage subscription",
        "openPhoneNumbers": "Get phone number",
        "activateNow": "Activate now"
      }
    },
    "agentPhoneFlow": {
      "title": "Connect phone number",
      "intro": "Choose the next phone step for “{{agentName}}”.",
      "assignHint": "At least one free CodeCell phone number is already available for this agent. Select the number that should be assigned now.",
      "purchaseHint": "There is currently no free CodeCell phone number for this agent. You can now buy a new number and assign it directly.",
      "manageHint": "There is currently no free phone number available and no additional number can be purchased. Manage your existing phone numbers first.",
      "availableNumbersLabel": "Available phone number",
      "actions": {
        "assignNumber": "Assign phone number",
        "purchaseNumber": "Get phone number",
        "manageNumbers": "Manage phone numbers"
      }
    },
    "phoneNumberPrimaryFlow": {
      "title": "Assign phone number",
      "assignIntro": "You already have a free CodeCell phone number. Choose the agent and number that should be connected now.",
      "purchaseIntro": "A new CodeCell phone number will now be provisioned for the selected agent and assigned directly.",
      "blockedFallback": "The phone number flow is currently unavailable.",
      "agentLabel": "Select agent",
      "numberLabel": "Select phone number",
      "actions": {
        "assign": "Assign now",
        "purchase": "Get phone number"
      }
    },
    "contact": {
      "titleCreate": "Add contact",
      "titleEdit": "Edit contact",
      "update": "Update"
    },
    "triggerCall": {
      "title": "Start call",
      "question": "Do you want to start this call now?",
      "name": "Name",
      "phone": "Phone",
      "issue": "Issue",
      "confirm": "Start now"
    },
    "scheduledWarning": {
      "title": "Notice",
      "immediate": "The call will start immediately.",
      "inMinutes": "The call starts in {{minutes}} minutes."
    },
    "transcript": {
      "title": "Transcript",
      "summary": "Summary",
      "audioTranscript": "Audio transcript"
    },
    "uploadFile": {
      "title": "Upload file",
      "dropHint": "Drop file here or select file",
      "selectedFile": "Selected file",
      "newFileName": "New file name",
      "note": "Note",
      "upload": "Upload"
    },
    "outgoingCall": {
      "titleAdd": "Add call(s)",
      "titleEdit": "Edit call",
      "callNow": "Call now",
      "scheduleCall": "Schedule call",
      "callDate": "Call date",
      "callTime": "Call time",
      "callTimeOfDay": "Time of day",
      "selectContacts": "Select contacts",
      "contactData": "Contact data",
      "contactAria": "Contact selection",
      "salutation": "Salutation",
      "callTopic": "Issue",
      "noteHint": "Additional notes",
      "retryHeading": "Retry if unavailable",
      "retryLabel": "Retry after",
      "retryOptions": {
        "10": "10 min",
        "20": "20 min",
        "30": "30 min",
        "45": "45 min",
        "60": "1 h",
        "90": "1 h 30 min",
        "120": "2 h",
        "180": "3 h",
        "240": "4 h",
        "360": "6 h",
        "480": "8 h",
        "1440": "24 h",
        "2880": "48 h",
        "disabled": "Disabled"
      },
      "salutations": {
        "formalMale": "Mr.",
        "formalFemale": "Ms.",
        "formalNeutral": "Good day",
        "informalMale": "Hi",
        "informalFemale": "Hi",
        "informalNeutral": "Hi"
      }
    }
  },
  "ssLive": {
    "page": {
      "title": "Live",
      "subtitle": "Track active conversations in real time and only step in when needed."
    },
    "connection": {
      "status": {
        "connected": "Connected",
        "connecting": "Connecting",
        "reconnecting": "Reconnecting",
        "disconnected": "Disconnected"
      }
    },
    "viewMode": {
      "aria": "View mode"
    },
    "actions": {
      "connect": "Connect",
      "connecting": "Connecting…",
      "disconnect": "Disconnect",
      "clear": "Clear",
      "fullscreen": "Fullscreen",
      "exitFullscreen": "Exit fullscreen",
      "showRaw": "Show raw",
      "hideRaw": "Hide raw"
    },
    "empty": {
      "title": "No live events yet",
      "subtitle": "As soon as your agent is handling calls, live events and conversation status will appear here."
    },
    "labels": {
      "call": "Call",
      "persisted": "Persisted",
      "conversation": "Conversation",
      "preset": "Preset",
      "uac": "UAC",
      "agent": "Agent",
      "caller": "Caller"
    },
    "global": {
      "title": "Global events"
    },
    "messages": {
      "noText": "No text available."
    },
    "scene": {
      "loading": "Loading 3D engine…",
      "initFailed": "3D mode could not be initialized.",
      "phoneFallback": "Phone"
    }
  },
  "ssMyAgents": {
    "page": {
      "title": "My agents",
      "subtitle": "Manage your trained agents centrally and adjust them in just a few clicks."
    },
    "labels": {
      "createdAt": "Created at",
      "updatedAt": "Last updated",
      "notificationEmail": "Notification email",
      "greeting": "Greeting message",
      "forwardTargets": "Forward targets",
      "unnamedAgent": "Unnamed agent"
    },
    "empty": {
      "title": "No agents yet",
      "subtitle": "Create your first agent in minutes and go live without technical setup."
    }
  },
  "ssStart": {
    "hero": {
      "kicker": "Welcome to CodeCell Agent Manager",
      "title": "Agent Manager",
      "subtitle": "The place where you manage all your agents, whether phone-based or digital coworkers.",
      "description": "No technical setup required. Go from first login to productive operation in just a few clicks.",
      "note": "This app is your central workspace for phone AI agents.",
      "points": {
        "quick": {
          "title": "Fast start",
          "subtitle": "Pick an agent and go live within minutes."
        },
        "call": {
          "title": "Trained agents",
          "subtitle": "Professionally preconfigured instead of starting from scratch."
        },
        "insight": {
          "title": "Everything in one place",
          "subtitle": "Live status, calls, and qualified callbacks in one app."
        }
      },
      "flowTitle": "Ready in 3 steps"
    },
    "visual": {
      "label": "Live flow",
      "events": {
        "incoming": {
          "title": "Call is received",
          "subtitle": "Incoming calls are assigned to the right agent immediately."
        },
        "ai": {
          "title": "Agent handles conversation",
          "subtitle": "Greeting, follow-up questions, and summaries run automatically."
        },
        "transfer": {
          "title": "Forward when needed",
          "subtitle": "Trigger-based routing connects callers to the right person."
        }
      },
      "stats": {
        "agents": {
          "value": "Agents",
          "label": "managed per workspace"
        },
        "calls": {
          "value": "Telephony",
          "label": "built into operations"
        },
        "live": {
          "value": "Live",
          "label": "events without context switching"
        }
      }
    },
    "metrics": {
      "presets": {
        "value": "Predefined agents",
        "label": "Ready to use for common scenarios"
      },
      "routes": {
        "value": "Forwarding logic",
        "label": "Clear routing rules for each call"
      },
      "analytics": {
        "value": "Realtime overview",
        "label": "Status and outcomes in one system"
      }
    },
    "flow": {
      "select": {
        "title": "Select an agent",
        "subtitle": "Start with the best matching preset."
      },
      "configure": {
        "title": "Configure",
        "subtitle": "Add company knowledge and forwarding without technical overhead."
      },
      "manage": {
        "title": "Run and control",
        "subtitle": "Monitor live, review outcomes, and intervene only when needed."
      }
    },
    "auth": {
      "noAccount": "Don’t have an account yet?",
      "createAccount": "Create account",
      "hasAccount": "Already have an account?",
      "loginNow": "Log in now",
      "backToLogin": "Back to login"
    }
  },
  "ssWebsiteManager": {
    "page": {
      "title": "Website",
      "subtitle": "Keep your public website, CMS, and publishing status under control in one place."
    },
    "cards": {
      "website": {
        "title": "Website",
        "description": "From here you can quickly open your website.",
        "open": "Open website"
      },
      "cms": {
        "title": "Manage website",
        "description": "Open the CMS to update your website content.",
        "open": "Open management"
      },
      "status": {
        "title": "Website status",
        "description": "Current status of your public website.",
        "online": "Your website is online."
      },
      "cache": {
        "title": "Refresh website cache",
        "description": "Use this function to make new changes visible on your website.",
        "tooltip": "Load latest changes to the website",
        "action": "Load website changes"
      }
    },
    "loading": {
      "refresh": "Loading website updates…"
    },
    "success": {
      "refreshed": "Your website was updated successfully."
    }
  },
  "ssDashboard": {
    "page": {
      "title": "Phone AI dashboard",
      "subtitle": "Keep calls, minutes, agents, and CodeCell numbers in view across the last 7 days and beyond.",
      "eyebrow": "Phone AI overview"
    },
    "filters": {
      "agentLabel": "Select agent",
      "allAgents": "All agents",
      "legacyWithoutUac": "Legacy (without UAC)",
      "agentFallback": "Agent",
      "activeAgent": "Active filter: {{agent}}",
      "legacyPrefix": "Legacy – {{agent}}",
      "ranges": {
        "week": "Last 7 days",
        "month": "Last 30 days",
        "year": "Last 365 days",
        "custom": "Custom range"
      }
    },
    "actions": {
      "createAgent": "Create agent",
      "openSetup": "Open forwarding guide"
    },
    "units": {
      "min": "min"
    },
    "summary": {
      "totalMinutes": "Total minutes",
      "averageMinutesPerDay": "Avg {{value}} min / day",
      "totalCalls": "Total calls",
      "averageCallsPerDay": "Avg {{value}} calls / day",
      "activeAgents": "Active agents",
      "activeAgentsHint": "Only agents with an assigned number and active provisioning are counted here.",
      "codecellNumbers": "CodeCell numbers",
      "codecellNumbersHint": "{{assigned}} assigned, {{available}} available",
      "selectedRange": "Range: {{range}}",
      "contacts": "{{count}} contacts",
      "averageMinutesPerCall": "Avg {{value}} min per call"
    },
    "charts": {
      "minutesPerDay": {
        "title": "Minutes per day",
        "subtitle": "Conversation minutes in the selected range"
      },
      "callsPerDay": {
        "title": "Calls per day",
        "subtitle": "Inbound calls and forwardings per day"
      },
      "datasets": {
        "totalMinutes": "Conversation minutes",
        "forwardMinutes": "Forwarded minutes",
        "totalCalls": "Total calls",
        "forwards": "Forwardings"
      }
    },
    "topAgents": {
      "title": "Top agents",
      "subtitle": "Top 3 by {{metric}}",
      "metricLabel": "Sort by",
      "metrics": {
        "calls": "Calls",
        "minutes": "Minutes"
      },
      "itemDetail": "{{calls}} calls · {{minutes}} minutes",
      "empty": "No agent activity yet in the selected period."
    },
    "cards": {
      "overview": {
        "title": "MVP overview",
        "subtitle": "The most important signals for your Phone AI at a glance.",
        "points": {
          "range": "Reporting window: {{range}}",
          "volume": "{{calls}} calls with {{minutes}} total minutes",
          "activeAgents": "{{count}} agents are currently active",
          "assignedNumbers": "{{assigned}} of {{owned}} CodeCell numbers are assigned",
          "contacts": "{{count}} contacts are ready for follow-ups and forwarding"
        }
      }
    },
    "loading": {
      "data": "Loading data…",
      "ranking": "Loading agent ranking…"
    }
  },
  "ssTable": {
    "forwardingSelect": {
      "unassigned": "No number assigned",
      "verifyNew": "Verify new number",
      "detachAction": "Detach number",
      "currentPending": "verification in progress",
      "currentFailed": "verification failed",
      "currentUnverified": "not verified"
    },
    "phoneNumbers": {
      "detachAction": "Detach number",
      "unassigned": "Unassigned",
      "noAgent": "No agent",
      "noAssignableAgent": "You currently have no new agent without a phone number. Create an agent first or detach an existing assignment.",
      "registrationComingSoon": "Registering your own phone number will be available soon. Please contact our technical team in the meantime.",
      "registrationEmailBody": "Hello CodeCell team,\n\nI would like to have my own phone number registered for my agent.\nPlease get back to me with the next steps.\n\nBest regards",
      "purchaseLimitReached": "Your included quota is used up. Please contact the technical team for additional numbers.",
      "detachTitle": "Detach phone number from agent?",
      "detachBody": "If you detach number {{number}} from “{{agentName}}”, it will stay in your CodeCell number pool and can be assigned to another agent later.",
      "detachConfirm": "Detach number",
      "releaseTitle": "Release phone number?",
      "releaseBody": "Warning: If you release number {{number}}, it will no longer belong to your account. Any binding to {{agentName}} will be removed and the number moves to the global pool.",
      "releaseConfirm": "Release number",
      "status": {
        "available": "Available",
        "assigned": "Assigned",
        "released": "Released"
      }
    },
    "columns": {
      "actions": "Actions",
      "agent": "Agent",
      "amount": "Amount",
      "callTime": "Call time",
      "caller": "Caller",
      "company": "Company",
      "cost": "Cost",
      "costAiForward": "Cost (AI/forward)",
      "createdAt": "Created at",
      "downloadLink": "Download link",
      "durationAiForward": "Duration (AI/forward)",
      "durationSeconds": "Duration (sec)",
      "email": "Email",
      "fileName": "File name",
      "firstName": "First name",
      "forwardingNumber": "Forwarding number",
      "assignedAgent": "Assigned agent",
      "grossTotal": "Gross total",
      "invoiceDate": "Invoice date",
      "invoiceNumber": "Invoice number",
      "issue": "Issue",
      "lastChange": "Last change",
      "lastName": "Last name",
      "level": "Level",
      "message": "Message",
      "minutesBilled": "Time",
      "note": "Note",
      "phone": "Phone",
      "phoneNumber": "Phone number",
      "phoneStatus": "Phone status",
      "preset": "Preset",
      "registeredAt": "Registered at",
      "retryHm": "Retry (h/m)",
      "salutation": "Salutation",
      "sentAt": "Sent at",
      "specificCallKnowledge": "Specific call knowledge",
      "status": "Status",
      "eventType": "Event type",
      "timestamp": "Timestamp",
      "title": "Title",
      "to": "To",
      "updatedAt": "Updated at",
      "verifiedAt": "Verified at",
      "verification": "Verification"
    },
    "filters": {
      "dateLabel": "Date range",
      "search": "Search",
      "doneFilter": "Done",
      "quick": {
        "today": "Today",
        "week": "Last 7 days",
        "month": "Last month",
        "lastMonth": "Previous month",
        "year": "Last year",
        "all": "All time"
      },
      "dateHint": "Select date range",
      "startDate": "Start date",
      "endDate": "End date",
      "hideDoneCalls": "Hide completed",
      "agentLabel": "Agent",
      "allAgents": "All agents"
    },
    "common": {
      "immediate": "immediately"
    },
    "time": {
      "inPrefix": "in",
      "dayOne": "day",
      "dayMany": "days",
      "hourOne": "hour",
      "hourMany": "hours",
      "minuteOne": "minute",
      "minuteMany": "minutes"
    },
    "agentStatus": {
      "active": "Active",
      "inactive": "Inactive",
      "provisioning": "Provisioning",
      "requiresPhoneNumber": "Phone number required",
      "requiresPaidSubscription": "Paid subscription required",
      "activationLimitReached": "Activation limit reached ({{activeAgents}} of {{maxActiveAgents}} active)",
      "activationBlocked": "Activation blocked"
    },
    "status": {
      "disabled": "Disabled",
      "pending": "Pending",
      "registered": "Registered"
    },
    "verification": {
      "verified": "Verified",
      "unverified": "Unverified",
      "pending": "Pending",
      "failed": "Failed"
    },
    "tooltips": {
      "callDone": "Call completed",
      "callFailed": "Call failed",
      "callNoAnswer": "No answer",
      "callRunning": "Call running",
      "callScheduled": "Call scheduled",
      "statusUnknown": "Unknown status"
    },
    "loading": {
      "addContact": "Adding contact…",
      "addCalls": "Adding call(s)…",
      "importContacts": "Importing contacts…",
      "contactRequests": "Loading contact requests…",
      "applications": "Loading applications…",
      "phoneCalls": "Loading phone calls…",
      "apiCalls": "Loading API calls…",
      "outgoingPhoneCalls": "Loading outgoing calls…",
      "contacts": "Loading contacts…",
      "files": "Loading files…",
      "invoices": "Loading invoices…",
      "billing": "Loading billing…",
      "recommendations": "Loading recommendations…",
      "myAgents": "Loading agents…",
      "phoneNumbers": "Loading phone numbers…",
      "purchasePhoneNumber": "Provisioning phone number…",
      "assignPhoneNumber": "Saving assignment…",
      "unassignPhoneNumber": "Detaching phone number…",
      "releasePhoneNumber": "Releasing phone number…",
      "verifiedForwardingNumbers": "Loading verified numbers…",
      "forwardingDetach": "Detaching forwarding number…",
      "verifiedForwardingDelete": "Deleting verified number…",
      "codecellAgentEvents": "Loading CodeCell agent events…",
      "invoicePdf": "Loading invoice PDF…",
      "uploadFile": "Uploading file…",
      "delete": "Deleting entry…",
      "deleteCalls": "Deleting calls…",
      "deleteContacts": "Deleting contacts…",
      "agentActivate": "Activating agent…",
      "agentDeactivate": "Deactivating agent…",
      "agentDelete": "Deleting agent…",
      "loadMore": "Loading more…",
      "loadedCount": "{{count}} loaded"
    },
    "errors": {
      "genericSystem": "A technical error occurred.",
      "tableLoadFailed": "Could not load table.",
      "contactRequestsLoad": "Could not load contact requests: {{message}}",
      "applicationsLoad": "Could not load applications: {{message}}",
      "phoneCallsLoad": "Could not load phone calls: {{message}}",
      "apiCallsLoad": "Could not load API calls: {{message}}",
      "apiCallTranscriptMissingId": "Call ID is missing. Transcript cannot be loaded.",
      "outgoingPhoneCallsLoad": "Could not load outgoing calls: {{message}}",
      "contactsLoad": "Could not load contacts: {{message}}",
      "filesLoad": "Could not load files: {{message}}",
      "invoicesLoad": "Could not load invoices: {{message}}",
      "billingLoad": "Could not load billing: {{message}}",
      "recommendationsLoad": "Could not load recommendations: {{message}}",
      "codecellAgentEventsLoad": "Could not load CodeCell agent events: {{message}}",
      "callAddFailed": "Could not add contact.",
      "callCreateFailed": "Could not create call.",
      "callEditFailed": "Could not edit call.",
      "callTriggerFailed": "Could not trigger call.",
      "callsDeleteFailed": "Could not delete calls.",
      "contactAddFailed": "Could not add contact.",
      "contactEditFailed": "Could not edit contact.",
      "contactsDeleteFailed": "Could not delete contacts.",
      "contactImportFailed": "Could not import contacts.",
      "contactImportPartial": "{{count}} contacts were imported, but the import failed afterwards.",
      "uploadFailed": "Upload failed: {{message}}",
      "downloadFailed": "Download failed.",
      "deleteFailed": "Delete failed.",
      "deleteFailedWithDetails": "Delete failed: {{message}}",
      "invalidPdfData": "Invalid PDF data.",
      "invoiceIdMissing": "Invoice ID missing.",
      "invoicePdfLoadFailed": "Could not load invoice PDF.",
      "invoicePdfOpenFailed": "Could not open invoice PDF.",
      "fileMetaEditFailed": "Could not update file metadata.",
      "myAgentsLoad": "Could not load agents: {{message}}",
      "phoneNumbersLoad": "Could not load phone numbers: {{message}}",
      "purchasePhoneNumberFailed": "Could not provision phone number.",
      "phoneNumberAssignmentFailed": "Could not assign phone number.",
      "phoneNumberUnassignFailed": "Could not detach phone number from agent.",
      "phoneNumberReleaseFailed": "Could not release phone number.",
      "phoneNumberMissing": "Phone number is missing.",
      "verifiedForwardingNumbersLoad": "Could not load verified numbers: {{message}}",
      "agentActivateFailed": "Could not activate agent.",
      "agentDeactivateFailed": "Could not deactivate agent.",
      "agentDeactivateBeforeDeleteFailed": "Agent must be deactivated before delete.",
      "agentDeleteFailed": "Could not delete agent.",
      "forwardingDetachFailed": "Could not detach the forwarding number from this agent.",
      "verifiedForwardingDeleteFailed": "Could not delete the verified number.",
      "forwardingNumberMissing": "Forwarding number is missing.",
      "privatePresetDeleteNotAllowed": "Deleting private presets is not allowed.",
      "privatePresetEditNotAllowed": "Editing private presets is not allowed.",
      "stripeInvoiceOpenMissingUrl": "Stripe invoice URL missing.",
      "uacKeyMissing": "UAC key missing."
    },
    "success": {
      "contactAdded": "Contact added.",
      "contactUpdated": "Contact updated.",
      "contactsImported": "{{count}} contacts imported.",
      "callAdded": "Call(s) added.",
      "callCreated": "Call created.",
      "callWillRunSoon": "Call will run shortly.",
      "callWillRunLabelSingle": "Scheduled start: {{label}}",
      "callWillRunLabelMulti": "{{count}} calls scheduled: {{label}}",
      "callUpdatedWillRun": "Call updated. {{label}}",
      "entryDeleted": "Entry deleted.",
      "favoriteAdded": "Added to favorites.",
      "favoriteRemoved": "Removed from favorites.",
      "uploadSuccess": "File uploaded successfully.",
      "fileMetaUpdated": "File metadata updated.",
      "agentActive": "Agent activated.",
      "agentInactive": "Agent deactivated.",
      "agentDeleted": "Agent deleted.",
      "phoneNumberPurchased": "Phone number provisioned.",
      "phoneNumberAssigned": "Phone number assigned.",
      "phoneNumberUnassigned": "Phone number detached from agent.",
      "phoneNumberReleased": "Phone number released.",
      "forwardingDetached": "Forwarding number detached from this agent.",
      "verifiedForwardingDeleted": "Verified number deleted."
    },
    "actions": {
      "createAgent": "Create new agent",
      "purchasePhoneNumber": "Get phone number",
      "assignPhoneNumber": "Assign phone number",
      "requestOwnNumberRegistration": "Register own number",
      "reload": "Reload",
      "loadMore": "Load more",
      "addContact": "Add contact",
      "addCall": "Add call",
      "import": "Import contacts",
      "uploadFile": "Upload file",
      "delete": "Delete",
      "tooltips": {
        "addContact": "Create new contact",
        "addCall": "Create new call",
        "importContacts": "Import contacts from vCard",
        "uploadFile": "Upload file",
        "deleteSelectedContacts": "Delete selected contacts",
        "deleteSelectedCalls": "Delete selected calls",
        "agentProvisioning": "Phone number is being assigned",
        "agentDeactivateDisabled": "Deactivate is currently unavailable.",
        "agentActivateDisabled": "Activate requires an assigned CodeCell number and an active subscription.",
        "activateAgent": "Activate agent",
        "deactivateAgent": "Deactivate agent",
        "editAgent": "Edit agent",
        "deleteAgent": "Delete agent"
      }
    },
    "columnSettings": {
      "show": "Customize table layout",
      "hide": "Hide layout options"
    },
    "summary": {
      "aria": "Summary",
      "total": "Total",
      "duration": "Duration",
      "cost": "Cost",
      "calls": "Calls",
      "forward": "Forwarding",
      "agent": "Agent",
      "min": "min"
    },
    "entitlement": {
      "activeAgents": "Active agents",
      "phoneNumbers": "Assigned phone numbers"
    },
    "forwardingNumberStatus": {
      "available": "Free verified number",
      "assigned": "Assigned to agent"
    },
    "forwardingDetach": {
      "title": "Detach forwarding number?",
      "body": "Warning: If you detach the number {{number}} from “{{agentName}}”, this agent will no longer be reachable via that number. The number stays verified in your account and can later be assigned to another agent again.",
      "confirm": "Detach number"
    },
    "verifiedForwardingDelete": {
      "title": "Delete verified number?",
      "body": "WARNING: The verified number {{number}} will be fully released. Any existing binding to {{agentName}} will be removed and this number will no longer be suitable for use with agents.",
      "confirm": "Delete number permanently",
      "noAgent": "no agent"
    },
    "views": {
      "contactFormRequests": {
        "title": "Contact requests",
        "subtitle": "Review new requests centrally, prioritize follow-ups, and keep every contact channel in view."
      },
      "applications": {
        "title": "Applications",
        "subtitle": "Review incoming applications in one place and continue candidate workflows directly from the system."
      },
      "phoneCalls": {
        "title": "Phone calls",
        "subtitle": "Review all inbound calls centrally and call back with qualified context."
      },
      "apiPhoneCalls": {
        "title": "API calls",
        "subtitle": "Pay-as-you-go calls from the Developer API with full transparency."
      },
      "outgoingPhoneCalls": {
        "title": "Outgoing calls",
        "subtitle": "Scheduled and running outgoing calls"
      },
      "contacts": {
        "title": "Contacts",
        "subtitle": "Manage and maintain contacts"
      },
      "files": {
        "title": "Files",
        "subtitle": "Manage uploaded files, documents, and access in one central place."
      },
      "invoices": {
        "title": "Invoices",
        "subtitle": "Invoices and payment receipts"
      },
      "stripeInvoices": {
        "title": "Stripe invoices",
        "subtitle": "Billed Stripe invoices"
      },
      "recommendations": {
        "title": "Recommendations",
        "subtitle": "Sent recommendations and status"
      },
      "myAgents": {
        "title": "My agents",
        "subtitle": "Manage agents, phone numbers and verified numbers in one place."
      },
      "phoneNumbers": {
        "title": "Phone numbers",
        "subtitle": "Buy, assign, detach or release CodeCell numbers."
      },
      "verifiedForwardingNumbers": {
        "title": "Verified numbers",
        "subtitle": "Only for outgoing calls and abuse protection."
      },
      "codecellAgentEvents": {
        "title": "CodeCell agents",
        "subtitle": "Latest agent events from the event-log table, filterable by selected agent."
      }
    },
    "myAgentsVision": {
      "title": "Agents, numbers and activation at a glance",
      "subtitle": "New agents stay saved as drafts first. They can only be activated with an active payment and an assigned CodeCell number.",
      "points": {
        "1": "Create agents quickly and save them as drafts first.",
        "2": "Buy, assign or release phone numbers directly.",
        "3": "Keep verified numbers separate for outbound use and abuse protection."
      }
    }
  },
  "ssPhoneCallsTabs": {
    "title": "Calls",
    "subtitle": "Review all assistant and API calls in one place and call back with full context.",
    "tabs": {
      "phoneAssistant": "Phone assistant",
      "apiCalls": "API phone calls"
    }
  },
  "ssMyAgentsTabs": {
    "title": "My agents",
    "subtitle": "Manage agents, phone numbers and verified numbers in one place.",
    "tabs": {
      "agents": "Agents",
      "phoneNumbers": "Phone numbers",
      "verifiedNumbers": "Verified numbers"
    },
    "actions": {
      "verifyNewNumber": "Verify new number"
    },
    "subtitles": {
      "agents": "Manage agents, check status and control activation.",
      "phoneNumbers": "Buy, assign, detach or release CodeCell numbers.",
      "verifiedNumbers": "Keep verified numbers for outgoing calls and abuse protection."
    }
  },
  "ssProfile": {
    "page": {
      "title": "My profile",
      "subtitle": "Manage your account, subscription, API and recommendations."
    },
    "tabs": {
      "aria": "Profile areas",
      "profile": "Profile",
      "subscription": "Subscription",
      "accounting": "Accounting",
      "api": "API",
      "recommendations": "Recommendations"
    },
    "sections": {
      "profile": {
        "title": "Profile",
        "subtitle": "Account data and personal settings."
      },
      "subscription": {
        "title": "Subscription",
        "subtitle": "Manage subscription and plans.",
        "statusCardTitle": "Subscription status"
      },
      "accounting": {
        "title": "Accounting",
        "subtitle": "Overview of your invoices."
      },
      "api": {
        "title": "Developer API",
        "subtitle": "API keys and pay-as-you-go usage."
      },
      "recommendations": {
        "title": "Recommendations",
        "subtitle": "Send recommendations and view overview.",
        "cardTitle": "Send recommendation",
        "cardDescription": "Send an invitation to a contact. As soon as the invited user has an active qualified subscription, both users receive 30 free minutes.",
        "sendButton": "Send recommendation"
      }
    },
    "labels": {
      "plan": "Plan",
      "activeAgents": "Active agents",
      "includedMinutes": "Included minutes",
      "used": "Used",
      "billedUntil": "Billed until",
      "eurPerMonth": "€/month",
      "recommended": "Recommended"
    },
    "cards": {
      "password": {
        "title": "Password",
        "description": "Change your password for better security.",
        "button": "Change password"
      },
      "firstName": {
        "title": "First name",
        "description": "Update your first name.",
        "fieldLabel": "New first name",
        "button": "Save"
      },
      "lastName": {
        "title": "Last name",
        "description": "Update your last name.",
        "fieldLabel": "New last name",
        "button": "Save"
      },
      "email": {
        "title": "Email",
        "description": "Change your login email address.",
        "current": "Current email",
        "button": "Change email"
      },
      "company": {
        "title": "Company",
        "description": "Update your company name.",
        "fieldLabel": "Company name",
        "button": "Save"
      },
      "billingEmail": {
        "title": "Billing email",
        "description": "Address for invoices and payment information.",
        "fieldLabel": "New billing email",
        "button": "Save"
      }
    },
    "actions": {
      "cancelSubscription": "Cancel subscription"
    },
    "loading": {
      "subscriptionStatus": "Loading subscription status…",
      "paymentMethod": "Loading payment method…",
      "apiKeys": "Loading API keys…",
      "apiUsage": "Loading API usage…",
      "profileData": "Loading profile data…",
      "pushSettings": "Loading push settings…"
    },
    "messages": {
      "cancelingUntil": "Cancellation active until {{date}}.",
      "noActiveSubscription": "No active subscription.",
      "activeSubscriptionExists": "An active subscription already exists.",
      "subscriptionStarted": "Subscription started.",
      "checkoutCanceled": "Checkout canceled.",
      "planChangePaymentRequired": "A payment method is required for this change.",
      "lifetimeAlreadyActive": "Lifetime plan is already active.",
      "lifetimeSupportPaymentMethod": "Please contact support for lifetime activation."
    },
    "status": {
      "active": "Active",
      "revoked": "Revoked"
    },
    "billingStatus": {
      "none": "No subscription",
      "lifetime": "Lifetime",
      "active": "Active",
      "trial": "Trial",
      "paymentFailed": "Payment failed",
      "unpaid": "Unpaid",
      "canceled": "Canceled",
      "inactive": "Inactive",
      "unknown": "Unknown"
    },
    "planFeatures": {
      "activeAgents": "{{count}} active agents",
      "phoneNumbers": "{{count}} phone numbers",
      "includedMinutes": "{{count}} included minutes",
      "overageRate": "{{rate}} €/min overage"
    },
    "plans": {
      "starter": {
        "name": "Starter"
      },
      "pro": {
        "name": "Pro"
      },
      "business": {
        "name": "Business"
      }
    },
    "planActions": {
      "choose": "Choose",
      "switch": "Switch",
      "upgrade": "Upgrade",
      "downgrade": "Downgrade",
      "cancel": "Cancel",
      "lifetimeActive": "Lifetime active"
    },
    "api": {
      "paymentMethod": {
        "title": "Payment method",
        "card": "Card",
        "method": "Method",
        "details": "Details",
        "validUntil": "Valid until",
        "manage": "Manage payment method",
        "status": {
          "available": "Payment method saved",
          "none": "No payment method"
        }
      },
      "keys": {
        "title": "API keys",
        "nameOptional": "Name (optional)",
        "placeholder": "e.g. CRM integration",
        "create": "Create API key",
        "paymentRequired": "Please add a payment method first.",
        "none": "No API keys yet.",
        "revoke": "Revoke",
        "columns": {
          "name": "Name",
          "prefix": "Last 4",
          "status": "Status",
          "createdAt": "Created at",
          "lastUsedAt": "Last used"
        }
      },
      "usage": {
        "title": "API usage",
        "minutes": "Minutes",
        "calls": "Calls",
        "cost": "Cost",
        "note": "Billing uses exact seconds on minute-price basis."
      }
    },
    "push": {
      "title": "Push notifications",
      "browserSupport": "Browser support",
      "supported": "Supported",
      "notSupported": "Not supported",
      "permission": "Permission",
      "permissionGranted": "Allowed",
      "permissionDenied": "Blocked",
      "permissionDefault": "Not decided yet",
      "status": "Connection",
      "connected": "Connected",
      "notConnected": "Not connected",
      "eventCallCompleted": "Event: call completed",
      "enabled": "Enabled",
      "disabled": "Disabled",
      "enableButton": "Enable push",
      "disableButton": "Disable push",
      "enableCallCompleted": "Enable call-completed event",
      "disableCallCompleted": "Disable call-completed event"
    },
    "errors": {
      "genericSystem": "A technical error occurred.",
      "profileDataLoadFailed": "Could not load profile data.",
      "validFirstNameRequired": "Please enter a valid first name.",
      "validLastNameRequired": "Please enter a valid last name.",
      "firstNameUpdateFailed": "Could not update first name.",
      "lastNameUpdateFailed": "Could not update last name.",
      "validEmailRequired": "Please enter a valid email address.",
      "emailRequired": "Please enter an email address.",
      "invalidBillingEmail": "Please enter a valid billing email.",
      "paymentMethodLoadFailed": "Could not load payment method.",
      "paymentMethodRequired": "Please add a payment method first.",
      "apiKeysLoadFailed": "Could not load API keys.",
      "apiUsageLoadFailed": "Could not load API usage.",
      "apiKeyCreateFailed": "Could not create API key.",
      "apiKeyRevokeFailed": "Could not revoke API key.",
      "checkoutStartFailed": "Could not start checkout.",
      "planChangeFailed": "Plan change failed.",
      "subscriptionStatusLoadFailed": "Could not load subscription status.",
      "subscriptionPortalOpenFailed": "Could not open subscription portal.",
      "paymentPortalOpenFailed": "Could not open payment portal.",
      "recommendationSendFailed": "Could not send recommendation.",
      "recommendationsLoadFailed": "Could not load recommendations.",
      "pushSettingsLoadFailed": "Could not load push settings.",
      "pushEnableFailed": "Could not enable push.",
      "pushDisableFailed": "Could not disable push.",
      "pushPreferencesSaveFailed": "Could not save push preferences.",
      "pushNotSupported": "This browser does not support push notifications.",
      "pushNotConfigured": "Push is not configured on the server yet."
    },
    "success": {
      "firstNameUpdated": "First name updated.",
      "lastNameUpdated": "Last name updated.",
      "companyUpdated": "Company updated.",
      "contactPersonUpdated": "Contact person updated.",
      "billingEmailUpdated": "Billing email updated.",
      "apiKeyRevoked": "API key revoked.",
      "subscriptionUpdated": "Subscription updated.",
      "recommendationSent": "Recommendation sent.",
      "pushEnabled": "Push notifications enabled.",
      "pushDisabled": "Push notifications disabled.",
      "pushPreferencesSaved": "Push preferences saved."
    }
  },
  "ssFooter": {
    "aria": "Footer",
    "company": "CodeCell Applications GbR",
    "address": {
      "line1": "Eisenindustriestraße 4",
      "line2": "58239 Schwerte"
    },
    "copy": "CodeCell Applications builds reliable software solutions for modern business processes.",
    "legalAria": "Legal",
    "links": {
      "imprint": "Imprint",
      "privacy": "Privacy policy",
      "terms": "Terms of use"
    },
    "copyright": "© {{year}} CodeCell Applications GbR"
  },
  "codecellAgents": {
    "tabs": {
      "aria": "Switch agent view",
      "chat": "Chat",
      "log": "Log",
      "memory": "Memory",
      "config": "Configuration",
      "process": "Process"
    },
    "threads": {
      "kicker": "Conversations",
      "title": "Threads",
      "newChat": "New chat",
      "delete": "Delete thread",
      "deleteDialog": {
        "title": "Delete thread?",
        "body": "Do you really want to delete the thread \"{{title}}\"? The chat history for this thread will be hidden.",
        "confirm": "Delete thread"
      },
      "newChatHint": "A new chat starts with a fresh conversation context. Configuration and memory stay in place.",
      "emptyTitle": "No threads yet",
      "emptyText": "Create a new chat to start another conversation.",
      "loadOlder": "Load older messages",
      "loadingOlder": "Loading older messages …",
      "status": {
        "idle": "Ready",
        "streaming": "Reply streaming",
        "completed": "Done",
        "interrupted": "Interrupted",
        "error": "Error"
      },
      "switchDialog": {
        "title": "Switch chat?",
        "description": "If you switch to another thread now, the current answer will be interrupted.",
        "currentLabel": "Current chat",
        "nextLabel": "Target chat",
        "confirm": "Switch anyway",
        "cancel": "Stay in chat"
      },
      "loadingText": "Loading thread …"
    },
    "loading": {
      "initialChat": "Loading chat…",
      "switchThread": "Loading thread…",
      "createThread": "Creating new thread…",
      "deleteThread": "Deleting thread…"
    },
    "hitl": {
      "readOnly": "Read only",
      "unknownInteractionTitle": "Unknown interaction",
      "unknownInteractionText": "No frontend widget has been registered for this interactionType yet.",
      "context": {
        "thread": "Thread",
        "connection": "Connection",
        "actor": "Actor"
      }
    },
    "chat": {
      "reasoning": "Reasoning",
      "loadingText": "Loading thread …",
      "toolArgs": "Arguments",
      "toolResult": "Result",
      "toolStatus": {
        "pending": "Pending",
        "running": "Running",
        "completed": "Completed",
        "error": "Error"
      }
    },
    "memory": {
      "kicker": "Memory",
      "title": "Memory",
      "emptyTitle": "No memory notes yet",
      "emptyText": "Store facts here that should survive across chats.",
      "listTitle": "Saved notes",
      "editTitle": "Edit note",
      "newTitle": "New note",
      "titleLabel": "Title",
      "contentLabel": "Content",
      "titlePlaceholder": "For example: preferred tone",
      "contentPlaceholder": "Short note for the agent …",
      "save": "Save note",
      "delete": "Delete",
      "new": "New note",
      "keywordsLabel": "Keywords",
      "keywordsPlaceholder": "For example: sevDesk, invoice, default flow",
      "saveError": "The note could not be saved.",
      "deleteError": "The note could not be deleted."
    },
    "config": {
      "kicker": "Configuration",
      "title": "Configuration",
      "emptyTitle": "No configuration yet",
      "emptyText": "Store the agent connection and access data here.",
      "listTitle": "Saved connections",
      "editTitle": "Edit connection",
      "newTitle": "New connection",
      "displayNameLabel": "Display name",
      "providerLabel": "Provider",
      "connectionIdLabel": "Connection ID",
      "secretLabel": "API key",
      "baseUrlLabel": "Base URL",
      "notesLabel": "Notes",
      "defaultLabel": "Use as default",
      "save": "Save connection",
      "delete": "Delete",
      "new": "New connection",
      "secretPlaceholder": "Only enter a value if the key should change",
      "saveError": "The configuration could not be saved.",
      "deleteError": "The configuration could not be deleted.",
      "defaultChip": "Default",
      "activeChip": "Active",
      "use": "Use"
    },
    "meta": {
      "title": "Agent profile",
      "kicker": "Live configuration",
      "collapse": "Hide details",
      "expand": "Show details",
      "emptyTitle": "No metadata loaded",
      "emptyText": "Model and reasoning will appear here once the agent exposes its runtime metadata.",
      "tools": "Active tools",
      "labels": {
        "agentId": "Agent ID",
        "interface": "Interface",
        "model": "Model",
        "promptVersion": "Prompt version",
        "promptHash": "Prompt hash",
        "reasoning": "Reasoning",
        "memory": "Memory"
      },
      "values": {
        "memoryDisabled": "Disabled",
        "memoryEnabledWithWorkingMemory": "Enabled with working memory",
        "memoryEnabledWithoutWorkingMemory": "Enabled without working memory"
      }
    }
  }
}
