{
  "levels": {
    "low": {
      "label": "正常",
      "verb": "系統平穩",
      "hint": "維持日常防護即可"
    },
    "elevated": {
      "label": "偏高",
      "verb": "有異常跡象",
      "hint": "建議切到「加固」並留意可疑 IP"
    },
    "under_attack": {
      "label": "受攻擊",
      "verb": "疑似正在受攻擊",
      "hint": "立即套用「受攻擊」檔 + 批量封禁"
    },
    "critical": {
      "label": "危急",
      "verb": "威脅嚴重",
      "hint": "考慮緊急檔；確認白名單有你"
    }
  },
  "presetsWhen": {
    "daily": "日常營運",
    "hardened": "掃描／暴力",
    "under_attack": "L7 爆量",
    "emergency": "最後手段"
  },
  "note": {
    "notApplied": "未套用到系統（需 管理員權限與系統變更權限已開啟）— 已記到管理設定",
    "nginxWritten": "已寫入 Nginx 限速管理檔",
    "f2bWritten": "已寫入 fail2ban 管理設定",
    "hintDropped": "已略過內部防護提示",
    "nginxLimits": "將寫入 Nginx 限速片段"
  },
  "rel": {
    "justNow": "剛剛",
    "minutesAgo": "{{n}} 分鐘前",
    "hoursAgo": "{{n}} 小時前"
  },
  "apiUnreachable": "無法連線 介面（Web proxy／後端可能未啟動）",
  "geoipLoadFailed": "載入 GeoIP 失敗",
  "loadFailed": "載入失敗",
  "previewDone": "預覽完成（未寫入）",
  "presetApplied": "已套用防護檔",
  "manualBan": "手動封禁",
  "banSent": "已送出封禁 {{ip}}",
  "quickSelectBan": "快速選取封禁",
  "bulkBan": "批量封禁 {{count}} 個",
  "autoBanStatus": "自動 封鎖：{{onOff}} · {{mode}} · {{method}}",
  "autoBanUpdated": "已更新自動 封鎖",
  "automationMaster": "自動化主開關：{{onOff}}",
  "autoPresetStatus": "自動防護檔：{{onOff}}",
  "autoBanAutomation": "自動 封鎖：{{onOff}}（{{mode}}）",
  "automationSaved": "已儲存自動化設定",
  "statFirewall": "防火牆",
  "statSuspects": "可疑 IP",
  "statSuspectsSplit": "可操作 {{actionable}}／全部 {{total}}",
  "suspectActionableCount": "可操作 IP {{count}}",
  "scoreBasisHint": "威脅分計入防火牆、fail2ban 封禁量與請求速率，與情報分頁的可疑清單不是同一計數。",
  "statAutoBan": "自動 封鎖",
  "statApply": "系統套用",
  "statActiveBans": "活躍封禁",
  "statPreset": "防護檔",
  "threatPill": "威脅 {{label}} · {{score}} 分",
  "reprobed": "已重新探測",
  "loadingStatus": "載入防護狀態…",
  "tabs": {
    "command": "應變",
    "automation": "自動化",
    "bans": "封禁",
    "geo": "IP 准入",
    "stack": "底層",
    "intel": "情報",
    "about": "說明"
  },
  "reapply": "重新套用",
  "nginxLimits": "Nginx 限速",
  "notWritten": "未寫",
  "modeValue": {
    "normal": "正常",
    "degraded": "降級",
    "ddos-protection": "DDoS 防護",
    "offline": "離線"
  },
  "mode": "模式",
  "controlPlane": "控制面",
  "canApply": "可套用",
  "needRoot": "需要管理員權限",
  "writeOnly": "只寫檔",
  "autoRunning": "運作中 · 間隔 {{sec}}s · 本小時 封鎖 {{n}}",
  "autoOffManual": "關閉 — 只人手操作",
  "lastTick": "· 上次 {{t}}",
  "nextTick": "· 下輪 {{t}}",
  "on": "開",
  "off": "關",
  "open": "開啟",
  "ranAutomationTick": "已跑一輪自動化",
  "escalateHardened": "加固 ≥ 分數",
  "escalateAttack": "受攻擊 ≥ 分數",
  "deescalateDaily": "回落日常 < 分數",
  "zeroOff": "0 關",
  "holdAfterEscalate": "升檔後最少維持",
  "min5": "5 分",
  "min15": "15 分",
  "min30": "30 分",
  "hour1": "1 時",
  "hour2": "2 時",
  "hour6": "6 時",
  "presetOrCustom": "預設檔 / 自訂",
  "autoBanMode": "自動封禁模式",
  "soft": "寬鬆",
  "normal": "標準",
  "aggressive": "積極",
  "custom": "自訂",
  "method": "方式",
  "banMethod": "封禁方式",
  "both": "兩者",
  "scoreGte": "分數 ≥",
  "hitsGte": "請求 hits ≥",
  "hits429Gte": "429 相關 hits ≥",
  "scanHitsGte": "掃描路徑 hits ≥",
  "cooldown": "冷卻",
  "maxPerHour": "每小時上限",
  "scanInterval": "掃描間隔",
  "schedulerDefault": "scheduler 預設 120s",
  "collapse": "收起",
  "expand": "展開",
  "step": "步驟",
  "mechanism": "機制",
  "youCanTune": "你可調",
  "probe": "探測",
  "probeSignals": "外網／請求率／TCP／f2b／UFW",
  "escalateThreshold": "升檔門檻",
  "emergency": "緊急",
  "neverAuto": "永不自動",
  "manualEmergency": "人手 EMERGENCY",
  "signalNetworkDown": "外網斷",
  "signalHighReq": "高請求率",
  "signalDdos": "DDoS 啟發式",
  "signalTcp": "TCP 連線",
  "signalUfwOff": "UFW 關閉",
  "signalF2bBans": "fail2ban 封禁數",
  "weightHint": "{{label}} 權重 0–3",
  "detected": "（已偵測）",
  "notSet": "（未設定）",
  "zonesComma": "Zones（逗號分隔）",
  "underAttackRequested": "已請求 Under Attack",
  "underAttackCleared": "已請求解除 UA",
  "autoBanOpen": "已開 · {{mode}} · 本小時 {{n}}/{{max}}",
  "autoBanClosed": "關閉 — 只靠手動／列表",
  "pausedNoExecute": "· 暫停（無 執行）",
  "circuitOpen": "· 已熔斷",
  "autoBanModeLabel": "自動 封鎖 模式",
  "scanned": "已掃描",
  "bulkOps": "批量操作",
  "fromAccessLog": "來自 access 日誌 · 一鍵或批量封禁",
  "noSuspectIps": "暫時無可疑 IP",
  "noSuspectDesc": "有掃描／429 流量時會自動出現。亦可展開手動封禁。",
  "whitelistPlus": "白名單 + {{ip}}",
  "whitelistAdded": "已加入白名單",
  "activeBansTitle": "活躍封禁 ({{count}})",
  "activeBansDesc": "防護中心彙總 · 解封經 defense 介面（同 fail2ban-客戶端）",
  "source": "來源",
  "unbanned": "已解封",
  "noBans": "未有封禁",
  "noBansDesc": "封禁後顯示於此",
  "collapseQuickAdd": "收起快加",
  "quickAddOne": "快加一條",
  "removeItem": "移除 {{w}}",
  "updated": "已更新",
  "ipOrCidr": "IPv4／IPv6 或 CIDR",
  "autoBanWhitelistAdded": "已加入 auto-封鎖 白名單",
  "added": "已加入",
  "banIpPlaceholder": "要封禁的 IPv4 或 IPv6",
  "reason": "原因",
  "scanBrute": "掃描 / 暴力",
  "noSignals": "尚無訊號",
  "pressReprobe": "按重新探測",
  "points": "分",
  "noTopIps": "暫無 Top IP",
  "topIpsAfterLog": "有 日誌 後會顯示",
  "noManagedVhost": "無 managed vhost",
  "afterPresetMarker": "套用防護檔後會注入 marker",
  "injected": "已注入 YSK_DEFENSE",
  "notInjected": "未注入",
  "noEvents": "暫無事件",
  "eventsAfterOps": "套用／封禁後出現",
  "geoipUpdated": "GeoIP 庫已更新",
  "dbReady": "庫就緒",
  "stale": "過舊",
  "older7d": ">7 日",
  "lastSuccess": "上次成功",
  "downloaded": "已下載",
  "missing": "缺失",
  "geoMode": "Geo 准入模式",
  "denyList": "封鎖名單",
  "allowListHighRisk": "允許名單 · 高危",
  "autoUpdateDb": "自動更新庫",
  "countriesSelected": "國家（已選 {{n}}）",
  "searchCountry": "搜尋中文名或 ISO",
  "countryPlaceholder": "中國 / CN",
  "regionsSelected": "省／州（已選 {{n}}）",
  "regionsHint": "依已選國家顯示；可自訂 CN-GD",
  "pickCountryFirst": "建議先選國家以收窄列表",
  "customRegion": "自訂，例 CN-GD",
  "regionPlaceholder": "廣東 / CA / 東京",
  "continentsSelected": "大陸（已選 {{n}}）",
  "continentsHint": "洲際（可選）",
  "continentPlaceholder": "亞洲 / EU",
  "asnsSelected": "供應商 ASN（已選 {{n}}）",
  "asnsHint": "雲／ISP；可自訂 ASN",
  "customAsn": "自訂 ASN，例 13335",
  "asnPlaceholder": "Cloudflare / 電信",
  "cityExample": "例：CN|Shenzhen 或 US|Ashburn",
  "policySaved": "政策已儲存 · 國 {{c}} · 省 {{r}} · ASN {{a}}",
  "ipPolicySaved": "IP 准入政策已儲存",
  "nginxGeoWritten": "已寫入 nginx geo 片段",
  "ipAddress": "IP 位址",
  "lookupPlaceholder": "要查詢的 IPv4 或 IPv6",
  "wouldBlock": "會攔截 · {{reason}} · {{matched}}",
  "wouldAllow": "放行 · {{reason}}",
  "lookupDone": "Lookup 完成",
  "item": "項目",
  "value": "值",
  "country": "國家",
  "region": "省／州",
  "city": "城市",
  "continent": "大陸",
  "coords": "座標",
  "provider": "供應商",
  "policy": "政策",
  "block": "攔截",
  "allow": "放行",
  "matched": "命中",
  "applyStricterTitle": "套用「{{name}}」？",
  "applyStricterDesc": "可能開啟自動封鎖。請確認白名單有你的 IP。請核對以下變更。",
  "confirmEmergencyTitle": "確認緊急防護檔",
  "confirmEmergencyDesc": "緊急檔會極度限速。請確認白名單有你的 IP，並輸入 EMERGENCY。",
  "confirmString": "確認字串",
  "applyEmergency": "套用緊急檔",
  "sectionPreset": "防護檔",
  "sectionAutoPreset": "① 自動防護檔",
  "sectionAutoBan": "② 自動封禁",
  "unban": "解封",
  "ban": "封禁",
  "banConfirmTitle": "封禁 {{ip}}？",
  "banConfirmMethod": "方法：{{method}}",
  "banConfirmUntilUnban": "會一直維持，直至你解除封禁（或 fail2ban 到期）。",
  "banConfirmDesc": "此 IP 會在主機上被封鎖。請確認不是目前面板或工作階段來源。",
  "wlRemovedUndo": "已從白名單移除 {{ip}}。5 秒內可復原。",
  "undo": "復原",
  "banSelectedConfirmTitle": "封禁已選 {{count}} 個 IP？",
  "banSelectedConfirmDesc": "以下地址會在主機上被封鎖：{{ips}}",
  "save": "儲存",
  "yes": "是",
  "no": "否",
  "oneClickSuggested": "一鍵套用建議檔",
  "stackApply": "套用防護組合（UFW、fail2ban、建議檔）",
  "stackApplyDone": "已要求套用防護組合",
  "stackApplyHint": "會啟用 UFW 並套用 fail2ban 與建議防護檔。遠端面板請先確認不會把自己鎖在外面。",
  "viewPresets": "檢視防護檔",
  "suspectIpsCount": "可疑 IP {{count}}",
  "goBans": "去封禁",
  "singleEntryPrefix": "單一入口：",
  "singleEntryBody": " ",
  "emergencyNeverAuto": "緊急檔永不自動",
  "writeOnlyBanner": "唯寫模式：系統套用需 EXECUTE=1 與 root。",
  "readiness": "就緒探測",
  "goTo": "前往",
  "presetGuide": "",
  "active": "作用中",
  "recommended": "建議",
  "useCarefully": "慎用",
  "preview": "預覽",
  "stackToolsSee": "底層工具見「底層」分頁 ·",
  "readinessCheck": "就緒檢查",
  "automationMasterLabel": "自動化主開關",
  "runOneTick": "立即執行一輪",
  "suggestEmergencyBanner": "分數極高 — 系統建議緊急檔，但不會自動套用。請到應變人手確認。",
  "autoPresetDesc": "依威脅分自動切 日常／加固／受攻擊。緊急檔永不自動。",
  "allowDeescalate": "允許自動回落（降檔）",
  "autoBanThresholdHint": "選 soft/normal/aggressive 會自動填閾值；選「自訂」先可改分數／hits。無 系統變更權限 時只會記錄，不會真 封鎖。",
  "sectionMechanism": "③ 機制說明",
  "lastNotes": "上次：{{notes}}",
  "sectionWeights": "④ 訊號權重（0–3）",
  "weightsDesc": "預設 1；加大會令該類訊號更容易推高威脅分。細範圍用單選，不用手填數字。",
  "needCfToken": "需環境變數 CF_API_TOKEN",
  "cfOnEscalate": "。升至「受攻擊」或人手套用該檔時可打 介面。",
  "ufwOnlyCf": "受攻擊時 UFW 只放 CF 網段（+遠端登入）",
  "ufwOnlyCfHint": "會重設 UFW 並只允許 Cloudflare IP；需系統變更權限。",
  "saveZones": "儲存 zones",
  "uaNow": "立即 Under Attack",
  "uaClear": "解除（→ high）",
  "stackRoleNote": "UFW 與 fail2ban 是防護中心底下的工具頁（不再佔側欄一級）。側欄只保留本頁。",
  "fwUfwTitle": "防火牆 UFW",
  "fwStats": "埠策略 · 永久 DENY · 允許 {{allow}} · 拒絕 {{deny}}",
  "fwRulesProfiles": "UFW 規則與設定檔",
  "f2bStats": "日誌臨時 封鎖 · {{jails}} jails · 封鎖中 {{banned}}",
  "jailsWhitelistPolicy": "Jail · 白名單 · 策略",
  "divisionTitle": "分工一覽",
  "divisionUfw": "UFW = 開哪個埠、永久拒哪個 IP",
  "divisionF2b": "fail2ban = 掃 日誌 之後臨時 封鎖",
  "divisionDefense": "本頁應變／自動化 = 攻擊時總控（限速檔 + 自動 封鎖 + 可疑列表）",
  "autoBanLabel": "自動 封鎖",
  "scanOnce": "掃一次",
  "selectedIps": "已選 {{count}} 個 IP",
  "banSelected": "封禁已選",
  "suspectIps": "可疑 IP",
  "selectAll": "全選",
  "alreadyBanned": "已封禁",
  "whitelist": "白名單",
  "bansWorkflow": "攻擊應變：可疑列表 → 封禁／解封。Jail 策略、ignoreip、服務生命週期見",
  "f2bTool": "fail2ban 工具",
  "noSecondJail": "（不在這裡再做第二套 jail 編輯）。",
  "autoBanWhitelistTitle": "自動 封鎖 白名單",
  "autoBanWhitelistDesc": "防護中心自動封鎖豁免（會同步 fail2ban ignoreip.txt）。完整 ignoreip 在 fail2ban 工具 → 白名單。",
  "ufwOff": "UFW（未啟用）",
  "ufwOffHint": "UFW 未運行 — 可用目標是 fail2ban。",
  "whitelistSyncHint": "面板 {{n}} 條 · fail2ban ignoreip 同步：{{sync}}",
  "whitelistSyncOn": "開",
  "whitelistSyncOff": "關（兩邊清單可能不一致）",
  "ignoreipWhitelist": "ignoreip 白名單",
  "notSetSuggestAdmin": "未設定（建議加入你的管理 IP）",
  "moreItems": "… 還有 {{n}} 項 · 見 fail2ban 白名單",
  "add": "加入",
  "manualBanTitle": "手動封禁",
  "methodFollows": "方式沿用上方選擇（fail2ban / UFW）",
  "preferSuspectList": "多數情況用可疑列表即可。",
  "threatSignals": "威脅訊號",
  "scoreSource": "分數來源 · 權重可調",
  "accessAuthSample": "access + auth 樣本",
  "fullLogsAt": "完整 nginx／auth 日誌 請到",
  "logCenter": "日誌中心",
  "colScore": "分",
  "colHits": "次數",
  "col429": "429",
  "topIpsTitle": "熱點 IP",
  "hitsCount": "{{n}} 次",
  "sampleWindowHint": "計數來自目前 access 與 auth 樣本視窗，不是完整日誌檔。",
  "banShort": "封",
  "vhostLimits": "Vhost 限速",
  "eventStream": "事件流",
  "eventKind": {
    "preset": "防護檔",
    "auto_preset": "自動切檔",
    "cloudflare_ua": "Cloudflare",
    "ban": "封禁",
    "unban": "解封"
  },
  "hours48": "48 小時",
  "geoipDb": "GeoIP 資料庫",
  "refreshStatus": "重新整理狀態",
  "updateDbNow": "立即更新庫",
  "geoipSourceHint": "預設本機 GeoIP 資料庫；可選 IPinfo token。",
  "retry": "重試",
  "loadingGeoip": "載入 GeoIP 狀態…",
  "nextScheduledUpdate": "排程下次更新：{{at}}",
  "statusNotLoaded": "尚未載入狀態",
  "load": "載入",
  "accessPolicy": "准入政策",
  "enable": "啟用",
  "freeGranularity": "免費最高細分：國家 + 省／州 + ASN；城市可選政策（預設關，準確率較低）。供應商 = ASN。Whitelist 永遠豁免。點 chip 移除。",
  "allowListDanger": "允許名單模式高危：不在名單的公網 IP（含未知 geo）會被擋。請確認管理端 IP 已加入封禁頁 whitelist。",
  "dailySchedule": "每日排程",
  "cityPolicy": "城市政策（低置信 · 可選）",
  "useCityAccess": "用城市做准入",
  "cityPolicyHint": "免費庫城市準確率有限。格式 CN|Guangzhou；未勾選時城市只作查詢展示。",
  "noCitiesYet": "尚未加入城市",
  "savePolicy": "儲存政策",
  "applyNginxSnippet": "套用 Nginx 片段",
  "nginxSnippetHint": "需 nginx geoip2 模組才可在 HTTP 層攔截。",
  "testIp": "測試 IP",
  "lookup": "查詢",
  "plusCountry": "+ 國家 {{v}}",
  "plusRegion": "+ 省 {{v}}",
  "plusCity": "+ 城市 {{v}}",
  "lastTickPrefix": "· 上次 {{t}}",
  "nextTickPrefix": "· 下輪 {{t}}",
  "cannotBanSelf": "不可封鎖 {{ip}} — 這是本機、你的登入 IP 或 ignoreip",
  "selfIp": "本機",
  "selfHostIp": "主機 IP",
  "selfLoginIp": "你的登入 IP",
  "showZeroScore": "顯示 0 分",
  "hideZeroScore": "隱藏 0 分",
  "freshnessNa": "不適用",
  "freshnessMissing": "無庫",
  "freshnessStale": "過舊",
  "freshnessFresh": "最新",
  "geoDraftOnly": "政策未啟用 — 儲存只寫草稿，Nginx 不會執行，直至你勾選啟用。",
  "uaNeedZones": "請先設定 Cloudflare zone",
  "geoNeedDb": "尚未有本地 GeoIP 庫 — 請先更新 MMDB 檔",
  "selectAllCountriesWarn": "封鎖名單模式下全選全部國家？這可能把本機與你的登入所在地一併封鎖。",
  "badgeRecommendPreset": "以目前威脅水平，建議改用更強預設",
  "badgeAutomationOn": "自動化已開啟",
  "badgeBanCount": "目前封鎖數",
  "badgeGeoOn": "Geo 准入政策已啟用",
  "badgeGeoNotReady": "GeoIP 資料庫尚未就緒",
  "badgeIntelSignals": "目前計分的訊號數",
  "signalActive": "運作中",
  "signalInactive": "未啟用",
  "signalJails": "{{n}} 個 jail",
  "dbReadyHint": "已有 MMDB 檔",
  "dbNotReadyHint": "請先下載 GeoIP 資料庫",
  "staleHint": "上次成功更新是否已超過 7 日",
  "draftBadge": "草稿",
  "banIsSelf": "此 IP 是目前面板來源或本機。",
  "banNotSelf": "此 IP 不是目前面板來源。",
  "geoSourceLocal": "本機 GeoIP 庫（sapics + DB-IP）",
  "nginxPreviewHint": "此預設會寫入的 Nginx 片段（僅預覽）："
}
