/* 中国古代史智能史料库（公测版）检索 · 全站共享样式 */
:root { --bg:#f6f4ef; --fg:#2a2622; --accent:#8c5a3b; --line:#ddd6c8; --nav:#2c3e50; }
* { box-sizing:border-box; }
body { margin:0; font-family:"Noto Serif SC","Songti SC","Microsoft YaHei",serif;
       background:var(--bg); color:var(--fg); }
a { color:var(--accent); }

/* 顶部导航（各页一致） */
.topnav { display:flex; gap:2px; align-items:center; padding:0 16px; background:var(--nav);
          color:#fff; flex-wrap:wrap; }
.topnav .brand { font-weight:600; letter-spacing:1px; margin-right:16px; padding:12px 0; font-size:15px; }
.topnav a { color:#cfd8e3; text-decoration:none; padding:12px 13px; font-size:14px;
            border-bottom:3px solid transparent; }
.topnav a:hover { color:#fff; background:rgba(255,255,255,.07); }
.topnav a.on { color:#fff; border-bottom-color:#3498db; }

main { max-width:960px; margin:0 auto; padding:22px 20px 70px; }
h1 { font-size:20px; margin:6px 0 4px; }
.lead { color:#7a7266; font-size:13.5px; line-height:1.8; margin:4px 0 16px; }
.box { background:#fffdf8; border:1px solid var(--line); border-radius:8px; padding:18px; margin-top:14px; }
textarea { width:100%; min-height:96px; padding:12px; font-family:inherit; font-size:15px;
           border:1px solid var(--line); border-radius:6px; resize:vertical; background:#fff; }
.row { display:flex; gap:12px; align-items:center; margin-top:12px; flex-wrap:wrap; }
label { font-size:13px; color:#6f675b; }
input[type=range] { width:140px; vertical-align:middle; }
select, input[type=text], input[type=number], input[type=password] {
  font-family:inherit; padding:5px 7px; border:1px solid var(--line); border-radius:4px; background:#fff; }
input[type=number] { width:64px; }
button { padding:9px 20px; font-size:14px; background:var(--accent); color:#fff; border:none;
         border-radius:6px; cursor:pointer; font-family:inherit; }
button.secondary { background:#7a7266; font-size:13px; padding:6px 14px; }
button.ghost { background:#e9e3d7; color:#5c5246; font-size:13px; padding:6px 14px; }
button:disabled { opacity:.5; cursor:wait; }
.hint, #hint { font-size:12px; color:#9a9184; margin-top:10px; line-height:1.7; }
details { margin-top:10px; font-size:13px; color:#6f675b; }
details textarea { min-height:70px; font-family:Consolas,monospace; font-size:12px; }
.item { background:#fffdf8; border:1px solid var(--line); border-radius:8px; padding:14px 16px; margin-top:12px; }
.meta { font-size:12px; color:#8a8175; margin-bottom:6px; }
.meta b { color:#5c5246; font-size:13px; }
.text { font-size:15px; line-height:1.9; white-space:pre-wrap; }
.context { margin-top:10px; padding:10px 12px; background:#f7f2e9; border-left:3px solid #d5c5ad;
           color:#554c42; font-size:14px; line-height:1.8; white-space:pre-wrap; }
.ctxline { padding:3px 0; border-bottom:1px dashed #e6ddcc; }
.ctxline:last-child { border-bottom:0; }
.ctxline.hit { background:#f3ead6; padding-left:8px; margin-left:-8px; border-left:3px solid #b08d57; }
.ctxseq { display:inline-block; min-width:52px; color:#a99a83; font-size:11px;
          font-family:Consolas,monospace; vertical-align:top; }
.ctxmark { display:inline-block; font-size:11px; color:#fff; background:#b08d57;
           border-radius:3px; padding:0 5px; margin-right:6px; }
.bookmeta { color:#675d51; margin-top:4px; }
.score { display:inline-block; font-size:12px; background:#efe8db; color:#6f5b45;
         padding:2px 8px; border-radius:10px; margin-right:6px; margin-bottom:4px; }
.score.cover { background:#e3e8dd; color:#4c5b45; }
.err { color:#a33; margin-top:10px; }
.stats { font-size:13px; color:#6f675b; margin:14px 0 4px; }
.ctr { text-align:center; margin-top:14px; }

/* 共用分页条（pager.js；交互与互文网络一致） */
.pager { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin:14px 0 6px; font-size:13px; }
.pager .pginfo { color:#6f675b; }
.pager .pgbusy { color:#9a9184; }
.pager button { background:#e9e3d7; color:#5c5246; font-size:12.5px; padding:5px 11px; }
.pager button:disabled { opacity:.45; cursor:default; }
.pager .pgnum { width:74px; padding:4px 6px; border:1px solid var(--line); border-radius:4px;
                font-family:inherit; font-size:13px; background:#fff; }

/* 四种检索方式页 */
.tabs { display:flex; gap:6px; flex-wrap:wrap; margin:16px 0 0; }
.tabs .tab { background:#e9e3d7; color:#5c5246; font-size:13.5px; padding:8px 14px; border-radius:6px 6px 0 0; }
.tabs .tab.on { background:#fffdf8; color:var(--accent); border:1px solid var(--line); border-bottom-color:#fffdf8; font-weight:600; }
.pane { display:none; background:#fffdf8; border:1px solid var(--line); border-radius:0 8px 8px 8px; padding:18px; }
.pane.on { display:block; }
.pane h2 { font-size:16px; margin:0 0 6px; }
.pane .sub { font-size:12.5px; color:#8a8175; line-height:1.8; margin-bottom:12px; }
.field { display:flex; gap:8px; align-items:center; margin:8px 0; flex-wrap:wrap; }
.field label { min-width:96px; }
.field input[type=text], .field input[type=password] { width:320px; }
pre.api { background:#2b2b2b; color:#e6e6e6; font-size:12px; line-height:1.7; padding:12px 14px;
          border-radius:6px; overflow-x:auto; font-family:Consolas,monospace; margin:12px 0 0; }
pre.api b { color:#7fd1a6; font-weight:600; }
code { background:#efe8db; padding:1px 5px; border-radius:4px; font-family:Consolas,monospace; font-size:12.5px; }
.msg { font-size:12.5px; color:#4c5b45; margin-left:8px; }
.msg.bad { color:#a33; }
hr.sep { border:none; border-top:1px dashed var(--line); margin:16px 0; }

/* 工具栏（排序/时代筛选/限定书名） */
.toolbar { background:#fffdf8; border:1px solid var(--line); border-radius:8px; padding:12px 16px; margin-top:12px; }
.toolbar .trow { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:5px 0; }
.toolbar label { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.erabtns { display:inline-flex; flex-wrap:wrap; gap:4px; }
.erabtn { background:#efe8db; color:#6f5b45; font-size:12px; padding:3px 10px; border-radius:12px;
          border:1px solid transparent; cursor:pointer; font-family:inherit; }
.erabtn.on { background:var(--accent); color:#fff; }
.erabtn:hover { border-color:var(--accent); }
.toolbar input[type=text] { width:250px; }

/* 全文查看弹窗 */
.ftmodal { display:none; position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:99;
           align-items:center; justify-content:center; }
.ftbox { background:#fffdf8; width:min(760px,92vw); max-height:86vh; display:flex;
         flex-direction:column; border-radius:8px; overflow:hidden; }
.fthead { display:flex; justify-content:space-between; align-items:center; padding:12px 16px;
          border-bottom:1px solid var(--line); gap:12px; }
.fttitle { font-weight:600; font-size:14px; overflow-wrap:anywhere; }
.fttools { display:flex; gap:8px; align-items:center; padding:8px 16px;
           border-bottom:1px solid var(--line); flex-wrap:wrap; font-size:12.5px; }
.ftinfo { color:#6f675b; margin-right:auto; }
.fttools input[type=text] { width:180px; }
.ftbody { overflow-y:auto; padding:12px 16px; font-size:14px; line-height:1.9; }
.ftchunk { padding:6px 0; border-bottom:1px dashed #e6ddcc; white-space:pre-wrap; }
.ftchunk:last-child { border-bottom:0; }
.ftchunk.ft-hit { background:#f3ead6; border-left:3px solid #b08d57; padding-left:8px; }
.ftchunk.ft-found { background:#eef3e2; }
.ftseq { display:inline-block; min-width:52px; color:#a99a83; font-size:11px;
         font-family:Consolas,monospace; vertical-align:top; }
.ftbtn { margin-left:6px; }

/* 内容关键词标签（可点 × 删） */
.chip { display:inline-block; background:#efe8db; color:#6f5b45; font-size:12px; padding:1px 4px 1px 8px; border-radius:10px; margin:2px; }
.chip .chipx { cursor:pointer; margin-left:5px; color:#a33; font-weight:bold; }
.chip .chipplus { cursor:pointer; margin-left:5px; color:#4a7d3a; font-weight:bold; }
.chipwrap { display:inline-block; margin:2px; vertical-align:top; }
.subchip { display:inline-block; background:#e3e8dd; color:#4c5b45; font-size:11px; padding:0 6px; border-radius:8px; margin:1px 2px 1px 12px; }

/* 结果正文高亮 + 点正文看全文 */
mark { background:#f9e79f; color:#2a2622; padding:0 2px; border-radius:2px; }
.text.ftlink { cursor:pointer; }
.text.ftlink:hover { background:#fbf7ec; }

/* 语义检索页（/semantic）：理解面板 / 回答面板 / 已过滤 */
.understand { background:#fffdf8; border:1px solid var(--line); border-radius:8px;
              padding:12px 16px; margin-top:14px; }
.understand summary { cursor:pointer; font-weight:600; font-size:14px; color:#5c5246; }
.ubody { margin-top:10px; font-size:13.5px; line-height:1.9; }
.urow { padding:3px 0; }
.urow b { display:inline-block; min-width:64px; color:#8c5a3b; }

/* 检索方案过目/编辑面板（AI 检索两段式：理解 → 过目编辑 → 确认） */
.scheme { background:#fffdf8; border:1px solid var(--line); border-radius:8px; padding:14px 16px; }
.schemehead { font-size:14px; font-weight:600; color:#5c5246; margin-bottom:10px; }
.schrow { padding:6px 0; border-top:1px dashed #eee4d2; }
.schrow:first-of-type { border-top:0; }
.schrow b { display:inline-block; min-width:64px; color:#8c5a3b; vertical-align:top; }
.schrow .chips { display:inline-block; max-width:60%; vertical-align:top; }
.schsub { font-size:12px; color:#8a8175; padding:8px 0 2px; line-height:1.7; }
.chkey { display:inline-block; min-width:72px; color:#3d5566; font-weight:600; }
.chk { color:#5c5246; font-size:13px; }
.schbtns { padding-top:12px; }
.schbtns button { margin-right:8px; }
.followup-confirm { background:#fdf6e3; border:1px solid #e8d9a8; border-radius:6px; padding:12px 14px; margin:0 0 10px; }
.followup-confirm b { color:#8a5a2b; margin-right:8px; }
.followup-confirm button { margin-right:6px; padding:6px 14px; font-size:13px; }

/* AI 分析过程（思考链）实时面板 */
.trace { margin-top:14px; }
.traceh { background:#f4f6f8; border:1px solid #d7dde3; border-radius:8px; padding:10px 14px; }
.traceh summary { cursor:pointer; font-weight:600; font-size:13.5px; color:#3d5566; }
.tracebody { margin-top:8px; }
.tstep { border-top:1px dashed #dfe5ea; padding:7px 0; }
.tstep:first-child { border-top:0; }
.tlabel { font-size:13px; color:#4a5a68; font-weight:600; }
.tno { display:inline-block; min-width:20px; height:20px; line-height:20px; text-align:center;
       background:#8c5a3b; color:#fff; border-radius:10px; font-size:11px; margin-right:6px; }
.treason, .tcontent { margin-top:5px; }
.treason summary, .tcontent summary { cursor:pointer; font-size:12px; color:#8a8175; }
.tbody { margin-top:5px; font-size:12.5px; line-height:1.8; color:#5a6a78; white-space:pre-wrap;
         background:#fff; border:1px solid #e8edf2; border-radius:6px; padding:8px 10px; max-height:320px; overflow:auto; }

/* 检索过程（进度）面板：阶段耗时条 + 通道明细表 */
.qsummary { margin-top:10px; }
.stbar { display:flex; height:8px; border-radius:4px; overflow:hidden; background:#eee7db; margin-top:8px; }
.stseg { display:inline-block; height:100%; }
.stseg:nth-child(1) { background:#a9c2d4; }
.stseg:nth-child(2) { background:#8c5a3b; }
.stseg:nth-child(3) { background:#e0b25a; }
.stseg:nth-child(4) { background:#6b9c7d; }
.stseg:nth-child(5) { background:#b08d57; }
.stleg { font-size:12px; color:#8a8175; margin-top:4px; line-height:1.6; }
.chantab { width:100%; border-collapse:collapse; margin-top:8px; font-size:12.5px; }
.chantab th, .chantab td { border:1px solid #e6ddcc; padding:3px 8px; text-align:left; }
.chantab th { background:#f4efe4; color:#6f5b45; font-weight:600; }
.chantab td:first-child { font-family:Consolas,monospace; color:#4a5a68; }
.cst-ok { color:#2e7d32; }
.cst-fail { color:#c0392b; }

/* 网站说明页：按钮释义列表 */
.guide { margin:0; }
.guide dt { font-weight:600; color:#8c5a3b; margin-top:12px; }
.guide dt:first-child { margin-top:0; }
.guide dd { margin:2px 0 0 0; color:#4a4440; line-height:1.85; }
.guide code, .box code { background:#f0ebe0; color:#6f5b45; padding:0 4px; border-radius:3px; font-family:Consolas,monospace; font-size:12.5px; }
.box ul { margin:6px 0; padding-left:20px; line-height:1.85; }
.shot { margin:10px 0; }
.shot img { max-width:100%; border:1px solid var(--line); border-radius:6px; display:block; }

/* 右下角角色唱片播放器（碟片圆形，原图不裁剪，可拖动） */
.charspeaker {
  position: fixed; right: 20px; bottom: 20px; z-index: 9998;
  width: 220px; height: 220px; border-radius: 50%;
  background: transparent;
  border: 4px solid rgba(20,20,20,.7);        /* 唱片外圈细环 */
  box-shadow: 0 8px 28px rgba(0,0,0,.45);
}
.charspeaker .cs-img {
  width: 100%; height: 100%; object-fit: contain; object-position: center;   /* 原图不裁剪 */
  border-radius: 50%;
}
.charspeaker .cs-play {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
  width: 56px; height: 56px;
  background: transparent; border: none; cursor: pointer;   /* 透明播放键 */
  color: #fff; font-size: 26px;
  display: flex; align-items: center; justify-content: center;
  text-shadow: 0 1px 4px rgba(0,0,0,.85);
}
.charspeaker .cs-close {
  position: absolute; top: 10px; right: 14px;
  width: 24px; height: 24px; border: none; border-radius: 50%;
  background: rgba(0,0,0,.55); cursor: pointer;
}
.charspeaker .cs-close::before, .charspeaker .cs-close::after {
  content: ''; position: absolute; left: 50%; top: 50%;
  width: 13px; height: 2px; background: #fff;
}
.charspeaker .cs-close::before { transform: translate(-50%,-50%) rotate(45deg); }
.charspeaker .cs-close::after { transform: translate(-50%,-50%) rotate(-45deg); }
.dim { color:#9a9184; }
.usub { margin-top:8px; }
.usub summary { font-weight:400; font-size:12.5px; color:#8a8175; }
.anspanel { background:#fbf7ec; border:1px solid #e0d5bf; border-radius:8px;
            padding:14px 16px; margin-top:14px; }
.anspanel h3 { margin:0 0 8px; font-size:15px; color:#5c5246; }
.atext { font-size:15px; line-height:2; white-space:normal; }
.score.reason { background:#e6ecf2; color:#3d5566; }
.sech { font-size:14px; color:#5c5246; margin:18px 0 0; }
.item.dropped { opacity:.86; background:#fbfaf7; }
.item.dropped .text { color:#7a7266; }
.filtered { margin-top:16px; }
.filtered summary { cursor:pointer; font-size:13px; color:#8a8175; }
.hbsec { margin-top:20px; }
.hbsec h3 { font-size:16px; color:#2c3e50; margin:0 0 6px; padding-left:8px; border-left:4px solid var(--accent); }
.editorial { background:#fbf7ec; border:1px solid #e0d5bf; border-radius:8px; padding:10px 14px;
             font-size:13.5px; line-height:1.9; color:#5c5246; margin-bottom:8px; }
.hbitem .text { white-space:pre-wrap; line-height:1.9; }
.hsrc { font-size:11.5px; color:#8a8175; margin-top:4px; }

/* 研究流程：收集篮 / 找相似 / 并列比较（直接检索页与互文页共用） */
.basketbar { position:fixed; right:16px; bottom:16px; z-index:200;
             background:#fffdf8; border:1px solid #d9cdb8; border-radius:8px;
             padding:8px 12px; box-shadow:0 2px 10px rgba(0,0,0,.08);
             display:flex; gap:8px; align-items:center; font-size:13px; color:#5c5246; }
.basketbar .bk-title { font-weight:600; color:#8c5a3b; }
.basketbar button { padding:4px 10px; color:#2a2622; }
.collectbtn.on { background:#e3efe3; color:#2f6b3a; border-color:#b7d3b7; }
.simbtn { margin-left:6px; }

/* AI 优先检索页（/）：类 agent 布局 —— 上结果、下提问栏 */
body.chat { height:100vh; display:flex; flex-direction:column; overflow:hidden; }
#layout { flex:1; display:flex; flex-direction:row; overflow:hidden; min-width:0; }
#sidebar { width:230px; flex:0 0 auto; border-right:1px solid var(--line); background:#fbf8f1; display:flex; flex-direction:column; overflow:hidden; }
#sidebar.collapsed { display:none; }
.sbarhead { display:flex; gap:6px; padding:8px; border-bottom:1px solid var(--line); }
.sbarhead #newconv { flex:1; }
#convlist { flex:1; overflow-y:auto; padding:6px; }
.convitem { padding:8px 10px; border-radius:6px; cursor:pointer; font-size:13px; line-height:1.5; color:#4a4036; margin-bottom:4px; }
.convitem:hover { background:#f0e9dc; }
.convitem.on { background:#e8e0d2; font-weight:600; }
.convitem .ct { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.convitem .cm { font-size:11px; color:#9a8f7f; margin-top:2px; }
#maincol { flex:1; display:flex; flex-direction:column; overflow:hidden; min-width:0; }
body.chat main { flex:1; overflow-y:auto; max-width:1040px; width:100%; padding-bottom:12px; }
#chatbar { border-top:1px solid var(--line); background:#fffdf8; padding:10px 16px; flex:0 0 auto; }
.advtoggle { display:block; margin:4px auto 2px; padding:4px 16px; background:#e9e3d7; border:1px solid #d8cfbf; border-radius:4px; color:#5c5246; font-size:13px; cursor:pointer; }
.chatrow { display:flex; gap:10px; align-items:center; margin:6px 0; flex-wrap:wrap; }
.chatrow textarea { min-height:56px; }
#chatbar select, #chatbar input[type=text], #chatbar input[type=password] { font-size:13px; }
.stages { display:flex; gap:8px; margin:12px 0 4px; flex-wrap:wrap; }
.stg { font-size:12.5px; color:#9a9184; padding:4px 12px; border-radius:14px; background:#efe8db; }
.stg.on { background:var(--accent); color:#fff; }
.stg.done { background:#e3e8dd; color:#4c5b45; }

/* 史源网络「全书阅读」弹窗（左右两栏：全书 chunk / 相关 chunk） */
.readmodal { display:none; position:fixed; inset:0; background:rgba(0,0,0,.55); z-index:120; }
.readbox { position:absolute; inset:2vh 2vw; background:#faf8f3; border-radius:10px; display:flex;
           flex-direction:column; overflow:hidden; }
.readhead { display:flex; justify-content:space-between; align-items:center; padding:10px 16px;
            border-bottom:1px solid #ddd6c8; gap:12px; }
.readtitle { font-weight:600; font-size:15px; overflow-wrap:anywhere; color:#2c3e50; }
.readtools { display:flex; gap:8px; align-items:center; padding:8px 16px; border-bottom:1px solid #e6ddcc;
             flex-wrap:wrap; font-size:12.5px; color:#6f675b; }
.readtools button { padding:4px 10px; border:1px solid #ccc; background:#f6f7f9; color:#2a2622;
                    border-radius:4px; cursor:pointer; font-size:12px; }
.readtools button:hover:not(:disabled) { background:#e9eef3; }
.readtools button:disabled { opacity:.45; cursor:default; }
.readtools input { padding:4px 6px; border:1px solid #ccc; border-radius:4px; font-size:12px; color:#2a2622; }
.readbody { flex:1; display:flex; gap:0; overflow:hidden; }
.readleft, .readright { flex:1; overflow-y:auto; padding:10px 14px; font-size:13.5px; line-height:1.8; }
.readleft { border-right:1px solid #ddd6c8; }
.readright { background:#fffdf8; }
.readchunk { padding:7px 8px; border-bottom:1px solid #ece5d6; cursor:pointer; white-space:pre-wrap;
             border-radius:5px; }
.readchunk:hover { background:#f0f7ff; }
.readchunk.cur { background:#ffe08a; outline:1px solid #e67e22; }
.readchunk .seq { display:inline-block; min-width:52px; color:#a99a83; font-size:11px;
                  font-family:Consolas,monospace; vertical-align:top; }
.readchunk mark { background:#f9e79f; padding:0 1px; border-radius:2px; }
.readright .rchunk { border:1px solid #eee; border-radius:6px; margin:8px 0; padding:8px 10px; background:#fff; }
.readright .rchunk .meta { font-size:11.5px; color:#8a8175; margin-bottom:4px; }
.readright .rchunk .sim { float:right; color:#e67e22; font-weight:bold; font-size:12px; }
.readright .rtext { white-space:pre-wrap; cursor:pointer; }
.readright .rtext:hover { background:#fbf7ec; }

/* PRTS 光标（迷迭香）—— 全站鼠标换成 PRTS 光标；禁用/加载态换另一款 */
body, a, button, summary, .chipx, label, select, input, textarea, .ghost {
  cursor: url('cursor.png') 8 8, auto;
}
button:disabled, input:disabled, [disabled] {
  cursor: url('cursor-wait.png') 8 8, progress;
}

/* 移动端适配（仅小屏生效，不影响桌面布局） */
@media (max-width: 720px) {
  body.chat main { padding: 8px; }
  #chatbar { padding: 8px 8px; }
  .chatrow { gap: 6px; }
  .chatrow textarea { min-height: 44px; width: 100%; }
  #q { width: 100%; }
  .topnav { flex-wrap: wrap; padding: 0 8px; }
  .topnav a { padding: 10px 9px; font-size: 13px; }
  main { padding: 16px 12px 50px; }
  /* 输入框/下拉尽量占满 */
  input[type=text], input[type=password], select { max-width: 100%; }
  .field input[type=text], .field input[type=password], .toolbar input[type=text] { width: 100%; }
  /* 表格横向滚动 */
  .chantab { display: block; overflow-x: auto; white-space: nowrap; }
  /* AI 检索：对话侧栏压成顶部窄条 */
  #layout { flex-direction: column; }
  #sidebar { width: 100%; max-height: 132px; border-right: 0; border-bottom: 1px solid var(--line); }
  /* 方案面板关键词行满宽 */
  .schrow .chips { max-width: 100%; }
  .schrow input[type=text] { width: 100%; max-width: 100%; }
  /* 全书/全文阅读左右两栏竖排 */
  .readbody { flex-direction: column; }
  .readleft, .readright { flex: none; width: 100%; }
  .readleft { border-right: 0; border-bottom: 1px solid #ddd6c8; }
}

/* 临近内容组（时间/地域/阶层/人物）：与正编明确区隔 */
.nearbysec { border-left: 3px solid #b08d57; padding-left: 10px; margin-top: 18px; }
.nearbysec h3 { color: #6f4a2a; }
.nearbydim { margin: 14px 0 6px; font-size: 14px; color: #6f4a2a; font-weight: 600; }
.nearbyitem .meta { color: #6f4a2a; }
.nearbadge {
  display: inline-block; padding: 0 6px; margin-right: 4px;
  border: 1px solid #c8ad86; border-radius: 3px;
  background: #faf5ea; color: #6f4a2a; font-size: 12px;
}

/* 上下文复核（补读同一出处后二次判定） */
.ctxrev { margin-top: 6px; font-size: 12.5px; line-height: 1.6; }
.ctxrev .ctxrevgap { color: #8a5a2a; background: #fdf3e3; border: 1px dashed #d9b98a;
  padding: 1px 6px; border-radius: 3px; margin-right: 6px; }
.ctxrev .ctxrevbadge { color: #2f6f4f; background: #eaf6ee; border: 1px solid #b9d8c4;
  padding: 1px 6px; border-radius: 3px; margin-right: 6px; }
.ctxrev .ctxrevnote { color: #66615a; }
.ctxrev-hd { font-size: 13px; font-weight: 600; color: #5b5349; margin: 12px 0 4px;
  border-left: 3px solid #b08d57; padding-left: 8px; }
.ctxrev-sec { font-size: 14px; line-height: 1.9; color: #333; }
.ctxrev-suppl { max-height: 260px; overflow-y: auto; background: #faf7f0;
  padding: 8px 10px; border: 1px solid #eee5d6; border-radius: 4px; white-space: pre-wrap; }
.ctxrev-quote { color: #5b4a33; background: #f4ecd9; padding: 4px 8px; border-radius: 3px; margin: 4px 0; }
