export const settings = {
  title: '设置',
  language: '语言',
  languageEn: 'English',
  languageDe: 'Deutsch',
  languageEs: 'Español',
  languageFr: 'Français',
  languageIt: 'Italiano',
  languageNl: 'Nederlands',
  languageNb: 'Norsk',
  languageRu: 'Русский',
  languageZh: '中文',
  languageRo: 'Română',
  languageJa: '日本語',
  languageHu: 'Magyar',
  languagePl: 'Polski',
  languageBg: 'Български',
  font: '字体',
  fontHintOpenDyslexic: '阅读障碍友好 · 不支持中文',
  theme: '主题',
  appearance: '外观',
  servers: '服务器',
  serverName: '服务器名称',
  serverUrl: '服务器地址',
  serverUrlPlaceholder: '192.168.1.100:4533 或 https://music.example.com',
  serverAlternateUrl: '备用地址（可选）',
  serverAlternateUrlPlaceholderPublic: 'https://music.example.com',
  serverAlternateUrlPlaceholderLocal: '192.168.1.100:4533',
  serverAlternateUrlHintAddPublic: '可以添加一个公共地址，便于在家庭网络之外访问。',
  serverAlternateUrlHintAddLocal: '可以添加一个本地地址，在家中连接更快。',
  serverBothLanError: '两个地址都是本地地址——保留一个或添加一个公共地址。',
  dualAddressVerifying: '正在确认两个地址指向同一台服务器…',
  dualAddressMismatch: '两个地址指向不同的服务器。请检查拼写后重试。',
  dualAddressInsufficient: '无法确认两个地址是同一台服务器。请删除一个地址以继续。',
  dualAddressUnreachable: '无法连接到 {{host}}。请检查地址和网络后重试。',
  urlRemigrationTitle: '移动你的资料库数据？',
  urlRemigrationMessage: '更改地址将把所有资料库、分析和封面缓存数据从 {{oldKey}} 移动到 {{newKey}}。此操作无法撤销。',
  urlRemigrationConfirm: '移动数据',
  urlRemigrationProgress: '正在移动资料库数据…',
  urlRemigrationFailureInspect: '无法检查将要移动的内容。请重试或打开调试日志。',
  urlRemigrationFailureRun: '资料库数据移动失败。已保存的数据保持不变——请重试。',
  urlRemigrationFailureCoverRename: '资料库数据已移动，但封面文件无法重命名。封面将在下次访问时重新生成。',
  shareUsesLocalUrl: '在分享链接中使用本地地址',
  shareUsesLocalUrlDesc: '影响 Orbit 邀请和资料库分享。默认：公共地址。',
  serverUsername: '用户名',
  serverPassword: '密码',
  customHeadersTitle: '自定义 HTTP 标头',
  customHeadersHelp: '用于反向代理网关（Pangolin、Cloudflare Access）。仅发送到你的服务器 — 不会发送给第三方服务。',
  customHeadersNamePlaceholder: '标头名称',
  customHeadersValuePlaceholder: '标头值',
  customHeadersAddRow: '添加标头',
  customHeadersRemoveRow: '删除标头',
  customHeadersApplyTo: '将标头应用于',
  customHeadersApplyTo_public: '公共地址',
  customHeadersApplyTo_local: '本地地址',
  customHeadersApplyTo_both: '两个地址',
  customHeadersNotInShare: '自定义标头不会包含在分享邀请中 — 请在每台设备上重新配置。',
  'customHeadersValidation.tooMany': '自定义标头过多（最多 16 个）。',
  'customHeadersValidation.nameRequired': '标头名称不能为空。',
  'customHeadersValidation.nameTooLong': '标头名称过长。',
  'customHeadersValidation.valueTooLong': '标头值过长。',
  'customHeadersValidation.crlf': '标头名称和值不能包含换行符。',
  'customHeadersValidation.blocked': '不允许使用此标头名称。',
  'customHeadersValidation.duplicate': '标头名称重复。',
  addServer: '添加服务器',
  addServerTitle: '添加新服务器',
  editServer: '编辑',
  editServerTitle: '编辑服务器',
  useServer: '使用',
  deleteServer: '删除',
  noServers: '未保存任何服务器。',
  serverActive: '当前使用',
  serverVersionUnknown: '服务器版本未知',
  confirmDeleteServer: '删除服务器 "{{name}}"？',
  serverConnecting: '正在连接…',
  serverConnected: '已连接！',
  serverFailed: '连接失败。',
  serverUrlRequired: '请填写服务器地址。',
  serverUsernameRequired: '请填写用户名。',
  serverConnectFailedReason: '无法连接：{{reason}}',
  testBtn: '测试连接',
  testingBtn: '正在测试…',
  serverCompatible: '专为 Navidrome 构建。其他兼容 Subsonic 的服务器（Gonic、Airsonic 等）可能功能受限，因为 Psysonic 使用了许多 Navidrome 特有的 API 端点。',
  userMgmtTitle: '用户管理',
  userMgmtDesc: '管理此服务器上的用户。需要管理员权限。',
  userMgmtNoAdmin: '需要管理员权限才能管理此服务器上的用户。',
  userMgmtLoadError: '加载用户失败。',
  userMgmtLoadFriendly: '服务器未响应 — 通常是偶发问题。',
  userMgmtRetry: '重试',
  userMgmtEmpty: '未找到用户。',
  userMgmtYouBadge: '您',
  userMgmtAdminBadge: '管理员',
  userMgmtAddUser: '添加用户',
  userMgmtAddUserTitle: '新建用户',
  userMgmtEditUserTitle: '编辑用户',
  userMgmtUsername: '用户名',
  userMgmtName: '显示名称',
  userMgmtEmail: '电子邮箱',
  userMgmtPassword: '密码',
  userMgmtPasswordEditHint: '输入新密码以更新。',
  userMgmtRoleAdmin: '管理员',
  userMgmtLibraries: '音乐库',
  userMgmtLibrariesAdminHint: '管理员用户自动拥有所有音乐库的访问权限。',
  userMgmtLibrariesEmpty: '此服务器上没有可用的音乐库。',
  userMgmtLibrariesValidation: '请至少选择一个音乐库。',
  userMgmtLibrariesUpdateError: '用户已保存，但音乐库分配失败',
  userMgmtNoLibraries: '未分配音乐库',
  userMgmtNeverSeen: '从未',
  userMgmtSave: '保存',
  userMgmtCancel: '取消',
  userMgmtDelete: '删除',
  userMgmtEdit: '编辑',
  userMgmtConfirmDelete: '删除用户 "{{username}}"？此操作无法撤销。',
  userMgmtCreateError: '创建用户失败。',
  userMgmtUpdateError: '更新用户失败。',
  userMgmtDeleteError: '删除用户失败。',
  userMgmtCreated: '用户已创建。',
  userMgmtUpdated: '用户已更新。',
  userMgmtDeleted: '用户已删除。',
  userMgmtValidationMissing: '用户名、显示名称和密码均为必填项。',
  userMgmtValidationMissingIdentity: '用户名和显示名称为必填项。',
  userMgmtMagicStringGenerate: '生成魔法字符串',
  userMgmtSaveAndMagicString: '保存并获取魔法字符串',
  userMgmtMagicStringPasswordNavHint:
    'Navidrome 会保存此密码。若与当前密码不同，服务器上的登录密码将被更新。',
  userMgmtMagicStringPlaintextWarning:
    '请谨慎分享魔法字符串：其中包含未加密的密码（编码不等于加密）。掌握完整字符串的人可以以该用户身份登录。',
  userMgmtMagicStringCopied: '魔法字符串已复制到剪贴板。',
  userMgmtMagicStringCopyFailed: '无法复制到剪贴板。',
  userMgmtMagicStringLoginFailed: '密码验证失败，无法确认凭据。',
  userMgmtMagicStringModalTitle: '生成魔法字符串',
  userMgmtMagicStringModalDesc: '请输入用户「{{username}}」的 Subsonic 密码，它会包含在复制的魔法字符串中。',
  userMgmtMagicStringModalConfirm: '复制字符串',
  audiomuseTitle: 'AudioMuse-AI（Navidrome）',
  audiomuseBadge: 'AudioMuse-AI',
  audiomuseStatusActive: '已启用',
  audiomuseStatusChecking: '检测中…',
  audiomuseStatusNotDetected: '未检测到',
  audiomuseStatusProbeFailed: '检测失败',
  audiomuseDesc:
    '若此服务器已配置 <pluginLink>AudioMuse-AI Navidrome 插件</pluginLink>请开启。可从曲目启动即时混音，并在艺人页使用服务器返回的相似艺人，而非 Last.fm。',
  audiomuseIssueHint:
    '近期即时混音失败 — 请检查 Navidrome 插件与 AudioMuse API。若服务器无结果，将回退使用 Last.fm 的相似艺人。',
  connected: '已连接',
  failed: '失败',
  eqTitle: '均衡器',
  eqEnabled: '启用均衡器',
  eqPreset: '预设',
  eqPresetCustom: '自定义',
  eqPresetBuiltin: '内置预设',
  eqPresetCustomGroup: '我的预设',
  eqPresetAutoEqGroup: 'AutoEQ',
  eqSavePreset: '保存为预设',
  eqPresetName: '预设名称…',
  eqDeletePreset: '删除预设',
  eqResetBands: '重置为平直',
  eqPreGain: '预增益',
  eqResetPreGain: '重置预增益',
  eqAutoEqTitle: 'AutoEQ 耳机查询',
  eqAutoEqPlaceholder: '搜索耳机/入耳式型号…',
  eqAutoEqSearching: '搜索中…',
  eqAutoEqNoResults: '未找到结果',
  eqAutoEqError: '搜索失败',
  eqAutoEqRateLimit: 'GitHub 请求限制 — 请一分钟后重试',
  eqAutoEqFetchError: '无法获取 EQ 配置',
  behavior: '应用行为',
  groupTray: '系统托盘',
  groupLinuxRendering: 'Linux 渲染',
  groupClock: '时钟',
  groupDisplay: '显示',
  groupWindow: '窗口',
  cacheTitle: '最大存储大小',
  cacheDesc: '浏览器内封面和艺术家图片缓存（IndexedDB）。存满时，最旧的条目将自动移除。',
  cacheUsedImages: '图片：',
  cacheUsedOffline: '离线曲目：',
  cacheUsedHot: '占用空间：',
  hotCacheTrackCount: '缓存曲目数：',
  cacheMaxLabel: '最大容量',
  imageCacheScopeLabel: '范围',
  imageCacheSubTitle: '浏览器内预览',
  coverDiskCacheSubTitle: '磁盘封面缓存',
  coverCacheStrategyTitle: '封面缓存',
  coverCacheStrategyDesc: '你可以为每台服务器选择一种策略：懒加载——按需加载封面；激进——按需加载并额外在后台预加载。',
  coverCacheStrategyLabel: '策略',
  coverCacheStrategyServerLabel: '服务器',
  coverCacheStrategyProgressLabel: '缓存',
  coverCacheStrategyActionsLabel: '操作',
  coverCacheStrategyLazy: '懒加载',
  coverCacheStrategyLazyDesc: '仅在需要时加载封面。',
  coverCacheStrategyAggressive: '激进',
  coverCacheStrategyAggressiveDesc: '懒加载行为，并额外在后台预加载。',
  coverCacheStrategyDiskUsage: '磁盘占用：{{size}}',
  coverCacheStrategyProgressValue: '{{percent}}% ({{done}}/{{total}}) · {{size}}',
  coverCacheStrategyClearAction: '清除封面缓存',
  coverCacheStrategyClearTitle: '清除封面缓存？',
  coverCacheStrategyClearDesc: '移除 {{server}} 的所有已缓存封面图片。需要时会重新下载。',
  coverCacheStrategyClearConfirm: '清除',
  coverCacheStrategyClearCancel: '取消',
  coverCacheStrategyClearSuccess: '已清除此服务器的封面缓存。',
  coverCacheStrategyClearError: '清除封面缓存失败。',
  coverCacheStrategyServerRemoved: '已移除的服务器',
  cacheClearBtn: '清除缓存',
  cacheClearWarning: '将清除所有已缓存的封面和艺术家图片，需要时会重新下载。',
  cacheClearConfirm: '清除图片缓存',
  cacheClearCancel: '取消',
  mediaDirTitle: '媒体文件夹',
  mediaDirDesc: '本地播放根目录。离线音乐库使用 library/；队列预缓冲使用 cache/。',
  mediaDirDefault: '默认（应用数据）',
  mediaDirChange: '更改文件夹',
  mediaDirClear: '重置为默认',
  mediaDirHint: '新下载将保存到此位置。现有文件保留在原路径，直到你删除它们。',
  offlineStorageTitle: '离线存储',
  offlineDirTitle: '离线音乐库（应用内）',
  offlineDirDesc: '用于在 Psysonic 中离线可用的曲目存储位置。',
  offlineDirDefault: '默认（应用数据）',
  offlineDirChange: '更改目录',
  offlineDirClear: '重置为默认',
  offlineDirHint: '新下载将保存到此位置，现有下载保留在原始路径。',
  hotCacheTitle: '热播放缓存',
  hotCacheDisclaimer: '预加载队列中即将播放的曲目并保留近期已播放的。开启后占用磁盘与网络。',
  hotCacheDirDefault: '默认（应用数据）',
  hotCacheDirChange: '更改目录',
  hotCacheDirClear: '重置为默认',
  hotCacheDirHint: '更换目录会重置应用内索引；已下载的文件仍留在原路径，需自行删除。',
  hotCacheEnabled: '启用热播放缓存',
  hotCacheMaxMb: '最大缓存大小',
  hotCacheDebounce: '队列变更去抖',
  hotCacheDebounceImmediate: '立即',
  hotCacheDebounceSeconds: '{{n}} 秒',
  hotCacheClearBtn: '清空热缓存',
  audioOutputDevice: '音频输出设备',
  audioOutputDeviceDesc: '选择 Psysonic 播放音频的设备。更改立即生效并重新开始当前曲目。',
  audioOutputDeviceDefault: '系统默认',
  audioOutputDeviceRefresh: '刷新设备列表',
  audioOutputDeviceOsDefaultNow: '当前系统输出',
  audioOutputDeviceListError: '无法加载音频设备列表。',
  audioOutputDeviceNotInCurrentList: '不在当前列表中',
  audioOutputDeviceRememberEq: '为每个设备记住均衡器',
  audioOutputDeviceRememberEqDesc: '为每个音频输出设备保存均衡器设置，并在切换设备时自动恢复。选择系统默认时，配置会跟随当前系统输出，包括在 Psysonic 外部切换时。',
  hiResTitle: '原生高清晰度播放',
  hiResEnabled: '启用原生高清晰度播放',
  hiResDesc: "以每个曲目的原始采样率播放，而不是将所有内容重采样到 44.1 kHz，并将输出设备切换为与文件匹配（88.2 kHz 及以上）。仅在硬件和网络能可靠处理高采样率时启用。",
  hiResCrossfadeResampleTitle: '交叉淡化 / AutoDJ / Gapless 混合采样率',
  hiResCrossfadeResampleDesc: '当相邻曲目的采样率不同时，在交叉淡化、AutoDJ 和无缝过渡期间将两侧重采样到此采样率。',
  hiResCrossfadeResample44: '44.1 kHz',
  hiResCrossfadeResample88: '88.2 kHz',
  hiResCrossfadeResample96: '96 kHz',
  hiResCrossfadeResampleWarning: '重采样会额外消耗 CPU 和内存——在较慢设备上请谨慎选择。',
  showArtistImages: '显示艺术家图片',
  showArtistImagesDesc: '在艺术家概览中加载并显示艺术家图片。默认关闭以减少大型音乐库的服务器磁盘I/O和网络负载。',
  showOrbitTrigger: '在顶栏显示"Orbit"',
  showOrbitTriggerDesc: '用于启动或加入共享收听会话的顶栏按钮。如果不使用 Orbit，可以隐藏 — 随时可在此重新开启。',
  showTrayIcon: '显示托盘图标',
  showTrayIconDesc: '在系统通知区域 / 菜单栏显示 Psysonic 图标。',
  minimizeToTray: '最小化到托盘',
  minimizeToTrayDesc: '关闭窗口时，Psysonic 将继续在系统托盘中运行，而不是退出。',
  startMinimizedToTray: '启动时最小化到托盘',
  startMinimizedToTrayDesc: '启动时隐藏主窗口；通过托盘图标显示窗口。',
  startMinimizedToTrayRequiresTray: '请先启用“显示托盘图标”——隐藏启动后需要通过托盘打开窗口。',
  clockFormat: '时间格式',
  clockFormatDesc: '队列预计结束时间和睡眠定时器预览使用的时间格式。',
  clockFormatAuto: '自动（跟随系统）',
  clockFormatTwentyFour: '24 小时制',
  clockFormatTwelve: '12 小时制（AM/PM）',
  preloadMiniPlayer: '预加载迷你播放器',
  preloadMiniPlayerDesc: '在应用启动时于后台构建迷你播放器窗口，使其首次打开即可立即显示内容。会占用少量额外内存。',
  linuxWebkitSmoothScroll: '滚轮平滑（Linux）',
  linuxWebkitSmoothScrollDesc: '开：惯性滚动。关：逐行，类似 GTK。',
  linuxWebkitInputForceRepaint: '获得焦点时重绘输入框（Linux）',
  linuxWebkitInputForceRepaintDesc: '针对 WebKitGTK 2.50.x 文本框点击后冻结的临时方案。聚焦时搜索图标会短暂闪烁。',
  linuxWaylandTextRender: 'Wayland 文本渲染（Linux）',
  linuxWaylandTextRenderDesc: '界面字体平滑立即生效。WebKit 硬件加速策略（锐利 / GPU）会保存并在下次启动应用时应用；运行中反复切换可能导致 WebKitGTK 卡死。',
  linuxWaylandTextRenderBalanced: '平衡',
  linuxWaylandTextRenderSharp: '锐利（偏 CPU）',
  linuxWaylandTextRenderGpu: 'GPU 优先',
  linuxWaylandTextRenderMinimal: '最小（默认 CSS 平滑）',
  discordRichPresence: 'Discord Rich Presence',
  discordRichPresenceDesc: '在 Discord 个人资料上显示当前播放的曲目。需要 Discord 处于运行状态。',
  discordRichPresenceNotice: '注意：这是 Psysonic 内置的 Discord Rich Presence。如果你想使用官方的 Navidrome Discord Rich Presence 插件，请保持此功能关闭，并改为启用本页下方的"在实时窗口中显示"。',
  discordCoverTitle: '封面来源',
  discordCoverDesc: '你的 Discord 资料中显示的专辑封面来源。服务器封面使用公开的、不含凭据的图片链接——任何查看你资料的人都可能看到你服务器的公开地址。需要可公开访问的服务器。',
  discordCoverNone: '无（仅显示应用图标）',
  discordCoverServer: '服务器（通过专辑信息）',
  discordCoverApple: 'Apple Music',
  discordOptions: 'Discord 高级选项',
  discordTemplates: '自定义文本模板',
  discordTemplatesDesc: '自定义在 Discord 个人资料上显示的信息。变量：{title}, {artist}, {album}',
  discordTemplateDetails: '主行 (details)',
  discordTemplateState: '副行 (state)',
  discordTemplateLargeText: '专辑提示 (largeText)',
  discordTemplateName: '用户列表行 (name)',
  nowPlayingEnabled: '在实时窗口中显示',
  nowPlayingEnabledDesc: '将当前播放的曲目广播到服务器的实时听众视图。禁用以停止发送播放数据。',
  nowPlayingPluginNote: '使用官方 Navidrome Discord Rich Presence 插件时必需。',
  externalArtwork: '外部封面采集器',
  externalArtworkDesc: '从 fanart.tv 获取高分辨率的艺术家背景图和横幅，用于主舞台、艺术家页面和全屏播放器。默认关闭。',
  externalArtworkNote: '启用后，会将艺术家（及当前专辑）名称发送至 musicbrainz.org 以识别艺术家，然后从 fanart.tv 获取图片——按需且只读；你的音乐库标签永不会被修改。图片由 fanart.tv 及其贡献者提供。',
  externalArtworkByokTitle: '个人 API 密钥（BYOK）',
  externalArtworkByokDesc: '可选。在此输入你自己的 fanart.tv 个人 API 密钥——它会与应用密钥一同发送。',
  externalArtworkByokSaved: '已保存——抓取器开启时随应用密钥一同发送。',
  enableBandsintown: 'Bandsintown 巡演日期',
  enableBandsintownDesc: '在信息标签页中显示当前艺术家的即将到来的演出。数据通过公开的 Bandsintown API 获取。',
  lyricsServerFirst: '优先使用服务器歌词',
  lyricsServerFirstDesc: '先查询服务器提供的歌词（内嵌标签、sidecar 文件），再查询 LRCLIB。禁用则优先使用 LRCLIB。',
  enableNeteaselyrics: '网易云音乐歌词',
  enableNeteaselyricsDesc: '当服务器和 LRCLIB 均无结果时，使用网易云音乐作为最终歌词来源。对亚洲及国际音乐覆盖最佳。',
  lyricsSourcesTitle: '歌词来源',
  lyricsSourcesDesc: '选择要查询的歌词来源及其顺序。拖动以排序。已禁用的来源将被跳过。',
  lyricsSourceServer: '服务器',
  lyricsSourceLrclib: 'LRCLIB',
  lyricsSourceNetease: '网易云音乐',
  lyricsYouLyPlus: 'YouLyPlus（卡拉OK）',
  lyricsYouLyPlusDesc: '来自社区后端（Apple Music、Spotify、Musixmatch、QQ 音乐）的逐字同步歌词。优先尝试；下方启用的来源作为后备。',
  lyricsSourcesFallbackHint: 'YouLyPlus 找不到时用作后备。拖动可重新排序。',
  lyricsSourcesPrimaryHint: '按顺序尝试。拖动可重新排序。全部关闭 = 禁用歌词。',
  lyricsServerWordSyncHint: '逐字高亮需要 Navidrome 0.63+ 以及包含逐字时间轴的歌词，例如 TTML 或 Enhanced LRC 文件。其他歌词按行显示。',
  lyricsStaticOnly: '仅以静态文本显示歌词',
  lyricsStaticOnlyDesc: '同步歌词将不自动滚动、不逐字高亮，以静态文本显示。',
  downloadsTitle: 'ZIP 导出与归档',
  downloadsFolderDesc: '将专辑以 ZIP 文件下载到电脑时的目标文件夹。',
  downloadsDefault: '默认下载文件夹',
  pickFolder: '选择',
  pickFolderTitle: '选择下载文件夹',
  clearFolder: '清除下载文件夹',
  logout: '退出登录',
  aboutTitle: '关于 Psysonic',
  aboutDesc: '一款专为 Navidrome 构建的现代桌面音乐播放器。使用 Subsonic API 以及 Navidrome 特有的扩展。基于 Tauri v2 和原生 Rust 音频引擎——轻量快速，功能丰富：波形进度条、同步歌词、Last.fm 集成、10 段均衡器、交叉淡入淡出、无缝播放、响度增益、流派浏览以及大量精美主题。',
  aboutLicense: '许可证',
  aboutLicenseText: 'GNU GPL v3 — 在相同许可证下可自由使用、修改和分发。',
  aboutRepo: 'GitHub 上的源代码',
  aboutVersion: '版本',
  aboutBuiltWith: '使用 Tauri · React · TypeScript · Rust/rodio 构建',
  aboutReleaseNotesLabel: '版本说明',
  aboutReleaseNotesLink: '打开此版本的新功能',
  aboutContributorsLabel: '贡献者',
  showChangelogOnUpdate: '更新时显示"新功能"',
  showChangelogOnUpdateDesc: '更新后在「正在播放」上方显示一个低调的更新日志横幅。点击打开发行说明，X 按钮关闭。',
  libraryGridMaxColumnsTitle: '资料库卡片网格',
  libraryGridMaxColumnsPerfHint: '列数越多，每行显示的卡片越多，布局与绘制开销通常也越大；在超大曲库或较慢设备上更明显。',
  libraryGridMaxColumnsRangeLabel: '最大列数（{{min}}–{{max}}）',
  libraryGridMaxColumnsDesc: '适用于专辑、艺人、播放列表、电台、离线及其他卡片式资料库视图。列数越少卡片越大，通常对 CPU 更友好。',
  libraryIndexTitle: '本地资料库索引（预览）',
  libraryIndexDesc: '为每个服务器保留曲目数据库的本地副本，使浏览和搜索保持快速并支持离线使用。初始同步会针对所有已配置的服务器运行；离线的服务器会自动重试。',
  libraryIndexDeltaHint: '后台增量同步每 30 秒检查已绑定的服务器，并在到期时运行——通常每 5–45 分钟一次，取决于资料库大小和负载。',
  libraryIndexEnable: '启用本地资料库索引',
  libraryIndexEnableAllDesc: '在后台为所有已配置的服务器建立索引并同步。',
  libraryIndexNoServer: '请先添加服务器。',
  libraryIndexServerListTitle: '已索引的服务器',
  libraryIndexAllExcluded: '所有服务器均已排除同步。请重新启用索引或添加服务器。',
  libraryIndexServerOffline: '服务器离线——同步已推迟',
  libraryIndexServerSyncing: '同步中…',
  libraryIndexFullResync: '完全重新同步',
  libraryIndexDeltaSync: '增量同步',
  libraryIndexExcludeServer: '排除同步',
  libraryIndexExcludingServer: '正在排除…',
  libraryIndexExcludedTitle: '已排除同步',
  libraryIndexIncludeServer: '重新纳入',
  libraryIndexIncludingServer: '正在纳入…',
  libraryIndexStatus: '状态',
  libraryIndexStatusIdle: '空闲',
  libraryIndexStatusProbing: '正在检查服务器…',
  libraryIndexStatusInitial: '初始同步中…',
  libraryIndexStatusReady: '就绪（{{count}} 首曲目）',
  libraryIndexStatusError: '错误——请查看日志',
  libraryIndexProgressIngest: '已索引 {{count}} 首曲目…',
  libraryIndexProgressVerify: '已验证 {{checked}}（移除 {{deleted}}）',
  libraryIndexSyncNow: '立即同步',
  libraryIndexVerify: '验证资料库完整性',
  libraryIndexCancel: '取消',
  libraryIndexAutoReconcile: '数量下降时自动核对',
  libraryIndexAutoReconcileDesc: '当服务器报告的曲目少于预期时，自动检查已删除的曲目。',
  libraryIndexSyncError: '资料库同步失败：{{error}}',
  libraryIndexBindError: '无法启用索引：{{error}}',
  randomMixTitle: '随机混音黑名单',
  luckyMixMenuTitle: '在菜单中显示“好运混音”',
  luckyMixMenuDesc: '在“创建混音”中启用“好运混音”，并在分离导航时作为独立菜单项显示。仅当当前服务器启用 AudioMuse 时可见。',
  randomMixBlacklistTitle: '自定义过滤关键词',
  randomMixBlacklistDesc: '当任何关键词匹配流派、标题、专辑或艺术家时，歌曲将被排除（当上方复选框开启时生效）。',
  randomMixBlacklistPlaceholder: '添加关键词…',
  randomMixBlacklistAdd: '添加',
  randomMixBlacklistEmpty: '尚未添加自定义关键词。',
  randomMixHardcodedTitle: '内置关键词（复选框开启时生效）',
  tabAudio: '音频',
  tabStorage: '离线与缓存',
  tabAppearance: '外观',
  tabThemes: '主题',
  themesYourThemesTitle: '你的主题',
  themesCvdTooltip: '色觉障碍友好 — 绿色盲、红色盲、蓝色盲',
  themeAnimationWarning: '此主题使用动画，在你的环境（Nvidia/Linux 或关闭合成）下可能会增加 CPU 占用。',
  themeStoreTitle: '主题商店',
  themeStoreSubmitText: '做了自己的主题？与社区分享——更多信息见主题仓库。',
  themeStoreSubmitLink: '打开主题仓库',
  themeStoreNetworkNotice: '主题商店从 GitHub 加载目录和预览。不会发送任何个人数据。',
  themeStoreStatsNotice: '最后更新时间每天更新一次（约 04:17 UTC）。',
  themeStoreSearchPlaceholder: '搜索主题…',
  themeStoreFilterMode: '按模式筛选',
  themeStoreModeAll: '全部',
  themeStoreModeDark: '深色',
  themeStoreModeLight: '浅色',
  themeStoreRefresh: '刷新',
  themeStoreLoading: '正在加载主题…',
  themeStoreError: '无法加载主题商店。请检查网络连接。',
  themeStoreRetry: '重试',
  themeStoreOfflineTitle: '主题商店已离线',
  themeStoreEmpty: '没有符合筛选条件的主题。',
  themeStoreActive: '使用中',
  themeStoreEnlarge: '放大预览',
  themeStoreSortNewest: '最新',
  themeStoreSortName: '按字母',
  themeStoreAnimAll: '全部',
  themeStoreAnimAnimated: '动态',
  themeStoreAnimStatic: '静态',
  themeStoreByAuthor: '作者：{{author}}',
  themeStoreLastChanged: '最后更新',
  themeStoreWhatsNew: '更新内容',
  themeMigrationNoticeTitle: '主题已移至商店',
  themeMigrationNoticeBody: '{{themes}} 不再内置于应用中。你可以在主题商店（设置 → 主题）重新安装，或选择其他主题。',
  themeMigrationNoticeOpen: '打开主题商店',
  themeStoreOffline: '正在显示上次缓存的目录——你似乎处于离线状态。',
  themeStoreInstall: '安装',
  themeStoreInstalling: '正在安装…',
  themeStoreApply: '应用',
  themeStoreUpdate: '更新',
  themeStoreUpdating: '正在更新…',
  themeStoreUninstall: '卸载',
  themeStoreInstallFailed: '安装失败',
  themeStorePagePrev: '上一页',
  themeStorePageNext: '下一页',
  themeStorePageStatus: '第 {{page}} 页，共 {{total}} 页',
  themeImportTitle: '导入主题',
  themeImportButton: '导入主题…',
  themeImporting: '正在导入…',
  themeImportHint: '加载打包为 .zip 的主题（manifest.json + theme.css）。',
  themeImportSuccess: '已导入“{{name}}”。',
  themeImportErrorTitle: '无法导入此主题',
  themeImportErrorBody: '它不符合 Psysonic 主题格式。可能是为其他版本制作的，或文件不完整——请确认选择了正确的 .zip，或联系主题作者。',
  themeImportErrorDetails: '技术细节',
  themeImportConfirmTitle: '安装主题？',
  themeImportConfirmBody: '安装来自 {{author}} 的“{{name}}”？',
  themeImportConfirmRisk: '导入的主题未经审核——请仅安装你信任的主题。',
  tabLibrary: '媒体库',
  tabServers: '服务器',
  tabLyrics: '歌词',
  tabPersonalisation: '个性化',
  tabIntegrations: '集成',
  inputKeybindingsTitle: '键盘快捷键',
  aboutContributorsCount_one: '{{count}} 项贡献',
  aboutContributorsCount_other: '{{count}} 项贡献',
  aboutContributorsApp: '应用',
  aboutContributorsThemes: '主题',
  aboutThemeContributorsCount_one: '{{count}} 个主题',
  aboutThemeContributorsCount_other: '{{count}} 个主题',
  searchPlaceholder: '搜索设置…',
  searchNoResults: '没有设置匹配您的搜索。',
  aboutMaintainersLabel: '维护者',
  integrationsPrivacyTitle: '隐私说明',
  integrationsPrivacyBody: '此标签页中的所有集成均为 <strong>选择加入</strong>，启用后会向外部服务或您的 Navidrome 服务器发送数据。Last.fm 接收您的收听历史，Discord 在您的个人资料中显示正在播放的曲目，Bandsintown 会按艺人查询以获取巡演日期，"正在播放" 分享会向您 Navidrome 服务器的其他用户公开您当前的曲目。如果您不需要这些功能，只需将相应部分保持停用即可。',
  homeCustomizerTitle: '主舞台',
  queueSettingsTitle: '队列设置',
  queueModeTitle: '队列显示模式',
  queueModeQueueSub: '仅显示即将播放的曲目。当前曲目保留在标题栏中，播放完毕后从列表移除。',
  queueModePlaylistSub: '在列表中保留整个队列，当前曲目在顶部高亮显示；已播放的曲目保留。',
  queueModeTimelineSub: '当前曲目保持在列表顶部，上方可滚动查看播放历史，下方为即将播放的曲目（按随机顺序）。',
  queueToolbarTitle: '队列工具栏',
  queueToolbarReset: '重置为默认',
  queueToolbarSeparator: '分隔符',
  sidebarTitle: '侧边栏',
  sidebarReset: '重置为默认',
  artistLayoutTitle: '艺术家页面板块',
  artistLayoutDesc: '拖动以重新排序，切换以隐藏艺术家页面的各个板块。没有数据的板块会自动跳过。',
  artistLayoutReset: '重置为默认',
  artistLayoutBio: '艺术家简介',
  artistLayoutTopTracks: '热门曲目',
  artistLayoutSimilar: '相似艺术家',
  artistLayoutAlbums: '专辑',
  artistLayoutFeatured: '也参与了',
  playlistLayoutTitle: '播放列表页面布局',
  playlistLayoutDesc: '在播放列表页面上显示或隐藏各个元素。',
  playlistLayoutReset: '重置为默认',
  playerBarTitle: '播放器栏',
  playerBarReset: '重置为默认',
  playerBarStarRating: '星级评分',
  playerBarFavorite: '收藏（心形）',
  playerBarLastfmLove: '喜欢按钮',
  playerBarPlaybackRate: '播放速度',
  playerBarEqualizer: '均衡器',
  playerBarMiniPlayer: '迷你播放器',
  playerBarStop: '停止按钮',
  playerBarShuffle: '随机播放',
  playerBarTransportGroup: '播放控制',
  playerBarActionsGroup: '操作',
  playerBarTrackInfo: '曲目信息',
  playerBarTrackInfoTitle: '仅标题',
  playerBarTrackInfoTitleAlbum: '标题 + 专辑',
  playbackRateTitle: '播放速度',
  playbackRateEnabled: '启用播放速度',
  playbackRateEnabledDesc: '全局调整所有曲目的播放速度。不适用于电台和预览。',
  playbackRateStrategy: '策略',
  playbackRateStrategySpeed: '速度',
  playbackRateStrategyVarispeed: '随速变调',
  playbackRateStrategyVarispeedSemitones: '半音',
  playbackRateStrategyPreserve: '音高',
  playbackRateStrategySpeedTip: '改变速度；音高自动校正。',
  playbackRateStrategyVarispeedTip: '速度和音高一起变化，像磁带一样。音高由速度决定：12 × log2(速度)。',
  playbackRateStrategyVarispeedSemitonesTip: '与「随速变调」相同，但直接以半音设置。速度 = 2^(半音/12)。',
  playbackRateStrategyPreserveTip: '可调速度，外加手动音高偏移（±12 半音）。',
  playbackRateSpeed: '速度',
  playbackRatePitch: '音高',
  playbackRateDerivedPitch: '速度引起的音高偏移：{{value}}',
  playbackRateDerivedSpeed: '由半音得出的速度：{{value}}',
  playbackRateFineStep: '精细调节',
  playbackRateFineStepDesc: '更小的滑块步长：速度 0.01×，音高 0.01 半音。',
  playbackRateAutoPitch: '音高会自动校正。',
  playbackRateHint: '「速度」保持音高不变。「随速变调」会随速度改变音高。「随速变调（半音）」可直接以半音设置该音高变化。「音高」可手动偏移。比「随速变调」占用更多 CPU。不适用于电台、预览或 Orbit。',
  playbackRateNeutral: '在 1.0× 且无音高偏移时，播放为正常速度。',
  playbackRateOrbitPaused: 'Orbit 会话期间不生效 — 播放保持 1.0× 以同步。',
  playbackRateOrbitPausedShort: 'Orbit：1.0× 同步。',
  advancedMode: '高级',
  advancedModeTooltip: '在所有设置选项卡中显示高级选项。由社区贡献，未必体现 Psysonic 维护者的设计理念。',
  advancedBadge: '高级',
  sidebarDrag: '拖动以重新排序',
  sidebarFixed: '始终显示',
  nowPlayingTopTitle: '"正在播放"置顶',
  nowPlayingTopDesc: '将"正在播放"固定在侧边栏顶部，而非底部。',
  randomNavSplitTitle: '拆分混音导航',
  randomNavSplitDesc: '在侧边栏中将“随机混音”、“随机专辑”和“好运混音”显示为独立条目，而非“创建混音”合并入口。',
  tabInput: '输入',
  tabUsers: '用户',
  tabSystem: '系统',
  loggingTitle: '日志记录',
  loggingModeDesc: '控制终端中后端日志的详细程度。',
  loggingModeOff: '关闭',
  loggingModeNormal: '普通',
  loggingModeDebug: '调试',
  loggingExport: '导出日志',
  loggingExportSuccess: '日志已导出（{{count}} 行）。',
  loggingExportError: '无法导出日志。',
  ratingsSectionTitle: '评分',
  ratingsSkipStarTitle: '跳过以评 1 星',
  ratingsSkipStarDesc:
    '连续多次跳过后将曲目设为 1 星。仅适用于此前未评分的曲目。',
  ratingsSkipStarThresholdLabel: '跳过次数',
  ratingsMixFilterTitle: '按评分筛选',
  ratingsMixFilterDesc:
    '在{{mix}}与{{albums}}中筛选低评分内容。再次点击所选星标可关闭阈值。',
  ratingsMixMinSong: '歌曲',
  ratingsMixMinAlbum: '专辑',
  ratingsMixMinArtist: '艺人',
  ratingsMixMinThresholdAria: '最低星数：{{label}}',
  backupTitle: '备份与恢复',
  backupExport: '导出设置',
  backupExportDesc: '将所有设置、服务器配置、Last.fm 配置、主题、均衡器和快捷键保存到 .psybkp 文件。密码以明文存储——请妥善保管该文件。',
  backupImport: '导入设置',
  backupImportDesc: '从 .psybkp 文件恢复设置。导入后应用将重新加载。',
  backupImportConfirm: '所有当前设置将被覆盖。是否继续？',
  backupSuccess: '备份已保存',
  backupImportSuccess: '设置已恢复——正在重新加载…',
  backupImportError: '备份文件无效或已损坏。',
  shortcutsReset: '恢复默认',
  shortcutListening: '请按下按键…',
  shortcutUnbound: '—',
  globalShortcutsTitle: '全局快捷键',
  globalShortcutsNote: '即使 Psysonic 在后台也能在系统范围内工作。需要 Ctrl、Alt 或 Super 作为修饰键。',
  shortcutClear: '清除',
  shortcutPlayPause: '播放 / 暂停',
  shortcutNext: '下一首',
  shortcutPrev: '上一首',
  shortcutVolumeUp: '音量增大',
  shortcutVolumeDown: '音量减小',
  shortcutSeekForward: '快进 10 秒',
  shortcutSeekBackward: '快退 10 秒',
  shortcutToggleQueue: '切换队列',
  shortcutOpenFolderBrowser: '打开{{folderBrowser}}',
  shortcutFullscreenPlayer: '全屏播放器',
  shortcutNativeFullscreen: '原生全屏',
  shortcutOpenMiniPlayer: '打开迷你播放器',
  shortcutStartSearch: '开始搜索',
  shortcutStartAdvancedSearch: '开始高级搜索',
  shortcutToggleSidebar: '切换侧边栏',
  shortcutMuteSound: '静音',
  shortcutToggleEqualizer: '打开 / 切换均衡器',
  shortcutToggleRepeat: '切换循环',
  shortcutOpenNowPlaying: '打开"正在播放"',
  shortcutShowLyrics: '显示歌词',
  shortcutFavoriteCurrentTrack: '将当前曲目添加到收藏',
  shortcutOpenHelp: '帮助',
  playbackTitle: '播放',
  replayGain: '回放增益',
  replayGainDesc: '使用 ReplayGain 元数据标准化曲目音量',
  replayGainMode: '模式',
  replayGainAuto: '自动',
  replayGainAutoDesc: '当队列中相邻曲目来自同一专辑时使用专辑增益，否则使用曲目增益。',
  replayGainTrack: '曲目',
  replayGainAlbum: '专辑',
  replayGainPreGain: '预增益（有标签文件）',
  replayGainPreGainDesc: '对所有 ReplayGain 计算结果叠加的统一增益。适合在曲库整体偏轻时用作整体补偿。',
  replayGainFallback: '回退增益（无标签 / 收音机）',
  replayGainFallbackDesc: '应用于没有 ReplayGain 标签的曲目（以及电台流），避免未打标签的内容比其余素材更响。',
  normalization: '响度归一化',
  normalizationDesc: '在曲目、专辑和电台之间统一可感知的响度。',
  normalizationOff: '关闭',
  normalizationReplayGain: 'ReplayGain',
  normalizationLufs: 'LUFS',
  loudnessTargetLufs: '目标 LUFS',
  loudnessTargetLufsDesc: '所有曲目对齐的参考响度。数值越小，输出越响。流媒体服务通常在 -14 LUFS 左右。',
  loudnessPreAnalysisAttenuation: '测量前衰减',
  loudnessPreAnalysisAttenuationDesc:
    '在曲目响度数据保存前的额外压低。流式阶段之后只是粗略估计，不是完整测量。0 dB 为不压低；更负则更安静。右侧显示当前目标下的等效 dB。',
  loudnessPreAnalysisAttenuationRef: '目标 {{tgt}} LUFS 时等效 {{eff}} dB。',
  loudnessPreAnalysisAttenuationReset: '恢复默认',
  loudnessFirstPlayNote:
    '首次播放新曲目时，音量可能在测量过程中略有波动。下一次播放将使用缓存的测量结果，保持稳定。队列中即将播放的曲目通常在上一首播放期间已完成预分析，所以这种情况在实际使用中很少出现。',
  crossfade: '交叉淡入淡出',
  crossfadeSecs: '{{n}} 秒',
  autoDj: 'AutoDJ',
  autoDjDesc: '没有固定时长——AutoDJ 跟随实际音频，叠加在真实的淡入淡出上，而不是固定的秒数。为获得稳定效果，请启用「热播放缓存」。',
  autodjSmoothSkip: '平滑跳过',
  autodjSmoothSkipDesc: '播放中跳到下一首或上一首时，当前歌曲会短暂淡出，而不是突然切断。',
  autodjOverlapCapTitle: '重叠上限',
  autodjOverlapCapDesc: '限制 AutoDJ 轨道重叠的最长时间。自动模式按内容分析（最多 12 秒）。上限由您自行设定。',
  autodjOverlapCapAuto: '自动',
  autodjOverlapCapLimit: '上限',
  autodjOverlapCapSecs: '{{n}} 秒',
  gapless: '无缝播放',
  transitionsTitle: '曲目间过渡',
  transitionsDesc: '连续曲目之间如何衔接。同一时间只能启用一种模式。',
  transitionOff: '关闭',
  transitionsHostControlled: '会话期间由 Orbit 主持人控制',
  queueBehaviourTitle: '队列行为',
  preservePlayNextOrder: '保留"下一首播放"顺序',
  preservePlayNextOrderDesc: '新添加的"下一首播放"项目排在现有项目之后，而不是插到前面。',
  queueTrackListCovers: '队列中显示专辑封面',
  queueTrackListCoversSub: '在队列面板、迷你播放器队列和全屏“即将播放”中，于每首曲目旁显示小号专辑封面。建议启用积极缓存。',
  trackListCoverArtOnPages: '曲目列表中显示专辑封面',
  trackListCoverArtOnPagesSub: '在曲目、搜索、播放列表、收藏夹、随机混音及其他浏览列表中，于曲目旁显示小号专辑封面。建议启用积极缓存。',
  trackPreviewsTitle: '曲目预览',
  trackPreviewsToggle: '启用曲目预览',
  trackPreviewsDesc: '在曲目列表中显示内联播放与预览按钮，可快速试听歌曲中段。',
  trackPreviewStart: '起始位置',
  trackPreviewStartDesc: '预览从曲目何处开始（占总时长的百分比）。',
  trackPreviewDuration: '时长',
  trackPreviewDurationDesc: '每段预览自动停止前的播放时长。',
  trackPreviewDurationSecs: '{{n}} 秒',
  trackPreviewLocationsTitle: '预览显示位置',
  trackPreviewLocationsDesc: '选择在哪些列表中显示预览按钮。',
  trackPreviewLocation_suggestions: '播放列表建议中',
  trackPreviewLocation_albums: '专辑曲目列表中',
  trackPreviewLocation_playlists: '播放列表中',
  trackPreviewLocation_favorites: '收藏中',
  trackPreviewLocation_artist: '艺人热门曲目中',
  trackPreviewLocation_randomMix: 'Random Mix 中',
  nextTrackBufferingTitle: '缓冲',
  infiniteQueue: '无限队列',
  infiniteQueueDesc: '队列播完时自动追加随机曲目',
  experimental: '实验性',
  sidebarLyricsStyle: '歌词滚动样式',
  sidebarLyricsStyleClassic: '经典',
  sidebarLyricsStyleClassicDesc: '活动行居中显示。',
  sidebarLyricsStyleApple: 'Apple Music-like',
  sidebarLyricsStyleAppleDesc: '活动行固定在顶部，带有平滑弹簧动画。',
  seekbarStyle: '进度条样式',
  fullscreenPlayerStyle: '全屏播放器样式',
  fsLyricsStyleRail: '轨道',
  fsLyricsStyleRailDesc: '经典5行滑动轨道。',
  fsLyricsStyleApple: '滚动',
  fsLyricsStyleAppleDesc: '全屏可滚动列表。',
  fullscreenPlayerStyleDesc: '选择全屏播放视图的外观。',
  fullscreenPlayerMinimal: '简约',
  fullscreenPlayerImmersive: '沉浸式',
  fullscreenPlayerPrism: 'Prism',
  fsShowArtistPortrait: '显示艺术家照片',
  fsShowArtistPortraitDesc: '在全屏播放器右侧显示艺术家照片（或专辑封面）。',
  fsPortraitDim: '照片暗化',
  seekbarStyleDesc: '选择播放进度条的外观',
  buttonSizeTitle: '紧凑按钮',
  buttonSizeLabel: '按钮大小',
  buttonSizeDesc: '在详情页和浏览视图中将操作按钮和工具栏按钮缩小为图标。',
  buttonSize_large: '大',
  buttonSize_small: '小',
  seekbarTruewave: '真实波形',
  seekbarPseudowave: '伪波形',
  seekbarLinedot: '线条与点',
  seekbarBar: '条形',
  seekbarThick: '粗条形',
  seekbarSegmented: '分段式',
  seekbarNeon: '霓虹',
  seekbarPulsewave: '脉冲波',
  seekbarParticletrail: '粒子轨迹',
  seekbarLiquidfill: '液体填充',
  seekbarRetrotape: '复古磁带',
  themeSchedulerTitle: '主题定时切换',
  themeSchedulerEnable: '启用主题定时器',
  themeSchedulerEnableSub: '根据一天中的时间或系统主题自动在两个主题之间切换',
  themeSchedulerDayTheme: '白天主题',
  themeSchedulerDayStart: '白天开始时间',
  themeSchedulerNightTheme: '夜晚主题',
  themeSchedulerNightStart: '夜晚开始时间',
  themeSchedulerActiveHint: '主题定时器已启用 - 主题将自动切换。',
  themeSchedulerModeLabel: '切换依据',
  themeSchedulerModeTime: '时间',
  themeSchedulerModeSystem: '系统主题',
  themeSchedulerLightTheme: '浅色主题',
  themeSchedulerDarkTheme: '深色主题',
  themeSchedulerSystemRestartHint: '更改系统的浅色/深色设置需重启应用后生效。',
  visualOptionsTitle: '视觉选项',
  coverArtBackground: '封面背景',
  coverArtBackgroundSub: '在专辑/播放列表标题中显示模糊的封面作为背景',
  backdropSourcesTitle: '背景',
  backdropSourcesSub: '选择每个区域使用哪张图片作为背景，以及尝试的顺序。拖动可重新排序，或关闭某个来源以跳过它。',
  backdropSurfaceMainstage: '主舞台',
  backdropSurfaceArtistDetail: '艺术家页面标题',
  backdropSurfaceFullscreen: '全屏播放器',
  backdropSourceBanner: '横幅',
  backdropSourceFanart: 'Fanart 艺术家图片',
  backdropSourceNavidrome: 'Navidrome 图片',
  backdropMoveUp: '上移',
  backdropMoveDown: '下移',
  playlistCoverPhoto: '播放列表封面照片',
  playlistCoverPhotoSub: '在播放列表详细视图中显示封面照片网格',
  showBitrate: '显示比特率',
  showBitrateSub: '在曲目列表中显示音频比特率',
  floatingPlayerBar: '浮动播放栏',
  floatingPlayerBarSub: '保持播放栏悬浮在内容上方',
  squareCorners: '直角边角',
  squareCornersSub: '移除卡片的圆角，呈现利落的方正外观',
  uiScaleTitle: '界面缩放',
  uiScaleLabel: '缩放',
  confirmDeleteServerLibrary: '是否同时删除该服务器的本地库索引？点击“取消”可保留缓存副本以供离线使用。',
  waveformCacheClearBtn: '清除波形缓存',
  waveformCacheCleared: '波形缓存已清除（{{count}} 行）。',
  waveformCacheClearFailed: '清除波形缓存失败。',
  useCustomTitlebar: '自定义标题栏',
  useCustomTitlebarDesc: '用与应用主题匹配的内置标题栏替换系统标题栏。关闭后将使用原生 GNOME/GTK 标题栏。',
  windowButtonStyle: '窗口按钮',
  windowButtonStyleDesc: '选择最小化、最大化和关闭按钮的外观。',
  windowButtonsDots: '圆点',
  windowButtonsDotsGlyph: '圆点 + 图标',
  windowButtonsFlat: '扁平',
  windowButtonsPill: '胶囊',
  windowButtonsOutline: '描边',
  windowButtonsGlyph: '极简',
  showMinimizeButton: '显示最小化按钮',
  showMinimizeButtonDesc: '关闭后仅显示最大化和关闭按钮。',
  analyticsStrategyTitle: '分析策略',
  analyticsStrategyDesc: '选择库的分析方式。',
  analyticsStrategyLabel: '策略',
  analyticsStrategyLazy: '懒加载',
  analyticsStrategyLazyDesc: '仅在播放歌曲或进入热缓存/离线缓存时分析——CPU 和网络占用最低。',
  analyticsStrategyAdvanced: '激进',
  analyticsStrategyAdvancedDesc: '更激进的后台扫描。完成后可获得所有歌曲 BPM，并可即时加载响度与波形。',
  analyticsStrategyPriorityTitle: '分析优先级（始终生效）',
  analyticsStrategyPriorityHigh: '1 — 当前播放：优先下载并分析（播放字节、响度回填，或在需要时走 HTTP）。',
  analyticsStrategyPriorityMiddle: '2 — 即将播放：队列中接下来的约 5 首及热缓存邻近曲目——优先从缓存/已下载字节分析，未命中时才做 HTTP 回填。',
  analyticsStrategyPriorityLow: '3 — 库批处理（仅“激进”）：自动后台队列排在末尾；按水位线（约 3× workers）补充，无需等待队列清空。',
  analyticsStrategyServerLabel: '服务器',
  analyticsStrategyProgressLabel: '分析进度：',
  analyticsStrategyProgressValue: '{{percent}}% ({{done}}/{{total}})',
  analyticsStrategyActionsLabel: '操作',
  analyticsStrategyParallelismLabel: '并行 worker',
  analyticsStrategyParallelismValue: '{{n}} 线程',
  analyticsStrategyParallelismDesc: '同时下载并分析的歌曲数量（HTTP + CPU）。数值越高，补齐库分析越快，但会占用更多网络和 CPU。',
  analyticsStrategyAdvancedWarning: '“激进”模式在后台库批处理运行期间会占用更多 CPU 和网络带宽。',
  analyticsStrategyServerRemoved: '已移除的服务器',
  analyticsStrategyClearAction: '清除分析',
  analyticsStrategyClearTitle: '清除分析？',
  analyticsStrategyClearDesc: '清除 {{server}} 的分析将删除缓存的波形与响度数据。稍后重新添加该服务器可能需要较长时间重新索引。',
  analyticsStrategyClearCancel: '取消',
  analyticsStrategyClearConfirm: '清除分析',
  analyticsStrategyClearSuccess: '已清除已移除服务器的分析数据。',
  analyticsStrategyClearError: '清除已移除服务器的分析数据失败。',
  analyticsStrategyProgressEmptyAfterFailed: '100%（0/0，受失败歌曲阻塞）',
  analyticsFailedTracksOpenTitle: '失败歌曲：{{count}}',
  analyticsFailedTracksTitle: '分析失败歌曲 — {{server}}',
  analyticsFailedTracksDesc: '这些歌曲在 decode/enrichment 中反复失败，已被排除在自动后台分析之外。',
  analyticsFailedTracksLoading: '正在加载失败歌曲列表…',
  analyticsFailedTracksEmpty: '该服务器没有失败歌曲。',
  analyticsFailedTracksClose: '关闭',
  analyticsFailedTracksExport: '导出列表',
  analyticsFailedTracksExportSuccess: '失败歌曲列表已导出（{{count}}）。',
  analyticsFailedTracksExportError: '导出失败歌曲列表失败。',
  analyticsFailedTracksRescan: '重新扫描失败歌曲',
  analyticsFailedTracksRescanSuccess: '已为 {{count}} 首失败歌曲安排重新扫描。',
  analyticsFailedTracksRescanError: '无法重新扫描失败歌曲。',
  analyticsFailedTracksLoadError: '无法加载失败歌曲。',
  backupImportAny: '导入备份',
  backupImportAnyConfirm: '导入所选备份文件并应用其内容（设置、库数据库或完整备份）。是否继续？',
  backupModeFull: '完整',
  backupModeLibrary: '库数据库',
  backupModeConfig: '配置',
  backupFullDesc: '将设置与库数据库打包到一个备份文件中。',
  backupFullExport: '导出完整备份',
  backupFullImport: '导入完整备份',
  backupFullImportConfirm: '这将覆盖设置、替换当前库数据库并移动到 .bak。是否继续？',
  backupFullExportSuccess: '完整备份已导出。',
  backupFullImportSuccess: '完整备份已导入——正在重载…',
  backupFullImportError: '无法导入完整备份。',
  backupLibraryExport: '导出数据库',
  backupLibraryExportDesc: '创建一个压缩归档，其中包含干净的库数据库 SQLite 快照。',
  backupLibraryImport: '导入数据库',
  backupLibraryImportDesc: '从归档文件恢复库数据库。切换前会将当前数据库移动到 .bak。',
  backupLibraryImportConfirm: '这将替换当前库数据库并移动到 .bak。是否继续？',
  backupLibraryExportSuccess: '数据库备份已导出。',
  backupLibraryImportSuccess: '数据库备份已导入。',
  backupLibraryImportError: '无法导入数据库备份。',
  backupOverlayExportTitle: '正在创建备份…',
  backupOverlayImportTitle: '正在恢复备份…',
  backupOverlayHint: '处理文件时你可以保持窗口打开。输入会暂时锁定。',
};
