{
  "brand.name": "VulnClaw",
  "brand.tagline": "Attack surface mapping",

  "nav.scan": "Scan",
  "nav.findings": "Findings",
  "nav.reports": "Reports",
  "nav.scope": "Scope",
  "nav.history": "History",
  "nav.settings": "Settings",
  "nav.console": "Console",

  "quick.new_scan": "New scan",
  "quick.history": "History",
  "quick.reports": "Reports",
  "quick.assets": "Assets",
  "quick.scope": "Scope",
  "quick.findings": "Findings",
  "quick.refresh": "Refresh",
  "quick.home": "Home",
  "quick.stop_task": "Stop task",

  "view.scan.eyebrow": "SCAN",
  "view.scan.title": "New Scan",
  "view.scan.copy": "Enter a target and start.",
  "view.findings.eyebrow": "RESULTS",
  "view.findings.title": "Findings",
  "view.findings.copy": "Verified risks and evidence.",
  "view.reports.eyebrow": "REPORTS",
  "view.reports.title": "Reports",
  "view.reports.copy": "Preview and export.",
  "view.scope.eyebrow": "SCOPE",
  "view.scope.title": "Boundary",
  "view.scope.copy": "Scope limits and blocked actions.",
  "view.history.eyebrow": "LOG",
  "view.history.title": "History",
  "view.history.copy": "Tasks and snapshots.",
  "view.settings.eyebrow": "CONFIG",
  "view.settings.title": "Settings",
  "view.settings.copy": "Runtime defaults.",
  "view.console.eyebrow": "CONTROL",
  "view.console.title": "Task Console",
  "view.console.copy": "Raw task controls.",

  "topbar.target": "Target: {target}",
  "topbar.no_target": "No target selected",
  "topbar.idle": "Idle",

  "shell.backend_unavailable": "Backend unavailable",
  "shell.backend_hint": "Start `vulnclaw web` and open the local address to load the live console.",
  "shell.retry": "Retry",

  "banner.active_scan": "Active scan",
  "banner.results": "Results",
  "banner.boundary": "Boundary",
  "banner.blocked_count": "{count} blocked",
  "banner.open_console": "Open console",
  "banner.reports": "Reports",
  "banner.stop": "Stop",
  "banner.waiting": "Waiting for task events.",

  "dialog.confirmation_required": "Confirmation required",
  "dialog.cancel": "Cancel",
  "dialog.confirm": "Confirm",
  "dialog.report_preview": "Report preview",
  "dialog.download": "Download",
  "dialog.close": "Close",
  "dialog.loading_preview": "Loading report preview...",
  "dialog.select_report_preview": "Select a report to preview.",

  "toast.task_started": "Task started",
  "toast.task_finished": "Task finished",
  "toast.task_finished_copy": "Review the risk results or generate a report.",
  "toast.open_results": "Open results",
  "toast.task_failed": "Task failed",
  "toast.task_failed_copy": "Check advanced logs.",
  "toast.open_console": "Open console",
  "toast.task_stopped": "Task stopped",
  "toast.task_stopped_copy": "Saved state and reports remain available.",
  "toast.stop_sent": "Stop request sent",
  "toast.stop_sent_copy": "VulnClaw is ending the current task.",

  "confirm.stop_scan_title": "Stop current scan?",
  "confirm.stop_scan_copy": "Stopping will end the current task, but saved state and reports will remain available.",
  "confirm.stop_task_label": "Stop task",

  "error.unreachable": "Unable to reach the VulnClaw backend API. Start `vulnclaw web` and reconnect.",
  "error.request_failed": "Request failed ({status}): {detail}",
  "error.request_failed_simple": "Request failed ({status}). Try again or open advanced diagnostics.",
  "error.non_json": "The backend API returned non-JSON content. Confirm the backend was started with `vulnclaw web`.",
  "error.failed_to_start": "Failed to start task",
  "error.invalid_port": "Invalid port format",
  "error.save_failed": "Save failed",
  "error.report_failed": "Report generation failed",
  "error.snapshot_restore_failed": "Snapshot restore failed",
  "error.invalid_task_params": "Invalid task parameters",
  "error.stop_failed": "Failed to stop task",
  "error.select_target_first": "Select a target first.",

  "status.idle": "Idle",
  "status.queued": "Queued",
  "status.running": "Running",
  "status.completed": "Completed",
  "status.failed": "Failed",
  "status.stopped": "Stopped",

  "phase.scope": "Scope",
  "phase.recon": "Recon",
  "phase.scan": "Scan",
  "phase.verify": "Verify",
  "phase.exploit": "Exploit",
  "phase.report": "Report",
  "phase.none": "No phase",

  "command.recon": "Quick Recon",
  "command.run": "Standard Scan",
  "command.scan": "Deep Scan",
  "command.exploit": "Verification",
  "command.persistent": "Continuous Scan",
  "command.default": "Scan",
  "command.custom": "Custom Scan",

  "action.recon": "Recon",
  "action.run": "Standard Scan",
  "action.scan": "Scan",
  "action.exploit": "Verify",
  "action.persistent": "Continuous Scan",
  "action.post_exploitation": "Post-exploitation",

  "event.task_started": "Task started",
  "event.task_progress": "Task progress",
  "event.task_message": "Task message",
  "event.task_completed": "Task completed",
  "event.task_failed": "Task failed",
  "event.task_stopped": "Task stopped",
  "event.default": "Task event",

  "severity.critical": "Critical",
  "severity.high": "High",
  "severity.medium": "Medium",
  "severity.warn": "Warn",
  "severity.warning": "Warn",
  "severity.low": "Low",
  "severity.info": "Info",

  "finding_status.verified": "Verified",
  "finding_status.pending": "Pending",
  "finding_status.candidate": "Candidate",
  "finding_status.manual_review": "Manual review",
  "finding_status.dismissed": "Dismissed",
  "finding_status.false_positive": "False positive",

  "mcp_health.healthy": "Healthy",
  "mcp_health.degraded": "Degraded",
  "mcp_health.unavailable": "Offline",
  "mcp_health.unknown": "Unknown",

  "mcp_mode.local": "Local",
  "mcp_mode.placeholder": "Placeholder",
  "mcp_mode.sdk": "SDK",
  "mcp_mode.sse": "SSE",

  "resume.stop": "Can end current scan",
  "resume.verify": "Review verified findings first",
  "resume.exploit": "Verify authorization before validation",
  "resume.scan": "Continue risk discovery",
  "resume.recon": "Add more recon",
  "resume.continue": "Resume from current state",
  "resume.none": "No resume guidance",

  "boundary.blocked_label": "blocked",
  "boundary.host_only": "Host only",
  "boundary.path_only": "Path only",
  "boundary.port_only": "Port only",
  "boundary.block_host": "Block host",
  "boundary.block_path": "Block path",
  "boundary.allow_actions": "Allow actions",
  "boundary.block_actions": "Block actions",
  "boundary.no_extra": "No extra boundary",
  "boundary.custom": "Custom boundary",
  "boundary.default_scope": "Default scope",
  "boundary.auto_scope": "Auto scope",

  "home.welcome": "Welcome to VulnClaw",
  "home.tagline": "Attack surface mapping",
  "home.scan": "Scan",
  "home.starting": "Starting",
  "home.new_scan_task": "New Scan Task",
  "home.clear_target": "Clear target",
  "home.ip_domain": "IP/Domain",
  "home.black_ip": "Black IP",
  "home.port": "Port",
  "home.custom_ports": "Custom ports",
  "home.resume_previous": "Resume previous state",
  "home.bounds": "{count} bounds",
  "home.hide_advanced": "Hide advanced",
  "home.advanced": "Advanced",
  "home.start": "Start",
  "home.starting_btn": "Starting...",
  "home.scope": "Scope",
  "home.allow": "Allow",
  "home.block": "Block",
  "home.action_rules": "Action rules",
  "home.host": "Host",
  "home.path": "Path",
  "home.block_host_field": "Block host",
  "home.block_path_field": "Block path",

  "home.mode_quick": "Quick",
  "home.mode_quick_copy": "Light discovery.",
  "home.mode_standard": "Standard",
  "home.mode_standard_copy": "Recommended scan.",
  "home.mode_deep": "Deep",
  "home.mode_deep_copy": "More checks.",
  "home.mode_label": "Mode",
  "home.mode_loop": "Loop",
  "home.mode_loop_copy": "Repeat scan.",

  "home.action_recon_copy": "Asset discovery and public signal collection.",
  "home.action_scan_copy": "Service and entry-point identification.",
  "home.action_exploit_copy": "Verification actions that need explicit approval.",
  "home.action_persistent_copy": "Multi-round continuous checking.",
  "home.action_post_exploit_copy": "Post-exploitation steps, usually blocked.",

  "home.running": "Running",
  "home.current_task": "Current task",
  "home.target": "Target",
  "home.view_results": "View results",
  "home.view_reports": "View reports",
  "home.view_boundary": "View boundary",
  "home.verified": "Verified",
  "home.pending": "Pending",
  "home.boundary_hits": "Boundary hits",
  "home.snapshot": "Snapshot",
  "home.saved": "Saved",
  "home.show_raw_events": "Show raw events",
  "home.hide_raw_events": "Hide raw events",
  "home.no_raw_events": "No raw task events yet.",
  "home.waiting_events": "Waiting for task events.",

  "home.scan_complete": "Scan complete",
  "home.scan_error": "Scan stopped by an error",
  "home.scan_stopped": "Scan stopped",
  "home.scanning": "Scanning {target}",

  "home.confirm_deep_title": "Start deep scan?",
  "home.confirm_scan_label": "Start scan",
  "home.confirm_lines": "Target: {target}\nMode: {mode}\nScope: {scope}\n{extra}",
  "home.confirm_extra_care": "This scan may run longer.",
  "home.confirm_not_set": "Not set",

  "home.inferred": "inferred",
  "home.host_scope": "host {host}",
  "home.host_scope_inferred": "host {host} (inferred)",
  "home.port_scope": "port {port}",
  "home.port_scope_inferred": "port {port} (inferred)",
  "home.path_scope": "path {path}",
  "home.path_scope_inferred": "path {path} (inferred)",
  "home.block_host_scope": "block host {host}",
  "home.block_path_scope": "block path {path}",
  "home.continuous_no_path": "Continuous mode does not support a path-only scope.",

  "risk.findings": "Findings",
  "risk.waiting": "Waiting",
  "risk.target": "Target",
  "risk.select_target": "Select a target",
  "risk.back": "« Back",
  "risk.scan": "Scan",
  "risk.asset": "Asset",
  "risk.active_ip": "Active IP",
  "risk.port": "Port",
  "risk.vulnerability": "Vulnerability",
  "risk.hardware": "Hardware",
  "risk.software": "Software",
  "risk.hardware_vendor": "Hardware Vendor",
  "risk.software_vendor": "Software Vendor",
  "risk.generate_report": "Generate report",
  "risk.generating": "Generating...",
  "risk.open_reports": "Open reports",
  "risk.open_scope": "Open scope",
  "risk.report_generated": "Report generated",
  "risk.status": "Status",
  "risk.format": "Format",
  "risk.path": "Path",
  "risk.open_report": "Open report",
  "risk.no_target_selected": "No target selected",
  "risk.loading_target": "Loading target...",
  "risk.new_scan": "New scan",
  "risk.type": "Type",
  "risk.evidence": "Evidence",
  "risk.impact": "Impact",
  "risk.fix": "Fix",
  "risk.no_findings": "No structured findings yet.",
  "risk.next": "Next",
  "risk.scope": "Scope",
  "risk.resume_plan": "Resume plan",
  "risk.recommended_actions": "Recommended actions",
  "risk.priority_targets": "Priority targets",
  "risk.no_reason": "No reason recorded",
  "risk.no_priority": "No priority targets.",
  "risk.raw_data": "Raw data",
  "risk.collapse": "Collapse",
  "risk.expand": "Expand",
  "risk.raw_collapsed": "Raw state collapsed.",

  "risk.action_generate_report": "Generate report",
  "risk.action_generate_report_copy": "Package the current assessment into Markdown or HTML.",
  "risk.action_review_scope": "Review scope",
  "risk.action_review_scope_copy": "Check host, port, path, and action limits.",
  "risk.action_manual_review": "Manual review",
  "risk.action_manual_review_copy": "Confirm high-value lines before expanding verification.",
  "risk.action_continue_scan": "Continue scanning",
  "risk.action_continue_scan_copy": "Keep collecting entry points and weak signals.",
  "risk.action_default_copy": "Follow the current recovery plan.",
  "risk.action_review_pending": "Review pending items",
  "risk.action_review_pending_copy": "Resolve pending evidence before generating the final report.",
  "risk.action_generate_default": "Generate report",
  "risk.action_generate_default_copy": "No next step is selected yet.",

  "risk.conclusion_verified": "Verified findings: {count}",
  "risk.conclusion_manual": "Manual review required: {count}",
  "risk.conclusion_pending": "Pending items: {count}",
  "risk.conclusion_none": "No confirmed findings yet",
  "risk.not_summarized": "Not summarized yet.",
  "risk.validate_patch": "Validate and patch the issue.",
  "risk.impact_needs_review": "Impact needs review.",
  "risk.uncategorized": "Uncategorized",
  "risk.default_finding": "Finding {index}",

  "reports.title": "Reports",
  "reports.files": "{count} files",
  "reports.selected": "Selected",
  "reports.no_report_selected": "No report selected",
  "reports.target": "Target",
  "reports.select_or_enter_target": "Select or enter target",
  "reports.format": "Format",
  "reports.generate": "Generate",
  "reports.generating": "Generating...",
  "reports.preview": "Preview",
  "reports.open_file": "Open file",
  "reports.file_list": "File list",
  "reports.search": "Search",
  "reports.search_placeholder": "target or filename",
  "reports.format_filter": "Format",
  "reports.time_filter": "Time",
  "reports.all": "All",
  "reports.markdown": "Markdown",
  "reports.html": "HTML",
  "reports.all_time": "All time",
  "reports.today": "Today",
  "reports.last_7_days": "Last 7 days",
  "reports.no_reports": "No reports yet",
  "reports.no_matches": "No matches",
  "reports.clear_filters": "Clear filters",
  "reports.export_copy": "Export copy",
  "reports.copy_path": "Copy path",
  "reports.expand": "Expand",
  "reports.path_copied": "Path copied.",
  "reports.clipboard_unavailable": "Clipboard unavailable.",
  "reports.download_started": "Download started.",
  "reports.unknown_date": "Unknown",
  "reports.size_b": "{size} B",
  "reports.size_kb": "{size} KB",
  "reports.size_mb": "{size} MB",
  "reports.html_report": "HTML report",
  "reports.markdown_report": "Markdown report",
  "reports.report_status": "{kind} - {size} - {date}",
  "reports.generated": "Generated: {path}",

  "boundary.title": "Boundary",
  "boundary.blocked": "{count} blocked",
  "boundary.target": "Target",
  "boundary.all_targets": "All targets",
  "boundary.watch": "Boundary watch",
  "boundary.blocked_attempts": "Blocked boundary attempts",
  "boundary.no_blocked": "No blocked attempts yet",
  "boundary.audit_hits": "Audit hits",
  "boundary.high_severity": "High severity",
  "boundary.current_high": "Current high",
  "boundary.rules": "Rules",
  "boundary.current_scope": "Current scope",
  "boundary.active_task_source": "Active task",
  "boundary.saved_target_source": "Saved target",
  "boundary.defaults": "Defaults",
  "boundary.notes": "Notes",
  "boundary.note_checked": "Checked every run",
  "boundary.note_checked_desc": "Port, host, path, and action limits are revalidated before execution.",
  "boundary.note_saved": "Blocked attempts are saved",
  "boundary.note_saved_desc": "Stops are written to audit data for later review.",
  "boundary.note_deeper": "Deeper runs need tighter scope",
  "boundary.note_deeper_desc": "Deep or continuous modes work best with explicit boundaries.",
  "boundary.blocked_attempts_title": "Blocked attempts",
  "boundary.no_blocked_recorded": "No blocked attempts recorded.",
  "boundary.blocked_attempt": "Blocked attempt",
  "boundary.blocked_attempt_default": "The action did not match the current boundary.",
  "boundary.technical_audit": "Technical audit",
  "boundary.hide": "Hide",
  "boundary.show": "Show",
  "boundary.by_source": "By source",
  "boundary.by_rule": "By rule",
  "boundary.no_source": "No source data.",
  "boundary.no_rule": "No rule data.",
  "boundary.technical_hidden": "Technical audit hidden.",
  "boundary.loading_target": "Loading target boundary...",
  "boundary.no_scope_set": "No extra scope is set for this target.",
  "boundary.set_scope_home": "Set scope on home",
  "boundary.no_defaults": "No saved default boundary yet.",
  "boundary.open_settings": "Open settings",
  "boundary.readiness_add_scope": "Add a scope boundary",
  "boundary.readiness_add_scope_desc": "No explicit host, port, path, or action limits are set.",
  "boundary.readiness_clear": "Scope is clear",
  "boundary.readiness_clear_desc": "Target and action boundaries are both defined.",
  "boundary.readiness_active": "Boundary is active",
  "boundary.readiness_active_need_actions": "Add action limits for tighter control.",
  "boundary.readiness_active_need_scope": "Add a host, port, or path boundary for precision.",
  "boundary.unknown": "Unknown",
  "boundary.unrecorded": "Unrecorded",

  "history.title": "History",
  "history.tasks_count": "{count} tasks",
  "history.tasks": "Tasks",
  "history.targets": "Targets",
  "history.snapshots": "Snapshots",
  "history.diff": "Diff",
  "history.open_results": "Open results",
  "history.open_reports": "Open reports",
  "history.restore": "Restore",
  "history.restoring": "Restoring...",
  "history.from": "From",
  "history.to": "To",
  "history.current": "Current",
  "history.select": "Select",
  "history.verified_pending": "{verified} verified / {pending} pending",
  "history.snapshot_detail": "Verified {verified} / Pending {pending}",
  "history.no_task_history": "No task history",
  "history.no_target_state": "No target state",
  "history.new_scan": "New scan",
  "history.no_snapshots": "No snapshots for this target.",
  "history.choose_target_snapshots": "Choose a target to view snapshots.",
  "history.pick_snapshots": "Pick snapshots to compare.",
  "history.loading_diff": "Loading diff...",
  "history.diff_risk_changed": "Risk data changed.",
  "history.diff_new_context": "The scan added new context.",
  "history.diff_no_delta": "No obvious delta between the snapshots.",
  "history.added_findings": "Added findings",
  "history.updated_findings": "Updated findings",
  "history.added_steps": "Added steps",
  "history.added_assets": "Added assets",
  "history.none": "None",
  "history.confirm_restore_title": "Restore snapshot",
  "history.confirm_restore_copy": "Restoring a snapshot rolls the current target state back to the selected point.",
  "history.restored": "Restored {target} to {snapshot}.",

  "settings.preferences": "Preferences",
  "settings.preferences_copy": "Local UI defaults",
  "settings.model": "Model",
  "settings.model_copy": "Provider and endpoint",
  "settings.scan_policy": "Scan Policy",
  "settings.scan_policy_copy": "Rounds and runtime",
  "settings.boundary": "Boundary",
  "settings.boundary_copy": "Default scope",
  "settings.data": "Data",
  "settings.data_copy": "Output paths",
  "settings.scripts": "Scripts",
  "settings.scripts_copy": "Local execution",
  "settings.diagnostics": "Diagnostics",
  "settings.diagnostics_copy": "MCP status",

  "settings.save_preferences": "Save preferences",
  "settings.save_boundary": "Save boundary",
  "settings.save_settings": "Save settings",
  "settings.saving": "Saving...",
  "settings.preferences_saved": "Preferences saved.",
  "settings.boundary_saved": "Boundary defaults saved.",
  "settings.settings_saved": "Settings saved.",
  "settings.api_key_set": "API key set",
  "settings.no_api_key": "No API key",
  "settings.local_only": "Local only",
  "settings.local_only_note": "UI preferences are stored in this browser. Runtime settings are saved to the backend.",

  "settings.language": "Language",
  "settings.english": "English",
  "settings.chinese": "中文",
  "settings.default_scan_mode": "Default scan mode",
  "settings.quick_recon": "Quick Recon",
  "settings.standard_scan": "Standard Scan",
  "settings.deep_scan": "Deep Scan",
  "settings.continuous_scan": "Continuous Scan",
  "settings.default_report_format": "Default report format",
  "settings.show_raw_events_default": "Show raw event entry by default",

  "settings.provider": "Provider",
  "settings.provider_hint": "Backend provider id, for example openai.",
  "settings.model_field": "Model",
  "settings.model_hint": "Use the model name configured for your backend.",
  "settings.base_url": "Base URL",
  "settings.base_url_hint": "Leave blank to use the backend default.",
  "settings.custom_endpoint": "Custom endpoint…",
  "settings.custom_model": "Custom model…",
  "settings.refresh_models": "Refresh models",
  "settings.loading_models": "Loading…",
  "settings.models_loaded": "Loaded {count} models",
  "settings.no_models": "No models returned. Save your API key, then refresh.",

  "settings.max_rounds": "Max rounds",
  "settings.rounds_per_cycle": "Rounds per cycle",
  "settings.max_cycles": "Max cycles",
  "settings.show_reasoning": "Show model reasoning output",
  "settings.mcp_services": "MCP services",
  "settings.runnable": "Runnable",
  "settings.tools": "Tools",
  "settings.runtime_check": "Runtime check",

  "settings.default_port_only": "Default port only",
  "settings.default_port_hint": "Blank means set it per scan.",
  "settings.default_host_only": "Default host only",
  "settings.default_path_only": "Default path only",
  "settings.default_block_host": "Default block host",
  "settings.default_block_path": "Default block path",
  "settings.default_allow_actions": "Default allow actions",
  "settings.default_block_actions": "Default block actions",

  "settings.output_dir": "Output directory",
  "settings.reports_note": "Reports",
  "settings.reports_note_text": "If not overridden, reports are written under the VulnClaw sessions report directory.",

  "settings.enable_local_script": "Enable local script helper",
  "settings.record_script_audit": "Record local script audit",
  "settings.execution_guard": "Execution guard",
  "settings.safe_mode": "Safe",
  "settings.safe_mode_copy": "Restricts file I/O, network access, and system calls.",
  "settings.lab_mode": "Lab",
  "settings.lab_mode_copy": "Allows more local analysis for controlled labs.",
  "settings.trusted_mode": "Trusted local",
  "settings.trusted_mode_copy": "Full local capability for trusted authorized machines.",
  "settings.max_output_lines": "Max output lines",

  "settings.need_raw_inputs": "Need raw task inputs?",
  "settings.need_raw_inputs_text": "Open the task console for SSE events, raw command parameters, and boundary debugging.",
  "settings.open_task_console": "Open task console",
  "settings.no_mcp_diag": "No MCP diagnostics yet.",

  "console.title": "Task Console",
  "console.description": "Raw command inputs, SSE events, and advanced task parameters.",
  "console.command": "Command",
  "console.api_command": "API command: {command}",
  "console.target": "Target",
  "console.resume_state": "Resume target state",
  "console.max_rounds": "Max rounds",
  "console.rounds_per_cycle": "Rounds per cycle",
  "console.max_cycles": "Max cycles",
  "console.cve_hint": "CVE hint",
  "console.port_only": "Port only",
  "console.host_only": "Host only",
  "console.path_only": "Path only",
  "console.block_host": "Block host",
  "console.block_path": "Block path",
  "console.allow_actions": "Allow actions",
  "console.block_actions": "Block actions",
  "console.command_hint": "Command hint",
  "console.launch_raw": "Launch raw task",
  "console.launching": "Launching...",
  "console.stop_task": "Stop task",
  "console.confirm_raw_title": "Confirm raw task",
  "console.confirm_raw_copy": "You are starting a raw task from the advanced console.\nTarget: {target}\nCommand: {command}\nScope: {scope}\nConfirm the target is authorized and the scope is correct.",
  "console.confirm_stop_title": "Stop current task",
  "console.confirm_stop_copy": "The current task will stop. Saved target state and reports remain available.\nTarget: {target}\nTask: {task}",
  "console.launch": "Launch",
  "console.stop": "Stop",
  "console.task_log": "Task log",
  "console.live_events": "Live event stream",
  "console.no_tasks": "No tasks yet.",
  "console.no_running": "No running task.",
  "console.task_id": "Task ID: {id}",
  "console.command_line": "Command: {command} ({raw})",
  "console.target_line": "Target: {target}",
  "console.phase_line": "Phase: {phase}",
  "console.boundary_line": "Boundary: {boundary}",
  "console.no_allow_list": "No explicit allow list",
  "console.no_block_list": "No explicit block list",
  "console.backend_default": "Backend default",
  "console.continuous_only": "Continuous only",

  "error_boundary.kicker": "UI guard",
  "error_boundary.title": "VulnClaw UI hit a rendering error",
  "error_boundary.copy": "Saved targets, reports, and task history remain intact. Reload the UI, then continue from History or Reports.",
  "error_boundary.reload": "Reload UI",
  "error_boundary.technical": "Technical error",

  "report.dialog_title": "Report preview",
  "report.dialog_kicker": "Report preview"
}
