{
  "catSystem": "System files",
  "catMail": "Mail",
  "catSecurity": "Security",
  "catApp": "App",
  "catOther": "Other",
  "journalService": "Journal unit",
  "unavailable": "Unavailable",
  "compressed": " · compressed",
  "noLogFileYet": "(no log file yet)",
  "afterDeploy": "Appears after deploy",
  "logsLoaded": "Logs loaded",
  "sseFailed": "SSE failed, falling back to poll",
  "sseInterrupted": "SSE interrupted",
  "settingsSaved": "Settings saved",
  "exportedJsonl": "Exported JSONL",
  "exported": "Exported",
  "bookmarkSaved": "Bookmark saved",
  "title": "Log center",
  "fullAccess": "Full access",
  "nonRoot": "Non-root",
  "noExecute": "No EXECUTE",
  "error": "Error",
  "projectLog": "Project logs",
  "filesCount": "{{count}} file(s)",
  "tabExplore": "Explore",
  "tabMaint": "Maintenance",
  "tabSettings": "Settings",
  "tabAbout": "About",
  "sources": "Log sources",
  "filterPlaceholder": "Filter unit / file…",
  "filterSources": "Filter sources",
  "noProjectLogs": "No project logs — appear after deploy",
  "noMatchSources": "No matching sources",
  "projectPrefix": "Project · ",
  "timeRange": "Time range",
  "unlimited": "Unlimited",
  "priority": "Priority",
  "all": "All",
  "keywordIp": "Keyword / IP…",
  "custom": "Custom",
  "copied": "Copied",
  "truncated": " · truncated",
  "following": " · following",
  "followingSse": " · following (SSE)",
  "loadingSources": "Loading sources…",
  "pickSource": "Pick a source on the left, or a shortcut · then Query",
  "noRowsInWindow": "No records in this time window",
  "showInactiveUnits": "Show inactive units",
  "sseNeedFollow": "Turn on Follow first — SSE is only for live tail",
  "maintOverview": "Maintenance overview",
  "executable": "Executable",
  "restricted": "Restricted",
  "needRootExecute": "Needs root+EXECUTE",
  "retention": "Retention",
  "retentionHint": "e.g. 7d · 14d · 30d",
  "defaultLines": "Default lines",
  "followInterval": "Follow interval",
  "maxBytes": "Max bytes",
  "maskSecrets": "Mask secrets",
  "defaultVacuumDays": "Default vacuum days",
  "d7": "7 days",
  "d14": "14 days",
  "d30": "30 days",
  "d90": "90 days",
  "journalAlerts": "Journal alerts",
  "autoVacuum": "Auto vacuum",
  "deleted": "Deleted",
  "bookmarkDeleted": "Bookmark deleted",
  "opsResult": "Ops result",
  "saveBookmark": "Save bookmark",
  "bookmarkNamePrompt": "Name for current query",
  "query": "Query",
  "follow": "Follow",
  "export": "Export",
  "vacuum": "Vacuum",
  "loadFailed": "Failed to load",
  "projectLogsLink": "Project → Logs",
  "projectLogsDesc": " — per-site shortcut + deep link",
  "queryFollow": "Query and follow",
  "queryFollowDesc": "Default lines, follow interval, response cap on Explore",
  "retentionAlerts": "Retention and alerts",
  "retentionAlertsDesc": "vacuum defaults, journal disk alerts, auto-clean windows",
  "dailyNeedRoot": "Daily (needs root + EXECUTE)",
  "customAllow": "Custom allow paths",
  "customAllowDesc": "Only /var/log or /run/log · reject .ssh, keys, /etc",
  "pathsCount": "{{n}} path(s)",
  "noCustomPaths": "No custom paths yet",
  "bookmarks": "Bookmarks",
  "bookmarksDesc": "Common Explore filters; open switches to Explore and applies source",
  "noBookmarks": "No bookmarks — query on Explore then Save bookmark",
  "settingsWriteNote": "Settings write to panel DB; auto vacuum checks window every 15 minutes.",
  "saveSettings": "Save settings",
  "vacuumDaysQ": "Vacuum time {{days}}?",
  "vacuumSizeQ": "Vacuum size 500M?",
  "vacuumDesc": "journalctl vacuum deletes old logs permanently.",
  "vacuumRequested": "Vacuum requested",
  "vacuumSizeRequested": "Vacuum size requested",
  "scLogs": "Observe journal / files / projects",
  "scProtection": "Incident response, auto ban (click IP)",
  "shortcuts": "Shortcuts",
  "projectsOnly": "Projects only",
  "filesTitle": "{{n}} file(s)",
  "bookmarksLabel": "Bookmarks",
  "filter": "Filter",
  "followSec": "Follow {{sec}}s",
  "wrap": "Wrap",
  "bookmark": "Bookmark",
  "standby": "Idle",
  "partialFail": "Partial / failed",
  "lines": "{{n}} lines",
  "followingSseDyn": " · following{{sse}}",
  "ipBan": "IP → ban",
  "vacuumNote": "Reclaims systemd-journald disk. Without execute permission the action is blocked — it is not treated as success.",
  "vacuumTime": "Clean by retention",
  "vacuumNeedRetention": "Enter a retention window first (for example 14d)",
  "vacuumNeedConfirm": "Needs confirmation — deletes old journal logs",
  "vacuumSizeNeedConfirm": "Needs confirmation — caps journal disk use",
  "vacuumHint": "Keep ≥7 days recommended; re-probe disk after.",
  "logrotateStatus": "System logrotate status (read-only probe)",
  "logrotateMissing": "No status file or unreadable — check logrotate package in services matrix",
  "relatedOps": "Related ops",
  "relatedOpsDesc": "Log observation vs incident response",
  "scLogsLine": "Observe journal / files / projects",
  "scProtLine": "Incident response, auto ban (click IP)",
  "journalVacuumTitle": "Clean journald disk",
  "journalSection": "Journal",
  "sseLabel": "SSE",
  "logrotateLabel": "logrotate",
  "srcNginx": "nginx",
  "srcSsh": "ssh",
  "srcfail2ban": "fail2ban",
  "srcFail2ban": "fail2ban",
  "srcAuthLog": "auth.log",
  "srcNginxError": "nginx error",
  "srcLetsEncrypt": "letsencrypt",
  "groupJournal": "Journal",
  "groupVarLog": "/var/log",
  "prioErr": "err+",
  "prioWarn": "warn+",
  "prioInfo": "info+",
  "vacuumSize": "Limit to 500 MB",
  "logrotateNoStatus": "No logrotate status file yet (normal if it has never run).",
  "autoVacuumOff": "Automatic clean is off. Time is unused until you enable it.",
  "aboutAllowlist": "Explore can only read allowlisted journal units and /var/log paths. Arbitrary host paths are not offered.",
  "aboutCustomPath": "Add a custom path on Settings (only /var/log or /run/log). Then open it from Explore.",
  "vacuumSizeAlreadyBelow": "Current usage already below cap, this will no-op",
  "vacuumSizeNoopDesc": "Journal is already under 500 MB. This still runs vacuum --size=500M and typically deletes nothing.",
  "journalDiskHint": "Current systemd-journald usage (active journal). Rotated files under /var/log are not included.",
  "varLogDiskHint": "Estimated du of /var/log, including rotated files. Approximate.",
  "queryFirst": "Query first",
  "errorsWindowHint": "Recent errors from the last overview probe (not live-updating when you switch tabs)",
  "sourceCount": "{{shown}} shown",
  "sourceUnavailable": "This source has not produced a log yet",
  "sourceNoLog": "No log yet",
  "projectSourcesTitle": "{{n}} source(s) (files + journal)",
  "logrotatePath": "Path",
  "logrotateLast": "Last rotated",
  "exportJsonl": "JSONL export",
  "sseLive": " (live stream)",
  "logrotateExpand": "Show {{n}} more",
  "logrotateCollapse": "Show fewer",
  "logrotateVersion": "Status version {{v}}"
}
