{{pageTitle}}
{{languageLabel}} AI {{t('邮箱')}} {{t(themeNames[theme])}}
{{t('天')}}{{t('周')}}{{t('月')}} {{t('刷新')}}
{{t('投诉/函件总数')}}{{stats.total}}{{stats.by_source.map(x=>label('source',x.key,x.label)+' '+x.count).join(' · ')}}
{{t('待回复')}}{{stats.pending}}{{ t('其中监管追问 {count}', {count:stats.followup}) }}
{{t('超期未回复')}}{{stats.sla.open_overdue}}{{t('已过 SECP 要求期限')}}
{{t('按时回复率')}}{{stats.sla.on_time_rate==null?'-':stats.sla.on_time_rate+'%'}}{{ t('超期回复 {late} / 有期限 {total}', {late:stats.sla.late,total:stats.sla.with_deadline}) }}
{{t('首次响应(中位)')}}{{stats.response.median_minutes==null?'-':fmtMin(stats.response.median_minutes)}}{{ t('平均 {average} · {count} 单', {average:fmtMin(stats.response.avg_minutes),count:stats.response.count}) }}
{{t('待识别(需 OCR/AI)')}}{{(stats.by_category.find(x=>x.key==='other')||{}).count||0}}{{t('正文无信息,详情在附件')}}
{{t('按天明细表')}} {{t('点击工单数查看明细')}}
{{t('工单按首次来信日期统计,邮件按发送日期统计(UTC)')}}
{{t('查询')}} {{t('重置')}} {{t('导出 Excel')}}
{{ t('共 {total} 条,已选 {selected} 条', {total,selected:selected.length}) }} Mark
{{t('搜索')}}
{{t('邮箱同步')}} {{t('邮箱设置 →')}}

{{t('邮箱')}}: {{meta.imap_user||t('未配置')}} @ {{meta.imap_host}} {{t(meta.imap_configured?'已配置':'未配置')}}

{{ t('{folder}:已同步到 UID {uid}', {folder:st.folder,uid:st.last_uid}) }} · {{ t('错误:{error}', {error:st.last_error}) }}
{{t(syncP.running?'同步中…':'立即同步')}} {{t('本次最多拉取封数')}} · {{t('自动同步')}}: {{meta.sync_interval_seconds>0?t('每 {count} 秒',{count:meta.sync_interval_seconds}):t('关闭')}}
{{ t('{folder}:已处理 {fetched} 封 · 新工单 {created} · 归并 {merged} · 回复 {reply} · 内部 {internal} · 跳过 {skipped} · 对账补拉 {reconciled} · 错误 {errors}', {folder:syncP.stats.folder,fetched:syncP.stats.fetched,created:syncP.stats.created,merged:syncP.stats.merged,reply:syncP.stats.reply,internal:syncP.stats.internal||0,skipped:(syncP.stats.duplicate||0)+(syncP.stats.ignored||0),reconciled:syncP.stats.reconciled||0,errors:syncP.stats.errors}) }}
{{JSON.stringify(syncP.result,null,2)}}
{{t('上传 EML 文件')}}

{{t('同步只取邮件头 + 正文 + 附件清单,附件在需要时(点开 / AI 判断要 OCR)才从邮箱按段拉取;每封邮件都有 UID 账本,不会重复处理,每次同步还会对账补拉遗漏。')}}

{{t('支持多选 .eml,或打包 .zip。Zoho / Outlook / Gmail 都可「下载为 .eml」。重复邮件自动去重。')}}

{{t('用 Gemini 复核分类 / OCR')}} {{t('上传并解析')}}
{{uploadResult}}
{{t('维护')}}
{{t('按规则重新分类(不覆盖人工)')}} {{t('用 Gemini 复核「待识别」')}} {{t('补跑图片 OCR')}} {{maintMsg}}
{{t('投诉邮箱(Zoho IMAP)')}}
{{t('0 = 关闭')}} {{t('保存')}}{{t('测试连接')}}
{{t('Zoho 自定义域名邮箱:')}}imap.zoho.com:993{{t('。需在 Zoho Mail → Settings → Mail Accounts → IMAP Access 启用;开启两步验证后必须用应用专用密码。密码加密存储,不在页面回显。')}}
{{t('AI(Google Gemini · GCP InxAI)')}}
{{t('关闭时仅用关键词规则分类')}} {{t('SECP 投诉约一半详情只在截图里')}} {{t('Vertex AI(服务账号)')}}API Key {{t('主模型下线/限流时按顺序尝试')}} {{t('保存')}}{{t('当前')}}: {{meta.ai_available?t('✅ 可用'):('⛔ '+(meta.ai_error||t('未启用')))}}
{{t('分类规则')}} {{t('关键词命中累计权重,最高分即分类;AI 启用时低置信度交给 Gemini 复核')}}
{{t('添加 / 更新')}}
{{t('账户管理')}}
{{t('添加 / 更新')}}

{{t('显示在侧边栏和浏览器标题。')}}

{{t('保存')}}
{{label('source',detail.source_type,detail.source_type_label)}} {{fmt(detail.received_at)}} {{detail.deadline_at?fmt(detail.deadline_at):'-'}} {{ detail.overdue==='late'?t('(回复超期)'):detail.overdue==='open'?t('(已超期未回复)'):'' }} {{detail.sender_name}} <{{detail.sender_email}}> {{detail.first_reply_at?fmt(detail.first_reply_at)+' ('+fmtMin(detail.response_minutes)+')':'-'}} {{ t('来信 {incoming} · 回复 {outgoing} · 催办 {reminders}', {incoming:detail.inbound_count,outgoing:detail.reply_count,reminders:detail.reminder_count}) }}
{{ label('categorySource',detail.category_source) }} · {{ t('置信度 {confidence}', {confidence:detail.category_confidence}) }}
{{t('人工设定')}} · {{t('恢复自动')}}
{{t('保存')}} {{detail.ai_summary}}
{{t('主题')}}: {{detail.subject}}
{{detail.body_text}}
{{ t('邮件往来({count})', {count:detail.messages.length}) }}
{{ label('direction',mm.direction) }} ⏰ {{t('催办')}} · {{fmt(mm.sent_at)}} · {{mm.from_email}} → {{mm.to_emails}} · 📎{{mm.attachment_count}} · {{t('预览原文')}}
{{mm.body_text.slice(0,3000)}}
{{t('变更记录')}}
{{ t('{operator} 修改 {field}:{old} → {new}', {operator:l.operator,field:l.field,old:l.old_value||t('(空)'),new:l.new_value}) }}
{{ label('direction',msg.direction) }} {{fmt(msg.sent_at)}} · {{msg.from_email}} → {{msg.to_emails}} · {{msg.folder}} #{{msg.imap_uid}} · {{fmtKB(msg.size_bytes)}} · {{t('工单')}} {{msg.ticket_no}} {{t('⬇ 下载 .eml')}}
{{t('HTML 原文')}}{{t('纯文本')}}
{{msg.body_text}}
{{a.is_image?'🖼':'📎'}} {{a.filename}} {{fmtKB(a.size)}} · {{t('未拉取')}}