/* ===== 14-ai-legal.css —— V2.15 AI 法律检索 / 知识库管理 / AI 成本 ===== */

/* ---------- 引擎状态徽标 ---------- */
.engine-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:#F6F8FB;font:500 11.5px/1 var(--font-cn);color:var(--text-label);}
.engine-chip .dot{width:7px;height:7px;border-radius:50%;background:#C3CBD5;flex:none;}
.engine-chip .txt{white-space:nowrap;}
.engine-chip.on{color:#1F7A48;border-color:#BFE3CE;background:#EDF8F1;}
.engine-chip.on .dot{background:#2E9E5B;box-shadow:0 0 0 3px rgba(46,158,91,.15);}
.engine-chip.off{color:#8A5A10;border-color:#EAD9AE;background:#FBF6E9;}
.engine-chip.off .dot{background:#C9A24A;}

/* ---------- 案情输入 ---------- */
.scenario-box{border:1px solid var(--border);border-radius:12px;background:#FBFCFE;padding:14px 16px;display:flex;flex-direction:column;gap:10px;}
.scenario-label{display:flex;align-items:center;gap:7px;font:600 13px/1 var(--font-cn);color:var(--text-strong);}
.scenario-tip{font:400 11.5px/1 var(--font-cn);color:var(--text-meta);margin-left:auto;text-align:right;}
.scenario-input{width:100%;box-sizing:border-box;min-height:70px;resize:vertical;border:1px solid var(--border);border-radius:10px;padding:11px 14px;font:400 13.5px/1.7 var(--font-cn);color:var(--text-body);background:#fff;}
.scenario-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,74,.12);}
.scenario-foot{display:flex;align-items:center;gap:14px;}
.scenario-foot .uz-btn{display:inline-flex;align-items:center;gap:7px;}

/* ---------- 检索结果分组与卡片 ---------- */
.res-group-title{display:flex;align-items:baseline;gap:8px;margin:2px 0 12px;}
.res-group-title .g-name{font:700 15px/1.2 var(--font-cn);color:var(--text-strong);}
.res-group-title .g-sub{font:400 12px/1 var(--font-cn);color:var(--text-meta);}
.res-group{margin-bottom:20px;}
.res-kind{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:6px;font:600 11px/1 var(--font-cn);flex:none;}
.res-kind.law{background:#E9F1FA;color:#2E5A86;}
.res-kind.case{background:#F7F1E2;color:#9A7315;}
.result-item .res-main{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;}
.res-fb-chip{display:inline-flex;align-items:center;gap:4px;font:600 11px/1 var(--font-cn);color:#1F7A48;flex:none;background:#EDF8F1;padding:3px 8px;border-radius:6px;}
.res-fb-chip.rej{color:#B3402E;background:#FCEFEC;}
.res-src{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;padding-top:9px;border-top:1px dashed #EDF0F5;font:400 12px/1.5 var(--font-cn);color:var(--text-meta);}
.res-src .rs-item{display:inline-flex;align-items:center;gap:5px;}
.res-src b{color:var(--text-label);font-weight:600;}
.res-src a.rc-open{color:#2E5A86;text-decoration:underline dotted;cursor:pointer;display:inline-flex;align-items:center;gap:4px;}
.res-src a.rc-open:hover{color:#1D4370;}
.res-eff{display:inline-flex;align-items:center;gap:4px;color:#1F7A48;}
.res-eff.expired{color:#B3402E;}
.res-actions{margin-left:auto;display:inline-flex;gap:6px;}
.rd-btn{border:1px solid var(--border);background:#fff;border-radius:7px;padding:4px 10px;font:500 11.5px/1 var(--font-cn);color:var(--text-label);cursor:pointer;display:inline-flex;align-items:center;gap:4px;}
.rd-btn:hover{border-color:#C9A24A;color:var(--navy-800);}
.rd-btn.done{border-color:transparent;cursor:default;color:#1F7A48;background:#EDF8F1;}
.rd-btn.done.rej{border-color:transparent;cursor:default;color:#B3402E;background:#FCEFEC;}

/* ---------- 来源核对 modal ---------- */
.legal-src-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;background:#F6F8FB;border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-bottom:12px;}
.legal-src-meta .kv{min-width:0;}
.legal-src-meta .kv-label{font:400 11px/1.3 var(--font-cn);color:var(--text-meta);display:block;margin-bottom:4px;}
.legal-src-meta .kv-val{font:500 13px/1.4 var(--font-cn);color:var(--text-strong);word-break:break-all;}
.legal-src-section{font:600 12.5px/1 var(--font-cn);color:var(--text-body);margin:14px 0 8px;}
.legal-src-text{max-height:190px;overflow:auto;background:#FBFCFE;border:1px solid var(--border);border-radius:10px;padding:12px 14px;font:400 13px/1.85 var(--font-cn);color:var(--text-body);white-space:pre-wrap;}
.legal-src-note{font:400 11px/1.4 var(--font-cn);color:var(--text-meta);}
.legal-src-source{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.src-chip{display:inline-flex;align-items:center;gap:6px;background:#EDF4EE;border:1px solid #D5E6D9;border-radius:8px;padding:6px 12px;font:500 12px/1 var(--font-cn);color:#1F5C3B;}
.src-chip a{color:#2E5A86;text-decoration:underline dotted;margin-left:2px;}
.legal-reject-box{margin-top:12px;border:1px dashed #E3C9A6;background:#FFFBF3;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;}
.legal-fb-state{font:500 12px/1 var(--font-cn);color:var(--text-meta);margin-right:auto;}
.legal-fb-state.done{color:#1F7A48;}
.btn-ghost-danger{border:1px solid #E9C4BD;background:#fff;color:#B3402E;border-radius:9px;height:38px;padding:0 16px;font:600 13px/1 var(--font-cn);cursor:pointer;}
.btn-ghost-danger:hover{background:#FCEFEC;}
.legal-fb-tag{display:inline-flex;align-items:center;gap:5px;margin-left:6px;}

/* ---------- 知识库迷你概览 ---------- */
.kb-mini{display:flex;flex-direction:column;gap:7px;margin:2px 0 4px;}
.kb-mini-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font:400 12.5px/1 var(--font-cn);color:var(--text-meta);}
.kb-mini-row .kb-val{font:600 13px/1 var(--font-num);color:var(--text-strong);font-variant-numeric:tabular-nums;}
.kb-mini-row .kb-val small{font:400 11px/1 var(--font-cn);color:var(--text-meta);margin-left:3px;}
.kb-mini .kb-eng-state{display:flex;align-items:center;gap:6px;margin-top:2px;padding-top:8px;border-top:1px dashed #EDF0F5;font:400 11.5px/1.5 var(--font-cn);color:var(--text-meta);}
.kb-mini .kb-eng-state code{background:#F1F3F8;padding:1px 5px;border-radius:4px;font:500 11px/1.5 var(--font-mono);}

/* ---------- 文件选择 ---------- */
/* V3.65：.file-pick / :hover / .picked 三条规则随 modalKbUpload 上传弹窗下线 ——
   全项目唯一使用者就是那个弹窗（弹窗本身没有任何 openModal 调用点，
   永远打不开），删掉后这组虚线框样式已无使用者，留着只会诱使后人改回来。 */

/* ---------- AI 成本 ---------- */
/* V3.61：.section-tag / .ghost-mini-btn 随「使用范围」卡片（含「绑定 Key」按钮）
   下线而移除 —— 现已无使用者，留着只会诱使后人改回来。
   .ai-cost-block / .cost-grid / .cost-card / .cc-label / .cc-num 早在 V3.41
   「授权与用量」整页下线时就已无使用者，本次一并清理（含其派生变体）。
   .cost-alert 保留 —— V3.61 起由设置中心「授权到期」块内的提醒条使用。 */
.cost-alert{display:flex;align-items:center;gap:8px;background:#FDF2F0;border:1px solid #F0D0C9;border-radius:10px;padding:10px 14px;font:400 12.5px/1.6 var(--font-cn);color:#8A2F22;margin-bottom:12px;}
.cost-alert svg{flex:none;}
.kb-empty-line{font:400 12px/1.6 var(--font-cn);color:var(--text-meta);padding:6px 0;}
